# Problem z modemem SAGEM 800 E4 [Solved]

## GadQ

Po instalacji Gentoo 2007.0 z LiveCD starałem się skompilować sterownik do modemu SAGEM 800 E4, jednak nie udało mi się to ponieważ kompilacja JEDNEGO pliku się wysypuje:

Moje jajko to: 2.6.19-gentoo-r5.

make -C /usr/src/linux M=/home/neo/ueagle-atm4/driver EXTRA_CFLAGS=-DDEBUG

make[1]: Entering directory `/usr/src/linux-2.6.21.5'

  CC [M]  /home/neo/ueagle-atm4/driver/ueagle-atm.o

make[1]: Leaving directory `/usr/src/linux-2.6.21.5'

/home/neo/ueagle-atm4/driver/ueagle-atm.c: In function 

'uea_start_reset':/home/neo/ueagle-atm4/driver/ueagle-atm.c:1173: warning: unused variable 

'cmvs_fw'/home/neo/ueagle-atm4/driver/ueagle-atm.c:1172: warning: unused variable 

'cmvs'/home/neo/ueagle-atm4/driver/ueagle-atm.c:1171: warning: unused variable 

'len'/home/neo/ueagle-atm4/driver/ueagle-atm.c:1171: warning: unused variable 

'i'/home/neo/ueagle-atm4/driver/ueagle-atm.c:1170: warning: unused variable 

'zero'/home/neo/ueagle-atm4/driver/ueagle-atm.c: In function 

'uea_kthread':/home/neo/ueagle-atm4/driver/ueagle-atm.c:1356: warning: implicit declaration of function 

'try_to_freeze'/home/neo/ueagle-atm4/driver/ueagle-atm.c:1514:40: error: macro "INIT_WORK" passed 3 arguments, 

but takes just 2

/home/neo/ueagle-atm4/driver/ueagle-atm.c: In function 'uea_boot': 

/home/neo/ueagle-atm4/driver/ueagle-atm.c:1514: error: 'INIT_WORK' undeclared (first use in this function) 

/home/neo/ueagle-atm4/driver/ueagle-atm.c:1514: error: (Each undeclared identifier is reported only once)

/home/neo/ueagle-atm4/driver/ueagle-atm.c:1514: error: for each function it appears in.)

/home/neo/ueagle-atm4/driver/ueagle-atm.c:1539: warning: passing argument 6 of 'usb_fill_int_urb' from 

incompatible pointer type/home/neo/ueagle-atm4/driver/ueagle-atm.c:1858:2: warning: #warning "iso need a patch 

: http://lists.infradead.org/pipermail/usbatm/2006-October/000883.html"

make[2]: *** [/home/neo/ueagle-atm4/driver/ueagle-atm.o] 

Error 1 make[1]: *** [_module_/home/neo/ueagle-atm4/driver] Error 2 make: *** [all] Error 2

I nie mam pojęcia co z tym dalej, moduły załadowane, a firmware nie, bo driver nie skompilowany.Last edited by GadQ on Tue Sep 04, 2007 9:15 pm; edited 1 time in total

----------

## mbar

driver do sagema jest w kernelu, zewnętrzny moduł możesz wyrzucić do kosza.

----------

## GadQ

A gdzie mam wrzucić firmware żeby mi się ładował, bo jak narazie to tego nie robi. Wykrywa, że jest podłączony, ale firmware'u nie ładuje.

----------

## mbar

emerge net-dialup/ueagle-atm

to są podstawy gentoo człowieku.

----------

## GadQ

emerge bez internetu :/ normalnie brawa dla Ciebie człowieku

----------

## mbar

ściągnij sobie pakiet i wrzuć do distfiles, w końcu chyba przez internet tu zaglądasz?

----------

## GadQ

Przy kompilacji ueagle-atm wysypuje mi się kompilka. Tak jak w 1 poście. 

Uporałem się właśnie z pppd, wreszcie odpaliło mi połączenie.

I są jeszcze 2 problemy:

1. Nie tworzy mi interfejsu ppp. 

2. po lsusb mam przed modemem cyfry 9042. 2 oznacza, że firmware nie jest załadowany, a mam go w lib/firmware/ueagle-atm. Używam hotpluga (wiem, że staroć, ale muszę to jakkolwiek odpalić, a potem na udev się pobawię)

Dodam, że obie diody są zapalone i nie migają. 

```
pppd call neostrada
```

 przechodzi normalnie. 

