Hi, Mark: 于 2014年07月02日 01:07, Mark Brown 写道: >> +static inline void i2s_writel(struct rk_i2s_dev *i2s, u32 value, >> > + unsigned int offset) >> > +{ >> > + writel_relaxed(value, i2s->regs + offset); >> > +} >> > + >> > +static inline u32 i2s_readl(struct rk_i2s_dev *i2s, unsigned int offset) >> > +{ >> > + return readl_relaxed(i2s->regs + offset); >> > +} > Perhaps use regmap? The main advantage would be the debug > infrastructure, though you could also use _update_bits() to reduce the > amount of time spent locked. > Are you sure? This is a I2S driver, we can write the register directly, do not through I2C or SPI bus. Write a register is only a few instructions on ARM, but write through regmap, it may take a long path. I think it will just consume CPU power and make the whole thing more complex. Could you tell me what benefits we can get if use regmap? Or something I just missing? -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html