ARM: tegra12: set CPU rate to 2.2GHz for sku 0x87
[linux-3.10.git] / arch / arm / mach-tegra / board-loki-kbc.c
index bfe2ae4..a27a20e 100644 (file)
@@ -65,7 +65,7 @@
 static int loki_wakeup_key(void);
 
 static struct gpio_keys_button loki_int_keys[] = {
-       [0] = GPIO_IKEY(KEY_POWER, 0, 1, 10),
+       [0] = GPIO_KEY(KEY_POWER, PQ0, 1),
        [1] = {
                .code = SW_LID,
                .gpio = TEGRA_GPIO_HALL,
@@ -76,6 +76,16 @@ static struct gpio_keys_button loki_int_keys[] = {
                .wakeup = 1,
                .debounce_interval = 0,
        },
+       [2] = {
+               .code = KEY_WAKEUP,
+               .gpio = TEGRA_GPIO_PS6,
+               .irq = -1,
+               .type = EV_KEY,
+               .desc = "Gamepad",
+               .active_low = 1,
+               .wakeup = 1,
+               .debounce_interval = 0,
+       },
 };
 
 static struct gpio_keys_platform_data loki_int_keys_pdata = {
@@ -100,10 +110,12 @@ static int loki_wakeup_key(void)
                | (u64)readl(IO_ADDRESS(TEGRA_PMC_BASE)
                + PMC_WAKE2_STATUS) << 32;
 
-       if (status & TEGRA_WAKE_PWR_INT)
+       if (status & TEGRA_WAKE_GPIO_PQ0)
                wakeup_key = KEY_POWER;
        else if (status & (1UL << TEGRA_WAKE_GPIO_PS0))
                wakeup_key = SW_LID;
+       else if (status & (1UL << TEGRA_WAKE_GPIO_PS6))
+               wakeup_key = KEY_WAKEUP;
        else
                wakeup_key = -1;
 
@@ -119,9 +131,6 @@ int __init loki_kbc_init(void)
        pr_info("Boardid:SKU = 0x%04x:0x%04x\n",
                        board_info.board_id, board_info.sku);
 
-       loki_int_keys[0].gpio = TEGRA_GPIO_PQ0;
-       loki_int_keys[0].active_low = 1;
-
        ret = platform_device_register(&loki_int_keys_device);
        return ret;
 }