]> nv-tegra.nvidia Code Review - linux-2.6.git/blob - drivers/staging/media/lirc/TODO.lirc_zilog
staging: Move media drivers to staging/media
[linux-2.6.git] / drivers / staging / media / lirc / TODO.lirc_zilog
1 1. Both ir-kbd-i2c and lirc_zilog provide support for RX events for
2 the chips supported by lirc_zilog.  Before moving lirc_zilog out of staging:
3
4 a. ir-kbd-i2c needs a module parameter added to allow the user to tell
5    ir-kbd-i2c to ignore Z8 IR units.
6
7 b. lirc_zilog should provide Rx key presses to the rc core like ir-kbd-i2c
8    does.
9
10
11 2. lirc_zilog module ref-counting need examination.  It has not been
12 verified that cdev and lirc_dev will take the proper module references on
13 lirc_zilog to prevent removal of lirc_zilog when the /dev/lircN device node
14 is open.
15
16 (The good news is ref-counting of lirc_zilog internal structures appears to be
17 complete.  Testing has shown the cx18 module can be unloaded out from under
18 irw + lircd + lirc_dev, with the /dev/lirc0 device node open, with no adverse
19 effects.  The cx18 module could then be reloaded and irw properly began
20 receiving button presses again and ir_send worked without error.)
21
22
23 3. Bridge drivers, if able, should provide a chip reset() callback
24 to lirc_zilog via struct IR_i2c_init_data.  cx18 and ivtv already have routines
25 to perform Z8 chip resets via GPIO manipulations.  This would allow lirc_zilog
26 to bring the chip back to normal when it hangs, in the same places the
27 original lirc_pvr150 driver code does.  This is not strictly needed, so it
28 is not required to move lirc_zilog out of staging.
29
30 Note: Both lirc_zilog and ir-kbd-i2c support the Zilog Z8 for IR, as programmed
31 and installed on Hauppauge products.  When working on either module, developers
32 must consider at least the following bridge drivers which mention an IR Rx unit
33 at address 0x71 (indicative of a Z8):
34
35         ivtv cx18 hdpvr pvrusb2 bt8xx cx88 saa7134
36