Niewiem co zrobić by ten firmware się ładował normalnie, albo żeby chociaż sprawdzić, gdzie jego ładowanie się może sypać...

----------

## mbar

śmiem twierdzić, że katalog /home/neo/ueagle-atm4/driver nie jest używany przez emerge i kompilujesz to ręcznie, co jest bez sensu. skorzystaj z nowszego kernela tak przy okazji (.21).

----------

## GadQ

Co to za różnica, czy kompiluje to ręcznie czy nie ? Paczka ta sama. Jeden plik do skompilowania. Żadnego ./configure tylko Make odrazu. 

A niewiem co mi da przejście z kernela .20(już mam 20) na .21.

Narazie to mam problem z ładowaniem firmware'u, bo sterownik się ładuje z kernela.

----------

## mbar

wywal hotpluga, coldpluga, używaj najnowszego udeva

w tym udevie jest podpowiedź:

```
gateway ~ # cat /lib/udev/firmware.sh

#!/bin/sh -e

FIRMWARE_DIRS="/lib/firmware /usr/local/lib/firmware"

err() {

...

```

----------

## caruso

Hej!

Po krótce:

```

svn co svn://svn.gna.org/svn/ueagleatm/trunk/ueagle-atm ueagle-atm

```

wchodzisz do najgłębszego katalogu i kompilujesz i instalujesz jako moduł jądra

http://eagle-usb.org/ueagle-atm/non-free/ueagle4-data-1.0.tar.gz

To powyżej ładujesz do /lib/firmware/ueagle-atm.

Konfiguracja ppp i kernela jak w zwykłym sterowniku (dla E1 jeśli dobrze pamiętam) z kernela.

----------

## GadQ

Dzisiaj postawiłem system od nowa bo mi się ostatnio coś zepsuło i kumpel przyniósł lapka co by mi rutować neta i żebym mógł emergować.

Zemergowałem najnowsze ppp, dhcpcd, jajko, udev, skonfigurowałem połączenie, wrzuciłem firmware do /lib/firmware i nic.

Firmware'u jak nie ładowało tak nie ładuje. Sterownik ładnie załadowany, a jak wydam polecenie: pppd call neostrada to się pokaże tylko:

```

PLugin pppoatm.so.0.35 loaded.

PPPoATM plugin_init

```

... i nic, stoi. A ppp0 jak nie było tak nie ma.

po

```

dmesg | grep ppp0

```

dostaję coś takiego:

```

DEV: registering device: ID = 'ppp0'

PM: Adding info for no Bus: ppp0

PM: Removing info for no Bus: ppp0

```

w var/log/messages to samo

Tylko 2 linijki jeszcze przed tym są:

```

ppps[9949]: Using interface ppp0

ppps[9949]: Connect: ppp0 <--> /dev/tty2

```

Wypróbowałem już chyba z 10 przepisów na połączenie z neo i jak nie było tak nie ma.

----------

## caruso

Założenia:

U mnie jajko 2.6.20-beyond2

Modem sagem 800 f@st E4 - rozpoznać można po nalepce na spodzie modemu.

Konfiguracja kernela:

```

ATM 

 Networking  ---> 

     Networking options  ---> 

         [*] Asynchronous Transfer Mode (ATM) (EXPERIMENTAL) 

         [*] Classical IP over ATM (EXPERIMENTAL) 

         [ ] LAN Emulation (LANE) support (EXPERIMENTAL) 

         [ ] RFC1483/2684 Bridged protocols 

 

 

 Firmware loader 

 Device Drivers  ---> 

     Generic Driver Options  ---> 

         [*] Select only drivers that don't need compile-time external firmware 

         [*] Prevent firmware from being built 

         [*] Userspace firmware loading support 

   

   

 USB 

 Device Drivers  ---> 

     USB support  ---> 

         [*] Support for Host-side USB 

 

         [*] EHCI HCD (USB 2.0) support 

         [*] OHCI HCD support 

         [*] UHCI HCD (most Intel and VIA) support 

 

     USB DSL modem support  ---> 

        [*] USB DSL modem support 

        [ ]  Speedtouch USB support 

        [ ]  Conexant AccessRunner USB support 

        [ ] ADI 930 and eagle USB DSL modem 

        [ ]  Other USB DSL modem support 

 

 PPP over ATM 

 Device Drivers  ---> 

     Network device support  ---> 

         [*] PPP (point-to-point protocol) support 

         [ ]PPP multilink support (EXPERIMENTAL) 

         [ ]PPP filtering 

         [ ] PPP support for async serial ports 

         [ ] PPP support for sync tty ports 

         [m] PPP Deflate compression 

         [m] PPP BSD-Compress compression 

         [ ] PPP MPPE compression (encryption) (EXPERIMENTAL) (NEW) 

         [ ] PPP over Ethernet (EXPERIMENTAL) 

         [m] PPP over ATM 

```

Z uprawnieniami roota:

```

cd /tmp

svn co svn://svn.gna.org/svn/ueagleatm/trunk/ueagle-atm ueagle-atm

cd ueagle-atm

make && make install

cd /tmp

wget http://eagle-usb.org/ueagle-atm/non-free/ueagle4-data-1.0.tar.gz

tar -zxvf ueagle4-data-1.0.tar.gz

cd ueagle4-data-1.0

cp CMV4p.bin.v2  DSP4p.bin  eagleIV.fw /lib/firmware/ueagle-atm/

modprobe ueagle-atm

```

Odłączamy modem i przyłączamy. Patrzymy w logi dmesga (powinny się pokazać komunikaty podobnych do tych:

```

[ueagle-atm] ADSL device founded vid (0X1110) pid (0X9041) Rev (0X3029): Eagle IV

....

usb 2-1: [ueagle-atm] sending DSP page 33

usb 2-1: [ueagle-atm] sending DSP page 10

usb 2-1: [ueagle-atm] sending DSP page 11

usb 2-1: [ueagle-atm] sending DSP page 12

usb 2-1: [ueagle-atm] sending DSP page 15

usb 2-1: [ueagle-atm] sending DSP page 16

usb 2-1: [ueagle-atm] sending DSP page 23

usb 2-1: [ueagle-atm] sending DSP page 20

usb 2-1: [ueagle-atm] sending DSP page 26

usb 2-1: [ueagle-atm] sending DSP page 27

usb 2-1: [ueagle-atm] sending DSP page 25

usb 2-1: [ueagle-atm] modem operational

usb 2-1: [ueagle-atm] dwData[1] : 27100

usb 2-1: [ueagle-atm] dwData[1] : 9c400

```

Edytujemy/tworzymy pliki:

/etc/ppp/chap-secrets ma wyglądać tak:

(Zakładając dla neostrady)

```

"nazwa_uzytkownika@neostrada.pl" * "haslo"

```

/etc/ppp/peers/neostrada:

```

lock

defaultroute

noipdefault

login

holdoff 4

maxfail 25

persist

asyncmap 0

lcp-echo-interval 2

lcp-echo-failure 7

name uzytkownik@neostrada.pl

user uzytkownik@neostrada.pl

plugin /usr/lib/pppd/2.4.4/pppoatm.so

0.35

```

```

pppd call neostrada

```

 i patrzyć w logi dmesga. Jeśli wszystko pójdzie ok ifconfig powinien pokazać połączenie ppp0.

PS. Opis powinien pozwolić na przyłączenie do neta, stosowałem go u mnie i działa. W innej konfiguracji może jednak brakować czegoś co miałem już wcześniej zainstalowane - jednak w tej chwili nie mogę tego określić  :Smile: 

[EDITED]

zamiast:

```

svn co svn://svn.gna.org/svn/ueagleatm/trunk/ueagle-atm ueagle-atm

cd ueagle-atm

make && make install

```

można zastosować:

```

wget http://download.gna.org/ueagleatm/ueagle-atm-svn-20070330.tar.gz

tar -zxvf ueagle-atm-svn-20070330.tar.gz

cd ueagle-atm-svn-20070330

make && make install

```

Powyższe rozwiązanie powinno być jednak tymczasowe, do czasu zainstalowania svn.

Edited 24/08/2007

Większość ppp powinna być "modularna".

----------

## GadQ

Dzięki, spróbuję w najbliższym możliwym czasie, albo... załatwię sobie jakiegoś rutera z modemem ADSL i przez sieciówkę pociągnę  :Wink: 

----------

## gruszczy

Próbowałem z 2.6.21 i 2.6.22, ale nie chce mi zaladowac modulu usbatm (przy probie ladowania ueagle-atm). Wie ktos, czemu?

----------

## mbar

dmesg wie

----------

## kicus

tez mi go nie laduje, wywala jakies bledy, ale neo dziala bez problemu, probowalem duzo kombinowac zeby modul byl zaladowany ale nie szło nie wiem czemu, modul ten mi sie laduje przy starcie, wywala on blad ale neo dziala  :Very Happy: 

----------

## mjokerm

mam taki problem z tym modemem ( sagem 800)

konfigurowalem wg 

http://zibik.jogger.pl/2007/03/18/neostrada-pod-linuksem-sagem-speedtouch/

nanioslem poprawki ktoire podal caruso i dalej nie dzila

przy l 

```
modprobe pppoatm
```

wyawietla blad

```
FATAL: Module pppoatmnot found

```

```
lsusb
```

wyswietla 9021 - czyli firmware został załadowany

a oto co pokazuje dmesg

```

usb 1-2: new full speed USB device using uhci_hcd and address 6

usb 1-2: configuration #1 chosen from 1 choice

usb 1-2: [ueagle-atm] ADSL device founded vid (0X1110) pid (0X9021) : Eagle II pots

usb 1-2: reset full speed USB device using uhci_hcd and address 6

usb 1-2: [ueagle-atm] using iso mode

usb 1-2: [ueagle-atm] (re)booting started

printk: 49 messages suppressed.

ATM dev 0: usbatm_submit_urb: urb 0xe72c8aa0 submission failed (-28)!

ATM dev 0: usbatm_submit_urb: urb 0xe72c87a0 submission failed (-28)!

...

ATM dev 0: usbatm_submit_urb: urb 0xe72c88a0 submission failed (-28)!

ATM dev 0: usbatm_submit_urb: urb 0xe72c88a0 submission failed (-28)!

usb 1-2: [ueagle-atm] ATU-R firmware version : 44e2ea17

usb 1-2: [ueagle-atm] Modem started, waiting synchronization

printk: 43 messages suppressed.

ATM dev 0: usbatm_submit_urb: urb 0xe72c88a0 submission failed (-28)!

printk: 49 messages suppressed.

ATM dev 0: usbatm_submit_urb: urb 0xe72c88a0 submission failed (-28)!

usb 1-2: [ueagle-atm] modem operational

printk: 49 messages suppressed.

...

...

printk: 49 messages suppressed.

ATM dev 0: usbatm_submit_urb: urb 0xe72c88a0 submission failed (-28)!

printk: 49 messages suppressed.

ATM dev 0: usbatm_submit_urb: urb 0xe72c88a0 submission failed (-28)!

printk: 49 messages suppressed.

ATM dev 0: usbatm_submit_urb: urb 0xe72c88a0 submission failed (-28)!          

```

probowalem na jadrze 2.6.21 i 2.6.22

----------

## mjokerm

ma moze ktos koncepcje jak to obejsc?

----------

## caruso

W kernelu powinno być

Device drivers -> Network device support ->  [m] PPP over ATM.

Ogólnie wszędzie przy modułach rozpoczynających się od "PPP" oprócz  

```
<*>   PPP (point-to-point protocol) support.
```

 Hmm nie wiem dlaczego we wcześniejszym poście dałem *. Widze że modem się synchronizuje i przechodzi do "operational" więc jest ok. 

Czyli zaznacz jak ma być, przekompiluj kernela, moduły itp. Powinno grać.

----------

## GadQ

Dzięki panowie za rady, a szczególnie dziękuję caruso za opis, dzięki któremu udało mi się pozostać w gronie szczęśliwych użytkowników Gentoo.

Zapomniałem dzisiaj o flagach, i przestrzegam: dhcp i atm przed jakimkolwiek emerge ppp  :Wink: 

Czasami można w konfiguracji kernela zobaczyć coś takiego (np. gentoo-sources 2.6.22-r5):

```
 Firmware loader

 Device Drivers  --->

     Generic Driver Options  --->

         [*] Select only drivers that don't need compile-time external firmware

         [*] Prevent firmware from being built

         --- Userspace firmware loading support 

```

Niektórzy mogą się przerazić, że opcja ostatnia: Userspace firmware loading support jest nie do zaznaczenia.

Jednak ona już jest zaznaczona, a --- oznacza, że nie da się tego poprostu odznaczyć.

Nurtują mnie jeszcze 2 rzeczy:

1. Po 

```
pppd call neostrada 
```

czasami tworzy się połączenie widoczne w ifconfig, a czasami nie.

2. Przy ładowaniu modułu ueagle-atm ładowany jest jeszcze jeden zależny od niego: usbatm.

Niestety przy ładowaniu otrzymuję komunikat: WARNING: Error inserting usbatm. (ścieżka) . Invalid module format.

Dodam, że kompilacja tegoż przebiegła bez problemów i ostrzeżeń, a internet o dziwo działa.

Jeszcze raz dziękuję za pomoc ;D

----------

