• David Hrdeman's avatar
    V4L/DVB (4785): Budget-ci: Change DEBIADDR_IR to a safer default · ecba77f2
    David Hrdeman authored
    The IR chip has no address decoding, so the IR data is always present in 
    the high byte when doing a read from the saa7146 chip. This means that 
    the DEBI address used is irrelevant to the IR decoding logic.
    DEBI addresses 0x1XXX are mapped to the registers on the CI module 
    itself, but only the lowest two bits are actually used (see EN50221, 
    section A.2.2.1), meaning that 0x1234 is equivalent to 0x1000 which maps 
    to register 0 (the data register). A read from the data register is 
    supposed to be preceded by a read from the size register, so some CI 
    modules will be confused (the AlphaCrypt CAM will hang completely).
    The attached patch changes the address used when reading the IR data to 
    use 0x4000 instead. This is the CI version address, which is a safer 
    default, works with the AlphaCrypt CAM and matches the behaviour of the 
    Windows driver (AFAIK).
    Signed-off-by: default avatarDavid Härdeman <david@hardeman.nu>
    Signed-off-by: default avatarOliver Endriss <o.endriss@gmx.de>
    Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@infradead.org>
    ecba77f2
budget-ci.c 31.4 KB