|
Replies:
10
-
Last Post:
Jun 4, 2007 4:20 PM
by: brian.xu
|
|
|
Posts:
16
From:
Registered:
3/5/07
|
|
|
|
I/O error Intel 3945 wifi driver
Posted:
May 24, 2007 11:14 AM
To: Communities » laptop » discuss
|
|
|
|
Brian,
thanks a lot for providing a WiFi driver for Intel 3945. Unfortunately I get the following error message by attempts to plumb wpi0 on my Toshiba P105 laptop :
# ifconfig wpi0 plumb ifconfig: plumb: wpi0: I/O error
The device works fine on the Linux partition of this laptop and shows there up as 8086:4222. I attached the output of dmesg, prtconf -v and driver_aliases as files.
Thanks a lot in advance,
Oliver
|
|
|
Posts:
16
From:
Registered:
3/5/07
|
|
|
|
I/O error Intel 3945 wifi driver
Posted:
May 24, 2007 2:03 PM
in response to: olibert
To: Communities » laptop » discuss
|
|
Oops, forgot an important information: Laptop is installed with Solaris 10 HW 11/06. Thanks in advance.
|
|
|
|
Posts:
219
From:
Registered:
10/27/05
|
|
|
|
Re: I/O error Intel 3945 wifi driver
Posted:
May 25, 2007 2:44 AM
in response to: olibert
|
|
Oliver Ebert 写道: > Brian, > > thanks a lot for providing a WiFi driver for Intel 3945. Unfortunately I get > the following error message by attempts to plumb wpi0 on my Toshiba P105 laptop : > > # ifconfig wpi0 plumb > ifconfig: plumb: wpi0: I/O error > > The device works fine on the Linux partition of this laptop and shows there up as 8086:4222. I attached the output of dmesg, prtconf -v and driver_aliases as files. > The attached files show the card is 3945 and attached to wpi driver. While for some reason, the eeprom are read out as all 0xff. I need more investigation and let you know if I find it out.
Thanks, Brian > > > Thanks a lot in advance, > > > > Oliver > > > This message posted from opensolaris.org > ------------------------------------------------------------------------ > > _______________________________________________ > laptop-discuss mailing list > laptop-discuss at opensolaris dot org
_______________________________________________ laptop-discuss mailing list laptop-discuss at opensolaris dot org
|
|
|
|
Posts:
16
From:
Registered:
3/5/07
|
|
|
|
Re: I/O error Intel 3945 wifi driver
Posted:
May 25, 2007 9:30 AM
in response to: brian.xu
To: Communities » laptop » discuss
|
|
> The attached files show the card is 3945 and attached > to wpi driver. > While for some reason, the eeprom are read out as all > 0xff. I need more > investigation and let you know if I find it out. > > Thanks, > Brian
Brian,
I noticed the 0xFF eeprom read out, too. It seems that one of the guys who replied in the thread "Here is the Intel 3945 wifi driver" has the same issue according his dmesg output.
Please let me know if you need more data or testing.
Thanks,
Oliver
|
|
|
|
Posts:
219
From:
Registered:
10/27/05
|
|
|
|
Re: Re: I/O error Intel 3945 wifi driver
Posted:
May 28, 2007 3:54 AM
in response to: olibert
|
|
Oliver Ebert 写道: >> The attached files show the card is 3945 and attached >> to wpi driver. >> While for some reason, the eeprom are read out as all >> 0xff. I need more >> investigation and let you know if I find it out. >> >> Thanks, >> Brian >> > > Brian, > > I noticed the 0xFF eeprom read out, too. It seems that one of the guys who replied in the thread "Here is the Intel 3945 wifi driver" has the same issue according his dmesg output. > > Please let me know if you need more data or testing. > Hi, Oliver
Today I find a Fujistu laptop with the same symptom and finally root cause this issue. It should be a known boot bug of solaris, see: http://bugs.opensolaris.org/view_bug.do?bug_id=6419924
Because of the incorrect configuration of the pcie-pci bridge, the memory operation can not be forwarded by the bridge, so all I/O(memory mapped I/O) operations on 3945 fail, so that all the registers on 3945 are read out as 0xFF.
I have made that Fujistu work by manually modifying the config space registers of the pcie-pci bridge behind which the 3945 chipset resides, but this modification doesn't work for your laptop due to motherboard difference. So pls send me the '/usr/X11/bin/scanpci -v', then I will try to work out a scipt for you to make your wifi work.
Thanks, Brian > > Thanks, > > > Oliver > > > This message posted from opensolaris.org > _______________________________________________ > laptop-discuss mailing list > laptop-discuss at opensolaris dot org >
_______________________________________________ laptop-discuss mailing list laptop-discuss at opensolaris dot org
|
|
|
|
Posts:
16
From:
Registered:
3/5/07
|
|
|
|
Re: Re: I/O error Intel 3945 wifi driver
Posted:
May 30, 2007 10:10 PM
in response to: brian.xu
To: Communities » laptop » discuss
|
|
Brian,
thanks a lot for your efforts. I pasted in the scanpci -v output as it didn't allow to attach it as a file.
Thanks again,
Oliver
8<---8<---8<---8<---8<---8<---8<---8<---8<---8< ---8<---8<---
pci bus 0x0000 cardnum 0x00 function 0x00: vendor 0x8086 device 0x27a0 Intel Corporation Mobile Memory Controller Hub CardVendor 0x1179 card 0xff31 (Toshiba America Info Systems, Card unknown) STATUS 0x3090 COMMAND 0x0006 CLASS 0x06 0x00 0x00 REVISION 0x03 BIST 0x00 HEADER 0x00 LATENCY 0x00 CACHE 0x00 BYTE_0 0x01 BYTE_1 0x90 BYTE_2 0xd1 BYTE_3 0xfe
pci bus 0x0000 cardnum 0x02 function 0x00: vendor 0x8086 device 0x27a2 Intel Corporation Mobile Integrated Graphics Controller CardVendor 0x1179 card 0xff31 (Toshiba America Info Systems, Card unknown) STATUS 0x0090 COMMAND 0x0007 CLASS 0x03 0x00 0x00 REVISION 0x03 BIST 0x00 HEADER 0x80 LATENCY 0x00 CACHE 0x00 BASE0 0xd0200000 addr 0xd0200000 MEM BASE1 0x00001801 addr 0x00001800 I/O
|
|
|
|
Posts:
219
From:
Registered:
10/27/05
|
|
|
|
Re: Re: Re: I/O error Intel 3945 wifi driver
Posted:
May 31, 2007 4:12 AM
in response to: olibert
|
|
Oliver Ebert 写道: > Brian, > > thanks a lot for your efforts. I pasted in the scanpci -v output as > it didn't allow to attach it as a file. > > Since the bug is in boot, what I instruct you here is just a workround. This workaround operates directly on the pcie-pci bridge hardware, so it may reset your machine if operating incorrectly, but I think there should not have other damages.
I don't know whether 'pcitool' is available in s10u(check with ls /usr/bin/pcitool), if so, you can do like this: #rem_drv wpi #pcitool /pci@0,0 -d bdf=0.1c.1,config -o 0x20 -s 4 -w 0xd010d010 #pcitool /pci@0,0 -d bdf=0.1c.1,config -o 4 -s 1 -w 0x46 #add_drv -i '"pciex8086,4222"' wpi #ifconfig wpi0 plumb
If pcitool is not available, then it is a bit complex, you can use kmdb with command line login as an alternative, #mdb -KF >20::wrpcicfg 0 1c 1 d010d010 >4::rdpcicfg 0 1c 1 100044 -----the output here may be this value >4::wrpcicfg 0 1c 1 100046 ---make sure the last byte is 46, leaving other bytes as is. if wrpcicfg and rdpcicfg are not available, you can us, >*pci_putl_func::call 0 1c 1 20 d010d010 >*pci_putb_func::call 0 1c 1 4 46 >:c
The main purpose here is to enable the memory forward function in pcie-pci bridge, for your laptop, write 0xd010d010 in config space 0x20-0x23, write 0x46 in config space 0x4. The <bus id,device id,function id> of the bridge is <0,1c,1>.
Note: 1. the d010d010 is what I count according to your 'prtconf -v', the value just work for this laptop. 2. the wpi driver must *not* attach *before* the pcie-pci bridge is hacked.
Any questions, pls let me know.
--Brian > Thanks again, > > > > Oliver > > > > > 8<---8<---8<---8<---8<---8<---8<---8<---8<---8<-- -8<---8<--- > > > pci bus 0x0000 cardnum 0x1c function 0x01: vendor 0x8086 device 0x27d2 > Intel Corporation 82801G (ICH7 Family) PCI Express Port 2 > STATUS 0x0010 COMMAND 0x0044 > CLASS 0x06 0x04 0x00 REVISION 0x02 > HEADER 0x81 LATENCY 0x00 > PRIBUS 0x00 SECBUS 0x03 SUBBUS 0x03 > SECLT 0x00 SECSTATUS 0x2000 > PREFETCH_MEMBASE 0x0000000000000000 MEMLIM 0x00000000000fffff > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^not initialized. > NO_FAST_B2B NO_SEC_BUS_RST NO_M_ABRT NO_VGA_EN ISA_EN NO_SERR_EN PERR_EN > > ...... > > pci bus 0x0003 cardnum 0x00 function 0x00: vendor 0x8086 device 0x4222 > Intel Corporation Device unknown > CardVendor 0x8086 card 0x1040 (Card unknown) > STATUS 0x0010 COMMAND 0x0046 > CLASS 0x02 0x80 0x00 REVISION 0x02 > BIST 0x00 HEADER 0x00 LATENCY 0x00 CACHE 0x10 > MAX_LAT 0x00 MIN_GNT 0x00 INT_PIN 0x01 INT_LINE 0x0b > > > 8<---8<---8<---8<---8<---8<---8<---8<---8<---8<-- -8<---8<--- > > > This message posted from opensolaris.org > _______________________________________________ > laptop-discuss mailing list > laptop-discuss at opensolaris dot org >
_______________________________________________ laptop-discuss mailing list laptop-discuss at opensolaris dot org
|
|
|
|
Posts:
16
From:
Registered:
3/5/07
|
|
|
|
Re: Re: Re: I/O error Intel 3945 wifi driver
Posted:
May 31, 2007 7:53 PM
in response to: brian.xu
To: Communities » laptop » discuss
|
|
Brian,
it seems that pcitool isn't available in HW 10/06. So I applied the workaround with the debugger in the console..
#mdb -KF >20::wrpcicfg 0 1c 1 d010d010 >4::rdpcicfg 0 1c 1 100044 -----the output here may be this value >4::wrpcicfg 0 1c 1 100046 >::c
..and tried after that to plumb wpi0. Unfortunately I still get the this warning.. wpi: WARNING: wpi_init(): timeout waiting for firmware init ..and the I/O error.
To make sure that nothing went wrong with the debugger session I went back to the debugger and checked the value again..
>4::rdpcicfg 0 1c 1
..and got back 100046. So it seems to be fine from the debugger side.
Thanks,
Oliver
|
|
|
|
Posts:
219
From:
Registered:
10/27/05
|
|
|
|
Re: Re: Re: Re: I/O error Intel 3945 wifi driver
Posted:
May 31, 2007 8:53 PM
in response to: olibert
|
|
Oliver Ebert 写道: > Brian, > > it seems that pcitool isn't available in HW 10/06. So I applied the workaround with > the debugger in the console.. > > #mdb -KF > >> 20::wrpcicfg 0 1c 1 d010d010 >> 4::rdpcicfg 0 1c 1 >> > 100044 -----the output here may be this value > >> 4::wrpcicfg 0 1c 1 100046 >> ::c >> > > ..and tried after that to plumb wpi0. Unfortunately I still get the this warning.. > wpi: WARNING: wpi_init(): timeout waiting for firmware init > ..and the I/O error. > > To make sure that nothing went wrong with the debugger session I went back > to the debugger and checked the value again.. > > >> 4::rdpcicfg 0 1c 1 >> > > ..and got back 100046. So it seems to be fine from the debugger side. > 1.Make sure d010d010 is written into: >20::rdpcicfg 0 1c 1
2.Verify the value in 3945 card config space bar0 is d0100000: >10::rdpcicfg 3 0 0
3.Make sure the wpi driver is modunload before write values on pcie-pci bridge. you can: #rem_drv wpi #hack the pcie-pci bridge #add_drv -i '"pciex8086,4222"' wpi
Thanks, Brian > > Thanks, > > > > Oliver > > > This message posted from opensolaris.org > _______________________________________________ > laptop-discuss mailing list > laptop-discuss at opensolaris dot org >
_______________________________________________ laptop-discuss mailing list laptop-discuss at opensolaris dot org
|
|
|
|
Posts:
16
From:
Registered:
3/5/07
|
|
|
|
Re: Re: Re: Re: I/O error Intel 3945 wifi driver
Posted:
Jun 4, 2007 7:23 AM
in response to: brian.xu
To: Communities » laptop » discuss
|
|
> 2.Verify the value in 3945 card config space bar0 is > d0100000: > >10::rdpcicfg 3 0 0
Brian,
"10::rdpcicfg 3 0 0" gave me back 0. So I wrote d0100000 to the 3945 card config via wrpcicfg and plumbing of wpi0 just worked fine.
There are some issues with wificonfig I have to check out but otherwise I should be set from the driver side.
So the next step for me would be to check if pcitool can be backported to HW 10/06 to get this workaround in a script or just to wait for a fix for bug 6419924.
Anyway, thanks a lot for your help,
Oliver
|
|
|
|
Posts:
219
From:
Registered:
10/27/05
|
|
|
|
Re: Re: Re: Re: Re: I/O error Intel 3945 wifi driver
Posted:
Jun 4, 2007 4:20 PM
in response to: olibert
|
|
Oliver Ebert wrote: >> 2.Verify the value in 3945 card config space bar0 is >> d0100000: >> >10::rdpcicfg 3 0 0 >> > > Brian, > > "10::rdpcicfg 3 0 0" gave me back 0. So I wrote d0100000 to the 3945 card config via wrpcicfg and plumbing of wpi0 just worked fine. > Cool!!!
If you think I may help in the future, feel free to tell me.
--Brian > There are some issues with wificonfig I have to check out but otherwise I should > be set from the driver side. > > So the next step for me would be to check if pcitool can be backported to HW 10/06 to get this workaround in a script or just to wait for a fix for bug 6419924. > > Anyway, thanks a lot for your help, > > > > > Oliver > > > This message posted from opensolaris.org > _______________________________________________ > laptop-discuss mailing list > laptop-discuss at opensolaris dot org >
_______________________________________________ laptop-discuss mailing list laptop-discuss at opensolaris dot org
|
|
|
|
|