Repository 32bit  Forum
Repository 64bit  Wiki

Hamlet (Lucent) Modem PC-Card Mini HOWTO

Da Slacky.eu.


Questo documento descrive come configurare la scheda PC-Card modem Hamlet FM 560 (chipset Lucent) per funzionare con GNU/Linux. 
La Versione originale è scritta in italiano.


Indice

Copyright e ringraziamenti

The document is licensed under GNU Free Documentation License , version 1.1.

Grazie a Filippo Bardelli, per le informazioni sul reperimento della scheda e sulle dritte per la configurazione.

Reperire i sorgenti

I sorgenti necessari sono:

supporto pcmcia 
pcmcia-cs-3.1.33.tar.gz 
http://www.physcip.uni-stuttgart.de/heby/ltmodem/pcmcia 
drivers lucent 
ltmodem-8.22_cs-3.1.33.tar.gz 
http://sourceforge.net/project/showfiles.php?group_id=2405

Configurazione del kernel

Il kernel è un 2.4.18 , le linee relative alla configurazione della pcmcia e delle porte seriali sono indicate di seguito (il supporto per la scheda lan pcmcia non è necessario, usando anche una cardbus Realtek 8139 l'ho attivato).

...
# General setup
#
CONFIG_NET=y
CONFIG_PCI=y
....
CONFIG_HOTPLUG=y
...
#
# PCMCIA/CardBus support
#
CONFIG_PCMCIA=m
CONFIG_CARDBUS=y
CONFIG_I82092=y
# CONFIG_I82365 is not set
# CONFIG_TCIC is not set
...
# CONFIG_PLIP is not set
CONFIG_PPP=m
# CONFIG_PPP_MULTILINK is not set
CONFIG_PPP_FILTER=y
CONFIG_PPP_ASYNC=m
# CONFIG_PPP_SYNC_TTY is not set
CONFIG_PPP_DEFLATE=m
CONFIG_PPP_BSDCOMP=m
# CONFIG_PPPOE is not set
...
#
# PCMCIA network device support
#
CONFIG_NET_PCMCIA=y
...
#
# Character devices
#
...
CONFIG_SERIAL=m
CONFIG_SERIAL_EXTENDED=y
# CONFIG_SERIAL_MANY_PORTS is not set
CONFIG_SERIAL_SHARE_IRQ=y
CONFIG_SERIAL_DETECT_IRQ=y
...
#
# PCMCIA character devices
#
CONFIG_PCMCIA_SERIAL_CS=m
...

Compilazione e configurazione del supporto PCMCIA

Decomprimere l'archivio, questo genera una directory chiamata pcmcia-cs-3.1.3 contenente l'albero dei sorgenti, e la documentazione per la soluzione di eventuali problemi conosciuti.

$tar -xzvf pcmcia-cs-3.1.33.tar.gz

copiare i drivers lucent all'interno della dir. appena creata, quindi decomprimerli

$tar -xzvf ltmodem_cs.tar.gz

verrà creata una nuova subdirectory chiamata 'non-free ' ; nella dir. ' clients' verranno copiati 4 files ( ltmodem.c, ltmodem_cs.c, ltmodem_cs.mk and ltserial-2.4.c ), sono i sorgenti del modulo Lucent ltmodem_cs.o.

Nella dir. ' etc ' verranno copiati 3 files ( ltmodem, ltmodem.conf e ltmodem.opts ) nella dir. ' pcmcia-cs-3.1.33' verrà inoltre copiato un nuovo ' ltmodem.mk ' che controlla la compilazione del modulo , oltre ad uno script sh che si occupa di creare il device file ( /dev/ttyLT0 ) ed il link simbolico /dev/modem che lo punta.

Prima di compilare, sarebbe necessario editare il file ' ltmodem.conf ' andando ad inserire il nome con il quale la scheda si presenta al bus.

Ho detto 'sarebbe' perché la scheda Hamlet non ha un nome esplicativo, quindi non è riconosciuta, caricando quindi il supporto generico per seriale standard ( serial_cs ).

Nell'(auspicato) caso in cui il costruttore decidesse di modificare la scheda, indico come fare:

lanciare , dopo aver inserito la scheda

#cardctl ident

apparirà l'identificativo del prodotto, in questo caso:

Socket 0:
  no product info available
Socket 1:
  product info: "LT WIN MODEM", "PC card", "", ""
  function: 2 (serial)

Nel caso di prodotti che indicano MANF-ID e modello, sarebbe necessario modificare ' ltmodem.conf ' aggiungendo (esempio):

#Added for Lucent Technologies LinModem
device "ltmodem_cs"
  class "ltmodem" module "ltmodem_cs"
# Added for GERICOm V.90 FAX modem
card "PCMCIA V.90 Communication Device"
  manfid 0x018a, 0x0001
  bind "ltmodem_cs"

Per permettere il caricamento del modulo, previa riconoscimento della scheda.

Nel nostro caso, invece, l'inserimento della linea

"LT WIN MODEM", "PC card",

genera esclusivamente l'errore " Anonymous Memory " :(

ci limiteremo, quindi, molto semplicemente, a far caricare il modulo ltmodem_cs sempre, nel caso di schede generiche / non riconosciute, di tipo seriale, inserendo:

card "Serial or Modem"
  function serial_port
   bind "ltmodem_cs"

Inoltre nel file ' rules.mk ', sostituire

MD=$(PREFIX)$(MODDIR)/pcmcia

con

MD=/lib/modules/2.4.18/pcmcia

Compilazione del supporto pcmcia-cs con i moduli ltmodem

Per evitare errori in fase di configurazione, è necessario creare un link chiamato ltmdmobj.o che punti a ltmdmobx-x.xx.o che si trova nella directory ' non-free ' , lanciare cioè:

$ ln -s ltmdmobj-x.xx.o ltmdmobj.o 

sostituendo x.xx con 5.99, 6.00 o 8.22 (la versione che si vuole utilizzare).

A questo punto, lanciare (accettando i parametri di default, se il kernel che si utilizza ha i sorgenti in /usr/src/linux )

$ make config 
$ make all
$ su
<password>
#make install 

NB (io, ho usato ' checkinstall ' non ' make install ', per pacchettizzare il tutto, funzia..)

Testare il nuovo driver

Riavviare cardmgr

#kill -HUP <cardmgr-pid> 

cardmgr verrà riavviato, con la nuova configurazione, e dovrebbe trovare il modem.

Infatti, da lsmod

Module                   Size  Used by    Tainted: P
serial                   43492   1        (autoclean)
ds                       6344    2
yenta_socket             8352    2
pcmcia_core              37504   0        [ds yenta_socket]

E, da var/log/messages

Aug 20 15:43:30 mdk cardmgr[81]: socket 1: Serial or Modem
Aug 20 15:43:30 mdk kernel: cs: memory probe 0xa0000000-0xa0ffffff: clean.
Aug 20 15:43:30 mdk cardmgr[81]: executing: 'modprobe ltmodem_cs'
Aug 20 15:43:31 mdk cardmgr[81]: executing: './ltmodem start ttyLT0'
Aug 20 15:43:31 mdk kernel: : index 0x22: Vcc 5.0, irq 7, io 0x03e8-0x03ef
Aug 20 15:43:31 mdk kernel: Lucent Modem Interface driver version 8.22 (2002-04-11) with SHARE_IRQ enabled
Aug 20 15:43:31 mdk kernel: ttyLT00 at 0x03e8 (irq = 7) is a Lucent Modem

I file di configurazione

/etc/pcmcia/config

#
# PCMCIA Card Configuration Database
# 
# config 1.199 2002/02/26 04:56:57 (David Hinds)
#

# config.opts is now included at the very end.  In general, it is a
# good idea to add things to that file rather than to this one.

#
# Device driver definitions
#
# These should generally not be changed!
#

 

device "ltmodem_cs"
  class "ltmodem" module "ltmodem_cs"

...


#
# Modems and other serial devices
#
# NOTE: most modems do not need explicit entries here, because they
# are correctly identified using the following generic entry.
#
card "Serial or Modem"
  function serial_port
  bind "ltmodem_cs"

...

# Include configuration files for add-on drivers

source ./*.conf

# Include local configuration settings

source ./config.opts

/etc/modules.conf

La macchina utilizzata

Questo Mini HOWTO è stato redatto utilizzando Slackware GNU/Linux 8.1

La macchina è un portatile Hp Xe3 PIII 933, 256Mb RAM, 30 Gb Hd, video S3 Savage, TFT 15"

da /proc/pci :


   Host bridge: Intel Corp. 440BX/ZX - 82443BX/ZX Host bridge (rev 3).
     
   PCI bridge: Intel Corp. 440BX/ZX - 82443BX/ZX AGP bridge (rev 3).
   
   CardBus bridge: Texas Instruments PCI1420 (rev 0).
        
   Bridge: Intel Corp. 82371AB PIIX4 ACPI (rev 3).
   
   Ethernet controller: Accton Technology Corporation EN-1216 Ethernet Adapter
   VGA compatible controller: S3 Inc. 86C270-294 Savage/IX-MV (rev 19).
   

Altre configurazioni funzionanti

Di seguito alcune configurazioni di macchine sulle quali la scheda funziona correttamente, chiunque può aggiungere le proprie, se significative.

Portatile Acer Travelmate 529 Tx PIII 850 Mhz, 192 Mb RAM, Slackware 8.0 kernel 2.4.18

da /proc/pci :

Host bridge: Acer Laboratories Inc. [ALi] M1621 (rev 05)

PCI bridge: Acer Laboratories Inc. [ALi] M5247 (rev 01)

Ethernet controller: Intel Corporation 82557 [Ethernet Pro 100] (rev 08) 

IDE interface: Acer Laboratories Inc. [ALi] M5229 IDE (rev c3)

Bridge: Acer Laboratories Inc. [ALi] M7101 PMU 

CardBus bridge: O2 Micro, Inc. OZ6933 Cardbus Controller (rev 01)

VGA compatible controller: ATI Technologies Inc 3D Rage P/M Mobility AGP 2x (rev 64)   

Links

http://linmodems.technion.ac.il/Linmodem-howto.html

http://linmodems.org

http://www.lectron.com.tw/DOWNLOAD/PCI MODEM.htm

http://www.heby.de/ltmodem

http//pcmcia-cs.sourceforge.net/ftp/README-2.4

http://pcmcia-cs.sourceforge.net/ftp/SUPPORTED.CARDS

http://metalab.unc.edu/mdw/HOWTO/PCMCIA-HOWTO-4.html#ss4.4

http://www.cs.utexas.edu/users/kharker/Linux-laptop


Michele Asciutti 
m.m.asciutti@email.it 
Revision 1.0.0 
2002/08/16 
Revised by:
Strumenti personali
Namespace

Varianti