On Thu, Aug 07, 2014 at 09:04:30PM +0800, caesar wrote: [...] > As you say, I will rewrite the about if it's really need do so it. > For example: > > static const struct rockchip_pwm_data pwm_data_v1 = { > .regs = { > .duty = 0x04, > .period = 0x08, > .cntr = 0x00, > .ctrl = 0x0c, > }, > .prescaler = 2, > .set_enable = rockchip_pwm_set_enable_v1, > }; > > static const struct rockchip_pwm_data pwm_data_v2 = { > .regs = { > .duty = 0x08, > .period = 0x04, > .cntr = 0x00, > .ctrl = 0x0c, > }, > .prescaler = 1, > .set_enable = rockchip_pwm_set_enable_v2, > }; > > static const struct rockchip_pwm_data pwm_data_vop = { > .regs = { > .duty = 0x08, > .period = 0x04, > .cntr = 0x0c, > .ctrl = 0x00, > }, > .prescaler = 1, > .set_enable = rockchip_pwm_set_enable_v2, > }; > > Is that right? Yes. > >>+ .set_enable = rockchip_pwm_set_enable_v2, > >>+}; > >No need for the double indirection. > > Sorry, I think is need if you mean a double indirection for ".set_enable". The "double indirection" was regarding the symbolic names for registers, not the .set_enable(). Sorry. Thierry
Attachment:
pgpM6lOgS8ljx.pgp
Description: PGP signature