Re: ACPI undocking on 3.8-rc5 no longer works with Lenovo T61

2013-03-14 Thread Toshi Kani
On Sat, 2013-03-09 at 18:40 -0300, Henrique de Moraes Holschuh wrote:
> On Thu, 07 Mar 2013, Toshi Kani wrote:
> > dock.0 on your Lenovo likely shows as "battery_bay", which I think you
> > cannot undock regardless of this patch.  Can you try to undock the one
> 
> You're supposed to be able to undock any thinkpad battery just fine, and it
> used to work on older firmware such as the one in the T61.  If this is
> broken, some other bugs may be at play.

Agreed.  Let's look at the error messages...

Dne 29.1.2013 11:46, Zdenek Kabelac napsal(a):
> Dmesg shows this:
>
> [ 2657.087414] ACPI: \_SB_.PCI0.LPC_.EC__.BAT1: undocking

The dock driver called _DCK, which was successful.  So, the dock driver
did its job.

> [ 2658.613494] ata4.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action
0x6 frozen

This message came from ata_eh_link_report(), which indicates that there
was an ATA link error detected.

> [ 2658.613508] ata4.00: ST_FIRST: !(DRQ|ERR|DF)
> [ 2658.613522] sr 3:0:0:0: CDB:
> [ 2658.613530] Get event status notification: 4a 01 00 00 10 00 00 00
08 00
> [ 2658.613583] ata4.00: cmd a0/00:00:00:08:00/00:00:00:00:00/a0 tag 0
pio
> 16392 in
>   res 00/00:00:00:00:00/00:00:00:00:00/00 Emask 0x2 (HSM
violation)
> [ 2658.613670] ata4: soft resetting link
> [ 2658.766888] ata4.00: NODEV after polling detection

This indicates that the target device, which I think the battery bay,
was gone.

> [ 2658.766900] ata4.00: revalidation failed (errno=-2)
>

So, it looks to me that the battery bay was undocked, but an ATA link
error was detected.  This could be either a new FW causing the ATA link
error or the ATA stack detecting the link error which didn't before.

Thanks,
-Toshi

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: ACPI undocking on 3.8-rc5 no longer works with Lenovo T61

2013-03-09 Thread Henrique de Moraes Holschuh
On Thu, 07 Mar 2013, Toshi Kani wrote:
> dock.0 on your Lenovo likely shows as "battery_bay", which I think you
> cannot undock regardless of this patch.  Can you try to undock the one

You're supposed to be able to undock any thinkpad battery just fine, and it
used to work on older firmware such as the one in the T61.  If this is
broken, some other bugs may be at play.

-- 
  "One disk to rule them all, One disk to find them. One disk to bring
  them all and in the darkness grind them. In the Land of Redmond
  where the shadows lie." -- The Silicon Valley Tarot
  Henrique Holschuh
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: ACPI undocking on 3.8-rc5 no longer works with Lenovo T61

