Re: [PATCH 2/2] pulse8-cec: store logical address mask

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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



[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux