| 1. Both ir-kbd-i2c and lirc_zilog provide support for RX events for |
| the chips supported by lirc_zilog. Before moving lirc_zilog out of staging: |
| |
| a. ir-kbd-i2c needs a module parameter added to allow the user to tell |
| ir-kbd-i2c to ignore Z8 IR units. |
| |
| b. lirc_zilog should provide Rx key presses to the rc core like ir-kbd-i2c |
| does. |
| |
| |
| 2. lirc_zilog module ref-counting need examination. It has not been |
| verified that cdev and lirc_dev will take the proper module references on |
| lirc_zilog to prevent removal of lirc_zilog when the /dev/lircN device node |
| is open. |
| |
| (The good news is ref-counting of lirc_zilog internal structures appears to be |
| complete. Testing has shown the cx18 module can be unloaded out from under |
| irw + lircd + lirc_dev, with the /dev/lirc0 device node open, with no adverse |
| effects. The cx18 module could then be reloaded and irw properly began |
| receiving button presses again and ir_send worked without error.) |
| |
| |
| 3. Bridge drivers, if able, should provide a chip reset() callback |
| to lirc_zilog via struct IR_i2c_init_data. cx18 and ivtv already have routines |
| to perform Z8 chip resets via GPIO manipulations. This would allow lirc_zilog |
| to bring the chip back to normal when it hangs, in the same places the |
| original lirc_pvr150 driver code does. This is not strictly needed, so it |
| is not required to move lirc_zilog out of staging. |
| |
| Note: Both lirc_zilog and ir-kbd-i2c support the Zilog Z8 for IR, as programmed |
| and installed on Hauppauge products. When working on either module, developers |
| must consider at least the following bridge drivers which mention an IR Rx unit |
| at address 0x71 (indicative of a Z8): |
| |
| ivtv cx18 hdpvr pvrusb2 bt8xx cx88 saa7134 |
| |