[U-Boot] [PATCH 3/4] ZOOM2 Add power reset button

Heiko Schocher
2009-06-10T17:56:33Z

Hello Peter,

Peter Tyser wrote:
>> diff --git a/drivers/i2c/twl4030_i2c.c b/drivers/i2c/twl4030_i2c.c
>> index 774f813..549f974 100644
>> --- a/drivers/i2c/twl4030_i2c.c
>> +++ b/drivers/i2c/twl4030_i2c.c
>> @@ -35,3 +35,25 @@ static inline int twl4030_i2c_read_u8(u8 chip_no, u8 *val, u8 reg)
>> return i2c_read(chip_no, reg, 1, val, 1);
>> }
>>
>> +/*
>> + * Power Reset
>> + */
>> +void twl4030_power_reset_init(void)
>> +{
>> +#ifdef CONFIG_OMAP3_ZOOM2
>> + u8 val = 0;
>> + if (twl4030_i2c_read_u8(TWL4030_CHIP_PM_MASTER, &val,
>> + TWL4030_PM_MASTER_P1_SW_EVENTS)) {
>> + printf("Error:TWL4030: failed to read the power register\n");
>> + printf("Could not initialize hardware reset\n");
>> + } else {
>> + val |= TWL4030_PM_MASTER_SW_EVENTS_STOPON_PWRON;
>> + if (twl4030_i2c_write_u8(TWL4030_CHIP_PM_MASTER, val,
>> + TWL4030_PM_MASTER_P1_SW_EVENTS)) {
>> + printf("Error:TWL4030: failed to write the power register\n");
>> + printf("Could not initialize hardware reset\n");
>> + }
>> + }
>> +#endif
>> +}
>> +
>
> All other drivers in drivers/i2c are host adapter drivers. Ie they
> implement i2c_read(), i2c_write(), i2c_probe(), and i2c_init(). The
> twl4030_i2c.c driver doesn't seem to fit this mold. Perhaps it would be
> better placed in drivers/misc or a new drivers/power directory similar
> to Linux?

Ack. Ah, I see, maybe drivers/power would be a better place for it.

> FWIW I had the same dilemma with the ds4510 i2c device which has support
> for GPIO, EEEPROM, etc and ended up putting it in drivers/misc.

Yes, I want to see in drivers/i2c only drivers, which implement the
i2c_* functions ... This twl4030 and the ds4510 drivers, use an i2c
driver from hopefully in "drivers/i2c", and should go in an
"drivers/"subsystem"" directory ...

bye
Heiko
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany