nozomi driver (was: Vodafone Mobile Connect HSDPA/UMTS/EDGE
datacard supported?)
Matthias Apitz
matthias.apitz at oclc.org
Sun May 4 14:37:45 UTC 2008
El día Saturday, May 03, 2008 a las 03:35:57PM +0200, Volker escribió:
> Matthias,
>
> no real life of a working driver, but a preliminary piece of code, which
> may get your device working can be found here:
>
> http://bsd.vwsoft.com/3g/nozomi/
>
> Please grab the Makefile and nozomi.c file.
>
> Big fat warning: This code currently can't make it into the fBSD source
> tree, as it contains portions of GPL'd code.
>
> At least you should get your device in a working state with that code.
> The host interface of that card is totally different to that of other
> cards so you won't have any luck with any other drive from the base system.
>
> Please report back to me if you find any issues (as I'm not using 3G
> cards very often these days anymore).
>
> HTH
>
> Volker
Hi Volker,
Thanks for the piece of software. I run into a small problem compiling
the code nozomi.c because the function bus_setup_intr() awaits one more
argument as it was called in nozomi.c; I checked the man page of
bus_setup_intr() and other divers how they call it and came up with this
small patch:
*** nozomi.c 2008-05-04 16:14:15.406582000 +0200
--- nozomi.c.orig 2007-04-18 00:47:50.000000000 +0200
***************
*** 1204,1210 ****
nozomi_tty_init(sc);
/* setup interrupt and interrupt handler */
! if(bus_setup_intr(dev, sc->intr_res, INTR_TYPE_TTY , NULL, nozomi_interrupt_handler, sc, &sc->intr_cookie)) {
printf("unable to register interrupt handler\n");
goto fail;
}
--- 1204,1210 ----
nozomi_tty_init(sc);
/* setup interrupt and interrupt handler */
! if(bus_setup_intr(dev, sc->intr_res, INTR_TYPE_TTY , nozomi_interrupt_handler, sc, &sc->intr_cookie)) {
printf("unable to register interrupt handler\n");
goto fail;
}
With this change the driver compiles fine and loads fine with
'kldload ./nozomi.ko'
On card insert it says:
May 4 16:19:54 rebelion kernel: nozomi0: <Option N.V. GlobeTrotter 3G+> mem 0xc8309000-0xc83097ff irq 16 at device 0.0 on cardbus0
May 4 16:19:54 rebelion kernel: nozomi0: [GIANT-LOCKED]
May 4 16:19:54 rebelion kernel: nozomi0: [ITHREAD]
May 4 16:19:55 rebelion kernel: nozomi0: ver. 3 with 2048 bytes of memory
May 4 16:19:55 rebelion kernel: nozomi0: initialization complete
As the next step I wanted to check with some serial line tool (kermit) how the
card answers on AT commands, but I don't see any /dev file coming up in
user space; am I missing something? what should be the name of the
device in user space? Thanks in advance
matthias
--
Matthias Apitz
Manager Technical Support - OCLC GmbH
Gruenwalder Weg 28g - 82041 Oberhaching - Germany
t +49-89-61308 351 - f +49-89-61308 399 - m +49-170-4527211
e <matthias.apitz at oclc.org> - w http://www.oclc.org/ http://www.UnixArea.de/
b http://gurucubano.blogspot.com/
More information about the freebsd-mobile
mailing list