Hi, Nathan,

There are many unsolved issues for wrapping 64bit XP/Visata driver. By 
now, only BCM4306rev2, BCM4301 and some old chipsets could work under 
Solaris 64bit system after wrapping one 64bit Windows(r) driver (it was 
mentioned in ndis project page).

To your error messages, there might be some unsupported Window NDIS 
api(s) were discovered from the Windows driver's import symbol table, 
or, it was due to a symbol redefined since build109 as what I heard. I 
will send you the ndis-1.2.3 (contributed by George White) in another email.

As for "PCI14E4,432b" chipset, suppose to be able to work under 32bit 
OpenSolaris kernel with the same Windows driver that supports 
"PCI14E4,4328" released from HP, you can find the link to this Windows 
driver from ndis project page.

Thanks,
Michael


Nathan Kroenert ??:
> Hey there - 
>
> I have tried the 105+ update of the 1.2.2 wrapper and it panic's my system.
>
> Following the instructions from here:
> http://opensolaris.org/os/community/laptop/wireless/ndis/
>
> and the source from here:
> www.palisad.com/solaris/ndis/ndis-1.2.2.tar.gz (referenced from...)
> http://www.opensolaris.org/jive/thread.jspa?threadID=88165&tstart=15 
>
> Here is the guff: (tell me if I'm being stupid...)
> HP tx2-1015AU laptop
> OpenSolaris 200811, pkg image-updated to kernel snv_111
> Running 64 bit...
> Wireless card:
>   pci bus 0x0008 cardnum 0x00 function 0x00: vendor 0x14e4 device 0x432b
>    Broadcom Corporation BCM4322 802.11a/b/g/n Wireless LAN Controller
> Using the VISTA 64 bit drivers (also tried NT 64 bit drivers, but failed with 
> a different panic, oddly enough on modunload) that came with the laptop.
>
> The iconv, make ndiscvt, make ndis, make ndisapi all seem to work OK and 
> generate happy, smiley looking binaries...
>
> On add_drv, the system panics pretty much immediately. 
>
> I'm using:
>    pfexec add_drv -i '"pci103c,1380"' bcmndis
> or
>    pfexec add_drv -i '"pci14e4,432b"' bcmndis
>
> The messages include: 
> Apr 16 11:55:14 gonzo genunix: [ID 151736 kern.notice] 
> /kernel/misc/amd64/ndisapi symbol 
> Apr 16 11:55:14 gonzo ndisapi: [ID 692590 kern.notice] NO match for 
> NdisOpenConfigurationEx
> Apr 16 11:55:14 gonzo ndisapi: [ID 692590 kern.notice] NO match for 
> NdisMDeregisterMiniportDriver
> Apr 16 11:55:14 gonzo ndisapi: [ID 692590 kern.notice] NO match for 
> NdisFreeNetBufferList
> Apr 16 11:55:14 gonzo ndisapi: [ID 692590 kern.notice] NO match for 
> NdisFreeMdl
> Apr 16 11:55:14 gonzo ndisapi: [ID 692590 kern.notice] NO match for 
> NdisAllocateMemoryWithTagPriority
> Apr 16 11:55:14 gonzo ndisapi: [ID 692590 kern.notice] NO match for 
> NdisAllocateMdl
> Apr 16 11:55:14 gonzo ndisapi: [ID 692590 kern.notice] NO match for 
> NdisMSetBusData
> Apr 16 11:55:14 gonzo ndisapi: [ID 692590 kern.notice] NO match for 
> NdisAllocateNetBufferAndNetBufferList
> Apr 16 11:55:14 gonzo ndisapi: [ID 692590 kern.notice] NO match for 
> NdisGetSystemUpTimeEx
> Apr 16 11:55:14 gonzo ndisapi: [ID 692590 kern.notice] NO match for 
> NdisMGetBusData
> Apr 16 11:55:14 gonzo ndisapi: [ID 692590 kern.notice] NO match for 
> NdisMDeregisterInterruptEx
> Apr 16 11:55:14 gonzo ndisapi: [ID 692590 kern.notice] NO match for 
> NdisMSynchronizeWithInterruptEx
> Apr 16 11:55:14 gonzo ndisapi: [ID 692590 kern.notice] NO match for 
> NdisMIndicateStatusEx
> Apr 16 11:55:14 gonzo ndisapi: [ID 692590 kern.notice] NO match for 
> NdisMRegisterInterruptEx
> Apr 16 11:55:14 gonzo ndisapi: [ID 692590 kern.notice] NO match for 
> NdisMDeregisterScatterGatherDma
> Apr 16 11:55:14 gonzo ndisapi: [ID 692590 kern.notice] NO match for memchr
> Apr 16 11:55:14 gonzo ndisapi: [ID 692590 kern.notice] NO match for strchr
> Apr 16 11:55:14 gonzo unix: [ID 836849 kern.notice] 
> Apr 16 11:55:14 gonzo ^Mpanic[cpu1]/thread=ffffff00074f5c60: 
> Apr 16 11:55:14 gonzo genunix: [ID 335743 kern.notice] BAD TRAP: type=e (#pf 
> Page fault) rp=ffffff00074f56d0 addr=fffff780000
> 00320 occurred in module "<unknown>" due to an illegal access to a user 
> address
> Apr 16 11:55:14 gonzo unix: [ID 100000 kern.notice] 
> Apr 16 11:55:14 gonzo unix: [ID 839527 kern.notice] sched: 
> Apr 16 11:55:14 gonzo unix: [ID 753105 kern.notice] #pf Page fault
> Apr 16 11:55:14 gonzo unix: [ID 532287 kern.notice] Bad kernel fault at 
> addr=0xfffff78000000320
> Apr 16 11:55:14 gonzo unix: [ID 243837 kern.notice] pid=0, 
> pc=0xffffff01cd49f034, sp=0xffffff00074f57c8, eflags=0x10246
> Apr 16 11:55:14 gonzo unix: [ID 211416 kern.notice] cr0: 
> 8005003b<pg,wp,ne,et,ts,mp,pe> cr4: 6f8<xmme,fxsr,pge,mce,pae,pse,de>
> Apr 16 11:55:14 gonzo unix: [ID 624947 kern.notice] cr2: fffff78000000320
> Apr 16 11:55:14 gonzo unix: [ID 625075 kern.notice] cr3: 3800000
> Apr 16 11:55:14 gonzo unix: [ID 625715 kern.notice] cr8: c
> Apr 16 11:55:14 gonzo unix: [ID 100000 kern.notice] 
> Apr 16 11:55:14 gonzo unix: [ID 592667 kern.notice]     rdi: ffffff01cd49f008 
> rsi: ffffff01c1ace180 rdx: ffffff01c1ace1b8
> Apr 16 11:55:14 gonzo unix: [ID 592667 kern.notice]     rcx: ffffff01c1ace180 
>  r8: ffffff01cd477100  r9:     2b992ddfa232
> Apr 16 11:55:14 gonzo unix: [ID 592667 kern.notice]     rax: fffff78000000320 
> rbx: ffffff01c1ace180 rbp: ffffff00074f5930
> Apr 16 11:55:14 gonzo unix: [ID 592667 kern.notice]     r10: fffffffffb84b524 
> r11:                0 r12: ffffff01cd2ae000
> Apr 16 11:55:14 gonzo unix: [ID 592667 kern.notice]     r13: ffffff01ca790660 
> r14: ffffff01cd49f008 r15:                0
> Apr 16 11:55:14 gonzo unix: [ID 592667 kern.notice]     fsb:                0 
> gsb: ffffff01be695580  ds:               4b
> Apr 16 11:55:14 gonzo unix: [ID 592667 kern.notice]      es:               4b 
>  fs:                0  gs:              1c3
> Apr 16 11:55:14 gonzo unix: [ID 592667 kern.notice]     trp:                e 
> err:                0 rip: ffffff01cd49f034
> Apr 16 11:55:14 gonzo unix: [ID 592667 kern.notice]      cs:               30 
> rfl:            10246 rsp: ffffff00074f57c8
> Apr 16 11:55:14 gonzo unix: [ID 266532 kern.notice]      ss:               38
> Apr 16 11:55:14 gonzo unix: [ID 100000 kern.notice] 
> Apr 16 11:55:14 gonzo genunix: [ID 655072 kern.notice] ffffff00074f55b0 
> unix:die+dd ()
> Apr 16 11:55:14 gonzo genunix: [ID 655072 kern.notice] ffffff00074f56c0 
> unix:trap+1752 ()
> Apr 16 11:55:14 gonzo genunix: [ID 655072 kern.notice] ffffff00074f56d0 
> unix:cmntrap+e9 ()
> Apr 16 11:55:14 gonzo genunix: [ID 802836 kern.notice] ffffff00074f5930 
> ffffff01cd49f034 ()
> Apr 16 11:55:14 gonzo genunix: [ID 655072 kern.notice] ffffff00074f5a10 
> bcmndis:ndis_attach+e9 ()
> Apr 16 11:55:14 gonzo genunix: [ID 655072 kern.notice] ffffff00074f5a70 
> genunix:devi_attach+80 ()
> Apr 16 11:55:14 gonzo genunix: [ID 655072 kern.notice] ffffff00074f5aa0 
> genunix:attach_node+95 ()
> Apr 16 11:55:14 gonzo genunix: [ID 655072 kern.notice] ffffff00074f5ae0 
> genunix:i_ndi_config_node+a5 ()
> Apr 16 11:55:14 gonzo genunix: [ID 655072 kern.notice] ffffff00074f5b00 
> genunix:i_ddi_attachchild+40 ()
> Apr 16 11:55:14 gonzo genunix: [ID 655072 kern.notice] ffffff00074f5b40 
> genunix:devi_attach_node+ac ()
> Apr 16 11:55:14 gonzo genunix: [ID 655072 kern.notice] ffffff00074f5ba0 
> genunix:config_immediate_children+d5 ()
> Apr 16 11:55:14 gonzo genunix: [ID 655072 kern.notice] ffffff00074f5bf0 
> genunix:devi_config_common+a6 ()
> Apr 16 11:55:14 gonzo genunix: [ID 655072 kern.notice] ffffff00074f5c40 
> genunix:mt_config_thread+53 ()
> Apr 16 11:55:14 gonzo genunix: [ID 655072 kern.notice] ffffff00074f5c50 
> unix:thread_start+8 ()
>
> Tragically, I have little to no X86 assembler capabilities... I'm a SPARC 
> guy... heh.
>
> but - here is what I can workout with a little mdb groking...
>   
>> $c
>>     
> 0xffffff01cd49f034()
> ndis_attach+0xe9()
> devi_attach+0x80(ffffff01bc5d7cb0, 0)
> attach_node+0x95(ffffff01bc5d7cb0)
> i_ndi_config_node+0xa5(ffffff01bc5d7cb0, 6, 0)
> i_ddi_attachchild+0x40(ffffff01bc5d7cb0)
> devi_attach_node+0xac(ffffff01bc5d7cb0, 4048)
> config_immediate_children+0xd5(ffffff01bbbdfa10, 4048, 3a)
> devi_config_common+0xa6(ffffff01bbbdfa10, 4048, 3a)
> mt_config_thread+0x53(ffffff01cab03640)
> thread_start+8()
>   
>> ndis_attach+0xe9::dis
>>     
> ndis_attach+0xb5:               call   +0x3ab607e       <kmem_zalloc>
> ndis_attach+0xba:               movl   -0x37999328(%rip),%edx   <drv_data_len>
> ndis_attach+0xc0:               movq   %rax,%rsi
> ndis_attach+0xc3:               movq   $0xffffffffc05ab060,%rdi <drv_data>
> ndis_attach+0xca:               movq   %rax,-0x37c4e799(%rip)   
> <drv_data_inuse>
> ndis_attach+0xd1:               call   +0x3906a0a       <bcopy>
> ndis_attach+0xd6:               movq   -0x37c4e7a5(%rip),%rsi   
> <drv_data_inuse>
> ndis_attach+0xdd:               xorl   %edx,%edx
> ndis_attach+0xdf:               movl   $0x1,%edi
> ndis_attach+0xe4:               call   +0x784977        <windrv_load>
> ndis_attach+0xe9:  <<---     movq   $0xffffffffc07add38,%rsi <ndis_rxeof_wrap>
> ndis_attach+0xf0:               movq   $0xfffffffff7f45640,%rdi <ndis_rxeof>
> ndis_attach+0xf7:               call   +0x784db4        <windrv_wrap>
> ndis_attach+0xfc:               movq   $0xffffffffc07add30,%rsi 
> <ndis_txeof_wrap>
> ndis_attach+0x103:              movq   $0xfffffffff7f457a0,%rdi <ndis_txeof>
> ndis_attach+0x10a:              call   +0x784da1        <windrv_wrap>
> ndis_attach+0x10f:              movq   $0xffffffffc07add40,%rsi 
> <ndis_linksts_wrap>
> ndis_attach+0x116:              movq   $0xfffffffff7f45850,%rdi <ndis_linksts>
> ndis_attach+0x11d:              call   +0x784d8e        <windrv_wrap>
> ndis_attach+0x122:              movq   $0xffffffffc07add48,%rsi 
> <ndis_linksts_done_wrap>
> ndis_attach+0x129:              movq   $0xfffffffff7f45860,%rdi 
> <ndis_linksts_done>
>
> for giggles:
>   
>> 0xffffff01cd49f034::dis
>>     
> 0xffffff01cd49f034:             movq   (%rax),%rax
> 0xffffff01cd49f037:             xorq   %r8,%rax
> 0xffffff01cd49f03a:             movq   $0xffffffffffff,%r8
> 0xffffff01cd49f044:             andq   %r8,%rax
> 0xffffff01cd49f047:             cmovq.e %r9,%rax
> 0xffffff01cd49f04b:             movq   %rax,-0x27f52(%rip)      
> <0xffffff01cd477100>
> 0xffffff01cd49f052:             notq   %rax
> 0xffffff01cd49f055:             movq   %rax,-0x27f54(%rip)      
> <0xffffff01cd477108>
> 0xffffff01cd49f05c:             jmp    -0x1d61b9        <0xffffff01cd2c8ea8>
> 0xffffff01cd49f061:             int    $0x3
> 0xffffff01cd49f062:             int    $0x3
>
> and: 
>   
>> 0xffffff01cd49f034::whatis
>>     
> ffffff01cd49f034 is ffffff01cd2ae000+1f1034 from kmem_oversize vmem arena
>
> and with that, I got nothing. (need to bust out an x86 assembler book to get 
> much further... ;)
>
> For what it's worth, I tried the 32 bit stuff, booting from a 32 bit kernel 
> and the result was different, but still dud...
>
> After the bunch of NO Match for... mesages, 
> Apr 16 22:16:33 gonzo ndisapi: [ID 451491 kern.warning] WARNING: NDIS lost API
>
> and the driver fails to attach. (and panic'd my box when I tried to rem_drv 
> it... ;)
>
> I can make the actual 64 bit panic dump (66MB) available to anyone that might 
> be able to offer some assistance. (including telling me to bugger off, and 
> find the right forum.:)
>
> Many thanks.
>
> Nathan.
>   

-------------- next part --------------
An HTML attachment was scrubbed...
URL: 
<http://mail.opensolaris.org/pipermail/laptop-discuss/attachments/20090416/9a25aa34/attachment.html>

Reply via email to