Re: 2.6.8.1-mm1 and Asus L3C : problematic change found, can be reverted. Real fix still missing

Eric Valette
2004-08-19T11:09:38Z

Eric Valette wrote:
> Li, Shaohua wrote:
>
>> Eric,
>> The patch for bug 3049 has been in 2.6.8.1 and should fix the IO port
>> problem. If the Asus quirk is just because of IO port problem, I'd like
>> to remove it. Note PNP driver also reserves the IO port for the SMBus
>> and lets SMBus driver to use it. ACPI motherboard driver behaves the
>> same as PNP driver.
>
>
> Unfortunately, as I understand it, the fix is done to "unhide" the SMBus
> that otherwyse is not seen but it has unexpected side effect of messing
> ioports allocation/reservation. I guess lspci with and without the fix
> could help to understand the problem. Here is the comment on top of the
> function :

OK I've put my debugger hat and tried to go a little further. Here is an
(I hope) interesting PCI tweaking session. For helping the readder here
are the meaning of some value :
1) 8086:248c : Intel Corp. 82801CAM ISA Bridge (LPC) (rev 02)
2) 8086:2483 : the PCI ID for the i801 SMB bus
3) 0xF2 the register offset used to enable the SBus in the ISA Bridge
4) 0x20 = SMBBA = SMBbus base address in the i2c-i801.c file

root@pink-floyd:/home/valette# setpci -H1 -v -d 8086:248c 0xF2.W
00:1f.0:f2 = 8409
root@pink-floyd:/home/valette# pcitweak -l >
pci_devices_list_without_enabling_SMBus 2>&1
root@pink-floyd:/home/valette# setpci -H1 -v -d 8086:248c 0xF2.W=8401
00:1f.0:f2 8401
root@pink-floyd:/home/valette# pcitweak -l >
pci_devices_list_after_enabling_SMBus 2>&1
root@pink-floyd:/home/valette# diff
pci_devices_list_without_enabling_SMBus
pci_devices_list_after_enabling_SMBus
10a11
> PCI: 00:1f:3: chip 8086,2483 card 1043,1628 rev 02 class 0c,05,00 hdr 00
root@pink-floyd:/home/valette# setpci -H1 -v -d 8086:2483 20.w
00:1f.3:20 = e801

So my deduction are :
1) The trick for enabling the SMBbus is working,
2) The configured base IO range register value is e801 leading to
theoritically request the e800 -> e808 IO region and curiously not e810
as requested described by the DTST...

Now I do not understand why it get something else as io port region no
that the ACPI fix for bug 3049 remove the IORESOURCE_BUSY flags

--
__
/ ` Eric Valette
/-- __ o _. 6 rue Paul Le Flem
(___, / (_(_(__ 35740 Pace

Tel: +33 (0)2 99 85 26 76 Fax: +33 (0)2 99 85 26 76
E-mail: eric.valette@free.fr