aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJulius Werner <jwerner@chromium.org>2015-01-21 15:28:07 -0800
committerStefan Reinauer <stefan.reinauer@coreboot.org>2015-04-15 16:54:07 +0200
commit1f0569f01c601b010360c8a729ed9c8156452244 (patch)
tree1e2f41ccb3396a663143e647afc6cfb24333831a
parent25f5778f4a648218b303b6021eae09bf0c450ac0 (diff)
downloadcoreboot-1f0569f01c601b010360c8a729ed9c8156452244.tar.gz
coreboot-1f0569f01c601b010360c8a729ed9c8156452244.tar.xz
coreboot-1f0569f01c601b010360c8a729ed9c8156452244.zip
veyron: Add "backlight" GPIO to coreboot table
This patch adds a new "backlight" output GPIO to the coreboot table in order to avoid redundantly defining that GPIO in the payload. BRANCH=veyron BUG=chrome-os-partner:34713 TEST=Tested together with corresponding depthcharge CL. Change-Id: Ia997beb1a400136ad65d8f0217781c9782f6e8a5 Signed-off-by: Stefan Reinauer <reinauer@chromium.org> Original-Commit-Id: 04ce4c23573cf926aeef3d817d3ab00835f897c7 Original-Change-Id: I69b3c7ac6be4b9723b6a0dfecef5e1c4ea681aff Original-Signed-off-by: Julius Werner <jwerner@chromium.org> Original-Reviewed-on: https://chromium-review.googlesource.com/242400 Original-Tested-by: Lin Huang <hl@rock-chips.com> Original-Reviewed-by: Aaron Durbin <adurbin@chromium.org> Reviewed-on: http://review.coreboot.org/9652 Tested-by: build bot (Jenkins) Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net> Reviewed-by: Marc Jones <marc.jones@se-eng.com>
-rw-r--r--src/mainboard/google/veyron_jerry/board.h1
-rw-r--r--src/mainboard/google/veyron_jerry/chromeos.c8
-rw-r--r--src/mainboard/google/veyron_jerry/mainboard.c6
-rw-r--r--src/mainboard/google/veyron_mighty/board.h1
-rw-r--r--src/mainboard/google/veyron_mighty/chromeos.c8
-rw-r--r--src/mainboard/google/veyron_mighty/mainboard.c6
-rw-r--r--src/mainboard/google/veyron_pinky/board.h1
-rw-r--r--src/mainboard/google/veyron_pinky/chromeos.c8
-rw-r--r--src/mainboard/google/veyron_pinky/mainboard.c6
-rw-r--r--src/mainboard/google/veyron_speedy/board.h1
-rw-r--r--src/mainboard/google/veyron_speedy/chromeos.c8
-rw-r--r--src/mainboard/google/veyron_speedy/mainboard.c6
12 files changed, 48 insertions, 12 deletions
diff --git a/src/mainboard/google/veyron_jerry/board.h b/src/mainboard/google/veyron_jerry/board.h
index be96ce784..3d567ded6 100644
--- a/src/mainboard/google/veyron_jerry/board.h
+++ b/src/mainboard/google/veyron_jerry/board.h
@@ -23,6 +23,7 @@
#include <boardid.h>
#include <gpio.h>
+#define GPIO_BACKLIGHT GPIO(7, A, 0)
#define GPIO_RESET GPIO(0, B, 5)
/* TODO: move setup_chromeos_gpios() here once bootblock code is in mainboard */
diff --git a/src/mainboard/google/veyron_jerry/chromeos.c b/src/mainboard/google/veyron_jerry/chromeos.c
index 069b28b91..d509a0165 100644
--- a/src/mainboard/google/veyron_jerry/chromeos.c
+++ b/src/mainboard/google/veyron_jerry/chromeos.c
@@ -100,6 +100,14 @@ void fill_lb_gpios(struct lb_gpios *gpios)
GPIO_MAX_NAME_LENGTH);
count++;
+ /* Backlight: GPIO active high (output) */
+ gpios->gpios[count].port = GPIO_BACKLIGHT.raw;
+ gpios->gpios[count].polarity = ACTIVE_HIGH;
+ gpios->gpios[count].value = -1;
+ strncpy((char *)gpios->gpios[count].name, "backlight",
+ GPIO_MAX_NAME_LENGTH);
+ count++;
+
gpios->size = sizeof(*gpios) + (count * sizeof(struct lb_gpio));
gpios->count = count;
diff --git a/src/mainboard/google/veyron_jerry/mainboard.c b/src/mainboard/google/veyron_jerry/mainboard.c
index 198a93003..2d7dbc706 100644
--- a/src/mainboard/google/veyron_jerry/mainboard.c
+++ b/src/mainboard/google/veyron_jerry/mainboard.c
@@ -141,17 +141,17 @@ void mainboard_power_on_backlight(void)
{
switch (board_id()) {
case 2:
- gpio_output(GPIO(7, A, 0), 0); /* BL_EN */
+ gpio_output(GPIO_BACKLIGHT, 0); /* BL_EN */
gpio_output(GPIO(7, A, 2), 1); /* LCD_BL */
mdelay(10);
- gpio_output(GPIO(7, A, 0), 1); /* BL_EN */
+ gpio_output(GPIO_BACKLIGHT, 1); /* BL_EN */
break;
default:
gpio_output(GPIO(2, B, 4), 1); /* BL_PWR_EN */
mdelay(10);
gpio_output(GPIO(7, A, 2), 1); /* LCD_BL */
mdelay(10);
- gpio_output(GPIO(7, A, 0), 1); /* BL_EN */
+ gpio_output(GPIO_BACKLIGHT, 1); /* BL_EN */
break;
}
}
diff --git a/src/mainboard/google/veyron_mighty/board.h b/src/mainboard/google/veyron_mighty/board.h
index 249552e79..280568a43 100644
--- a/src/mainboard/google/veyron_mighty/board.h
+++ b/src/mainboard/google/veyron_mighty/board.h
@@ -23,6 +23,7 @@
#include <boardid.h>
#include <gpio.h>
+#define GPIO_BACKLIGHT GPIO(7, A, 0)
#define GPIO_RESET GPIO(0, B, 5)
/* TODO: move setup_chromeos_gpios() here once bootblock code is in mainboard */
diff --git a/src/mainboard/google/veyron_mighty/chromeos.c b/src/mainboard/google/veyron_mighty/chromeos.c
index 069b28b91..d509a0165 100644
--- a/src/mainboard/google/veyron_mighty/chromeos.c
+++ b/src/mainboard/google/veyron_mighty/chromeos.c
@@ -100,6 +100,14 @@ void fill_lb_gpios(struct lb_gpios *gpios)
GPIO_MAX_NAME_LENGTH);
count++;
+ /* Backlight: GPIO active high (output) */
+ gpios->gpios[count].port = GPIO_BACKLIGHT.raw;
+ gpios->gpios[count].polarity = ACTIVE_HIGH;
+ gpios->gpios[count].value = -1;
+ strncpy((char *)gpios->gpios[count].name, "backlight",
+ GPIO_MAX_NAME_LENGTH);
+ count++;
+
gpios->size = sizeof(*gpios) + (count * sizeof(struct lb_gpio));
gpios->count = count;
diff --git a/src/mainboard/google/veyron_mighty/mainboard.c b/src/mainboard/google/veyron_mighty/mainboard.c
index 3bf5724e3..2441a1b9d 100644
--- a/src/mainboard/google/veyron_mighty/mainboard.c
+++ b/src/mainboard/google/veyron_mighty/mainboard.c
@@ -141,17 +141,17 @@ void mainboard_power_on_backlight(void)
{
switch (board_id()) {
case 0:
- gpio_output(GPIO(7, A, 0), 0); /* BL_EN */
+ gpio_output(GPIO_BACKLIGHT, 0); /* BL_EN */
gpio_output(GPIO(7, A, 2), 1); /* LCD_BL */
mdelay(10);
- gpio_output(GPIO(7, A, 0), 1); /* BL_EN */
+ gpio_output(GPIO_BACKLIGHT, 1); /* BL_EN */
break;
default:
gpio_output(GPIO(2, B, 4), 1); /* BL_PWR_EN */
mdelay(10);
gpio_output(GPIO(7, A, 2), 1); /* LCD_BL */
mdelay(10);
- gpio_output(GPIO(7, A, 0), 1); /* BL_EN */
+ gpio_output(GPIO_BACKLIGHT, 1); /* BL_EN */
break;
}
}
diff --git a/src/mainboard/google/veyron_pinky/board.h b/src/mainboard/google/veyron_pinky/board.h
index bf842c1cc..8fe102fd2 100644
--- a/src/mainboard/google/veyron_pinky/board.h
+++ b/src/mainboard/google/veyron_pinky/board.h
@@ -23,6 +23,7 @@
#include <boardid.h>
#include <gpio.h>
+#define GPIO_BACKLIGHT GPIO(7, A, 0)
#define GPIO_RESET (board_id() > 0 ? GPIO(0, B, 5) : GPIO(0, B, 2))
/* TODO: move setup_chromeos_gpios() here once bootblock code is in mainboard */
diff --git a/src/mainboard/google/veyron_pinky/chromeos.c b/src/mainboard/google/veyron_pinky/chromeos.c
index 83ca70b94..dd781aae5 100644
--- a/src/mainboard/google/veyron_pinky/chromeos.c
+++ b/src/mainboard/google/veyron_pinky/chromeos.c
@@ -101,6 +101,14 @@ void fill_lb_gpios(struct lb_gpios *gpios)
GPIO_MAX_NAME_LENGTH);
count++;
+ /* Backlight: GPIO active high (output) */
+ gpios->gpios[count].port = GPIO_BACKLIGHT.raw;
+ gpios->gpios[count].polarity = ACTIVE_HIGH;
+ gpios->gpios[count].value = -1;
+ strncpy((char *)gpios->gpios[count].name, "backlight",
+ GPIO_MAX_NAME_LENGTH);
+ count++;
+
gpios->size = sizeof(*gpios) + (count * sizeof(struct lb_gpio));
gpios->count = count;
diff --git a/src/mainboard/google/veyron_pinky/mainboard.c b/src/mainboard/google/veyron_pinky/mainboard.c
index a22ef92fb..c272d66e0 100644
--- a/src/mainboard/google/veyron_pinky/mainboard.c
+++ b/src/mainboard/google/veyron_pinky/mainboard.c
@@ -187,17 +187,17 @@ void mainboard_power_on_backlight(void)
case 0:
case 1:
case 2:
- gpio_output(GPIO(7, A, 0), 0); /* BL_EN */
+ gpio_output(GPIO_BACKLIGHT, 0); /* BL_EN */
gpio_output(GPIO(7, A, 2), 1); /* LCD_BL */
mdelay(10);
- gpio_output(GPIO(7, A, 0), 1); /* BL_EN */
+ gpio_output(GPIO_BACKLIGHT, 1); /* BL_EN */
break;
default:
gpio_output(GPIO(2, B, 4), 1); /* BL_PWR_EN */
mdelay(10);
gpio_output(GPIO(7, A, 2), 1); /* LCD_BL */
mdelay(10);
- gpio_output(GPIO(7, A, 0), 1); /* BL_EN */
+ gpio_output(GPIO_BACKLIGHT, 1); /* BL_EN */
break;
}
}
diff --git a/src/mainboard/google/veyron_speedy/board.h b/src/mainboard/google/veyron_speedy/board.h
index 244cdfb76..817aac298 100644
--- a/src/mainboard/google/veyron_speedy/board.h
+++ b/src/mainboard/google/veyron_speedy/board.h
@@ -23,6 +23,7 @@
#include <boardid.h>
#include <gpio.h>
+#define GPIO_BACKLIGHT GPIO(7, A, 0)
#define GPIO_RESET GPIO(0, B, 5)
/* TODO: move setup_chromeos_gpios() here once bootblock code is in mainboard */
diff --git a/src/mainboard/google/veyron_speedy/chromeos.c b/src/mainboard/google/veyron_speedy/chromeos.c
index 069b28b91..d509a0165 100644
--- a/src/mainboard/google/veyron_speedy/chromeos.c
+++ b/src/mainboard/google/veyron_speedy/chromeos.c
@@ -100,6 +100,14 @@ void fill_lb_gpios(struct lb_gpios *gpios)
GPIO_MAX_NAME_LENGTH);
count++;
+ /* Backlight: GPIO active high (output) */
+ gpios->gpios[count].port = GPIO_BACKLIGHT.raw;
+ gpios->gpios[count].polarity = ACTIVE_HIGH;
+ gpios->gpios[count].value = -1;
+ strncpy((char *)gpios->gpios[count].name, "backlight",
+ GPIO_MAX_NAME_LENGTH);
+ count++;
+
gpios->size = sizeof(*gpios) + (count * sizeof(struct lb_gpio));
gpios->count = count;
diff --git a/src/mainboard/google/veyron_speedy/mainboard.c b/src/mainboard/google/veyron_speedy/mainboard.c
index 3bf5724e3..2441a1b9d 100644
--- a/src/mainboard/google/veyron_speedy/mainboard.c
+++ b/src/mainboard/google/veyron_speedy/mainboard.c
@@ -141,17 +141,17 @@ void mainboard_power_on_backlight(void)
{
switch (board_id()) {
case 0:
- gpio_output(GPIO(7, A, 0), 0); /* BL_EN */
+ gpio_output(GPIO_BACKLIGHT, 0); /* BL_EN */
gpio_output(GPIO(7, A, 2), 1); /* LCD_BL */
mdelay(10);
- gpio_output(GPIO(7, A, 0), 1); /* BL_EN */
+ gpio_output(GPIO_BACKLIGHT, 1); /* BL_EN */
break;
default:
gpio_output(GPIO(2, B, 4), 1); /* BL_PWR_EN */
mdelay(10);
gpio_output(GPIO(7, A, 2), 1); /* LCD_BL */
mdelay(10);
- gpio_output(GPIO(7, A, 0), 1); /* BL_EN */
+ gpio_output(GPIO_BACKLIGHT, 1); /* BL_EN */
break;
}
}