2013-03-08 Thread Toshi Kani
On Fri, 2013-03-08 at 11:06 +0100, Zdenek Kabelac wrote:
> Dne 7.3.2013 23:30, Toshi Kani napsal(a):
> > On Thu, 2013-03-07 at 22:48 +0100, Zdenek Kabelac wrote:
> >> Dne 29.1.2013 11:46, Zdenek Kabelac napsal(a):
> >>> Hi
> >>>
> >>> No exactly sure which patch did it - but when I'm now checking 3.8-rc5 
> >>> kernel,
> >>> I cannot use anymore this 'undock' command:
> >>>
> >>> echo 1 >/sys/devices/platform/dock.0/undock
> >>>
> >>> which works ok with 3.7 kernel - to properly undock my T61 before suspend.
> >>>
> >>>
> >>> Dmesg shows this:
> >>>
> >>> [ 2657.087414] ACPI: \_SB_.PCI0.LPC_.EC__.BAT1: undocking
> >>> [ 2658.613494] ata4.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x6 
> >>> frozen
> >>> [ 2658.613508] ata4.00: ST_FIRST: !(DRQ|ERR|DF)
> >>> [ 2658.613522] sr 3:0:0:0: CDB:
> >>> [ 2658.613530] Get event status notification: 4a 01 00 00 10 00 00 00 08 
> >>> 00
> >>> [ 2658.613583] ata4.00: cmd a0/00:00:00:08:00/00:00:00:00:00/a0 tag 0 pio
> >>> 16392 in
> >>>res 00/00:00:00:00:00/00:00:00:00:00/00 Emask 0x2 (HSM 
> >>> violation)
> >>> [ 2658.613670] ata4: soft resetting link
> >>> [ 2658.766888] ata4.00: NODEV after polling detection
> >>> [ 2658.766900] ata4.00: revalidation failed (errno=-2)
> >>>
> >>>
> >>> Here is boot log attached, my HW is Lenovo T61, C2D
> >>>
> >>
> >>
> >> I've run 'bisect'  and found out commit which has broken  'undock' support 
> >> on
> >> my Lenovo:
> >>
> >> commit 8ab0ab2570cfc48303e545944f53690a6983a898
> >> Author: Toshi Kani 
> >> Date:   Tue Oct 23 01:30:26 2012 +0200
> >>
> >>   ACPI: dock: Remove redundant ACPI NS walk
> >>
> >>   Combined two ACPI namespace walks, which look for dock stations
> >>   and then bays separately, into a single walk.
> >>
> >>   Signed-off-by: Toshi Kani 
> >>   Reviewed-by: Yasuaki Ishimatsu 
> >>   Signed-off-by: Rafael J. Wysocki 
> >>
> >>
> >> After doin plain revert of this commit undock 'support' is back -
> >> I've tested this with 3.9-rc1  (though on this kernel it seems wifi is
> >> again horribly broken for now)
> >>
> >> Any idea about proper fix here ?
> >
> > Sorry for the trouble.  I suspect that your Lenovo has both doc station
> > and battery bay.  Since the above patch combined HW scans for doc
> > station and battery bay into a single scan, it may have changed
> > instance# of the sysfs "dock.%d" files on your Lenovo.  You can verify
> > the type by doing:
> >
> >cat /sys/devices/platform/dock*/type
> >
> > dock.0 on your Lenovo likely shows as "battery_bay", which I think you
> > cannot undock regardless of this patch.  Can you try to undock the one
> > with "dock_station"?
> 
> 
> Thanks - you are correct here - and I've not had though about that
> before I've started bisect.
> 
> So while before this patch  dock.0 had type dock_station, it's now 
> battery_bay 
> and dock_station becomes dock.2 and I need to update my undocking script.

Great!  Thanks for the verification!
-Toshi



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: ACPI undocking on 3.8-rc5 no longer works with Lenovo T61

2013-03-08 Thread Zdenek Kabelac

Dne 7.3.2013 23:30, Toshi Kani napsal(a):

On Thu, 2013-03-07 at 22:48 +0100, Zdenek Kabelac wrote:

Dne 29.1.2013 11:46, Zdenek Kabelac napsal(a):

Hi

No exactly sure which patch did it - but when I'm now checking 3.8-rc5 kernel,
I cannot use anymore this 'undock' command:

echo 1 >/sys/devices/platform/dock.0/undock

which works ok with 3.7 kernel - to properly undock my T61 before suspend.


Dmesg shows this:

[ 2657.087414] ACPI: \_SB_.PCI0.LPC_.EC__.BAT1: undocking
[ 2658.613494] ata4.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x6 frozen
[ 2658.613508] ata4.00: ST_FIRST: !(DRQ|ERR|DF)
[ 2658.613522] sr 3:0:0:0: CDB:
[ 2658.613530] Get event status notification: 4a 01 00 00 10 00 00 00 08 00
[ 2658.613583] ata4.00: cmd a0/00:00:00:08:00/00:00:00:00:00/a0 tag 0 pio
16392 in
   res 00/00:00:00:00:00/00:00:00:00:00/00 Emask 0x2 (HSM violation)
[ 2658.613670] ata4: soft resetting link
[ 2658.766888] ata4.00: NODEV after polling detection
[ 2658.766900] ata4.00: revalidation failed (errno=-2)


Here is boot log attached, my HW is Lenovo T61, C2D




I've run 'bisect'  and found out commit which has broken  'undock' support on
my Lenovo:

commit 8ab0ab2570cfc48303e545944f53690a6983a898
Author: Toshi Kani 
Date:   Tue Oct 23 01:30:26 2012 +0200

  ACPI: dock: Remove redundant ACPI NS walk

  Combined two ACPI namespace walks, which look for dock stations
  and then bays separately, into a single walk.

  Signed-off-by: Toshi Kani 
  Reviewed-by: Yasuaki Ishimatsu 
  Signed-off-by: Rafael J. Wysocki 


After doin plain revert of this commit undock 'support' is back -
I've tested this with 3.9-rc1  (though on this kernel it seems wifi is
again horribly broken for now)

Any idea about proper fix here ?


Sorry for the trouble.  I suspect that your Lenovo has both doc station
and battery bay.  Since the above patch combined HW scans for doc
station and battery bay into a single scan, it may have changed
instance# of the sysfs "dock.%d" files on your Lenovo.  You can verify
the type by doing:

   cat /sys/devices/platform/dock*/type

dock.0 on your Lenovo likely shows as "battery_bay", which I think you
cannot undock regardless of this patch.  Can you try to undock the one
with "dock_station"?



Thanks - you are correct here - and I've not had though about that
before I've started bisect.

So while before this patch  dock.0 had type dock_station, it's now battery_bay 
and dock_station becomes dock.2 and I need to update my undocking script.


Zdenek

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: ACPI undocking on 3.8-rc5 no longer works with Lenovo T61

2013-03-07 Thread Toshi Kani
On Thu, 2013-03-07 at 22:48 +0100, Zdenek Kabelac wrote:
> Dne 29.1.2013 11:46, Zdenek Kabelac napsal(a):
> > Hi
> >
> > No exactly sure which patch did it - but when I'm now checking 3.8-rc5 
> > kernel,
> > I cannot use anymore this 'undock' command:
> >
> > echo 1 >/sys/devices/platform/dock.0/undock
> >
> > which works ok with 3.7 kernel - to properly undock my T61 before suspend.
> >
> >
> > Dmesg shows this:
> >
> > [ 2657.087414] ACPI: \_SB_.PCI0.LPC_.EC__.BAT1: undocking
> > [ 2658.613494] ata4.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x6 
> > frozen
> > [ 2658.613508] ata4.00: ST_FIRST: !(DRQ|ERR|DF)
> > [ 2658.613522] sr 3:0:0:0: CDB:
> > [ 2658.613530] Get event status notification: 4a 01 00 00 10 00 00 00 08 00
> > [ 2658.613583] ata4.00: cmd a0/00:00:00:08:00/00:00:00:00:00/a0 tag 0 pio
> > 16392 in
> >   res 00/00:00:00:00:00/00:00:00:00:00/00 Emask 0x2 (HSM violation)
> > [ 2658.613670] ata4: soft resetting link
> > [ 2658.766888] ata4.00: NODEV after polling detection
> > [ 2658.766900] ata4.00: revalidation failed (errno=-2)
> >
> >
> > Here is boot log attached, my HW is Lenovo T61, C2D
> >
> 
> 
> I've run 'bisect'  and found out commit which has broken  'undock' support on
> my Lenovo:
> 
> commit 8ab0ab2570cfc48303e545944f53690a6983a898
> Author: Toshi Kani 
> Date:   Tue Oct 23 01:30:26 2012 +0200
> 
>  ACPI: dock: Remove redundant ACPI NS walk
> 
>  Combined two ACPI namespace walks, which look for dock stations
>  and then bays separately, into a single walk.
> 
>  Signed-off-by: Toshi Kani 
>  Reviewed-by: Yasuaki Ishimatsu 
>  Signed-off-by: Rafael J. Wysocki 
> 
> 
> After doin plain revert of this commit undock 'support' is back -
> I've tested this with 3.9-rc1  (though on this kernel it seems wifi is
> again horribly broken for now)
> 
> Any idea about proper fix here ?

Sorry for the trouble.  I suspect that your Lenovo has both doc station
and battery bay.  Since the above patch combined HW scans for doc
station and battery bay into a single scan, it may have changed
instance# of the sysfs "dock.%d" files on your Lenovo.  You can verify
the type by doing:

  cat /sys/devices/platform/dock*/type

dock.0 on your Lenovo likely shows as "battery_bay", which I think you
cannot undock regardless of this patch.  Can you try to undock the one
with "dock_station"?

Thanks,
-Toshi

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: ACPI undocking on 3.8-rc5 no longer works with Lenovo T61

2013-03-07 Thread Zdenek Kabelac

Dne 29.1.2013 11:46, Zdenek Kabelac napsal(a):

Hi

No exactly sure which patch did it - but when I'm now checking 3.8-rc5 kernel,
I cannot use anymore this 'undock' command:

echo 1 >/sys/devices/platform/dock.0/undock

which works ok with 3.7 kernel - to properly undock my T61 before suspend.


Dmesg shows this:

[ 2657.087414] ACPI: \_SB_.PCI0.LPC_.EC__.BAT1: undocking
[ 2658.613494] ata4.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x6 frozen
[ 2658.613508] ata4.00: ST_FIRST: !(DRQ|ERR|DF)
[ 2658.613522] sr 3:0:0:0: CDB:
[ 2658.613530] Get event status notification: 4a 01 00 00 10 00 00 00 08 00
[ 2658.613583] ata4.00: cmd a0/00:00:00:08:00/00:00:00:00:00/a0 tag 0 pio
16392 in
  res 00/00:00:00:00:00/00:00:00:00:00/00 Emask 0x2 (HSM violation)
[ 2658.613670] ata4: soft resetting link
[ 2658.766888] ata4.00: NODEV after polling detection
[ 2658.766900] ata4.00: revalidation failed (errno=-2)


Here is boot log attached, my HW is Lenovo T61, C2D




I've run 'bisect'  and found out commit which has broken  'undock' support on
my Lenovo:

commit 8ab0ab2570cfc48303e545944f53690a6983a898
Author: Toshi Kani 
Date:   Tue Oct 23 01:30:26 2012 +0200

ACPI: dock: Remove redundant ACPI NS walk

Combined two ACPI namespace walks, which look for dock stations
and then bays separately, into a single walk.

Signed-off-by: Toshi Kani 
Reviewed-by: Yasuaki Ishimatsu 
Signed-off-by: Rafael J. Wysocki 


After doin plain revert of this commit undock 'support' is back -
I've tested this with 3.9-rc1  (though on this kernel it seems wifi is
again horribly broken for now)

Any idea about proper fix here ?

Zdenek

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


ACPI undocking on 3.8-rc5 no longer works with Lenovo T61

2013-01-29 Thread Zdenek Kabelac

Hi

No exactly sure which patch did it - but when I'm now checking 3.8-rc5 kernel,
I cannot use anymore this 'undock' command:

echo 1 >/sys/devices/platform/dock.0/undock

which works ok with 3.7 kernel - to properly undock my T61 before suspend.


Dmesg shows this:

[ 2657.087414] ACPI: \_SB_.PCI0.LPC_.EC__.BAT1: undocking
[ 2658.613494] ata4.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x6 frozen
[ 2658.613508] ata4.00: ST_FIRST: !(DRQ|ERR|DF)
[ 2658.613522] sr 3:0:0:0: CDB:
[ 2658.613530] Get event status notification: 4a 01 00 00 10 00 00 00 08 00
[ 2658.613583] ata4.00: cmd a0/00:00:00:08:00/00:00:00:00:00/a0 tag 0 pio 16392 
in
 res 00/00:00:00:00:00/00:00:00:00:00/00 Emask 0x2 (HSM violation)
[ 2658.613670] ata4: soft resetting link
[ 2658.766888] ata4.00: NODEV after polling detection
[ 2658.766900] ata4.00: revalidation failed (errno=-2)


Here is boot log attached, my HW is Lenovo T61, C2D


Zdenek


boot log:

Initializing cgroup subsys cpuset
Initializing cgroup subsys cpu
Linux version 3.8.0-rc5-6-g0e5e62f (@linux) (gcc version 4.8.0 20130124 
(Red Hat 4.8.0-0.6) (GCC) ) #119 SMP PREEMPT Mon Jan 28 14:36:02 CET 2013
Command line: ro root=/dev/sda2 selinux=0 intel_iommu=on kmemleak=off 
lockdep.prove_locking=0 lockdep.lock_stat=0 SYSFONT=latarcyrheb-sun16 
LANG=cs_CZ.UTF-8 KEYTABLE=us systemd.log_level=info systemd.log_target=kmsg 
ipv6.disable=1

