Merge branch 'renesas-g4evm' into renesas-board
* renesas-g4evm: ARM: mach-shmobile: add fixed voltage regulators to g4evm ARM: shmobile: use common extra gpio functions on g4evm
This commit is contained in:
commit
d0ad89fd04
|
@ -26,6 +26,8 @@
|
|||
#include <linux/mtd/mtd.h>
|
||||
#include <linux/mtd/partitions.h>
|
||||
#include <linux/mtd/physmap.h>
|
||||
#include <linux/regulator/fixed.h>
|
||||
#include <linux/regulator/machine.h>
|
||||
#include <linux/usb/r8a66597.h>
|
||||
#include <linux/io.h>
|
||||
#include <linux/input.h>
|
||||
|
@ -196,6 +198,15 @@ static struct platform_device keysc_device = {
|
|||
},
|
||||
};
|
||||
|
||||
/* Fixed 3.3V regulator to be used by SDHI0 and SDHI1 */
|
||||
static struct regulator_consumer_supply fixed3v3_power_consumers[] =
|
||||
{
|
||||
REGULATOR_SUPPLY("vmmc", "sh_mobile_sdhi.0"),
|
||||
REGULATOR_SUPPLY("vqmmc", "sh_mobile_sdhi.0"),
|
||||
REGULATOR_SUPPLY("vmmc", "sh_mobile_sdhi.1"),
|
||||
REGULATOR_SUPPLY("vqmmc", "sh_mobile_sdhi.1"),
|
||||
};
|
||||
|
||||
/* SDHI */
|
||||
static struct sh_mobile_sdhi_info sdhi0_info = {
|
||||
.tmio_caps = MMC_CAP_SDIO_IRQ,
|
||||
|
@ -271,26 +282,11 @@ static struct platform_device *g4evm_devices[] __initdata = {
|
|||
#define GPIO_SDHID1_D3 0xe6052106
|
||||
#define GPIO_SDHICMD1 0xe6052107
|
||||
|
||||
/*
|
||||
* FIXME !!
|
||||
*
|
||||
* gpio_pull_up is quick_hack.
|
||||
*
|
||||
* current gpio frame work doesn't have
|
||||
* the method to control only pull up/down/free.
|
||||
* this function should be replaced by correct gpio function
|
||||
*/
|
||||
static void __init gpio_pull_up(u32 addr)
|
||||
{
|
||||
u8 data = __raw_readb(addr);
|
||||
|
||||
data &= 0x0F;
|
||||
data |= 0xC0;
|
||||
__raw_writeb(data, addr);
|
||||
}
|
||||
|
||||
static void __init g4evm_init(void)
|
||||
{
|
||||
regulator_register_always_on(0, "fixed-3.3V", fixed3v3_power_consumers,
|
||||
ARRAY_SIZE(fixed3v3_power_consumers), 3300000);
|
||||
|
||||
sh7377_pinmux_init();
|
||||
|
||||
/* Lit DS14 LED */
|
||||
|
@ -351,11 +347,11 @@ static void __init g4evm_init(void)
|
|||
gpio_request(GPIO_FN_SDHID0_3, NULL);
|
||||
gpio_request(GPIO_FN_SDHICMD0, NULL);
|
||||
gpio_request(GPIO_FN_SDHIWP0, NULL);
|
||||
gpio_pull_up(GPIO_SDHID0_D0);
|
||||
gpio_pull_up(GPIO_SDHID0_D1);
|
||||
gpio_pull_up(GPIO_SDHID0_D2);
|
||||
gpio_pull_up(GPIO_SDHID0_D3);
|
||||
gpio_pull_up(GPIO_SDHICMD0);
|
||||
gpio_request_pullup(GPIO_SDHID0_D0);
|
||||
gpio_request_pullup(GPIO_SDHID0_D1);
|
||||
gpio_request_pullup(GPIO_SDHID0_D2);
|
||||
gpio_request_pullup(GPIO_SDHID0_D3);
|
||||
gpio_request_pullup(GPIO_SDHICMD0);
|
||||
|
||||
/* SDHI1 */
|
||||
gpio_request(GPIO_FN_SDHICLK1, NULL);
|
||||
|
@ -364,11 +360,11 @@ static void __init g4evm_init(void)
|
|||
gpio_request(GPIO_FN_SDHID1_2, NULL);
|
||||
gpio_request(GPIO_FN_SDHID1_3, NULL);
|
||||
gpio_request(GPIO_FN_SDHICMD1, NULL);
|
||||
gpio_pull_up(GPIO_SDHID1_D0);
|
||||
gpio_pull_up(GPIO_SDHID1_D1);
|
||||
gpio_pull_up(GPIO_SDHID1_D2);
|
||||
gpio_pull_up(GPIO_SDHID1_D3);
|
||||
gpio_pull_up(GPIO_SDHICMD1);
|
||||
gpio_request_pullup(GPIO_SDHID1_D0);
|
||||
gpio_request_pullup(GPIO_SDHID1_D1);
|
||||
gpio_request_pullup(GPIO_SDHID1_D2);
|
||||
gpio_request_pullup(GPIO_SDHID1_D3);
|
||||
gpio_request_pullup(GPIO_SDHICMD1);
|
||||
|
||||
sh7377_add_standard_devices();
|
||||
|
||||
|
|
Loading…
Reference in New Issue