From b37e6bc8c119289aca8740dd5e3b60d72f9d6b40 Mon Sep 17 00:00:00 2001 From: Jonathan Gordon Date: Wed, 22 Feb 2012 21:18:05 +1100 Subject: lcd drivers: Convert lcd_[remote_]framebuffer to a pointer Change all lcd drivers to using a pointer to the static framebuffer instead of directly accessing the static array. This will let us later do fun things like dynamic framebuffer sizes (RaaA) or ability to use different buffers for different layers (dynamic skin backdrops!) Change-Id: I0a4d58a9d7b55e6c932131b929e5d4c9f9414b06 --- firmware/target/arm/philips/hdd1630/lcd-hdd1630.c | 2 +- firmware/target/arm/philips/hdd6330/lcd-hdd6330.c | 2 +- firmware/target/arm/philips/sa9200/lcd-sa9200.c | 6 +++--- 3 files changed, 5 insertions(+), 5 deletions(-) (limited to 'firmware/target/arm/philips') diff --git a/firmware/target/arm/philips/hdd1630/lcd-hdd1630.c b/firmware/target/arm/philips/hdd1630/lcd-hdd1630.c index 500120a432..28bef09463 100644 --- a/firmware/target/arm/philips/hdd1630/lcd-hdd1630.c +++ b/firmware/target/arm/philips/hdd1630/lcd-hdd1630.c @@ -373,7 +373,7 @@ void lcd_update_rect(int x, int y, int width, int height) if ((width <= 0) || (height <= 0)) return; /* Nothing left to do. */ - addr = &lcd_framebuffer[y][x]; + addr = FBADDR(x,y); lcd_send_cmd(CASET); lcd_send_data(x); diff --git a/firmware/target/arm/philips/hdd6330/lcd-hdd6330.c b/firmware/target/arm/philips/hdd6330/lcd-hdd6330.c index 328c270b5e..cdd3064bba 100644 --- a/firmware/target/arm/philips/hdd6330/lcd-hdd6330.c +++ b/firmware/target/arm/philips/hdd6330/lcd-hdd6330.c @@ -285,7 +285,7 @@ void lcd_update_rect(int x, int y, int width, int height) lcd_send_reg(LCD_REG_WRITE_DATA_2_GRAM); - addr = (unsigned long*)&lcd_framebuffer[y][x]; + addr = (unsigned long*)FBADDR(x,y); while (height > 0) { diff --git a/firmware/target/arm/philips/sa9200/lcd-sa9200.c b/firmware/target/arm/philips/sa9200/lcd-sa9200.c index 3db308ed09..e30a298045 100644 --- a/firmware/target/arm/philips/sa9200/lcd-sa9200.c +++ b/firmware/target/arm/philips/sa9200/lcd-sa9200.c @@ -495,8 +495,8 @@ void lcd_update(void) if (!display_on) return; - addr = &lcd_framebuffer[0][0]; - end = &lcd_framebuffer[LCD_HEIGHT - 1][LCD_WIDTH]; + addr = FBADDR(0,0); + end = FBADDR(LCD_WIDTH,LCD_HEIGHT - 1); lcd_write_reg(R_HORIZ_RAM_ADDR_POS, (LCD_WIDTH - 1) << 8); lcd_write_reg(R_VERT_RAM_ADDR_POS, (LCD_HEIGHT - 1) << 8); @@ -533,7 +533,7 @@ void lcd_update_rect(int x, int y, int width, int height) if (height <= 0) return; /* Nothing left to do. */ - addr = &lcd_framebuffer[y][x]; + addr = FBADDR(x,y); lcd_write_reg(R_HORIZ_RAM_ADDR_POS, ((x + width - 1) << 8) | x); lcd_write_reg(R_VERT_RAM_ADDR_POS, ((y + height - 1) << 8) | y); -- cgit v1.2.3