If your BIOS has settings for IRDA or SIR, then I challenge you to figure
out what "IO" chip you have. It appears the BIOS may not give you all th=
features built into your computer. For example, I discovered my "IO" chi=
can do IR remote control, it can read temperatures and voltages on my=20
I found out when I put my scope on my IRDA header to see what came
out of it. I just happened to notice a chip next to it, and looked up=20
I wonder what common parts are used on other main-boards or in laptops?
If there is no Pnp info(as in PCI) then I guess you may have to tear the =
apart and look for chip labels to determine this.
I'm curious if laptops with built in IR maybe have CIR options. Laptops
would be a tough one because you can't open them easily.
Just noticed Hans-G=FCnter L=FCtke Uphues made a driver for the ITE IT870=
chip(the one I was just discovering on my main-board).
Neat. Maybe I can help test/document how to use it and identify it.
Following are some of my notes on investigating my mainboard IRDA port.
Testing on my motherboard:
Header like this:
RESV o KEY
+5v o o GND
IRTX o o IRRX
Bios settings include:
<ASK> <IRDA> or <NONE>
Turning on ASK, if I open ttyS1 I get serial port transmit
data on IRTX pin, normally low, active high pulses. 500khz
modulation on active high pulses.
Turning on IRDA, ttyS1 serial data is seen as pulses of width
3/16 RS232 bit. Active high.
Both cases, if I set TX active(BREAK) condition, I get a continuous
stream out(500Khz ASK, or 3/16 RS232 bitrate if IRDA).
Did not try much with Rx data pin(it would not loopback full-duplex
After these tests I looked for a chip next to the IR header and found
a ITE IT8705F io chip. Downloaded the spec. It supports various
motherboard IO, most interesting is ASKIR/IRDA-SIR and Consumer
Remote Control IR(TV Remote). This CIR support included Power On
control. The data sheet showed an impressive controller for general
IR control including 32-byte FIFO's. Tx data format as bit-string
or run-length. Run-length described as 8 bit bytes, where bit 7
is used for the on/off, while bits 0-6 are for bit width.
Supports 32-57khz modulation. Demodulation optional. High speed
Looked at /proc/pci but did not find device. Looking at spec it
shows a INTEL LPC(Low Pin Count) interface, and some of the LPC
pin descriptions show a 4-bit bi-directional data bus.
Spec indicated the IR tx & rx signals could be optionally routed
to IRDA pins or to MIDI pins.
-------------- 2 other boxes, P250Mhz Socket7 --------------------
Bios indicates HPSIR, or ASKIR IR modes.
IR selections: NORMAL, 3f8,2f8,3e8,2e8.
Chipset: ITE 8770F (can't find chipset spec, must be old :(
-------------------- INTEL LPC Spec -------------------
Got Intel LPC spec. Shows 4bit address/data bus scheme where
host maps general IO into this. IO is configured via address/data
2 byte index register. Suggests 2E-2FH or 4E-4FH.
------------ Accessing the Super IO chip
Codeman is a program to play with IR hardware
Test Case to run: 4
ITE-8705F Super IO Chip Found
CIR enable reg:0H
CIR Base address MSB:0H, LSB:0H
CIR IRQ level reg:0H
CIR IRQ sharing reg:6H
MIDI enable reg:1H
MIDI Base address MSB:3H, LSB:0H
MIDI IRQ level reg:5H
MIDI special ctrl reg:0H
EC Base address MSB:2H, LSB:90H
EC=3D66H 9cH d3H baH c1H e1H 41H c1H e1H 1fH 29H 2bH
(the above EC registers are motherboard voltage and temperature readings)
5-12-02 No luck yet getting CIR transmit data out IR header. May try
routing to MIDI output pins next.
5-13-02 I notice Hans-G=FCnter L=FCtke Uphues already wrote
a driver for this chip(lirc_it87). Great!
--------------- Important notes on Super IO chip:
This chip is hidden and hard to identify. Normally just the
BIOS configures it and the kernel just sees it as peripherals
at standard IO locations. This chip offers some interesting
things including temperature & voltage main board readings,
and various low level IO configuration options. For example
I may be able to route CIR signals to the IRDA header or the
MIDI/game port. The CIR hardware allows fine tuning to various
modulation frequencies, the modulation is optional, etc.
The CIR capability was not even listed in the BIOS.