|
@@ -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",
|
|
|
+ .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();
|
|
|
}
|
|
|
|