[U-Boot] [PATCH V3 2/5] mv_i2c: use structure to replace the direclty define

Wolfgang Denk wd at denx.de
Tue Mar 22 16:16:22 CET 2011


Dear Lei Wen,

In message <AANLkTikMYpVVJDRnGRVZ3XZsYTn_yprpfMUUp_3DdHbJ at mail.gmail.com> you wrote:
> 
...
> >> -                     writel(readl(ICR) & ~ICR_ACKNA> K, ICR);
> >> -             writel(readl(ICR) & ~ICR_ALDIE, ICR);
> >> -             writel(readl(ICR) | ICR_TB, ICR);
> >> +                     PXAI2C_AND(&base->icr, ~ICR_AC> KNAK);
> >> +             PXAI2C_AND(&base->icr, ~ICR_ALDIE);
> >> +             PXAI2C_OR(&base->icr, ICR_TB);
> >
> > What are benefits of those macros?
> > To me this looks ugly and looses readability.
>
> This intend for short the original too long code, but I don't reject to ret> urn
> to the readl, write one.

Please either use plain writel() / readl() accessors, or,
alternatively, implement standard accessors that could be used by
everybody else for the same purpose, too.

See for example the misc clrbits*(), setbits*() or clrsetbits*()
macros as dfined for example in "arch/powerpc/include/asm/io.h"

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
"Deliver yesterday, code today, think tomorrow."


More information about the U-Boot mailing list