[PATCHv9 14/15] cec: s5p-cec: Add s5p-cec driver

Hans Verkuil hverkuil at xs4all.nl
Mon Oct 12 03:54:20 PDT 2015


On 10/06/2015 01:11 AM, Russell King - ARM Linux wrote:
> On Mon, Sep 07, 2015 at 03:44:43PM +0200, Hans Verkuil wrote:
>> +	cec->adap = cec_create_adapter(&s5p_cec_adap_ops, cec,
>> +		CEC_NAME, CEC_CAP_STATE |
>> +		CEC_CAP_PHYS_ADDR | CEC_CAP_LOG_ADDRS | CEC_CAP_IO |
>> +		CEC_CAP_IS_SOURCE,
>> +		0, THIS_MODULE, &pdev->dev);
>> +	ret = PTR_ERR_OR_ZERO(cec->adap);
>> +	if (ret)
>> +		return ret;
>> +	cec->adap->available_log_addrs = 1;
>> +
>> +	platform_set_drvdata(pdev, cec);
>> +	pm_runtime_enable(dev);
> 
> This is really not a good interface.
> 
> "cec_create_adapter" creates and registers the adapter, at which point it
> becomes available to userspace.  However, you haven't finished setting it
> up, so it's possible to nip in here and start using it before the setup
> has completed.  This needs fixing.
> 

Good point, I'll split off the registration part into a separate function.

Regards,

	Hans


More information about the dri-devel mailing list