> -----Original Message-----
> From: [email protected] 
> [mailto:[email protected]] On Behalf Of Raphaël Assénat
> Sent: Wednesday, July 06, 2011 8:59 PM
> To: [email protected]
> Subject: [PATCH] AM3505/3517 ZCN package support
> 
> This patch adds support for the AM35xx ZCN package specific muxmodes.
> 
> Signed-off-by: Raphael Assenat <[email protected]>
> 

[sp] Few quick comments below:

> diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
> index 4ae6257..5c880de 100644
> --- a/arch/arm/mach-omap2/Kconfig
> +++ b/arch/arm/mach-omap2/Kconfig
> @@ -103,6 +103,9 @@ config OMAP_PACKAGE_CBL
>  config OMAP_PACKAGE_CBS
>         bool
>  
> +config OMAP_PACKAGE_ZCN
> +       bool
> +
>  comment "OMAP Board Type"
>       depends on ARCH_OMAP2PLUS
>  
> diff --git a/arch/arm/mach-omap2/mux.h b/arch/arm/mach-omap2/mux.h
> index 2132308..f227503 100644
> --- a/arch/arm/mach-omap2/mux.h
> +++ b/arch/arm/mach-omap2/mux.h
> @@ -62,6 +62,7 @@
>  
>  /* Flags for omapX_mux_init */
>  #define OMAP_PACKAGE_MASK            0xffff
> +#define OMAP_PACKAGE_ZCN             9               /* 
> 491-pin 0.65 */
>  #define OMAP_PACKAGE_CBS             8               /* 
> 547-pin 0.40 0.40 */
>  #define OMAP_PACKAGE_CBL             7               /* 
> 547-pin 0.40 0.40 */
>  #define OMAP_PACKAGE_CBP             6               /* 
> 515-pin 0.40 0.50 */
> diff --git a/arch/arm/mach-omap2/mux34xx.c 
> b/arch/arm/mach-omap2/mux34xx.c
> index 17f80e4..d42ac2e 100644
> --- a/arch/arm/mach-omap2/mux34xx.c
> +++ b/arch/arm/mach-omap2/mux34xx.c
> @@ -37,6 +37,9 @@
>       .balls          = { bb, bt },                           
>       \
>  }
>  
> +#define _OMAP3_NULL_MUXENTRY(M0) _OMAP3_MUXENTRY(M0, 0, 
> NULL, NULL,   \
> +                             NULL, NULL, NULL, NULL, NULL, NULL)
> +
>  /*
>   * Superset of all mux modes for omap3
>   */
> @@ -651,51 +654,50 @@ static struct omap_mux __initdata 
> omap3_muxmodes[] = {
>               "gpio_166", NULL, NULL, "safe_mode"),
>  
>       /* Only on 3630, see omap36xx_cbp_subset for the signals */
> -     _OMAP3_MUXENTRY(GPMC_A11, 0,
> -             NULL, NULL, NULL, NULL,
> -             NULL, NULL, NULL, NULL),
[snip]...[snip]
> +     _OMAP3_NULL_MUXENTRY(GPMC_A11),
> +     _OMAP3_NULL_MUXENTRY(SAD2D_MBUSFLAG),
> +     _OMAP3_NULL_MUXENTRY(SAD2D_MREAD),

[sp] These changes don't go with the current patch description.
     You may want to keep them in a separate patch; and use here.

> +
> +     /* Only on AM35xx, see am35xx_zcn_subset for the signals */
> +     _OMAP3_NULL_MUXENTRY(CCDC_PCLK),
> +     _OMAP3_NULL_MUXENTRY(CCDC_FIELD),
> +     _OMAP3_NULL_MUXENTRY(CCDC_HD),
> +     _OMAP3_NULL_MUXENTRY(CCDC_VD),
> +     _OMAP3_NULL_MUXENTRY(CCDC_WEN),
> +     _OMAP3_NULL_MUXENTRY(CCDC_DATA0),
> +     _OMAP3_NULL_MUXENTRY(CCDC_DATA1),
> +     _OMAP3_NULL_MUXENTRY(CCDC_DATA2),
> +     _OMAP3_NULL_MUXENTRY(CCDC_DATA3),
> +     _OMAP3_NULL_MUXENTRY(CCDC_DATA4),
> +     _OMAP3_NULL_MUXENTRY(CCDC_DATA5),
> +     _OMAP3_NULL_MUXENTRY(CCDC_DATA6),
> +     _OMAP3_NULL_MUXENTRY(CCDC_DATA7),
> +     _OMAP3_NULL_MUXENTRY(RMII_MDIO_DATA),
> +     _OMAP3_NULL_MUXENTRY(RMII_MDIO_CLK),
> +     _OMAP3_NULL_MUXENTRY(RMII_RXD0),
> +     _OMAP3_NULL_MUXENTRY(RMII_RXD1),
> +     _OMAP3_NULL_MUXENTRY(RMII_CRS_DV),
> +     _OMAP3_NULL_MUXENTRY(RMII_RXER),
> +     _OMAP3_NULL_MUXENTRY(RMII_TXD0),
> +     _OMAP3_NULL_MUXENTRY(RMII_TXD1),
> +     _OMAP3_NULL_MUXENTRY(RMII_TXEN),
> +     _OMAP3_NULL_MUXENTRY(RMII_50MHZ_CLK),
> +     _OMAP3_NULL_MUXENTRY(USB0_DRVVBUS),
> +     _OMAP3_NULL_MUXENTRY(HECC1_TXD),
> +     _OMAP3_NULL_MUXENTRY(HECC1_RXD),
> +

[sp] Extra line.

