History

[media] lirc_zilog: Update TODO.lirc_zilog

Andy Walls committed 15 years ago

Commit 1f1bfaa1 parent c2790c71 file · +30 −6Browse files

Showing the changes to drivers/staging/lirc (1 of 1 file). Show all

Unified · Split

drivers/staging/lirc/TODO.lirc_zilog+30−6
@@ -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,
218 due to an OOPS reported a few years ago when both the hdpvr and cx18
319 drivers were loaded in his system. More details can be seen at:
420 http://www.mail-archive.com/linux-media@vger.kernel.org/msg09163.html
521 More tests need to be done, in order to fix the reported issue.
622
7−There's a conflict between ir-kbd-i2c: Both provide support for RX events.
8−Such conflict needs to be fixed, before moving it out of staging.
23+4. In addition to providing a shared mutex for transceiver access
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):
935
10−The way I2C probe works, it will try to register the driver twice, one
11−for RX and another for TX. The logic needs to be fixed to avoid such
12−issue.
36+ ivtv cx18 hdpvr pvrusb2 bt8xx cx88 saa7134
1337