Rapid pin muxing setup at power-up

Using Colibri T20, Windows Embedded Compact (v7 Build 2824) and Iris Carrier board.

Please advice on the optimal way to set the pin muxing config on the Tegra 2 so that at power up the state of the muxed T20 pins can not be temporarily unknown, leading to conflicts.

An example would be an external device driving a muxed pin on the Colibri board but temporarily (until it is properly configured by software) encountering an output at 3.3V.

Config Block Editor 1.3 does not seem to offer pervasive GPIO configuration.

Is configuration at the level of bootloader our only option?

Any pointers on how to proceed appreciated.

During booting there are actually three phases of the pins states:

  1. Undefined state until the input voltages are all stable
  2. Reset value of the pins
  3. Configuration set by the bootloader or image (drivers, custom software).

Phase 1: In the first phase you can not do anything, there is no warranty you get a defined value. You can be pretty sure, the pins will not drive to 3.3V. If you really need a defined state of the pins, we recommend you to add a buffer that is connected to the RESET signal. As soon as the RESET is released the pins should be in the reset state.

Phase 2: If you need more information about the reset value of the pins, you find them all in the data sheet from page 15 on.

Phase 3: There is currently no tool you can modify the pin settings in the bootloader but you can modify them in the bootloader menu. The according documentation you can find herre.

Remark: The Colibri T20 has a pin group concept. So if you modify one pin of the same group it also affects the state of the other pins of the same group (i.e. pull state is modified on all pins, …).