Bonjour a tous.
Comme vous l'avez peut etre constaté, les PC portables recents n'ont plus de liaison serie RS232 (port DB9).
C'est tres ennuyeux pour moi car je l'utilise encore quasiment tous les jours.
J'ai donc acheté une carte pcmcia permettant d'ajouter un port serie au PC.
J'ai acheté cette carte :http://www.toutpourlamicro.com/art_3105355.asp
Evidemment ca ne marche pas....
Donc voici dans l'ordre les etapes que j'ai suivi :
1) Regarder comment le PC a configuré /dev/ttyS0 apres un demarrage du pc
Pour cela je fais un setserial /dev/ttyS0, j'obtiens :
/dev/ttyS0, UART: unknown, Port: 0x03f8, IRQ: 4
Donc le noyau n'a donc rien detecté a cette adresse. Normal, y'a pas de port serie sur le PC.
2) Inserer la carte pcmcia et regarder ce qui se passe dans syslog :
Sep 28 15:08:48 localhost kernel: PCI: Enabling device 0000:02:00.0 (0000 -> 0003)
Sep 28 15:08:48 localhost kernel: ACPI: PCI interrupt 0000:02:00.0[A] -> GSI 10 (level, low) -> IRQ 10
Sep 28 15:08:49 localhost pci.agent[3243]: ... no modules for PCI slot 0000:02:00.0
Bon, hotplug n'a pas trouvé de module, ca aurait été trop beau
3) Regarder ce que donne lspci :
02:00.0 Serial controller: Oxford Semiconductor Ltd OXCB950 Cardbus 16950 UART (prog-if 06 [16950])
Subsystem: Oxford Semiconductor Ltd: Unknown device 0001
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Interrupt: pin A routed to IRQ 10
Region 0: I/O ports at 2010 [size=8]
Region 1: Memory at ec100000 (32-bit, non-prefetchable) [size=4K]
Region 2: I/O ports at 2000 [size=16]
Region 3: Memory at ec101000 (32-bit, non-prefetchable) [size=4K]
Region 4: Memory at ec102000 (32-bit, non-prefetchable) [size=4K]
Capabilities: [40] Power Management version 1
Flags: PMEClk- DSI- D1- D2+ AuxCurrent=0mA PME(D0+,D1-,D2+,D3hot+,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
Ici on voit que la carte a été reconnue, il s'agit bien d'un OXCB950.
Je vois que lspci me donne les zones memoires des I/O ports, donc pourquoi ne pas les utiliser avec setserial ?
4) Essayer de configuer /dev/ttyS0 avec setserial :
J'essaye un setserial /dev/ttyS0 port 0x2010 irq 10 autoconfig
Ensuite je fais un setserial /dev/ttyS0 pour verifier si l'uart a été detectée et j'obtiens :
/dev/ttyS0, UART: 16950/954, Port: 0x2010, IRQ: 0
Donc setserial, qui je crois cause avec le noyau, a bien detecté l'uart comme une 16950/954
Malheureusement, lorsqu'avec minicom j'essaye d'ouvrir /dev/ttyS0 pour essayer la liaison serie, ca ne marche pas...
Des idées ? Il me semble bien que le noyau gere les uarts 16950 non ?
Merci a tous
Message édité par nlc le 28-09-2005 à 16:19:45