e820: BIOS-provided physical RAM map:
BIOS-e820: [mem 0x-0x0009d7ff] usable
BIOS-e820: [mem 0x0009d800-0x0009] reserved
BIOS-e820: [mem 0x000e-0x000f] reserved
BIOS-e820: [mem 0x0010-0xbf6a] usable
BIOS-e820: [mem 0xbf6b-0xbf6cbfff] ACPI data
BIOS-e820: [mem 0xbf6cc000-0xbf6f] ACPI NVS
BIOS-e820: [mem 0xbf70-0xbfff] reserved
BIOS-e820: [mem 0xf000-0xf3ff] reserved
BIOS-e820: [mem 0xfec0-0xfec0] reserved
BIOS-e820: [mem 0xfed0-0xfed003ff] reserved
BIOS-e820: [mem 0xfed14000-0xfed19fff] reserved
BIOS-e820: [mem 0xfed1c000-0xfed8] reserved
BIOS-e820: [mem 0xfee0-0xfee00fff] reserved
BIOS-e820: [mem 0xff00-0x] reserved
BIOS-e820: [mem 0x0001-0x00013bff] usable
kmemleak: Kernel memory leak detector disabled
NX (Execute Disable) protection: active
SMBIOS 2.4 present.
DMI: LENOVO 6464CTO/6464CTO, BIOS 7LETC9WW (2.29 ) 03/18/2011
e820: update [mem 0x-0x] usable ==> reserved
e820: remove [mem 0x000a-0x000f] usable
No AGP bridge found
e820: last_pfn = 0x13c000 max_arch_pfn = 0x4
MTRR default type: uncachable
MTRR fixed ranges enabled:
  0-9 write-back
  A-B uncachable
  C-C write-protect
  D-D uncachable
  E-F write-protect
MTRR variable ranges enabled:
  0 base 0C000 mask FC000 uncachable
  1 base 13C00 mask FFC00 uncachable
  2 base 0 mask F write-back
  3 base 1 mask FC000 write-back
  4 base 0BF70 mask 0 uncachable
  5 base 0BF80 mask FFF80 uncachable
  6 disabled
  7 disabled
x86 PAT enabled: cpu 0, old 0x7040600070406, new 0x7010600070106
original variable MTRRs
reg 0, base: 3GB, range: 1GB, type UC
reg 1, base: 5056MB, range: 64MB, type UC
reg 2, base: 0GB, range: 4GB, type WB
reg 3, base: 4GB, range: 1GB, type WB
reg 4, base: 3063MB, range: 1MB, type UC
reg 5, base: 3064MB, range: 8MB, type UC
total RAM covered: 4023M
Found optimal setting for mtrr clean up
 gran_size: 64K chunk_size: 128Mnum_reg: 6  lose cover RAM: 
0G
New variable MTRRs
reg 0, base: 0GB, range: 2GB, type WB
reg 1, base: 2GB, range: 1GB, type WB
reg 2, base: 3063MB, range: 1MB, type UC
reg 3, base: 3064MB, range: 8MB, type UC
reg 4, base: 4GB, range: 1GB, type WB
reg 5, base: 5056MB, range: 64MB, type UC
e820: update [mem 0xbf70-0x] usable ==> reserved
e820: last_pfn = 0xbf6b0 max_arch_pfn = 0x4
found SMP MP-table at [mem 0x000f68f0-0x000f68ff] mapped at [880f68f0]
initial memory mapped: [mem 0x-0x1fff]
Base memory trampoline at [88097000] 97000 size 24576
init_memory_mapping: [mem 0x-0xbf6a]
 [mem 0x-0xbf5f] page 2M
 [mem 0xbf60-0xbf6a] page 4k
kernel direct mapping tables up to 0xbf6a @ [mem 0x1fffb000-0x1fff]
init_memory_mapping: [mem 0x1-0x13bff]
 [mem 0x1-0x13bff] page 2M
kernel direct mapping tables up to 0x13bff @ [mem 0xbf6ae000-0xbf6a]
RAMDISK: [mem 0x37824000-0x37fe]
ACPI: RSDP 000f68c0 00024 (v02 LENOVO)
ACPI: XSDT bf6bb496 0009C (v01 LENOVO TP-7U2290  LTP )
ACPI: FACP bf6bb600 000F4 (v03 LENOVO TP-7U2290 LNVO 0001)
ACPI BIOS Bug: Warning: 32/64X length mismatch in FADT/Gpe1Block: 0/32 
(20121018/tbfadt-567)
A