On 08/30/2016 02:31 PM, Johan Fjeldtvedt wrote: > In addition to setting the ACK mask, also set the logical address mask > setting in the dongle. This is (and not the ACK mask) is persisted for > use in autonomous mode. > > The logical address mask to use is deduced from the primary device type > in adap->log_addrs. > > Signed-off-by: Johan Fjeldtvedt <jaffe1@xxxxxxxxx> > --- > drivers/staging/media/pulse8-cec/pulse8-cec.c | 34 +++++++++++++++++++++++++++ > 1 file changed, 34 insertions(+) > > diff --git a/drivers/staging/media/pulse8-cec/pulse8-cec.c b/drivers/staging/media/pulse8-cec/pulse8-cec.c > index 1158ba9..ede285a 100644 > --- a/drivers/staging/media/pulse8-cec/pulse8-cec.c > +++ b/drivers/staging/media/pulse8-cec/pulse8-cec.c > @@ -498,6 +498,40 @@ static int pulse8_cec_adap_log_addr(struct cec_adapter *adap, u8 log_addr) > if (err) > goto unlock; > > + switch (adap->log_addrs.primary_device_type[0]) { > + case CEC_OP_PRIM_DEVTYPE_TV: > + mask = 0; Is this right? Shouldn't it be 0x001? > + break; > + case CEC_OP_PRIM_DEVTYPE_RECORD: > + mask = 0x206; Note that cec.h has CEC_LOG_ADDR_MASK_ defines. It's better to use those. Regards, Hans > + break; > + case CEC_OP_PRIM_DEVTYPE_TUNER: > + mask = 0x4C8; > + break; > + case CEC_OP_PRIM_DEVTYPE_PLAYBACK: > + mask = 0x910; > + break; > + case CEC_OP_PRIM_DEVTYPE_AUDIOSYSTEM: > + mask = 0x20; > + break; > + case CEC_OP_PRIM_DEVTYPE_SWITCH: > + mask = 0x8000; > + break; > + case CEC_OP_PRIM_DEVTYPE_PROCESSOR: > + mask = 0x4000; > + break; > + default: > + mask = 0; > + break; > + } > + cmd[0] = MSGCODE_SET_LOGICAL_ADDRESS_MASK; > + cmd[1] = mask >> 8; > + cmd[2] = mask & 0xff; > + err = pulse8_send_and_wait(pulse8, cmd, 3, > + MSGCODE_COMMAND_ACCEPTED, 0); > + if (err) > + goto unlock; > + > cmd[0] = MSGCODE_SET_DEFAULT_LOGICAL_ADDRESS; > cmd[1] = log_addr; > err = pulse8_send_and_wait(pulse8, cmd, 2, > -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html