1 // SPDX-License-Identifier: GPL-2.0+ 2 /* 3 * SPL/U-Boot common functions for CompuLab CL-SOM-iMX7 module 4 * 5 * (C) Copyright 2017 CompuLab, Ltd. http://www.compulab.com 6 * 7 * Author: Uri Mashiach <uri.mashiach@compulab.co.il> 8 */ 9 10 #include <common.h> 11 #include <fsl_esdhc.h> 12 #include <asm-generic/gpio.h> 13 #include "common.h" 14 15 #ifdef CONFIG_SPI 16 17 #define CL_SOM_IMX7_GPIO_SPI_CS IMX_GPIO_NR(4, 19) 18 19 int board_spi_cs_gpio(unsigned int bus, unsigned int cs) 20 { 21 return CL_SOM_IMX7_GPIO_SPI_CS; 22 } 23 24 #endif /* CONFIG_SPI */ 25 26 #ifdef CONFIG_FSL_ESDHC 27 28 int board_mmc_getcd(struct mmc *mmc) 29 { 30 struct fsl_esdhc_cfg *cfg = (struct fsl_esdhc_cfg *)mmc->priv; 31 int ret = 0; 32 33 switch (cfg->esdhc_base) { 34 case USDHC1_BASE_ADDR: 35 ret = !gpio_get_value(CL_SOM_IMX7_GPIO_USDHC1_CD); 36 break; 37 case USDHC3_BASE_ADDR: 38 ret = 1; /* Assume uSDHC3 emmc is always present */ 39 break; 40 } 41 42 return ret; 43 } 44 45 #endif /* CONFIG_FSL_ESDHC */ 46