Message ID | 5e088bd90905300640sc9837b4x6055c5c262c18a8c@mail.gmail.com (mailing list archive) |
---|---|
State | Rejected, archived |
Headers | show |
Tony, I noticed your comment requesting all twl4030 patches be submitted to mainline. I assume this patch falls into that category too? Also for those listening in -- no comments on this patch yet! Does that mean it looks good? ;-) Steve On Sat, May 30, 2009 at 6:40 AM, Steve Sakoman <sakoman@gmail.com> wrote: > Though the comment in clocks_init claims to initialize the MADC > clocks, it wasn't actually being done. Â This patch implements minimal > MADC clock initialization. > > Compile/run tested on Overo (prior to patch MADC access would always timeout) > > diff --git a/drivers/mfd/twl4030-core.c b/drivers/mfd/twl4030-core.c > index 769b34b..c5ca36d 100644 > --- a/drivers/mfd/twl4030-core.c > +++ b/drivers/mfd/twl4030-core.c > @@ -159,6 +159,7 @@ > > Â /* Few power values */ > Â #define R_CFG_BOOT Â Â Â Â Â Â Â Â Â Â 0x05 > +#define R_GPBR1 Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 0x0C > Â #define R_PROTECT_KEY Â Â Â Â Â Â Â Â Â 0x0E > > Â /* access control values for R_PROTECT_KEY */ > @@ -166,6 +167,10 @@ > Â #define KEY_UNLOCK2 Â Â Â Â Â Â Â Â Â Â 0xec > Â #define KEY_LOCK Â Â Â Â Â Â Â Â Â Â Â 0x00 > > +/* MADC clock values for R_GPBR1 */ > +#define MADC_HFCLK_EN Â Â Â Â Â Â Â Â Â 0x80 > +#define DEFAULT_MADC_CLK_EN Â Â Â Â Â Â 0x10 > + > Â /* some fields in R_CFG_BOOT */ > Â #define HFCLK_FREQ_19p2_MHZ Â Â Â Â Â Â (1 << 0) > Â #define HFCLK_FREQ_26_MHZ Â Â Â Â Â Â Â (2 << 0) > @@ -717,6 +722,11 @@ static void __init clocks_init(struct device *dev) > Â Â Â Â ctrl |= HIGH_PERF_SQ; > Â Â Â Â e |= unprotect_pm_master(); > Â Â Â Â /* effect->MADC+USB ck en */ > + > + Â Â Â if (twl_has_madc()) > + Â Â Â Â Â Â Â e |= twl4030_i2c_write_u8(TWL4030_MODULE_INTBR, > + Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â MADC_HFCLK_EN | DEFAULT_MADC_CLK_EN, R_GPBR1); > + > Â Â Â Â e |= twl4030_i2c_write_u8(TWL4030_MODULE_PM_MASTER, ctrl, R_CFG_BOOT); > Â Â Â Â e |= protect_pm_master(); > -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
* Steve Sakoman <sakoman@gmail.com> [090603 13:10]: > Tony, > > I noticed your comment requesting all twl4030 patches be submitted to > mainline. I assume this patch falls into that category too? Yeah, we should try to make all the patches against mainline now. > Also for those listening in -- no comments on this patch yet! Does > that mean it looks good? ;-) You should send it to: $ grep -a7 "MULTIFUNCTION DEVICES" MAINTAINERS P: Samuel Ortiz M: sameo@linux.intel.com L: linux-kernel@vger.kernel.org T: git git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6.git S: Supported F: drivers/mfd/ Tony > Steve > > On Sat, May 30, 2009 at 6:40 AM, Steve Sakoman <sakoman@gmail.com> wrote: > > Though the comment in clocks_init claims to initialize the MADC > > clocks, it wasn't actually being done. Â This patch implements minimal > > MADC clock initialization. > > > > Compile/run tested on Overo (prior to patch MADC access would always timeout) > > > > diff --git a/drivers/mfd/twl4030-core.c b/drivers/mfd/twl4030-core.c > > index 769b34b..c5ca36d 100644 > > --- a/drivers/mfd/twl4030-core.c > > +++ b/drivers/mfd/twl4030-core.c > > @@ -159,6 +159,7 @@ > > > > Â /* Few power values */ > > Â #define R_CFG_BOOT Â Â Â Â Â Â Â Â Â Â 0x05 > > +#define R_GPBR1 Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 0x0C > > Â #define R_PROTECT_KEY Â Â Â Â Â Â Â Â Â 0x0E > > > > Â /* access control values for R_PROTECT_KEY */ > > @@ -166,6 +167,10 @@ > > Â #define KEY_UNLOCK2 Â Â Â Â Â Â Â Â Â Â 0xec > > Â #define KEY_LOCK Â Â Â Â Â Â Â Â Â Â Â 0x00 > > > > +/* MADC clock values for R_GPBR1 */ > > +#define MADC_HFCLK_EN Â Â Â Â Â Â Â Â Â 0x80 > > +#define DEFAULT_MADC_CLK_EN Â Â Â Â Â Â 0x10 > > + > > Â /* some fields in R_CFG_BOOT */ > > Â #define HFCLK_FREQ_19p2_MHZ Â Â Â Â Â Â (1 << 0) > > Â #define HFCLK_FREQ_26_MHZ Â Â Â Â Â Â Â (2 << 0) > > @@ -717,6 +722,11 @@ static void __init clocks_init(struct device *dev) > > Â Â Â Â ctrl |= HIGH_PERF_SQ; > > Â Â Â Â e |= unprotect_pm_master(); > > Â Â Â Â /* effect->MADC+USB ck en */ > > + > > + Â Â Â if (twl_has_madc()) > > + Â Â Â Â Â Â Â e |= twl4030_i2c_write_u8(TWL4030_MODULE_INTBR, > > + Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â MADC_HFCLK_EN | DEFAULT_MADC_CLK_EN, R_GPBR1); > > + > > Â Â Â Â e |= twl4030_i2c_write_u8(TWL4030_MODULE_PM_MASTER, ctrl, R_CFG_BOOT); > > Â Â Â Â e |= protect_pm_master(); > > -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/mfd/twl4030-core.c b/drivers/mfd/twl4030-core.c index 769b34b..c5ca36d 100644 --- a/drivers/mfd/twl4030-core.c +++ b/drivers/mfd/twl4030-core.c @@ -159,6 +159,7 @@ /* Few power values */ #define R_CFG_BOOT 0x05 +#define R_GPBR1 0x0C #define R_PROTECT_KEY 0x0E /* access control values for R_PROTECT_KEY */ @@ -166,6 +167,10 @@ #define KEY_UNLOCK2 0xec #define KEY_LOCK 0x00 +/* MADC clock values for R_GPBR1 */ +#define MADC_HFCLK_EN 0x80 +#define DEFAULT_MADC_CLK_EN 0x10 + /* some fields in R_CFG_BOOT */ #define HFCLK_FREQ_19p2_MHZ (1 << 0) #define HFCLK_FREQ_26_MHZ (2 << 0) @@ -717,6 +722,11 @@ static void __init clocks_init(struct device *dev) ctrl |= HIGH_PERF_SQ; e |= unprotect_pm_master(); /* effect->MADC+USB ck en */ + + if (twl_has_madc()) + e |= twl4030_i2c_write_u8(TWL4030_MODULE_INTBR, + MADC_HFCLK_EN | DEFAULT_MADC_CLK_EN, R_GPBR1); + e |= twl4030_i2c_write_u8(TWL4030_MODULE_PM_MASTER, ctrl, R_CFG_BOOT); e |= protect_pm_master(); -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in