summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/mainboard/google/veyron_jerry/chromeos.c10
-rw-r--r--src/mainboard/google/veyron_mighty/chromeos.c10
-rw-r--r--src/mainboard/google/veyron_pinky/chromeos.c10
-rw-r--r--src/mainboard/google/veyron_speedy/chromeos.c10
4 files changed, 40 insertions, 0 deletions
diff --git a/src/mainboard/google/veyron_jerry/chromeos.c b/src/mainboard/google/veyron_jerry/chromeos.c
index d509a01653..e0f816cdc1 100644
--- a/src/mainboard/google/veyron_jerry/chromeos.c
+++ b/src/mainboard/google/veyron_jerry/chromeos.c
@@ -32,6 +32,7 @@
#define GPIO_POWER GPIO(0, A, 5)
#define GPIO_RECOVERY GPIO(0, B, 1)
#define GPIO_ECINRW GPIO(0, A, 7)
+#define GPIO_ECIRQ GPIO(7, A, 7)
void setup_chromeos_gpios(void)
{
@@ -39,6 +40,7 @@ void setup_chromeos_gpios(void)
gpio_input_pullup(GPIO_LID);
gpio_input(GPIO_POWER);
gpio_input_pullup(GPIO_RECOVERY);
+ gpio_input(GPIO_ECIRQ);
}
void fill_lb_gpios(struct lb_gpios *gpios)
@@ -92,6 +94,14 @@ void fill_lb_gpios(struct lb_gpios *gpios)
GPIO_MAX_NAME_LENGTH);
count++;
+ /* EC interrupt: GPIO active high */
+ gpios->gpios[count].port = GPIO_ECIRQ.raw;
+ gpios->gpios[count].polarity = ACTIVE_LOW;
+ gpios->gpios[count].value = -1;
+ strncpy((char *)gpios->gpios[count].name, "EC interrupt",
+ GPIO_MAX_NAME_LENGTH);
+ count++;
+
/* Reset: GPIO active high (output) */
gpios->gpios[count].port = GPIO_RESET.raw;
gpios->gpios[count].polarity = ACTIVE_HIGH;
diff --git a/src/mainboard/google/veyron_mighty/chromeos.c b/src/mainboard/google/veyron_mighty/chromeos.c
index d509a01653..e0f816cdc1 100644
--- a/src/mainboard/google/veyron_mighty/chromeos.c
+++ b/src/mainboard/google/veyron_mighty/chromeos.c
@@ -32,6 +32,7 @@
#define GPIO_POWER GPIO(0, A, 5)
#define GPIO_RECOVERY GPIO(0, B, 1)
#define GPIO_ECINRW GPIO(0, A, 7)
+#define GPIO_ECIRQ GPIO(7, A, 7)
void setup_chromeos_gpios(void)
{
@@ -39,6 +40,7 @@ void setup_chromeos_gpios(void)
gpio_input_pullup(GPIO_LID);
gpio_input(GPIO_POWER);
gpio_input_pullup(GPIO_RECOVERY);
+ gpio_input(GPIO_ECIRQ);
}
void fill_lb_gpios(struct lb_gpios *gpios)
@@ -92,6 +94,14 @@ void fill_lb_gpios(struct lb_gpios *gpios)
GPIO_MAX_NAME_LENGTH);
count++;
+ /* EC interrupt: GPIO active high */
+ gpios->gpios[count].port = GPIO_ECIRQ.raw;
+ gpios->gpios[count].polarity = ACTIVE_LOW;
+ gpios->gpios[count].value = -1;
+ strncpy((char *)gpios->gpios[count].name, "EC interrupt",
+ GPIO_MAX_NAME_LENGTH);
+ count++;
+
/* Reset: GPIO active high (output) */
gpios->gpios[count].port = GPIO_RESET.raw;
gpios->gpios[count].polarity = ACTIVE_HIGH;
diff --git a/src/mainboard/google/veyron_pinky/chromeos.c b/src/mainboard/google/veyron_pinky/chromeos.c
index dd781aae58..b64bae0a46 100644
--- a/src/mainboard/google/veyron_pinky/chromeos.c
+++ b/src/mainboard/google/veyron_pinky/chromeos.c
@@ -32,6 +32,7 @@
#define GPIO_POWER GPIO(0, A, 5)
#define GPIO_RECOVERY GPIO(0, B, 1)
#define GPIO_ECINRW GPIO(0, A, 7)
+#define GPIO_ECIRQ GPIO(7, A, 7)
void setup_chromeos_gpios(void)
{
@@ -39,6 +40,7 @@ void setup_chromeos_gpios(void)
gpio_input_pullup(GPIO_LID);
gpio_input(GPIO_POWER);
gpio_input_pullup(GPIO_RECOVERY);
+ gpio_input(GPIO_ECIRQ);
}
void fill_lb_gpios(struct lb_gpios *gpios)
@@ -93,6 +95,14 @@ void fill_lb_gpios(struct lb_gpios *gpios)
GPIO_MAX_NAME_LENGTH);
count++;
+ /* EC interrupt: GPIO active high */
+ gpios->gpios[count].port = GPIO_ECIRQ.raw;
+ gpios->gpios[count].polarity = ACTIVE_LOW;
+ gpios->gpios[count].value = -1;
+ strncpy((char *)gpios->gpios[count].name, "EC interrupt",
+ GPIO_MAX_NAME_LENGTH);
+ count++;
+
/* Reset: GPIO active high (output) */
gpios->gpios[count].port = GPIO_RESET.raw;
gpios->gpios[count].polarity = ACTIVE_HIGH;
diff --git a/src/mainboard/google/veyron_speedy/chromeos.c b/src/mainboard/google/veyron_speedy/chromeos.c
index d509a01653..e0f816cdc1 100644
--- a/src/mainboard/google/veyron_speedy/chromeos.c
+++ b/src/mainboard/google/veyron_speedy/chromeos.c
@@ -32,6 +32,7 @@
#define GPIO_POWER GPIO(0, A, 5)
#define GPIO_RECOVERY GPIO(0, B, 1)
#define GPIO_ECINRW GPIO(0, A, 7)
+#define GPIO_ECIRQ GPIO(7, A, 7)
void setup_chromeos_gpios(void)
{
@@ -39,6 +40,7 @@ void setup_chromeos_gpios(void)
gpio_input_pullup(GPIO_LID);
gpio_input(GPIO_POWER);
gpio_input_pullup(GPIO_RECOVERY);
+ gpio_input(GPIO_ECIRQ);
}
void fill_lb_gpios(struct lb_gpios *gpios)
@@ -92,6 +94,14 @@ void fill_lb_gpios(struct lb_gpios *gpios)
GPIO_MAX_NAME_LENGTH);
count++;
+ /* EC interrupt: GPIO active high */
+ gpios->gpios[count].port = GPIO_ECIRQ.raw;
+ gpios->gpios[count].polarity = ACTIVE_LOW;
+ gpios->gpios[count].value = -1;
+ strncpy((char *)gpios->gpios[count].name, "EC interrupt",
+ GPIO_MAX_NAME_LENGTH);
+ count++;
+
/* Reset: GPIO active high (output) */
gpios->gpios[count].port = GPIO_RESET.raw;
gpios->gpios[count].polarity = ACTIVE_HIGH;