Hi Andy, This patch adds the reg-io-width binding.
Hence the binding patch should come before it. On 11/11/14 12:53, Andy Yan wrote: > On rockchip rk3288, only word(32-bit) accesses are > permitted for hdmi registers. Byte width accesses (writeb, > readb) generate an imprecise external abort. > > Signed-off-by: Andy Yan <andy....@rock-chips.com> > > --- > > } > > static void hdmi_modb(struct dw_hdmi *hdmi, u8 data, u8 mask, unsigned reg) > @@ -1499,6 +1527,23 @@ static int dw_hdmi_bind(struct device *dev, struct > device *master, void *data) > struct device_node *ddc_node; > struct resource *iores; > int ret, irq; > + u32 val = 1; > + > + of_property_read_u32(np, "reg-io-width", &val); > + > + switch (val) { > + case 4: > + hdmi->write = dw_hdmi_writel; > + hdmi->read = dw_hdmi_readl; > + break; > + case 1: > + hdmi->write = dw_hdmi_writeb; > + hdmi->read = dw_hdmi_readb; > + break; > + default: > + dev_err(dev, "reg-io-width must be 1 or 4\n"); > + return -EINVAL; > + } The binding patch says this is an optional property. But here if undefined it returns -EINVAL. I would keep it optional and default it to byte access. Regards, ZubairLK _______________________________________________ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel