diff options
| -rw-r--r-- | drivers/staging/lirc/TODO.lirc_zilog | 36 |
1 files changed, 30 insertions, 6 deletions
diff --git a/drivers/staging/lirc/TODO.lirc_zilog b/drivers/staging/lirc/TODO.lirc_zilog index 6aa312df4018..2d0263f07937 100644 --- a/drivers/staging/lirc/TODO.lirc_zilog +++ b/drivers/staging/lirc/TODO.lirc_zilog | |||
| @@ -1,13 +1,37 @@ | |||
| 1 | The binding between hdpvr and lirc_zilog is currently disabled, | 1 | 1. Both ir-kbd-i2c and lirc_zilog provide support for RX events. |
| 2 | The 'tx_only' lirc_zilog module parameter will allow ir-kbd-i2c | ||
| 3 | and lirc_zilog to coexist in the kernel, if the user requires such a set-up. | ||
| 4 | However the IR unit will not work well without coordination between the | ||
| 5 | two modules. A shared mutex, for transceiver access locking, needs to be | ||
| 6 | supplied by bridge drivers, in struct IR_i2_init_data, to both ir-kbd-i2c | ||
| 7 | and lirc_zilog, before they will coexist usefully. This should be fixed | ||
| 8 | before moving out of staging. | ||
| 9 | |||
| 10 | 2. References and locking need careful examination. For cx18 and ivtv PCI | ||
| 11 | cards, which are not easily "hot unplugged", the imperfect state of reference | ||
| 12 | counting and locking is acceptable if not correct. For USB connected units | ||
| 13 | like HD PVR, PVR USB2, HVR-1900, and HVR1950, the likelyhood of an Ooops on | ||
| 14 | unplug is probably great. Proper reference counting and locking needs to be | ||
| 15 | implemented before this module is moved out of staging. | ||
| 16 | |||
| 17 | 3. The binding between hdpvr and lirc_zilog is currently disabled, | ||
| 2 | due to an OOPS reported a few years ago when both the hdpvr and cx18 | 18 | due to an OOPS reported a few years ago when both the hdpvr and cx18 |
| 3 | drivers were loaded in his system. More details can be seen at: | 19 | drivers were loaded in his system. More details can be seen at: |
| 4 | http://www.mail-archive.com/linux-media@vger.kernel.org/msg09163.html | 20 | http://www.mail-archive.com/linux-media@vger.kernel.org/msg09163.html |
| 5 | More tests need to be done, in order to fix the reported issue. | 21 | More tests need to be done, in order to fix the reported issue. |
| 6 | 22 | ||
| 7 | There's a conflict between ir-kbd-i2c: Both provide support for RX events. | 23 | 4. In addition to providing a shared mutex for transceiver access |
| 8 | Such conflict needs to be fixed, before moving it out of staging. | 24 | locking, bridge drivers, if able, should provide a chip reset() callback |
| 25 | to lirc_zilog via struct IR_i2c_init_data. cx18 and ivtv already have routines | ||
| 26 | to perform Z8 chip resets via GPIO manipulations. This will allow lirc_zilog | ||
| 27 | to bring the chip back to normal when it hangs, in the same places the | ||
| 28 | original lirc_pvr150 driver code does. This is not strictly needed, so it | ||
| 29 | is not required to move lirc_zilog out of staging. | ||
| 30 | |||
| 31 | 5. Both lirc_zilog and ir-kbd-i2c support the Zilog Z8 for IR, as programmed | ||
| 32 | and installed on Hauppauge products. When working on either module, developers | ||
| 33 | must consider at least the following bridge drivers which mention an IR Rx unit | ||
| 34 | at address 0x71 (indicative of a Z8): | ||
| 9 | 35 | ||
| 10 | The way I2C probe works, it will try to register the driver twice, one | 36 | ivtv cx18 hdpvr pvrusb2 bt8xx cx88 saa7134 |
| 11 | for RX and another for TX. The logic needs to be fixed to avoid such | ||
| 12 | issue. | ||
| 13 | 37 | ||
