From mboxrd@z Thu Jan 1 00:00:00 1970 From: Igor Opaniuk Date: Thu, 28 Mar 2019 14:43:09 +0000 Subject: [U-Boot] [PATCH v2 11/22] colibri_vf: migrate fec, esdhc, nfc and usb to driver model In-Reply-To: <20190325162512.8702-12-marcel@ziswiler.com> References: <20190325162512.8702-1-marcel@ziswiler.com> <20190325162512.8702-12-marcel@ziswiler.com> Message-ID: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Reviewed-by: Igor Opaniuk On Mon, Mar 25, 2019 at 6:30 PM Marcel Ziswiler wrote: > > From: Marcel Ziswiler > > Migrate FEC, ESDHC, NFC and USB to driver model. > > While at it also do no longer enable optional I2C clock in board file as > the generic clock code now handles this. Note for space reason and as > it is not required just for booting we do not enable I2C in U-Boot by > default. > > While at it also update copyright period. > > Signed-off-by: Marcel Ziswiler > > --- > > Changes in v2: None > > board/toradex/colibri_vf/colibri_vf.c | 82 +-------------------------- > configs/colibri_vf_defconfig | 5 ++ > include/configs/colibri_vf.h | 13 +---- > 3 files changed, 7 insertions(+), 93 deletions(-) > > diff --git a/board/toradex/colibri_vf/colibri_vf.c b/board/toradex/colibri_vf/colibri_vf.c > index 8e0dea2dc2..c4d05532fe 100644 > --- a/board/toradex/colibri_vf/colibri_vf.c > +++ b/board/toradex/colibri_vf/colibri_vf.c > @@ -16,23 +16,16 @@ > #include > #include > #include > -#include > #include > #include > -#include > #include > -#include > -#include > #include > -#include > #include > > #include "../common/tdx-common.h" > > DECLARE_GLOBAL_DATA_PTR; > > -#define USB_PEN_GPIO 83 > -#define USB_CDET_GPIO 102 > #define PTC0_GPIO_45 45 > > static struct ddrmc_cr_setting colibri_vf_cr_settings[] = { > @@ -239,25 +232,6 @@ static void setup_tcon(void) > } > #endif > > -#ifdef CONFIG_FSL_ESDHC > -struct fsl_esdhc_cfg esdhc_cfg[1] = { > - {ESDHC1_BASE_ADDR}, > -}; > - > -int board_mmc_getcd(struct mmc *mmc) > -{ > - /* eSDHC1 is always present */ > - return 1; > -} > - > -int board_mmc_init(bd_t *bis) > -{ > - esdhc_cfg[0].sdhc_clk = mxc_get_clock(MXC_ESDHC_CLK); > - > - return fsl_esdhc_initialize(bis, &esdhc_cfg[0]); > -} > -#endif > - > static inline int is_colibri_vf61(void) > { > struct mscm *mscm = (struct mscm *)MSCM_BASE_ADDR; > @@ -290,7 +264,7 @@ static void clock_init(void) > CCM_CCGR3_ANADIG_CTRL_MASK | CCM_CCGR3_SCSC_CTRL_MASK); > clrsetbits_le32(&ccm->ccgr4, CCM_REG_CTRL_MASK, > CCM_CCGR4_WKUP_CTRL_MASK | CCM_CCGR4_CCM_CTRL_MASK | > - CCM_CCGR4_GPC_CTRL_MASK | CCM_CCGR4_I2C0_CTRL_MASK); > + CCM_CCGR4_GPC_CTRL_MASK); > clrsetbits_le32(&ccm->ccgr6, CCM_REG_CTRL_MASK, > CCM_CCGR6_OCOTP_CTRL_MASK | CCM_CCGR6_DDRMC_CTRL_MASK); > clrsetbits_le32(&ccm->ccgr7, CCM_REG_CTRL_MASK, > @@ -379,14 +353,6 @@ static void mscm_init(void) > writew(MSCM_IRSPRC_CP0_EN, &mscmir->irsprc[i]); > } > > -int board_phy_config(struct phy_device *phydev) > -{ > - if (phydev->drv->config) > - phydev->drv->config(phydev); > - > - return 0; > -} > - > int board_early_init_f(void) > { > clock_init(); > @@ -433,13 +399,8 @@ int board_init(void) > * so we must use the external oscillator in order > * to maintain correct time in the hwclock > */ > - > setbits_le32(&scsc->sosc_ctr, SCSC_SOSC_CTR_SOSC_EN); > > -#ifdef CONFIG_USB_EHCI_VF > - gpio_request(USB_CDET_GPIO, "usb-cdet-gpio"); > -#endif > - > return 0; > } > > @@ -476,47 +437,6 @@ int ft_board_setup(void *blob, bd_t *bd) > } > #endif > > -#ifdef CONFIG_USB_EHCI_VF > -int board_ehci_hcd_init(int port) > -{ > - switch (port) { > - case 0: > - /* USBC does not have PEN, also configured as USB client only */ > - break; > - case 1: > - gpio_request(USB_PEN_GPIO, "usb-pen-gpio"); > - gpio_direction_output(USB_PEN_GPIO, 0); > - break; > - } > - return 0; > -} > - > -int board_usb_phy_mode(int port) > -{ > - switch (port) { > - case 0: > - /* > - * Port 0 is used only in client mode on Colibri Vybrid modules > - * Check for state of USB client gpio pin and accordingly return > - * USB_INIT_DEVICE or USB_INIT_HOST. > - */ > - if (gpio_get_value(USB_CDET_GPIO)) > - return USB_INIT_DEVICE; > - else > - return USB_INIT_HOST; > - case 1: > - /* Port 1 is used only in host mode on Colibri Vybrid modules */ > - return USB_INIT_HOST; > - default: > - /* > - * There are only two USB controllers on Vybrid. Ideally we will > - * not reach here. However return USB_INIT_HOST if we do. > - */ > - return USB_INIT_HOST; > - } > -} > -#endif > - > /* > * Backlight off before OS handover > */ > diff --git a/configs/colibri_vf_defconfig b/configs/colibri_vf_defconfig > index 9a91cb4b82..344fe77234 100644 > --- a/configs/colibri_vf_defconfig > +++ b/configs/colibri_vf_defconfig > @@ -56,13 +56,18 @@ CONFIG_DM=y > CONFIG_DFU_NAND=y > CONFIG_DM_GPIO=y > CONFIG_VYBRID_GPIO=y > +CONFIG_DM_MMC=y > # CONFIG_MMC_HW_PARTITIONING is not set > CONFIG_FSL_ESDHC=y > +CONFIG_MTD=y > CONFIG_NAND_VF610_NFC=y > +CONFIG_NAND_VF610_NFC_DT=y > CONFIG_SYS_NAND_VF610_NFC_60_ECC_BYTES=y > CONFIG_MTD_UBI_FASTMAP=y > CONFIG_PHYLIB=y > CONFIG_PHY_MICREL=y > +CONFIG_DM_ETH=y > +CONFIG_FEC_MXC=y > CONFIG_MII=y > CONFIG_PINCTRL=y > CONFIG_PINCTRL_VYBRID=y > diff --git a/include/configs/colibri_vf.h b/include/configs/colibri_vf.h > index e7b786e48b..1acc6e5056 100644 > --- a/include/configs/colibri_vf.h > +++ b/include/configs/colibri_vf.h > @@ -1,6 +1,6 @@ > /* SPDX-License-Identifier: GPL-2.0+ */ > /* > - * Copyright 2015-2016 Toradex, Inc. > + * Copyright 2015-2019 Toradex, Inc. > * > * Configuration settings for the Toradex VF50/VF61 modules. > * > @@ -36,17 +36,6 @@ > /* NAND support */ > #define CONFIG_SYS_NAND_ONFI_DETECTION > #define CONFIG_SYS_MAX_NAND_DEVICE 1 > -#define CONFIG_SYS_NAND_BASE NFC_BASE_ADDR > - > -/* Dynamic MTD partition support */ > - > -#define CONFIG_SYS_FSL_ESDHC_ADDR 0 > -#define CONFIG_SYS_FSL_ESDHC_NUM 1 > - > -#define CONFIG_FEC_MXC > -#define IMX_FEC_BASE ENET1_BASE_ADDR > -#define CONFIG_FEC_XCV_TYPE RMII > -#define CONFIG_FEC_MXC_PHYADDR 0 > > #define CONFIG_IPADDR 192.168.10.2 > #define CONFIG_NETMASK 255.255.255.0 > -- > 2.20.1 > > _______________________________________________ > U-Boot mailing list > U-Boot at lists.denx.de > https://lists.denx.de/listinfo/u-boot