Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
arch
arm
mach-omap1
board-h3-mmc.c
Go to the documentation of this file.
1
/*
2
* linux/arch/arm/mach-omap1/board-h3-mmc.c
3
*
4
* Copyright (C) 2007 Instituto Nokia de Tecnologia - INdT
5
* Author: Felipe Balbi <
[email protected]
>
6
*
7
* This code is based on linux/arch/arm/mach-omap2/board-n800-mmc.c, which is:
8
* Copyright (C) 2006 Nokia Corporation
9
*
10
* This program is free software; you can redistribute it and/or modify
11
* it under the terms of the GNU General Public License version 2 as
12
* published by the Free Software Foundation.
13
*/
14
#include <
linux/gpio.h
>
15
#include <
linux/platform_device.h
>
16
17
#include <
linux/i2c/tps65010.h
>
18
19
#include <
plat/mmc.h
>
20
21
#include "
board-h3.h
"
22
23
#if defined(CONFIG_MMC_OMAP) || defined(CONFIG_MMC_OMAP_MODULE)
24
25
static
int
mmc_set_power(
struct
device
*
dev
,
int
slot
,
int
power_on,
26
int
vdd)
27
{
28
gpio_set_value
(
H3_TPS_GPIO_MMC_PWR_EN
, power_on);
29
return
0;
30
}
31
32
/*
33
* H3 could use the following functions tested:
34
* - mmc_get_cover_state that uses OMAP_MPUIO(1)
35
* - mmc_get_wp that maybe uses OMAP_MPUIO(3)
36
*/
37
static
struct
omap_mmc_platform_data
mmc1_data = {
38
.
nr_slots
= 1,
39
.slots[0] = {
40
.set_power = mmc_set_power,
41
.ocr_mask =
MMC_VDD_32_33
|
MMC_VDD_33_34
,
42
.name =
"mmcblk"
,
43
},
44
};
45
46
static
struct
omap_mmc_platform_data
*
mmc_data
[
OMAP16XX_NR_MMC
];
47
48
void
__init
h3_mmc_init
(
void
)
49
{
50
int
ret
;
51
52
ret =
gpio_request
(
H3_TPS_GPIO_MMC_PWR_EN
,
"MMC power"
);
53
if
(ret < 0)
54
return
;
55
gpio_direction_output
(
H3_TPS_GPIO_MMC_PWR_EN
, 0);
56
57
mmc_data[0] = &mmc1_data;
58
omap1_init_mmc(mmc_data,
OMAP16XX_NR_MMC
);
59
}
60
61
#else
62
63
void
__init
h3_mmc_init
(
void
)
64
{
65
}
66
67
#endif
Generated on Thu Jan 10 2013 13:00:07 for Linux Kernel by
1.8.2