public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Stephen Warren <swarren@wwwdotorg.org>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 10/11] tegra20: remove old pinmux setup
Date: Fri, 25 Jan 2013 14:34:40 -0800	[thread overview]
Message-ID: <51030880.6020008@wwwdotorg.org> (raw)
In-Reply-To: <1359152361.1540.97.camel@tellur>

On 01/25/2013 02:19 PM, Lucas Stach wrote:
> Am Freitag, den 25.01.2013, 14:12 -0800 schrieb Stephen Warren:
>> On 01/24/2013 08:48 AM, Lucas Stach wrote:
>>> All boards are converted to the new tablebased pinmux setup. Get rid of
>>> the old method.
>>
>>> diff --git a/arch/arm/cpu/tegra-common/board.c b/arch/arm/cpu/tegra-common/board.c
>>
>>> @@ -145,7 +121,6 @@ static void setup_uarts(int uart_ids)
>>>  		if (uart_ids & (1 << i)) {
>>>  			enum periph_id id = id_for_uart[i];
>>>  
>>> -			funcmux_select(id, uart_configs[i]);
>>>  			clock_ll_start_uart(id);
>>>  		}
>>>  	}
>>
>> Doesn't the debug UART get set up very early, in the SPL, before any
>> table-based pinmux could be activated?
>>
>> If so, I think we need to leave this one funcmux API call in place, so
>> that the debug UART always works nice and early.
>>
>> If not, how much does this series increase the binary of the SPL?
>>
> Ah right, I forgot about SPL debug. If we go for FDT based pinmux, we
> have to init UART in some explicit way, as DT and SPL don't mix.
> 
> But even then I would like to get rid of the funcmux style and rather
> let the boards provide a minimal UART pinmux init table, as funcmux
> doesn't map too well onto the plethora of config options Tegra30
> provides for the pinmux.

Yes, that's perhaps true.

For reference, I recently worked out all the possible locations of each
logical signal (well, only RX/TX/RTS/CTS for Tegra30) for each UART. I
put the table below for reference in case it's interesting.

Tegra20:

(sets of pingroups that create a complete UART)

> + *	UART A:
> + *		0: unspecified
> + *		1: irrx, irtx
> + *		2: gpu
> + *		3: sdb, sdd
> + *		4: sdio1
> + *		5: uaa
> + *		6: irrx, irtx, uad
> + *		7: irrx, irtx, uad, uab
> + *		8: sdb, sdd, uad
> + *		9: sdb, sdd, uad, uab
> + *		10: uaa, uab
> + *	UART B:
> + *		0: unspecified
> + *		1: uad
> + *		2: uad, irrx, irtx
> + *	UART C:
> + *		0: unspecified
> + *		1: uca
> + *		2: uca, ucb
> + *	UART D:
> + *		0: unspecified
> + *		1: gmc
> + *		2: uda
> + *	UART E:
> + *		0: unspecified
> + *		1: gma
> + *		2: sdio1

Tegra30:

(possible locations for each signal on each UART)

> + * UART CTS pin
> + *	UART A:
> + *		0: unspecified
> + *		1: uart2_rxd
> + *		2: ulpi_data2
> + *		3: gpio_pu2
> + *	UART B:
> + *		0: unspecified
> + *		1: uart2_cts_n
> + *	UART C:
> + *		0: unspecified
> + *		1: uart3_cts_n
> + *	UART D:
> + *		0: unspecified
> + *		1: gmi_a18
> + *		2: ulpi_nxt
> + *	UART E:
> + *		0: unspecified
> + *		1: sdmmc1_dat1
> + *		2: sdmmc4_dat2
> + * UART RTS pin
> + *	UART A:
> + *		0: unspecified
> + *		1: uart2_txd
> + *		2: ulpi_data3
> + *		3: gpio_pu3
> + *	UART B:
> + *		0: unspecified
> + *		1: uart2_rts_n
> + *	UART C:
> + *		0: unspecified
> + *		1: uart3_rts_n
> + *	UART D:
> + *		0: unspecified
> + *		1: gmi_a19
> + *		2: ulpi_stp
> + *	UART E:
> + *		0: unspecified
> + *		1: sdmmc1_dat0
> + *		2: sdmmc4_dat3
> + * UART TXD pin
> + *	UART A:
> + *		0: unspecified
> + *		1: sdmmc3_clk
> + *		2: uart2_rts_n
> + *		3: ulpi_data0
> + *		4: gpio_pu0
> + *	UART B:
> + *		0: unspecified
> + *		1: uart2_txd
> + *	UART C:
> + *		0: unspecified
> + *		1: uart3_txd
> + *	UART D:
> + *		0: unspecified
> + *		1: gmi_a16
> + *		2: ulpi_clk
> + *	UART E:
> + *		0: unspecified
> + *		1: sdmmc1_dat3
> + *		2: sdmmc4_dat0
> + * UART RXD pin
> + *	UART A:
> + *		0: unspecified
> + *		1: sdmmc3_cmd
> + *		2: uart2_cts_n
> + *		3: ulpi_data1
> + *		4: gpio_pu1
> + *	UART B:
> + *		0: unspecified
> + *		1: uart2_rxd
> + *	UART C:
> + *		0: unspecified
> + *		1: uart3_rxd
> + *	UART D:
> + *		0: unspecified
> + *		1: gmi_a17
> + *		2: ulpi_dir
> + *	UART E:
> + *		0: unspecified
> + *		1: sdmmc1_dat2
> + *		2: sdmmc4_dat1

  reply	other threads:[~2013-01-25 22:34 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-01-24 16:48 [U-Boot] [PATCH 00/11] tablebased pinmux for Tegra20 Lucas Stach
2013-01-24 16:48 ` [U-Boot] [PATCH 01/11] tegra: introduce config option to do table based pinmux Lucas Stach
2013-01-24 16:48 ` [U-Boot] [PATCH 02/11] tegra20: add entry point and helper for tablebased pinmux Lucas Stach
2013-01-24 16:48 ` [U-Boot] [PATCH 03/11] tegra20: switch over colibri_t20 board to use " Lucas Stach
2013-01-24 16:48 ` [U-Boot] [PATCH 04/11] tegra20: switch over tamonten platform " Lucas Stach
2013-01-25 22:04   ` Stephen Warren
2013-01-25 22:11     ` Lucas Stach
2013-01-24 16:48 ` [U-Boot] [PATCH 05/11] tegra20: switch over harmony board " Lucas Stach
2013-01-24 16:48 ` [U-Boot] [PATCH 06/11] tegra20: switch over seaboard and ventana " Lucas Stach
2013-01-24 17:54   ` Simon Glass
2013-01-24 18:22     ` Lucas Stach
2013-01-25 21:20       ` Simon Glass
2013-01-25 21:38         ` Lucas Stach
2013-01-25 21:49           ` Simon Glass
2013-01-25 21:57             ` Lucas Stach
2013-01-25 22:09               ` Stephen Warren
2013-01-25 22:10             ` Stephen Warren
2013-01-27 16:36               ` Simon Glass
2013-01-25 22:06       ` Stephen Warren
2013-01-24 16:48 ` [U-Boot] [PATCH 07/11] tegra20: switch over whistler board " Lucas Stach
2013-01-24 16:48 ` [U-Boot] [PATCH 08/11] tegra20: switch over paz00 " Lucas Stach
2013-01-24 16:48 ` [U-Boot] [PATCH 09/11] tegra20: switch over trimslice " Lucas Stach
2013-01-24 16:48 ` [U-Boot] [PATCH 10/11] tegra20: remove old pinmux setup Lucas Stach
2013-01-25 22:12   ` Stephen Warren
2013-01-25 22:19     ` Lucas Stach
2013-01-25 22:34       ` Stephen Warren [this message]
2013-01-24 16:48 ` [U-Boot] [PATCH 11/11] tegra20: remove funcmux Lucas Stach

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=51030880.6020008@wwwdotorg.org \
    --to=swarren@wwwdotorg.org \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox