[PATCH v16 03/12] drm: imx: imx-hdmi: convert imx-hdmi to drm_bridge mode

Andy Yan andy.yan at rock-chips.com
Wed Dec 3 16:51:02 PST 2014


Hi Russel:
On 2014年12月04日 07:40, Russell King - ARM Linux wrote:
> On Thu, Dec 04, 2014 at 12:56:24AM +0800, Andy Yan wrote:
>> Hi Russell:
>> On 2014年12月04日 00:33, Russell King - ARM Linux wrote:
>>> On Thu, Dec 04, 2014 at 12:30:23AM +0800, Andy Yan wrote:
>>>> On 2014年12月04日 00:11, Russell King - ARM Linux wrote:
>>>>> I meant that imx_hdmi_bind should be passed these, so that it needs to
>>>>> know nothing about the struct device beyond the generic device structure.
>>>>> In other words, the dw-hdmi core should not assume that the struct device
>>>>> is part of a platform device.
>>>>>
>>>>     if so, how about the device tree properties  ddc-i2c-bus, reg-io-width,
>>>> iahb, isfr,
>>>>    they are all found by device?
>>> If the device has a device tree node associated with it, it will have a
>>> non-NULL dev->of_node - which is part of the generic device structure.
>>>
>>    so , I just need get the resource and irq number in the
>> dw_hdmi-imx/rockchip ,than
>>    pass them to imx_hdmi_bind, as the properties ddc-i2c-bus, reg-io-width,
>> iahb,isfr, they
>>    are still can be handled in imx_hdmi_bind ?
> Basically, what I'm suggesting is just this change to imx_hdmi_bind():
>
>   int imx_hdmi_bind(struct device *dev, struct device *master,
> 		  void *data, struct drm_encoder *encoder,
> +		  const struct resource *iores, int irq,
> 		  const struct imx_hdmi_plat_data *plat_data)
>   {
> -	struct platform_device *pdev = to_platform_device(dev);
> ...
> 	}
>
> -	irq = platform_get_irq(pdev, 0);
> 	if (irq < 0)
> 		return irq;
> ...
> 		return ret;
>
> -	iores = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> 	hdmi->regs = devm_ioremap_resource(dev, iores);
> 	if (IS_ERR(hdmi->regs))
>
> and supplying those as arguments from the caller.
>
   got it, thanks, and also many thanks for Philipp





More information about the Linux-rockchip mailing list