[U-Boot] [PATCH v3 3/7] [REPOST-2] gpio: Add Multi-Function-Pin configuration driver for Marvell SoCs

Wolfgang Denk wd at denx.de
Thu Dec 2 12:22:13 CET 2010


Dear Prafulla Wadaskar,

In message <1291302695-15561-1-git-send-email-prafulla at marvell.com> you wrote:
> Most of the Marvell SoCs has Multi Function Pin (MFP) configuration registers
> For ex. ARMADA100.
> 
> These registers are programmed to expose the specific functionality
> associated with respective SoC Pins
> 
> This driver provides configuration APIs,
> using them, configuration need to be done in board specific code
> 
> for ex- following code configures MFPs 107 and 108 for UART_TX/RX functionality
> 
> int board_early_init_f(void)
> {
> 	u32 mfp_cfg[] = {
> 		/* Console on UART1 */
> 		MFP107_UART1_RXD,
> 		MFP108_UART1_TXD,
> 		MFP_EOC		/*End of configureation*/
> 	};
> 	/* configure MFP's */
> 	mfp_config(mfp_cfg);
> 	return 0;
> }

This smells as if it needs a ton of #defines in header files, covering
all possible pin configurations.  Is there not a way to implemtn this
less expensively?

For example, check how such configurations are done in PowerPC land -
see for example the I/O configuration tables qe_iop_conf_tab[] in
board/freescale/mpc8360erdk/mpc8360erdk.c or in
board/freescale/mpc8568mds/mpc8568mds.c etc.



Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Very ugly or very beautiful women should be flattered on their
understanding, and mediocre ones on their beauty.
                                       -- Philip Earl of Chesterfield


More information about the U-Boot mailing list