В общем, Необходимо поставить Linux на вот такую POS-систему:
http://www.ebn.com.tw/product/specification.php?id=26&type_id=5 Из-за особенностей дисплея, иксы запустились лишь на убунте. РедХат 9 даже в текстмоде не смог работать с дисплеем. Встала лишь Kubuntu 7.04. Дрова нашлись на всё, кроме тачскрина и устройства чтения смарт-карт. Дрова есть лишь под RedHat. Ubuntu с ними работать не хочет. По мануалу установки дров многие системные каталоги различаются. Каким образом можно адаптировать эти драйвера на Ubuntu?
Возможно просто подстроить драйвер под Ubuntu? Или нужно полностью его переписывать? Или дрова под ядро 2.4 абсолютно не подходят?
Вот что написано в мануале:
[more=В первом:]
Installation
### Note capital letters and small letters. ###
2.1 In case of Red Hat Linux 6.2J and TurboLinux Server Japanese 6.1 .
(LINUX Kernel Version is 2.2.14 and Xfree86 Version is 3.3.6)
(1) Copy "FidFont" in the directory of "/etc"
(2) Copy "xf86Fidt.so" in the directory of "/usr/X11R6/lib/modules"
(3) Modify the Xfree86 configuration file as the following 1) 2) 3).
In most cases the "XF86Config" file is located in "/etc/x11"
(or in "/etc").
1)Add "ModulePath" of the Files section.
Section "Files"
.
.
ModulePath "/usr/X11R6/lib/modules"
EndSection
2)Add the "Module" section.
Section "Module"
Load "xf86Fidt.so"
EndSection
3)Add the "XInput" section.
1. Serial interface Touch Panel Setting
Section "XInput"
SubSection "FidTouchPanel"
DeviceName "fidtouch"
Port "/dev/ttyS0" # your serial port
interfacetype "serial"
SetRate 5
Beep 0
Freq 1000
Duration 50
BeepTiming 0
SpinTop 0
XYConvert 0
EEPROM 0
alwayscore
EndSubSection
EndSection
This sample parameter is the following setting.
* Connected port = /dev/ttyS0
(In most cases the "/dev/ttyS0" is the Serial1(com1) port.)
* Coordinates sending interval = 25ms (5*5ms)
* Beep is not sounded
* Frequency of Beep = 1000Hz
* Beep time = 50ms
* Beep rings when touching.
* There is no coordinates rotation.
* X and Y coordinates are not converted.
* EEPROM Calibration Data isn't used.
* The touch panel is always used.[/more]
[more=и втором:]
1.Auto setting when Linux booting:
example:
Append to file /etc/rc.local below
setserial /dev/ttyS2 uart 16550a port 0x3e8 irq 11 ^fourport
setserial /dev/ttyS3 uart 16550a port 0x2e8 irq 10 ^fourport
setserial /dev/ttyS4 uart 16550a port 0x2e0 irq 10 ^fourport
setserial /dev/ttyS5 uart 16550a port 0x3e0 irq 11 ^fourport
2. In case of Linux Red Hat 9
(1) Copy "FidTouch_drv.o" in the directory of "/usr/X11R6/lib/modules/input"
(2) Copy "FidFont" in the directory of "etc"
(3) Modify the Xfree86 configuration file as the following 1) 2).
In most cases the "XF86Config" file is located in "/etc/x11"
1)Add "InputDevice" of the ServerLayout section.
Section "ServerLayout"
.
.
InputDevice "TouchPanel" "alwaysCore"
EndSection
2)Add the "InputDevice" section.
1. Serial interface Touch Panel Setting
Section "InputDevice"
Identifier "TouchPanel"
Driver "FidTouch"
Option "DeviceName" "fidtouch"
Option "Device" "/dev/ttyS5"
Option "interfacetype" "serial"
Option "SetRate" "5"
Option "Beep" "1"
Option "Freq" "1000"
Option "Duration" "50"
Option "BeepTiming" "0"
Option "SpinTop" "0"
Option "XYConvert" "0"
Option "EEPROM" "0"
EndSection[/more]