
17 Oct
2013
17 Oct
'13
9:23 p.m.
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.