On 2014?11?11? 22:20, Zubair Lutfullah Kakakhel wrote: > Hi Andy, > > This patch adds the reg-io-width binding. > > Hence the binding patch should come before it. > do you mean that I should put dts binding patch before this patch? > 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.yan at 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. if the dts undefined it, the val will be 1. if the dts defined other value except 4 and 1, return -EINVAL > > Regards, > ZubairLK > > > _______________________________________________ > Linux-rockchip mailing list > Linux-rockchip at lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-rockchip > > >