1 // SPDX-License-Identifier: GPL-2.0-only 1 2 /* 3 * linux/arch/arm/mach-omap1/board-sx1-mmc.c 4 * 5 * Copyright (C) 2007 Instituto Nokia de Tecno 6 * Author: Carlos Eduardo Aguiar <carlos.aguia 7 * 8 * This code is based on linux/arch/arm/mach-o 9 * Copyright (C) 2007 Instituto Nokia de Tecno 10 */ 11 12 #include <linux/platform_device.h> 13 14 #include "hardware.h" 15 #include "board-sx1.h" 16 #include "mmc.h" 17 18 #if IS_ENABLED(CONFIG_MMC_OMAP) 19 20 static int mmc_set_power(struct device *dev, i 21 int vdd) 22 { 23 int err; 24 u8 dat = 0; 25 26 err = sx1_i2c_read_byte(SOFIA_I2C_ADDR 27 if (err < 0) 28 return err; 29 30 if (power_on) 31 dat |= SOFIA_MMC_POWER; 32 else 33 dat &= ~SOFIA_MMC_POWER; 34 35 return sx1_i2c_write_byte(SOFIA_I2C_AD 36 } 37 38 /* Cover switch is at OMAP_MPUIO(3) */ 39 static struct omap_mmc_platform_data mmc1_data 40 .nr_slots = 1, 41 .slots[0] = { 42 .set_power = mmc_ 43 .ocr_mask = MMC_ 44 .name = "mmc 45 }, 46 }; 47 48 static struct omap_mmc_platform_data *mmc_data 49 50 void __init sx1_mmc_init(void) 51 { 52 mmc_data[0] = &mmc1_data; 53 omap1_init_mmc(mmc_data, OMAP15XX_NR_M 54 } 55 56 #else 57 58 void __init sx1_mmc_init(void) 59 { 60 } 61 62 #endif 63
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.