Robert Schlabbach wrote:

From: "Ed Wildgoose" <[EMAIL PROTECTED]>


Just from eyeballing the code I suspect that this line:
unsigned int code = budget_debiread4(saa, DEBINOSWAP, 0x1234, 2) >> 8;

...in msp430_ir_interrupt is the one responsible for throwing away the
extra useful bits. Presumably masking it off instead of simply loosing
the bits will fix the issue.



That's incorrect. There _are_ only 8 bits delivered by the MSP430, and there is no way to get at any more information.

Explanation: The 16-bit DEBI bus on the budget cards is used for two
things - Common Interface and IR. The Common Interface only uses 8 bit
transfers. The MSP430 is simply wired to the upper 8 data lines of the DEBI
and does not care about the address. When you do a 16-bit DEBI read, the
upper 8 bits will come from the MSP430, while the lower 8 bits come from
the Common Interface.



Before I dive in, has anyone looked into this, and are there any
pitfalls to beware of?



There's nothing more to the IR than what's already there: 8 data bits and GPIO3 to trigger an interrupt when IR data has been received - that's it. If you want to do something beyond that, you could try reading the MSP430's code via that JTAG connector on the board, disassembling and modifying it and reprogramming the MSP430... :-)




Hmm, so to be clear - do you think that there is no way to tweak the driver to distinguish between my two remote controls? It's not obvious that it is actually using the full 8 bits anyway. How many "bits" is the IR signal producing anyway...?


I also have a full featured DVB-T 1.2 card - I seem to remember that has a remote interface as well - anyone know if this works any better...? I rather like the way the DVB IR talks direct to input layer, saves the need to invoke LIRC for most things - would prefer to avoid building a full lirc receiver...

Thanks Robert

Ed W



--
Info:
To unsubscribe send a mail to [EMAIL PROTECTED] with "unsubscribe linux-dvb" as 
subject.



Reply via email to