[U-Boot] [PATCH v2 2/2] ARM: tegra: Add the Tamonten™ NG Evaluation Carrier board

Stephen Warren swarren at wwwdotorg.org
Thu Oct 17 21:23:38 CEST 2013


On 10/17/2013 08:29 AM, Alban Bedel wrote:
> Add support for the new Tamonten™ NG platform from Avionic Design.
> Currently only I2C, MMC, USB and ethernet have been tested.

> diff --git a/board/avionic-design/common/tamonten-ng.c b/board/avionic-design/common/tamonten-ng.c

> +void pmu_write(uchar reg, uchar data)
> +{
> +	int i;
> +	i2c_set_bus_num(0);	/* PMU is on bus 0 */
> +	for (i = 0; i < MAX_I2C_RETRY; ++i) {
> +		if (i2c_write(PMU_I2C_ADDRESS, reg, 1, &data, 1))
> +			udelay(100);

Why the need for retries here? This really shouldn't fail.

> +void power_init_board(void)
> +{
> +	/* Set the periphs in reset */
> +	gpio_request(GPIO_PI4, "nRST_PERIPH");
> +	gpio_direction_output(GPIO_PI4, 0);
> +
> +	/* Disable the PCIe power */
> +	gpio_request(GPIO_PT3, "EN_3V3_PEX_HVDD");
> +	gpio_direction_output(GPIO_PT3, 0);
> +
> +	/* Disable the SATA power */
> +	gpio_request(GPIO_PK3, "EN_3V3_SATA_HVDD");
> +	gpio_direction_output(GPIO_PK3, 0);
> +
> +	/* Disable LDO1 for PCIe and SATA */
> +	pmu_write(PMU_REG_LDO1, PMU_LDO1(OFF, 1050));
> +
> +	/* Turn on the alive signal */
> +	gpio_request(GPIO_PV2, "ALIVE");
> +	gpio_direction_output(GPIO_PV2, 1);
> +
> +	/* Wait for the periph to finish their reset */
> +	udelay(1000);
> +	gpio_direction_output(GPIO_PI4, 1);
> +}

Aren't all these the HW defaults? Even if not, I'm not sure there's a
need to explicitly turn everything off at boot; why not do this in the
individual drivers?

Aside from that, this patch looks fine.


More information about the U-Boot mailing list