aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile.objs1
-rw-r--r--Makefile.target2
-rw-r--r--default-configs/mips-softmmu.mak1
-rw-r--r--default-configs/mips64-softmmu.mak1
-rw-r--r--default-configs/mips64el-softmmu.mak1
-rw-r--r--default-configs/mipsel-softmmu.mak1
-rw-r--r--hw/g364fb.c16
7 files changed, 15 insertions, 8 deletions
diff --git a/Makefile.objs b/Makefile.objs
index a529a11e7f..62020d739c 100644
--- a/Makefile.objs
+++ b/Makefile.objs
@@ -240,6 +240,7 @@ hw-obj-$(CONFIG_PPCE500_PCI) += ppce500_pci.o
# MIPS devices
hw-obj-$(CONFIG_PIIX4) += piix4.o
+hw-obj-$(CONFIG_G364FB) += g364fb.o
# PCI watchdog devices
hw-obj-$(CONFIG_PCI) += wdt_i6300esb.o
diff --git a/Makefile.target b/Makefile.target
index 8822442a8a..5f93d9e859 100644
--- a/Makefile.target
+++ b/Makefile.target
@@ -284,7 +284,7 @@ obj-lm32-y += framebuffer.o
obj-mips-y = mips_r4k.o mips_jazz.o mips_malta.o mips_mipssim.o
obj-mips-y += mips_addr.o mips_timer.o mips_int.o
obj-mips-y += vga.o i8259.o
-obj-mips-y += g364fb.o jazz_led.o
+obj-mips-y += jazz_led.o
obj-mips-y += gt64xxx.o mc146818rtc.o
obj-mips-y += cirrus_vga.o
obj-mips-$(CONFIG_FULONG) += bonito.o vt82c686.o mips_fulong2e.o
diff --git a/default-configs/mips-softmmu.mak b/default-configs/mips-softmmu.mak
index f524971598..45bdefb9b2 100644
--- a/default-configs/mips-softmmu.mak
+++ b/default-configs/mips-softmmu.mak
@@ -26,3 +26,4 @@ CONFIG_DP8393X=y
CONFIG_DS1225Y=y
CONFIG_MIPSNET=y
CONFIG_PFLASH_CFI01=y
+CONFIG_G364FB=y
diff --git a/default-configs/mips64-softmmu.mak b/default-configs/mips64-softmmu.mak
index aeab6b2c28..d43e33ca60 100644
--- a/default-configs/mips64-softmmu.mak
+++ b/default-configs/mips64-softmmu.mak
@@ -26,3 +26,4 @@ CONFIG_DP8393X=y
CONFIG_DS1225Y=y
CONFIG_MIPSNET=y
CONFIG_PFLASH_CFI01=y
+CONFIG_G364FB=y
diff --git a/default-configs/mips64el-softmmu.mak b/default-configs/mips64el-softmmu.mak
index 8e6511cbeb..f307e8d8b0 100644
--- a/default-configs/mips64el-softmmu.mak
+++ b/default-configs/mips64el-softmmu.mak
@@ -28,3 +28,4 @@ CONFIG_DS1225Y=y
CONFIG_MIPSNET=y
CONFIG_PFLASH_CFI01=y
CONFIG_FULONG=y
+CONFIG_G364FB=y
diff --git a/default-configs/mipsel-softmmu.mak b/default-configs/mipsel-softmmu.mak
index a05ac25393..1a66bc31bb 100644
--- a/default-configs/mipsel-softmmu.mak
+++ b/default-configs/mipsel-softmmu.mak
@@ -26,3 +26,4 @@ CONFIG_DP8393X=y
CONFIG_DS1225Y=y
CONFIG_MIPSNET=y
CONFIG_PFLASH_CFI01=y
+CONFIG_G364FB=y
diff --git a/hw/g364fb.c b/hw/g364fb.c
index 5e7bcfa278..b43341f8d7 100644
--- a/hw/g364fb.c
+++ b/hw/g364fb.c
@@ -58,6 +58,8 @@ typedef struct G364State {
#define CTLA_FORCE_BLANK 0x00000400
#define CTLA_NO_CURSOR 0x00800000
+#define G364_PAGE_SIZE 4096
+
static inline int check_dirty(G364State *s, ram_addr_t page)
{
return memory_region_get_dirty(&s->mem_vram, page, DIRTY_MEMORY_VGA);
@@ -68,7 +70,7 @@ static inline void reset_dirty(G364State *s,
{
memory_region_reset_dirty(&s->mem_vram,
page_min,
- page_max + TARGET_PAGE_SIZE - page_min - 1,
+ page_max + G364_PAGE_SIZE - page_min - 1,
DIRTY_MEMORY_VGA);
}
@@ -136,7 +138,7 @@ static void g364fb_draw_graphic8(G364State *s)
page_max = page;
if (x < xmin)
xmin = x;
- for (i = 0; i < TARGET_PAGE_SIZE; i++) {
+ for (i = 0; i < G364_PAGE_SIZE; i++) {
uint8_t index;
unsigned int color;
if (unlikely((y >= ycursor && y < ycursor + 64) &&
@@ -200,15 +202,15 @@ static void g364fb_draw_graphic8(G364State *s)
ymin = s->height;
ymax = 0;
}
- x += TARGET_PAGE_SIZE;
+ x += G364_PAGE_SIZE;
dy = x / s->width;
x = x % s->width;
y += dy;
- vram += TARGET_PAGE_SIZE;
+ vram += G364_PAGE_SIZE;
data_display += dy * ds_get_linesize(s->ds);
dd = data_display + x * w;
}
- page += TARGET_PAGE_SIZE;
+ page += G364_PAGE_SIZE;
}
done:
@@ -267,7 +269,7 @@ static inline void g364fb_invalidate_display(void *opaque)
int i;
s->blanked = 0;
- for (i = 0; i < s->vram_size; i += TARGET_PAGE_SIZE) {
+ for (i = 0; i < s->vram_size; i += G364_PAGE_SIZE) {
memory_region_set_dirty(&s->mem_vram, i);
}
}
@@ -387,7 +389,7 @@ static void g364_invalidate_cursor_position(G364State *s)
start = ymin * ds_get_linesize(s->ds);
end = (ymax + 1) * ds_get_linesize(s->ds);
- for (i = start; i < end; i += TARGET_PAGE_SIZE) {
+ for (i = start; i < end; i += G364_PAGE_SIZE) {
memory_region_set_dirty(&s->mem_vram, i);
}
}