[U-Boot] [PATCH 4/6] tegra: Add support for UART init in cpu board.c
Mike Frysinger
vapier at gentoo.org
Thu Nov 24 00:40:23 CET 2011
On Wednesday 23 November 2011 17:59:06 Simon Glass wrote:
> --- a/arch/arm/cpu/armv7/tegra2/board.c
> +++ b/arch/arm/cpu/armv7/tegra2/board.c
>
> +static void setup_uarts(int uart_ids)
> +{
> + static enum periph_id id_for_uart[UART_COUNT] = {
> + PERIPH_ID_UART1,
> + PERIPH_ID_UART2,
> + PERIPH_ID_UART3,
> + PERIPH_ID_UART4,
> + };
does this need the [UART_COUNT] ? what if you used "[]" ...
> + int i;
size_t
> + for (i = 0; i < UART_COUNT; i++) {
... and then did ARRAY_SIZE(id_for_uart) ?
> +void board_init_uart_f(void)
> +{
> + int uart_ids = 0; /* bit mask of which UART ids to enable */
> +
> +#ifdef CONFIG_TEGRA2_ENABLE_UARTA
> + uart_ids |= UARTA;
> +#endif
> +#ifdef CONFIG_TEGRA2_ENABLE_UARTB
> + uart_ids |= UARTB;
> +#endif
> +#ifdef CONFIG_TEGRA2_ENABLE_UARTD
> + uart_ids |= UARTD;
> +#endif
> + setup_uarts(uart_ids);
> +}
we added a func in the Blackfin pinmux API where you could pass it a list of
peripherals to mux. so you could do:
static const unsigned pin_list[] = {
#ifdef CONFIG_TEGRA2_ENABLE_UARTA
UART1,
#endif
0,
};
pinmux_request_list(pin_list);
and the list version would just walk the 0-terminated array calling
pinmux_request() automatically
-mike
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20111123/4d270357/attachment.pgp>
More information about the U-Boot
mailing list