diff --git a/src/drivers/board/foster/board.c b/src/drivers/board/foster/board.c
index 61a6e38..030273f 100644
--- a/src/drivers/board/foster/board.c
+++ b/src/drivers/board/foster/board.c
@@ -194,7 +194,7 @@
 }
 
 /* Turn on or turn off the backlight */
-static int ryu_backlight_update(DisplayOps *me, uint8_t enable)
+static int ryu_backlight_update(OldDisplayOps *me, uint8_t enable)
 {
 	struct bl_reg {
 		uint8_t reg;
@@ -235,7 +235,7 @@
 	return 0;
 }
 
-static DisplayOps ryu_display_ops = {
+static OldDisplayOps ryu_display_ops = {
 	.init = &tegra132_display_init,
 	.backlight_update = &ryu_backlight_update,
 	.stop = &tegra132_display_stop,
diff --git a/src/drivers/board/rush/board.c b/src/drivers/board/rush/board.c
index c66a932..2be2050 100644
--- a/src/drivers/board/rush/board.c
+++ b/src/drivers/board/rush/board.c
@@ -234,7 +234,7 @@
 INIT_FUNC(board_setup);
 
 /* Turn on or turn off the backlight */
-static int rush_backlight_update(DisplayOps *me, uint8_t enable)
+static int rush_backlight_update(OldDisplayOps *me, uint8_t enable)
 {
 	TegraGpio *backlight_vdd_enable = new_tegra_gpio_output(GPIO(P, 2));
 	TegraGpio *backlight_enable = new_tegra_gpio_output(GPIO(H, 2));
@@ -246,7 +246,7 @@
 	return 0;
 }
 
-static DisplayOps rush_display_ops = {
+static OldDisplayOps rush_display_ops = {
 	.init = &tegra132_display_init,
 	.backlight_update = &rush_backlight_update,
 	.stop = &tegra132_display_stop,
diff --git a/src/drivers/board/rush_ryu/board.c b/src/drivers/board/rush_ryu/board.c
index 3ce7008..e7a4801 100644
--- a/src/drivers/board/rush_ryu/board.c
+++ b/src/drivers/board/rush_ryu/board.c
@@ -194,7 +194,7 @@
 }
 
 /* Turn on or turn off the backlight */
-static int ryu_backlight_update(DisplayOps *me, uint8_t enable)
+static int ryu_backlight_update(OldDisplayOps *me, uint8_t enable)
 {
 	struct bl_reg {
 		uint8_t reg;
@@ -235,7 +235,7 @@
 	return 0;
 }
 
-static DisplayOps ryu_display_ops = {
+static OldDisplayOps ryu_display_ops = {
 	.init = &tegra132_display_init,
 	.backlight_update = &ryu_backlight_update,
 	.stop = &tegra132_display_stop,
diff --git a/src/drivers/board/smaug/board.c b/src/drivers/board/smaug/board.c
index 0e8db1f..f1d5d44 100644
--- a/src/drivers/board/smaug/board.c
+++ b/src/drivers/board/smaug/board.c
@@ -210,7 +210,7 @@
 INIT_FUNC(board_setup);
 
 /* Turn on or turn off the backlight */
-static int smaug_backlight_update(DisplayOps *me, uint8_t enable)
+static int smaug_backlight_update(OldDisplayOps *me, uint8_t enable)
 {
 	struct bl_reg {
 		uint8_t reg;
@@ -248,7 +248,7 @@
 	return 0;
 }
 
-static DisplayOps smaug_display_ops = {
+static OldDisplayOps smaug_display_ops = {
 	.init = &tegra132_display_init,
 	.backlight_update = &smaug_backlight_update,
 	.stop = &tegra132_display_stop,
diff --git a/src/drivers/board/veyron_rialto/board.c b/src/drivers/board/veyron_rialto/board.c
index e912f21..3d1e495 100644
--- a/src/drivers/board/veyron_rialto/board.c
+++ b/src/drivers/board/veyron_rialto/board.c
@@ -48,7 +48,7 @@
 #include "drivers/video/display.h"
 
 typedef struct {
-	DisplayOps ops;
+	OldDisplayOps ops;
 
 	GpioOps *ready;		/* Wireless icon, white */
 	GpioOps *ready2;	/* Wireless icon, orange */
@@ -56,7 +56,7 @@
 	GpioOps *error;		/* Warning icon, orange */
 } RialtoDisplayOps;
 
-static int rialto_leds_display_screen(DisplayOps *me,
+static int rialto_leds_display_screen(OldDisplayOps *me,
 				      enum VbScreenType_t screen_type) {
 	RialtoDisplayOps *leds = container_of(me, RialtoDisplayOps, ops);
 
diff --git a/src/drivers/video/display.c b/src/drivers/video/display.c
index 1ebcda2..2f416e2 100644
--- a/src/drivers/video/display.c
+++ b/src/drivers/video/display.c
@@ -27,7 +27,7 @@
 #include "base/die.h"
 #include "drivers/video/display.h"
 
-static DisplayOps *display_ops;
+static OldDisplayOps *display_ops;
 
 static int display_cleanup(DcEvent *event)
 {
@@ -36,7 +36,7 @@
 	return 0;
 }
 
-void display_set_ops(DisplayOps *ops)
+void display_set_ops(OldDisplayOps *ops)
 {
 	die_if(display_ops, "%s: Display ops already set.\n", __func__);
 	display_ops = ops;
diff --git a/src/drivers/video/display.h b/src/drivers/video/display.h
index 87d970b..874190f 100644
--- a/src/drivers/video/display.h
+++ b/src/drivers/video/display.h
@@ -25,21 +25,21 @@
 
 #include <vboot_api.h>
 
-typedef struct DisplayOps {
+typedef struct OldDisplayOps {
 	/* Perform any work required for initializing the display. */
-	int (*init)(struct DisplayOps *me);
+	int (*init)(struct OldDisplayOps *me);
 	/* Update the backlight according to the enable parameter. */
-	int (*backlight_update)(struct DisplayOps *me, uint8_t enable);
+	int (*backlight_update)(struct OldDisplayOps *me, uint8_t enable);
 	/* Stop the display as kernel boot is taking place. */
-	int (*stop)(struct DisplayOps *me);
+	int (*stop)(struct OldDisplayOps *me);
 	/* Display a screen appropriate for the Vboot state. */
-	int (*display_screen)(struct DisplayOps *me,
+	int (*display_screen)(struct OldDisplayOps *me,
 			      enum VbScreenType_t screen);
-} DisplayOps;
+} OldDisplayOps;
 
 int display_init(void);
 int backlight_update(uint8_t enable);
-void display_set_ops(DisplayOps *ops);
+void display_set_ops(OldDisplayOps *ops);
 int display_screen(enum VbScreenType_t screen);
 
 #endif
diff --git a/src/drivers/video/intel_i915.c b/src/drivers/video/intel_i915.c
index d1f85de..eec4e42 100644
--- a/src/drivers/video/intel_i915.c
+++ b/src/drivers/video/intel_i915.c
@@ -34,7 +34,7 @@
 
 static uintptr_t reg_base;
 
-static int intel_i915_display_stop(DisplayOps *me)
+static int intel_i915_display_stop(OldDisplayOps *me)
 {
 	uint32_t blc = read32((uint32_t *)(reg_base + BLC_PCH_PWM_CTL1));
 
@@ -47,11 +47,11 @@
 	return 0;
 }
 
-static DisplayOps intel_i915_display_ops= {
+static OldDisplayOps intel_i915_display_ops= {
 	.stop = intel_i915_display_stop,
 };
 
-DisplayOps *new_intel_i915_display(uintptr_t reg_addr)
+OldDisplayOps *new_intel_i915_display(uintptr_t reg_addr)
 {
 	reg_base = reg_addr;
 	return &intel_i915_display_ops;
diff --git a/src/drivers/video/intel_i915.h b/src/drivers/video/intel_i915.h
index 4944221..97b892d 100644
--- a/src/drivers/video/intel_i915.h
+++ b/src/drivers/video/intel_i915.h
@@ -27,6 +27,6 @@
 
 #include "drivers/video/display.h"
 
-DisplayOps *new_intel_i915_display(uintptr_t reg_addr);
+OldDisplayOps *new_intel_i915_display(uintptr_t reg_addr);
 
 #endif /* __DRIVERS_VIDEO_INTEL_I915_H__ */
diff --git a/src/drivers/video/rockchip.c b/src/drivers/video/rockchip.c
index 9f873b8..914a05b 100644
--- a/src/drivers/video/rockchip.c
+++ b/src/drivers/video/rockchip.c
@@ -26,7 +26,7 @@
 #include "drivers/video/rockchip.h"
 
 typedef struct {
-	DisplayOps ops;
+	OldDisplayOps ops;
 	GpioOps *backlight_gpio;
 } RkDisplay;
 
@@ -39,14 +39,14 @@
 static uint32_t *vop0_sys_ctrl = (uint32_t *)0xff930008;
 static uint32_t *vop1_sys_ctrl = (uint32_t *)0xff940008;
 
-static int rockchip_backlight_update(DisplayOps *me, uint8_t enable)
+static int rockchip_backlight_update(OldDisplayOps *me, uint8_t enable)
 {
 	RkDisplay *display = container_of(me, RkDisplay, ops);
 	gpio_set(display->backlight_gpio, enable);
 	return 0;
 }
 
-static int rockchip_display_stop(DisplayOps *me)
+static int rockchip_display_stop(OldDisplayOps *me)
 {
 	/* set vop0 to standby */
 	write32(vop0_sys_ctrl, RK_SETBITS(1 << VOP_STANDBY_EN));
@@ -60,7 +60,7 @@
 	return 0;
 }
 
-DisplayOps *new_rockchip_display(GpioOps *backlight)
+OldDisplayOps *new_rockchip_display(GpioOps *backlight)
 {
 	RkDisplay *display = xzalloc(sizeof(*display));
 	display->ops.stop = rockchip_display_stop;
diff --git a/src/drivers/video/rockchip.h b/src/drivers/video/rockchip.h
index 816b0f0..58b131a 100644
--- a/src/drivers/video/rockchip.h
+++ b/src/drivers/video/rockchip.h
@@ -23,6 +23,6 @@
 #include "drivers/gpio/gpio.h"
 #include "drivers/video/display.h"
 
-DisplayOps *new_rockchip_display(GpioOps *backlight);
+OldDisplayOps *new_rockchip_display(GpioOps *backlight);
 
 #endif
diff --git a/src/drivers/video/tegra132.c b/src/drivers/video/tegra132.c
index 7681e09..c979d02 100644
--- a/src/drivers/video/tegra132.c
+++ b/src/drivers/video/tegra132.c
@@ -29,7 +29,7 @@
 static void * const winbuf_t_start_addr = (void *)(uintptr_t)0x54202000;
 static void * const win_t_win_options = (void *)(uintptr_t)0x54201c00;
 
-int tegra132_display_init(DisplayOps *me)
+int tegra132_display_init(OldDisplayOps *me)
 {
 	uintptr_t phys_addr = lib_sysinfo.framebuffer->physical_address;
 
@@ -40,7 +40,7 @@
 	return 0;
 }
 
-int tegra132_display_stop(DisplayOps *me)
+int tegra132_display_stop(OldDisplayOps *me)
 {
 	/* Disable the T Window. */
 	write32(win_t_win_options, read32(win_t_win_options) & ~WIN_ENABLE);
diff --git a/src/drivers/video/tegra132.h b/src/drivers/video/tegra132.h
index 1b6daba..d5e257f 100644
--- a/src/drivers/video/tegra132.h
+++ b/src/drivers/video/tegra132.h
@@ -27,6 +27,6 @@
 
 #define WIN_ENABLE	(1 << 30)
 
-int tegra132_display_init(DisplayOps *me);
-int tegra132_display_stop(DisplayOps *me);
+int tegra132_display_init(OldDisplayOps *me);
+int tegra132_display_stop(OldDisplayOps *me);
 #endif /* __DRIVERS_VIDEO_TEGRA132_H__ */
