Commit 10299e2e authored by Kalle Jokiniemi's avatar Kalle Jokiniemi Committed by Anton Vorontsov

ARM: RX-51: Enable isp1704 power on/off

The isp1704 usb tranceiver is used for charging and can be
disabled when not in use. Provide the powering routine to
the driver via platform data.

Also changed the indent of ".name" variable in rx51_charger_device
definition to use tabs same way as the new ".dev" variable indent.
Put this in the same patch since the indent fix is only needed
when there are multiple members in the struct definition.

Loosely based on earlier patches from Heikki Krogerus in
Nokia N900 maemo kernel.
Signed-off-by: default avatarKalle Jokiniemi <kalle.jokiniemi@nokia.com>
Acked-By: default avatarHeikki Krogerus <heikki.krogerus@nokia.com>
Acked-by: default avatarTony Lindgren <tony@atomide.com>
Signed-off-by: default avatarAnton Vorontsov <cbouatmailru@gmail.com>
parent 2785cefc
......@@ -23,6 +23,7 @@
#include <linux/gpio.h>
#include <linux/gpio_keys.h>
#include <linux/mmc/host.h>
#include <linux/power/isp1704_charger.h>
#include <plat/mcspi.h>
#include <plat/board.h>
......@@ -52,6 +53,8 @@
#define RX51_FMTX_RESET_GPIO 163
#define RX51_FMTX_IRQ 53
#define RX51_USB_TRANSCEIVER_RST_GPIO 67
/* list all spi devices here */
enum {
RX51_SPI_WL1251,
......@@ -110,10 +113,30 @@ static struct spi_board_info rx51_peripherals_spi_board_info[] __initdata = {
},
};
static void rx51_charger_set_power(bool on)
{
gpio_set_value(RX51_USB_TRANSCEIVER_RST_GPIO, on);
}
static struct isp1704_charger_data rx51_charger_data = {
.set_power = rx51_charger_set_power,
};
static struct platform_device rx51_charger_device = {
.name = "isp1704_charger",
.dev = {
.platform_data = &rx51_charger_data,
},
};
static void __init rx51_charger_init(void)
{
WARN_ON(gpio_request_one(RX51_USB_TRANSCEIVER_RST_GPIO,
GPIOF_OUT_INIT_LOW, "isp1704_reset"));
platform_device_register(&rx51_charger_device);
}
#if defined(CONFIG_KEYBOARD_GPIO) || defined(CONFIG_KEYBOARD_GPIO_MODULE)
#define RX51_GPIO_CAMERA_LENS_COVER 110
......@@ -981,6 +1004,6 @@ void __init rx51_peripherals_init(void)
if (partition)
omap2_hsmmc_init(mmc);
platform_device_register(&rx51_charger_device);
rx51_charger_init();
}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment