Re: [PATCH] ARM: OMAP: Clear GPMC bits when applying new setting
* Jon Hunter jon-hun...@ti.com [130206 06:43]: On 02/06/2013 08:15 AM, Mark Jackson wrote: When setting the GPMC device type, make sure any previous bits are cleared down, before applying the new setting. Signed-off-by: Mark Jackson m...@newflow.co.uk --- arch/arm/mach-omap2/gpmc.c |4 1 file changed, 4 insertions(+) diff --git a/arch/arm/mach-omap2/gpmc.c b/arch/arm/mach-omap2/gpmc.c index 1adb2d4..026e786 100644 --- a/arch/arm/mach-omap2/gpmc.c +++ b/arch/arm/mach-omap2/gpmc.c @@ -613,6 +613,10 @@ int gpmc_cs_configure(int cs, int cmd, int wval) case GPMC_CONFIG_DEV_TYPE: regval = gpmc_cs_read_reg(cs, GPMC_CS_CONFIG1); + /* clear 3 target bits */ + regval = ~(GPMC_CONFIG1_DEVICETYPE(3) | + GPMC_CONFIG1_MUXADDDATA); MUXADDDATA is actually a 2-bit field on current devices (OMAP4+ and AM335x). For OMAP2/3 devices it was only a one bit field. So it may be worth clearing both bits for all devices. For OMAP2 devices bit 8 is reserved but the TRM says to writes a 0, so clearing bit 8 on OMAP2/3 devices should not be a problem. In fact bit 8 should read as 0 on OMAP2/3. + /* set the proper value */ regval |= GPMC_CONFIG1_DEVICETYPE(wval); if (wval == GPMC_DEVICETYPE_NOR) regval |= GPMC_CONFIG1_MUXADDDATA; Otherwise ... Acked-by: Jon Hunter jon-hun...@ti.com Mark, can you please repost this patch with Jon's comment addressed? Thanks, Tony -- To unsubscribe from this list: send the line unsubscribe linux-omap in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH] ARM: OMAP: Clear GPMC bits when applying new setting
When setting the GPMC device type, make sure any previous bits are cleared down, before applying the new setting. Signed-off-by: Mark Jackson m...@newflow.co.uk --- arch/arm/mach-omap2/gpmc.c |4 1 file changed, 4 insertions(+) diff --git a/arch/arm/mach-omap2/gpmc.c b/arch/arm/mach-omap2/gpmc.c index 1adb2d4..026e786 100644 --- a/arch/arm/mach-omap2/gpmc.c +++ b/arch/arm/mach-omap2/gpmc.c @@ -613,6 +613,10 @@ int gpmc_cs_configure(int cs, int cmd, int wval) case GPMC_CONFIG_DEV_TYPE: regval = gpmc_cs_read_reg(cs, GPMC_CS_CONFIG1); + /* clear 3 target bits */ + regval = ~(GPMC_CONFIG1_DEVICETYPE(3) | + GPMC_CONFIG1_MUXADDDATA); + /* set the proper value */ regval |= GPMC_CONFIG1_DEVICETYPE(wval); if (wval == GPMC_DEVICETYPE_NOR) regval |= GPMC_CONFIG1_MUXADDDATA; -- 1.7.9.5 -- To unsubscribe from this list: send the line unsubscribe linux-omap in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH] ARM: OMAP: Clear GPMC bits when applying new setting
On Wed, Feb 06, 2013 at 02:15:34PM +, Mark Jackson wrote: When setting the GPMC device type, make sure any previous bits are cleared down, before applying the new setting. Signed-off-by: Mark Jackson m...@newflow.co.uk looks alright: Reviewed-of-by: Felipe Balbi ba...@ti.com -- balbi signature.asc Description: Digital signature
Re: [PATCH] ARM: OMAP: Clear GPMC bits when applying new setting
On 02/06/2013 08:15 AM, Mark Jackson wrote: When setting the GPMC device type, make sure any previous bits are cleared down, before applying the new setting. Signed-off-by: Mark Jackson m...@newflow.co.uk --- arch/arm/mach-omap2/gpmc.c |4 1 file changed, 4 insertions(+) diff --git a/arch/arm/mach-omap2/gpmc.c b/arch/arm/mach-omap2/gpmc.c index 1adb2d4..026e786 100644 --- a/arch/arm/mach-omap2/gpmc.c +++ b/arch/arm/mach-omap2/gpmc.c @@ -613,6 +613,10 @@ int gpmc_cs_configure(int cs, int cmd, int wval) case GPMC_CONFIG_DEV_TYPE: regval = gpmc_cs_read_reg(cs, GPMC_CS_CONFIG1); + /* clear 3 target bits */ + regval = ~(GPMC_CONFIG1_DEVICETYPE(3) | + GPMC_CONFIG1_MUXADDDATA); MUXADDDATA is actually a 2-bit field on current devices (OMAP4+ and AM335x). For OMAP2/3 devices it was only a one bit field. So it may be worth clearing both bits for all devices. For OMAP2 devices bit 8 is reserved but the TRM says to writes a 0, so clearing bit 8 on OMAP2/3 devices should not be a problem. In fact bit 8 should read as 0 on OMAP2/3. + /* set the proper value */ regval |= GPMC_CONFIG1_DEVICETYPE(wval); if (wval == GPMC_DEVICETYPE_NOR) regval |= GPMC_CONFIG1_MUXADDDATA; Otherwise ... Acked-by: Jon Hunter jon-hun...@ti.com Cheers Jon -- To unsubscribe from this list: send the line unsubscribe linux-omap in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html