>       { .reg_offset = OMAP_MUX_TERMINATOR },
>  };
>  
> @@ -2026,6 +2028,490 @@ static struct omap_ball __initdata 
> omap36xx_cbp_ball[] = {
>  #define omap36xx_cbp_ball     NULL
>  #endif
>  
> +/*
> + * Signals different on AM35XX ZCN package comapared to 34XX 
> CBC package
> + */
> +#if defined(CONFIG_OMAP_MUX) && defined(CONFIG_OMAP_PACKAGE_ZCN)
> +static struct omap_mux __initdata am35xx_zcn_subset[] = {

[snip]...[snip]

> +     { .reg_offset = OMAP_MUX_TERMINATOR },
> +};
> +#else
> +#define am35xx_zcn_subset    NULL
> +#endif
> +
> +/*
> + * Balls for AM35XX ZCN package
> + * 491-pin s-PBGA Package, 0.65mm Ball Pitch
> + */
> +#if defined(CONFIG_OMAP_MUX) && defined(CONFIG_DEBUG_FS)     
>       \
> +             && defined (CONFIG_OMAP_PACKAGE_ZCN)
> +static struct omap_ball __initdata am35xx_zcn_ball[] = {

[snip]...[snip]

> +
> +     { .reg_offset = OMAP_MUX_TERMINATOR },
> +};
> +#else
> +#define am35xx_zcn_ball       NULL
> +#endif
> +
> +

[sp] Extra line.

>  int __init omap3_mux_init(struct omap_board_mux 
> *board_subset, int flags)
>  {
>       struct omap_mux *package_subset;
> @@ -2048,6 +2534,10 @@ int __init omap3_mux_init(struct 
> omap_board_mux *board_subset, int flags)
>               package_subset = omap36xx_cbp_subset;
>               package_balls = omap36xx_cbp_ball;
>               break;
> +     case OMAP_PACKAGE_ZCN:
> +             package_subset = am35xx_zcn_subset;
> +             package_balls = am35xx_zcn_ball;
> +             break;
>       default:
>               pr_err("%s Unknown omap package, mux 
> disabled\n", __func__);
>               return -EINVAL;
> diff --git a/arch/arm/mach-omap2/mux34xx.h 
> b/arch/arm/mach-omap2/mux34xx.h
> index 6543ebf..997387d 100644
> --- a/arch/arm/mach-omap2/mux34xx.h
> +++ b/arch/arm/mach-omap2/mux34xx.h
> @@ -316,6 +316,43 @@
>  #define OMAP3_CONTROL_PADCONF_SDRC_CKE0_OFFSET               
>       0x232
>  #define OMAP3_CONTROL_PADCONF_SDRC_CKE1_OFFSET               
>       0x234
>  
> +/* AM3505/3516 only */

[sp] Small typo in 3516.

> +#define OMAP3_CONTROL_PADCONF_CCDC_PCLK_OFFSET               
>       0x1b4
> +#define OMAP3_CONTROL_PADCONF_CCDC_FIELD_OFFSET              
>       0x1b6
> +#define OMAP3_CONTROL_PADCONF_CCDC_HD_OFFSET                 0x1b8
> +#define OMAP3_CONTROL_PADCONF_CCDC_VD_OFFSET                 0x1ba
> +#define OMAP3_CONTROL_PADCONF_CCDC_WEN_OFFSET                
>       0x1bc
> +#define OMAP3_CONTROL_PADCONF_CCDC_DATA0_OFFSET              
>       0x1be
> +#define OMAP3_CONTROL_PADCONF_CCDC_DATA1_OFFSET              
>       0x1c0
> +#define OMAP3_CONTROL_PADCONF_CCDC_DATA2_OFFSET              
>       0x1c2
> +#define OMAP3_CONTROL_PADCONF_CCDC_DATA3_OFFSET              
>       0x1c4
> +#define OMAP3_CONTROL_PADCONF_CCDC_DATA4_OFFSET              
>       0x1c6
> +#define OMAP3_CONTROL_PADCONF_CCDC_DATA5_OFFSET              
>       0x1c8
> +#define OMAP3_CONTROL_PADCONF_CCDC_DATA6_OFFSET              
>       0x1ca
> +#define OMAP3_CONTROL_PADCONF_CCDC_DATA7_OFFSET              
>       0x1cc
> +#define OMAP3_CONTROL_PADCONF_RMII_MDIO_DATA_OFFSET          0x1ce
> +#define OMAP3_CONTROL_PADCONF_RMII_MDIO_CLK_OFFSET           0x1d0
> +#define OMAP3_CONTROL_PADCONF_RMII_RXD0_OFFSET               
>       0x1d2
> +#define OMAP3_CONTROL_PADCONF_RMII_RXD1_OFFSET               
>       0x1d4
> +#define OMAP3_CONTROL_PADCONF_RMII_CRS_DV_OFFSET             0x1d6
> +#define OMAP3_CONTROL_PADCONF_RMII_RXER_OFFSET               
>       0x1d8
> +#define OMAP3_CONTROL_PADCONF_RMII_TXD0_OFFSET               
>       0x1da
> +#define OMAP3_CONTROL_PADCONF_RMII_TXD1_OFFSET               
>       0x1dc
> +#define OMAP3_CONTROL_PADCONF_RMII_TXEN_OFFSET               
>       0x1de
> +#define OMAP3_CONTROL_PADCONF_RMII_50MHZ_CLK_OFFSET          0x1e0
> +#define OMAP3_CONTROL_PADCONF_USB0_DRVVBUS_OFFSET            0x1e2
> +#define OMAP3_CONTROL_PADCONF_HECC1_TXD_OFFSET               
>       0x1e4
> +#define OMAP3_CONTROL_PADCONF_HECC1_RXD_OFFSET               
>       0x1e6
> +#define OMAP3_CONTROL_PADCONF_SYS_BOOT7_OFFSET               
>       0x1e8
> +#define OMAP3_CONTROL_PADCONF_SDRC_DQS0N_OFFSET              
>       0x1ea
> +#define OMAP3_CONTROL_PADCONF_SDRC_DQS1N_OFFSET              
>       0x1ec
> +#define OMAP3_CONTROL_PADCONF_SDRC_DQS2N_OFFSET              
>       0x1ee
> +#define OMAP3_CONTROL_PADCONF_SDRC_DQS3N_OFFSET              
>       0x1f0
> +#define OMAP3_CONTROL_PADCONF_SDRC_STRBEN_DLY0_OFFSET        
>       0x1f2
> +#define OMAP3_CONTROL_PADCONF_SDRC_STRBEN_DLY1_OFFSET        
>       0x1f4
> +#define OMAP3_CONTROL_PADCONF_SYS_BOOT8_OFFSET               
>       0x1f6
> +
> +

[sp] Extra line.

>  /* 36xx only */
>  #define OMAP3_CONTROL_PADCONF_GPMC_A11_OFFSET                
>       0x236
>  #define OMAP3_CONTROL_PADCONF_SDRC_BA0_OFFSET                
>       0x570
> 
> --
> To unsubscribe from this list: send the line "unsubscribe 
> linux-omap" in
> the body of a message to [email protected]
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> --
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to