| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- // SPDX-License-Identifier: GPL-2.0+
- /*
- * Copyright (C) 2016 Engicam S.r.l.
- * Copyright (C) 2022 Amarula Solutions(India)
- *
- * Authors:
- * Manoj Sai <abbaraju.manojsai@amarulasolutions.com>
- * Jagan Teki <jagan@amarulasolutions.com>
- */
- #include <common.h>
- #include <env.h>
- #include <errno.h>
- #include <init.h>
- #include <miiphy.h>
- #include <netdev.h>
- #include <linux/delay.h>
- #include <asm/global_data.h>
- #include <asm/mach-imx/iomux-v3.h>
- #include <asm-generic/gpio.h>
- #include <asm/arch/imx8mp_pins.h>
- #include <asm/arch/clock.h>
- #include <asm/arch/sys_proto.h>
- #include <asm/mach-imx/gpio.h>
- DECLARE_GLOBAL_DATA_PTR;
- static void setup_fec(void)
- {
- struct iomuxc_gpr_base_regs *gpr =
- (struct iomuxc_gpr_base_regs *)IOMUXC_GPR_BASE_ADDR;
- /* Enable RGMII TX clk output */
- setbits_le32(&gpr->gpr[1], BIT(22));
- }
- #if CONFIG_IS_ENABLED(NET)
- int board_phy_config(struct phy_device *phydev)
- {
- if (phydev->drv->config)
- phydev->drv->config(phydev);
- return 0;
- }
- #endif
- int board_init(void)
- {
- if (IS_ENABLED(CONFIG_FEC_MXC))
- setup_fec();
- return 0;
- }
- int board_late_init(void)
- {
- return 0;
- }
|