1 /*
2  *  (C) Copyright 2014
3  *  Stefan Agner <stefan@agner.ch>
4  *
5  * SPDX-License-Identifier:	GPL-2.0+
6  */
7 
8 #include <common.h>
9 #include <asm/arch/pinmux.h>
10 #include <asm/arch/gp_padctrl.h>
11 #include "pinmux-config-colibri_t30.h"
12 #include <i2c.h>
13 #include <asm/gpio.h>
14 
15 /*
16  * Routine: pinmux_init
17  * Description: Do individual peripheral pinmux configs
18  */
19 void pinmux_init(void)
20 {
21 	pinmux_config_pingrp_table(tegra3_pinmux_common,
22 				   ARRAY_SIZE(tegra3_pinmux_common));
23 
24 	pinmux_config_pingrp_table(unused_pins_lowpower,
25 				   ARRAY_SIZE(unused_pins_lowpower));
26 
27 	/* Initialize any non-default pad configs (APB_MISC_GP regs) */
28 	pinmux_config_drvgrp_table(colibri_t30_padctrl,
29 				   ARRAY_SIZE(colibri_t30_padctrl));
30 }
31 
32 /*
33  * Enable AX88772B USB to LAN controller
34  */
35 void pin_mux_usb(void)
36 {
37 	/* Reset ASIX using LAN_RESET */
38 	gpio_request(GPIO_PDD0, "LAN_RESET");
39 	gpio_direction_output(GPIO_PDD0, 0);
40 	udelay(5);
41 	gpio_set_value(GPIO_PDD0, 1);
42 }
43