Dell Latitude D600 (again)

Ludo Koren lk at
Fri Mar 4 00:40:32 PST 2005


I've finally got Dell Latitude D600 and installed FreeBSD
5.4-PRERELEASE. I am not able to make working of internal modem and
wireless network card.

pciconf -lv shows:

none0 at pci0:31:6:        class=0x070300 card=0x542214f1 chip=0x24c68086 rev=0x01 hdr=0x00
    vendor   = 'Intel Corporation'
    device   = '82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller'
    class    = simple comms
none2 at pci2:3:0: class=0x028000 card=0x27228086 chip=0x42208086 rev=0x05 hdr=0x00
    vendor   = 'Intel Corporation'
    device   = 'PRO/Wireless 2200BG Network Connection'
    class    = network

I've seen in the freebsd-current mailing list, the PRO/Wireless 2200BG
Network Connection was recognized as ndis.

So when I make 
# cd /usr/src/sys/modules/if_ndis/
# ndiscvt -s w22n51.sys -o ndis_driver_data.h
# make
Warning: Object directory not changed from original /usr/src/sys/modules/if_ndis
@ -> /usr/src/sys
machine -> /usr/src/sys/i386/include
touch opt_bdg.h
awk -f @/tools/makeobjops.awk @/kern/device_if.m -h
awk -f @/tools/makeobjops.awk @/kern/bus_if.m -h
awk -f @/tools/makeobjops.awk @/dev/pci/pci_if.m -h
awk -f @/tools/makeobjops.awk @/dev/pccard/card_if.m -h
awk -f @/tools/pccarddevs2h.awk @/dev/pccard/pccarddevs
cc -O -pipe  -D_KERNEL -DKLD_MODULE -nostdinc -I-   -I. -I@ -I@/contrib/altq -I@/../include -I/usr/include -finline-limit=8000 -fno-common  -mno-align-long-strings -mpreferred-stack-boundary=2 -ffreestanding -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -fformat-extensions -std=c99 -c /usr/src/sys/modules/if_ndis/../../dev/if_ndis/if_ndis.c
cc -O -pipe  -D_KERNEL -DKLD_MODULE -nostdinc -I-   -I. -I@ -I@/contrib/altq -I@/../include -I/usr/include -finline-limit=8000 -fno-common  -mno-align-long-strings -mpreferred-stack-boundary=2 -ffreestanding -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -fformat-extensions -std=c99 -c /usr/src/sys/modules/if_ndis/../../dev/if_ndis/if_ndis_pci.c
In file included from /usr/src/sys/modules/if_ndis/../../dev/if_ndis/if_ndis_pci.c:65:
./ndis_driver_data.h:13: error: syntax error before '}' token
*** Error code 1

Stop in /usr/src/sys/modules/if_ndis.

I suppose, there is a problem in correct generation of header file, so
I changed the following lines:

*** wnc.h       Thu Mar  3 21:47:41 2005
--- ndis_driver_data.h  Fri Mar  4 09:22:27 2005
*** 9,16 ****
  ndis_cfg ndis_regvals[] = {
        { NULL, NULL, { 0 }, 0 }
- };
  #endif /* NDIS_REGVALS */
  #ifdef NDIS_IMAGE
--- 9,16 ----
  ndis_cfg ndis_regvals[] = {
        { NULL, NULL, { 0 }, 0 }
  #endif /* NDIS_REGVALS */
+ };
  #ifdef NDIS_IMAGE

After successful compiling and installing of if_ndis module and doing:

# kldload ndis
# kldload if_ndis
kldload: can't load if_ndis: No such file or directory

and in the /var/log/messages:
Mar  4 09:29:38 lk107 kernel: link_elf: symbol windrv_load undefined

The internal modem is not recognized after doing:
# /usr/local/etc/rc.d/ start
Enabling ltmdm.
eval: cannot create /dev/cual0: Operation not supported

If I try to build ndis module for the internal modem, I have the same
result as with wireless card.

Could anybody help solve the problems with both the internal modem and
wireless card? Any hints appreciated.

Thank you very much in advance.


More information about the freebsd-mobile mailing list