1*ae9996c8SStefan Roese /* 2*ae9996c8SStefan Roese * Copyright (C) 2015 Stefan Roese <sr@denx.de> 3*ae9996c8SStefan Roese * 4*ae9996c8SStefan Roese * SPDX-License-Identifier: GPL-2.0+ 5*ae9996c8SStefan Roese */ 6*ae9996c8SStefan Roese 7*ae9996c8SStefan Roese #include <common.h> 8*ae9996c8SStefan Roese #include <asm/arch/reset_manager.h> 9*ae9996c8SStefan Roese #include <asm/gpio.h> 10*ae9996c8SStefan Roese #include <asm/io.h> 11*ae9996c8SStefan Roese board_early_init_f(void)12*ae9996c8SStefan Roeseint board_early_init_f(void) 13*ae9996c8SStefan Roese { 14*ae9996c8SStefan Roese int ret; 15*ae9996c8SStefan Roese 16*ae9996c8SStefan Roese /* Reset the Marvell PHY 88E1510 */ 17*ae9996c8SStefan Roese ret = gpio_request(63, "PHY reset"); 18*ae9996c8SStefan Roese if (ret) 19*ae9996c8SStefan Roese return ret; 20*ae9996c8SStefan Roese 21*ae9996c8SStefan Roese gpio_direction_output(63, 0); 22*ae9996c8SStefan Roese mdelay(1); 23*ae9996c8SStefan Roese gpio_set_value(63, 1); 24*ae9996c8SStefan Roese mdelay(10); 25*ae9996c8SStefan Roese 26*ae9996c8SStefan Roese return 0; 27*ae9996c8SStefan Roese } 28