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

From: Russell King - ARM Linux
Date: Wed Dec 03 2014 - 18:41:00 EST


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.

--
FTTC broadband for 0.8mile line: currently at 9.5Mbps down 400kbps up
according to speedtest.net.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/