LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Hardware (http://www.linuxquestions.org/questions/linux-hardware-18/)
-   -   Getting a touch screen to work, must get PCI serial device to work first (http://www.linuxquestions.org/questions/linux-hardware-18/getting-a-touch-screen-to-work-must-get-pci-serial-device-to-work-first-673762/)

sternocera 10-02-2008 11:00 AM

Getting a touch screen to work, must get PCI serial device to work first
 
Hello,

I have a J2 900 retail computer with an elo touchscreen. J2 themselves do not support Linux, but it seems fairly well supported by elo touchsystems, I guess because of the frequent use of Linux in embedded systems.

According to a J2 support technician, the J2 900 uses an elo e271-2210, a 9600 baud touchscreen controller that uses PS/2, rather than a direct serial interface. In MS windows, the touchscreen appears under COM5, a virtual serial interface, as a "NetMos PCI serial port". However, all of Elotouch's documentation seems to be predicated on the touch screen being connected to an actual serial port - I guess this means I should be able to "cat /dev/ttyS0" and see bytes appear on screen as I touch it, just like when I "cat /dev/input/mouse0" and move the mouse. However, this doesn't happen with any of the 4 serial interfaces (ttyS0 - ttyS3) that udev makes available. The computer has 4 actual serial ports, so these device nodes must correspond to those.

I guess I need to make this NetMos PCI serial controller working. I'm using xubuntu 8.04.

Here's my lsmod:
Code:

Module                  Size  Used by
ipv6                  267780  8
i915                  32512  2
drm                    82452  3 i915
af_packet              23812  2
rfcomm                41744  2
l2cap                  25728  13 rfcomm
bluetooth              61156  4 rfcomm,l2cap
ppdev                  10372  0
speedstep_lib          6532  0
cpufreq_powersave      2688  0
cpufreq_userspace      5284  0
cpufreq_ondemand        9740  0
cpufreq_stats          7104  0
freq_table              5536  2 cpufreq_ondemand,cpufreq_stats
cpufreq_conservative    8712  0
container              5632  0
sbs                    15112  0
sbshc                  7680  1 sbs
video                  19856  0
output                  4736  1 video
dock                  11280  0
battery                14212  0
iptable_filter          3840  0
ip_tables              14820  1 iptable_filter
x_tables              16132  1 ip_tables
ac                      6916  0
lp                    12324  0
loop                  18948  0
snd_intel8x0          35356  1
snd_ac97_codec        101028  1 snd_intel8x0
ac97_bus                3072  1 snd_ac97_codec
evdev                  13056  3
snd_pcm_oss            42144  0
snd_mixer_oss          17920  1 snd_pcm_oss
snd_pcm                78596  3 snd_intel8x0,snd_ac97_codec,snd_pcm_oss
parport_pc            36260  1
parport                37832  3 ppdev,lp,parport_pc
snd_seq_dummy          4868  0
snd_seq_oss            35584  0
snd_seq_midi            9376  0
snd_rawmidi            25760  1 snd_seq_midi
snd_seq_midi_event      8320  2 snd_seq_oss,snd_seq_midi
snd_seq                54224  6 snd_seq_dummy,snd_seq_oss,snd_seq_midi,snd_seq_midi_event
snd_timer              24836  2 snd_pcm,snd_seq
snd_seq_device          9612  5 snd_seq_dummy,snd_seq_oss,snd_seq_midi,snd_rawmidi,snd_seq
snd                    56996  13 snd_intel8x0,snd_ac97_codec,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_seq_dummy,snd_seq_oss,snd_rawmidi,snd_seq,snd_timer,snd_seq_device
pcspkr                  4224  0
soundcore              8800  1 snd
button                  9232  0
snd_page_alloc        11400  2 snd_intel8x0,snd_pcm
shpchp                34452  0
iTCO_wdt              13092  0
iTCO_vendor_support    4868  1 iTCO_wdt
pci_hotplug            30880  1 shpchp
intel_agp              25492  1
agpgart                34760  3 drm,intel_agp
ext3                  136712  1
jbd                    48404  1 ext3
mbcache                9600  1 ext3
sg                    36880  0
usbhid                31872  0
hid                    38784  1 usbhid
sd_mod                30720  3
pata_acpi              8320  0
ata_generic            8324  0
8139too                27520  0
ata_piix              19588  2
8139cp                24704  0
mii                    6400  2 8139too,8139cp
libata                159344  3 pata_acpi,ata_generic,ata_piix
ehci_hcd              37900  0
uhci_hcd              27024  0
scsi_mod              151436  3 sg,sd_mod,libata
usbcore              146028  4 usbhid,ehci_hcd,uhci_hcd
thermal                16796  0
processor              36872  2 thermal
fan                    5636  0
fbcon                  42912  0
tileblit                3456  1 fbcon
font                    9472  1 fbcon
bitblit                6784  1 fbcon
softcursor              3072  1 bitblit
fuse                  50708  1

Here's my lspci. No references to the NetMos, unfortunately:
Code:

00:00.0 Host bridge: Intel Corporation 82852/82855 GM/GME/PM/GMV Processor to I/O Controller (rev 02)
00:00.1 System peripheral: Intel Corporation 82852/82855 GM/GME/PM/GMV Processor to I/O Controller (rev 02)
00:00.3 System peripheral: Intel Corporation 82852/82855 GM/GME/PM/GMV Processor to I/O Controller (rev 02)
00:02.0 VGA compatible controller: Intel Corporation 82852/855GM Integrated Graphics Device (rev 02)
00:02.1 Display controller: Intel Corporation 82852/855GM Integrated Graphics Device (rev 02)
00:1d.0 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (rev 02)
00:1d.1 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (rev 02)
00:1d.2 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (rev 02)
00:1d.7 USB Controller: Intel Corporation 82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 82)
00:1f.0 ISA bridge: Intel Corporation 82801DB/DBL (ICH4/ICH4-L) LPC Interface Bridge (rev 02)
00:1f.1 IDE interface: Intel Corporation 82801DB (ICH4) IDE Controller (rev 02)
00:1f.3 SMBus: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (rev 02)
00:1f.5 Multimedia audio controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (rev 02)
01:04.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)

Thanks a lot,
Sternocera

sternocera 10-02-2008 11:21 AM

Update: This device is a "NetMos 9835 PCI Multi-I/O controller", according to MS windows' device manager.

sternocera 10-03-2008 06:23 AM

Another update: This computer doesn't have a NetMos at all, it turns out! No wonder nothing was listed under lspci! That actually only applied to an earlier, slightly different model.

However, it does have 5 regular serial ports (no virtual ones), of which only 4 are associated with a ttyS*, as you already know.

Code:

# serserial -g /dev/ttyS*
/dev/ttyS0, UART: 16550A, Port: 0x03f8, IRQ: 4
/dev/ttyS1, UART: 16550A, Port: 0x02f8, IRQ: 3
/dev/ttyS2, UART: 16550A, Port: 0x03e8, IRQ: 10
/dev/ttyS3, UART: 16550A, Port: 0x02e8, IRQ: 10

I'm not sure where they appear under lspci, but I suspect they may be connected to an ide controller(is that possible?):
Code:

# lspci -v
* snip *
00:1f.1 IDE interface: Intel Corporation 82801DB (ICH4) IDE Controller (rev 02) (prog-if 8a [Master SecP PriP])
        Subsystem: Intel Corporation Unknown device 24c2
        Flags: bus master, medium devsel, latency 0, IRQ 9
        I/O ports at 01f0 [size=8]
        I/O ports at 03f4 [size=1]
        I/O ports at 0170 [size=8]
        I/O ports at 0374 [size=1]
        I/O ports at f000 [size=16]
        Memory at 10000000 (32-bit, non-prefetchable) [size=1K]
*snip *

The question is, how do I add a new device node for the 5th serial port? I attempt to mknod, and then setserial, but the documentation for these things is mainly aimed at people setting up null modems and things, and is quite complex, while I suspect what I want can be done quite simply.

Thanks


All times are GMT -5. The time now is 03:11 PM.