Module Name:    src
Committed By:   macallan
Date:           Mon Sep 30 15:54:42 UTC 2024

Modified Files:
        src/sys/arch/hppa/dev: gftfb.c

Log Message:
use wrappers for bus_space_*() - makes things shorter, less annoying to read
and reduces unnecessary differences to hyperfb


To generate a diff of this commit:
cvs rdiff -u -r1.20 -r1.21 src/sys/arch/hppa/dev/gftfb.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/hppa/dev/gftfb.c
diff -u src/sys/arch/hppa/dev/gftfb.c:1.20 src/sys/arch/hppa/dev/gftfb.c:1.21
--- src/sys/arch/hppa/dev/gftfb.c:1.20	Tue Sep 10 08:49:33 2024
+++ src/sys/arch/hppa/dev/gftfb.c	Mon Sep 30 15:54:42 2024
@@ -1,4 +1,4 @@
-/*	$NetBSD: gftfb.c,v 1.20 2024/09/10 08:49:33 macallan Exp $	*/
+/*	$NetBSD: gftfb.c,v 1.21 2024/09/30 15:54:42 macallan Exp $	*/
 
 /*	$OpenBSD: sti_pci.c,v 1.7 2009/02/06 22:51:04 miod Exp $	*/
 
@@ -174,6 +174,42 @@ gftfb_match(device_t parent, cfdata_t cf
 	return 0;
 }
 
+static inline uint32_t
+gftfb_read4(struct gftfb_softc *sc, uint32_t offset)
+{
+	struct sti_rom *rom = sc->sc_base.sc_rom;
+	bus_space_tag_t memt = rom->memt;
+	bus_space_handle_t memh = rom->regh[2];
+	return bus_space_read_stream_4(memt, memh, offset);
+}
+
+static inline void
+gftfb_write4(struct gftfb_softc *sc, uint32_t offset, uint32_t val)
+{
+	struct sti_rom *rom = sc->sc_base.sc_rom;
+	bus_space_tag_t memt = rom->memt;
+	bus_space_handle_t memh = rom->regh[2];
+	bus_space_write_stream_4(memt, memh, offset, val);
+}
+
+static inline uint8_t
+gftfb_read1(struct gftfb_softc *sc, uint32_t offset)
+{
+	struct sti_rom *rom = sc->sc_base.sc_rom;
+	bus_space_tag_t memt = rom->memt;
+	bus_space_handle_t memh = rom->regh[2];
+	return bus_space_read_1(memt, memh, offset);
+}
+
+static inline void
+gftfb_write1(struct gftfb_softc *sc, uint32_t offset, uint8_t val)
+{
+	struct sti_rom *rom = sc->sc_base.sc_rom;
+	bus_space_tag_t memt = rom->memt;
+	bus_space_handle_t memh = rom->regh[2];
+	bus_space_write_1(memt, memh, offset, val);
+}
+
 void
 gftfb_attach(device_t parent, device_t self, void *aux)
 {
@@ -227,6 +263,10 @@ gftfb_attach(device_t parent, device_t s
 	    sc->sc_width, sc->sc_height);
 	gftfb_setup(sc);
 
+#ifdef GFTFB_DEBUG
+	sc->sc_height -= 200;
+#endif
+
 	sc->sc_defaultscreen_descr = (struct wsscreen_descr){
 		"default",
 		0, 0,
@@ -610,30 +650,23 @@ gftfb_disable_rom(struct sti_softc *sc)
 static inline void
 gftfb_wait(struct gftfb_softc *sc)
 {
-	struct sti_rom *rom = sc->sc_base.sc_rom;
-	bus_space_tag_t memt = rom->memt;
-	bus_space_handle_t memh = rom->regh[2];
 	uint8_t stat;
 
 	do {
-		stat = bus_space_read_1(memt, memh, NGLE_REG_15b0);
+		stat = gftfb_read1(sc, NGLE_REG_15b0);
 		if (stat == 0)
-			stat = bus_space_read_1(memt, memh, NGLE_REG_15b0);
+			stat = gftfb_read1(sc, NGLE_REG_15b0);
 	} while (stat != 0);
 }
 
 static inline void
 gftfb_setup_fb(struct gftfb_softc *sc)
 {
-	struct sti_rom *rom = sc->sc_base.sc_rom;
-	bus_space_tag_t memt = rom->memt;
-	bus_space_handle_t memh = rom->regh[2];
-
 	gftfb_wait(sc);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_10, 0x13601000);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_14, 0x83000300);
+	gftfb_write4(sc, NGLE_REG_10, 0x13601000);
+	gftfb_write4(sc, NGLE_REG_14, 0x83000300);
 	gftfb_wait(sc);
-	bus_space_write_1(memt, memh, NGLE_REG_16b1, 1);
+	gftfb_write1(sc, NGLE_REG_16b1, 1);
 	sc->sc_hwmode = HW_FB;
 }
 
@@ -661,73 +694,73 @@ gftfb_setup(struct gftfb_softc *sc)
 
 	/* attr. planes */
 	gftfb_wait(sc);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_11, 0x2ea0d000);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_14, 0x23000302);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_12, NGLE_ARTIST_CMAP0);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_8, 0xffffffff);
+	gftfb_write4(sc, NGLE_REG_11, 0x2ea0d000);
+	gftfb_write4(sc, NGLE_REG_14, 0x23000302);
+	gftfb_write4(sc, NGLE_REG_12, NGLE_ARTIST_CMAP0);
+	gftfb_write4(sc, NGLE_REG_8, 0xffffffff);
 
 	gftfb_wait(sc);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_6, 0x00000000);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_9,
+	gftfb_write4(sc, NGLE_REG_6, 0x00000000);
+	gftfb_write4(sc, NGLE_REG_9,
 	    (sc->sc_scr.scr_cfg.scr_width << 16) | sc->sc_scr.scr_cfg.scr_height);
 	/*
 	 * blit into offscreen memory to force flush previous - apparently 
 	 * some chips have a bug this works around
 	 */
-	bus_space_write_stream_4(memt, memh, NGLE_REG_6, 0x05000000);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_9, 0x00040001);
+	gftfb_write4(sc, NGLE_REG_6, 0x05000000);
+	gftfb_write4(sc, NGLE_REG_9, 0x00040001);
 
 	gftfb_wait(sc);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_12, 0x00000000);
+	gftfb_write4(sc, NGLE_REG_12, 0x00000000);
 
 	gftfb_setup_fb(sc);
 
 	/* make sure video output is enabled */
 	gftfb_wait(sc);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_21,
-	    bus_space_read_stream_4(memt, memh, NGLE_REG_21) | 0x0a000000);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_27,
-	    bus_space_read_stream_4(memt, memh, NGLE_REG_27) | 0x00800000);
+	gftfb_write4(sc, NGLE_REG_21,
+	    gftfb_read4(sc, NGLE_REG_21) | 0x0a000000);
+	gftfb_write4(sc, NGLE_REG_27,
+	    gftfb_read4(sc, NGLE_REG_27) | 0x00800000);
 
 	/* initialize cursor sprite */
 	gftfb_wait(sc);
 	
 	/* cursor mask */
 	gftfb_wait(sc);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_14, 0x300);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_13, 0xffffffff);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_11, 0x28A07000);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_3, 0);
+	gftfb_write4(sc, NGLE_REG_14, 0x300);
+	gftfb_write4(sc, NGLE_REG_13, 0xffffffff);
+	gftfb_write4(sc, NGLE_REG_11, 0x28A07000);
+	gftfb_write4(sc, NGLE_REG_3, 0);
 	for (i = 0; i < 64; i++) {
-		bus_space_write_stream_4(memt, memh, NGLE_REG_4, 0xffffffff);
-		bus_space_write_stream_4(memt, memh, NGLE_REG_5, 0xffffffff);
+		gftfb_write4(sc, NGLE_REG_4, 0xffffffff);
+		gftfb_write4(sc, NGLE_REG_5, 0xffffffff);
 	}
 
 	/* cursor image */
 	gftfb_wait(sc);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_14, 0x300);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_13, 0xffffffff);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_11, 0x28A06000);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_3, 0);
+	gftfb_write4(sc, NGLE_REG_14, 0x300);
+	gftfb_write4(sc, NGLE_REG_13, 0xffffffff);
+	gftfb_write4(sc, NGLE_REG_11, 0x28A06000);
+	gftfb_write4(sc, NGLE_REG_3, 0);
 	for (i = 0; i < 64; i++) {
-		bus_space_write_stream_4(memt, memh, NGLE_REG_4, 0xff00ff00);
-		bus_space_write_stream_4(memt, memh, NGLE_REG_5, 0xff00ff00);
+		gftfb_write4(sc, NGLE_REG_4, 0xff00ff00);
+		gftfb_write4(sc, NGLE_REG_5, 0xff00ff00);
 	}
 
 	/* colour map */
 	gftfb_wait(sc);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_10, 0xBBE0F000);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_14, 0x03000300);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_13, 0xffffffff);
+	gftfb_write4(sc, NGLE_REG_10, 0xBBE0F000);
+	gftfb_write4(sc, NGLE_REG_14, 0x03000300);
+	gftfb_write4(sc, NGLE_REG_13, 0xffffffff);
 	gftfb_wait(sc);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_3, 0);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_4, 0);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_4, 0);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_4, 0x000000ff);	/* BG */
-	bus_space_write_stream_4(memt, memh, NGLE_REG_4, 0x00ff0000);	/* FG */
+	gftfb_write4(sc, NGLE_REG_3, 0);
+	gftfb_write4(sc, NGLE_REG_4, 0);
+	gftfb_write4(sc, NGLE_REG_4, 0);
+	gftfb_write4(sc, NGLE_REG_4, 0x000000ff);	/* BG */
+	gftfb_write4(sc, NGLE_REG_4, 0x00ff0000);	/* FG */
 	gftfb_wait(sc);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_2, 0);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_26, 0x80008004);
+	gftfb_write4(sc, NGLE_REG_2, 0);
+	gftfb_write4(sc, NGLE_REG_26, 0x80008004);
 	gftfb_setup_fb(sc);	
 
 	gftfb_move_cursor(sc, 100, 100);
@@ -995,24 +1028,18 @@ static int
 gftfb_putpalreg(struct gftfb_softc *sc, uint8_t idx, uint8_t r, uint8_t g,
     uint8_t b)
 {
-	struct sti_rom *rom = sc->sc_base.sc_rom;
-	bus_space_tag_t memt = rom->memt;
-	bus_space_handle_t memh = rom->regh[2];
-
 	mutex_enter(&sc->sc_hwlock);
 	gftfb_wait(sc);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_10, 0xbbe0f000);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_14, 0x03000300);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_13, 0xffffffff);
+	gftfb_write4(sc, NGLE_REG_10, 0xbbe0f000);
+	gftfb_write4(sc, NGLE_REG_14, 0x03000300);
+	gftfb_write4(sc, NGLE_REG_13, 0xffffffff);
 
 	gftfb_wait(sc);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_3,
-	    0x400 | (idx << 2));
-	bus_space_write_stream_4(memt, memh, NGLE_REG_4,
-	    (r << 16) | (g << 8) | b);
+	gftfb_write4(sc, NGLE_REG_3, 0x400 | (idx << 2));
+	gftfb_write4(sc, NGLE_REG_4, (r << 16) | (g << 8) | b);
 
-	bus_space_write_stream_4(memt, memh, NGLE_REG_2, 0x400);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_26, 0x80000100);
+	gftfb_write4(sc, NGLE_REG_2, 0x400);
+	gftfb_write4(sc, NGLE_REG_26, 0x80000100);
 	gftfb_setup_fb(sc);
 	mutex_exit(&sc->sc_hwlock);
 	return 0;
@@ -1021,13 +1048,10 @@ gftfb_putpalreg(struct gftfb_softc *sc, 
 static inline void
 gftfb_wait_fifo(struct gftfb_softc *sc, uint32_t slots)
 {
-	struct sti_rom *rom = sc->sc_base.sc_rom;
-	bus_space_tag_t memt = rom->memt;
-	bus_space_handle_t memh = rom->regh[2];
 	uint32_t reg;
 
 	do {
-		reg = bus_space_read_stream_4(memt, memh, NGLE_REG_34);
+		reg = gftfb_read4(sc, NGLE_REG_34);
 	} while (reg < slots);
 }
 
@@ -1035,20 +1059,17 @@ static void
 gftfb_rectfill(struct gftfb_softc *sc, int x, int y, int wi, int he,
 		      uint32_t bg)
 {
-	struct sti_rom *rom = sc->sc_base.sc_rom;
-	bus_space_tag_t memt = rom->memt;
-	bus_space_handle_t memh = rom->regh[2];
 	uint32_t mask = 0xffffffff;
 
 	if (sc->sc_hwmode != HW_FILL) {
 		gftfb_wait_fifo(sc, 3);
 		/* plane mask */
-		bus_space_write_stream_4(memt, memh, NGLE_REG_13, 0xff);
+		gftfb_write4(sc, NGLE_REG_13, 0xff);
 		/* bitmap op */
-		bus_space_write_stream_4(memt, memh, NGLE_REG_14, 
+		gftfb_write4(sc, NGLE_REG_14, 
 		    IBOvals(RopSrc, 0, BitmapExtent08, 0, DataDynamic, MaskOtc, 1, 0));
 		/* dst bitmap access */
-		bus_space_write_stream_4(memt, memh, NGLE_REG_11,
+		gftfb_write4(sc, NGLE_REG_11,
 		    BA(IndexedDcd, Otc32, OtsIndirect, AddrLong, 0, BINapp0I, 0));
 		sc->sc_hwmode = HW_FILL;
 	}
@@ -1057,12 +1078,12 @@ gftfb_rectfill(struct gftfb_softc *sc, i
 	if (wi < 32)
 		mask = 0xffffffff << (32 - wi);
 	/* transfer data */
-	bus_space_write_stream_4(memt, memh, NGLE_REG_8, mask);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_35, bg);
+	gftfb_write4(sc, NGLE_REG_8, mask);
+	gftfb_write4(sc, NGLE_REG_35, bg);
 	/* dst XY */
-	bus_space_write_stream_4(memt, memh, NGLE_REG_6, (x << 16) | y);
+	gftfb_write4(sc, NGLE_REG_6, (x << 16) | y);
 	/* len XY start */
-	bus_space_write_stream_4(memt, memh, NGLE_REG_9, (wi << 16) | he);
+	gftfb_write4(sc, NGLE_REG_9, (wi << 16) | he);
 
 }
 
@@ -1071,21 +1092,18 @@ gftfb_bitblt(void *cookie, int xs, int y
 			    int he, int rop)
 {
 	struct gftfb_softc *sc = cookie;
-	struct sti_rom *rom = sc->sc_base.sc_rom;
-	bus_space_tag_t memt = rom->memt;
-	bus_space_handle_t memh = rom->regh[2];
 
 	if (sc->sc_hwmode != HW_BLIT) {
 		gftfb_wait(sc);
-		bus_space_write_stream_4(memt, memh, NGLE_REG_10, 0x13a01000);
+		gftfb_write4(sc, NGLE_REG_10, 0x13a01000);
 		sc->sc_hwmode = HW_BLIT;
 	}
 	gftfb_wait_fifo(sc, 5);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_14, ((rop << 8) & 0xf00) | 0x23000000);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_13, 0xff);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_24, (xs << 16) | ys);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_7, (wi << 16) | he);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_25, (xd << 16) | yd);
+	gftfb_write4(sc, NGLE_REG_14, ((rop << 8) & 0xf00) | 0x23000000);
+	gftfb_write4(sc, NGLE_REG_13, 0xff);
+	gftfb_write4(sc, NGLE_REG_24, (xs << 16) | ys);
+	gftfb_write4(sc, NGLE_REG_7, (wi << 16) | he);
+	gftfb_write4(sc, NGLE_REG_25, (xd << 16) | yd);
 }
 
 static void
@@ -1289,9 +1307,6 @@ gftfb_eraserows(void *cookie, int row, i
 static void
 gftfb_move_cursor(struct gftfb_softc *sc, int x, int y)
 {
-	struct sti_rom *rom = sc->sc_base.sc_rom;
-	bus_space_tag_t memt = rom->memt;
-	bus_space_handle_t memh = rom->regh[2];
 	uint32_t pos;
 
 	sc->sc_cursor_x = x;
@@ -1304,17 +1319,13 @@ gftfb_move_cursor(struct gftfb_softc *sc
 	pos = (x << 16) | y;
 	if (sc->sc_enabled) pos |= 0x80000000;
 	gftfb_wait(sc);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_17, pos);
-	bus_space_write_stream_4(memt, memh, NGLE_REG_18, 0x80);
+	gftfb_write4(sc, NGLE_REG_17, pos);
+	gftfb_write4(sc, NGLE_REG_18, 0x80);
 }
 
 static int
 gftfb_do_cursor(struct gftfb_softc *sc, struct wsdisplay_cursor *cur)
 {
-	struct sti_rom *rom = sc->sc_base.sc_rom;
-	bus_space_tag_t memt = rom->memt;
-	bus_space_handle_t memh = rom->regh[2];
-
 	if (cur->which & WSDISPLAY_CURSOR_DOCUR) {
 
 		sc->sc_enabled = cur->enable;
@@ -1339,19 +1350,19 @@ gftfb_do_cursor(struct gftfb_softc *sc, 
 		copyin(cur->cmap.red, r, 2);
 		mutex_enter(&sc->sc_hwlock);
 		gftfb_wait(sc);
-		bus_space_write_stream_4(memt, memh, NGLE_REG_10, 0xBBE0F000);
-		bus_space_write_stream_4(memt, memh, NGLE_REG_14, 0x03000300);
-		bus_space_write_stream_4(memt, memh, NGLE_REG_13, 0xffffffff);
+		gftfb_write4(sc, NGLE_REG_10, 0xBBE0F000);
+		gftfb_write4(sc, NGLE_REG_14, 0x03000300);
+		gftfb_write4(sc, NGLE_REG_13, 0xffffffff);
 		gftfb_wait(sc);
-		bus_space_write_stream_4(memt, memh, NGLE_REG_3, 0);
-		bus_space_write_stream_4(memt, memh, NGLE_REG_4, 0);
-		bus_space_write_stream_4(memt, memh, NGLE_REG_4, 0);
+		gftfb_write4(sc, NGLE_REG_3, 0);
+		gftfb_write4(sc, NGLE_REG_4, 0);
+		gftfb_write4(sc, NGLE_REG_4, 0);
 		rgb = (r[0] << 16) | (g[0] << 8) | b[0];
-		bus_space_write_stream_4(memt, memh, NGLE_REG_4, rgb);	/* BG */
+		gftfb_write4(sc, NGLE_REG_4, rgb);	/* BG */
 		rgb = (r[1] << 16) | (g[1] << 8) | b[1];
-		bus_space_write_stream_4(memt, memh, NGLE_REG_4, rgb);	/* FG */
-		bus_space_write_stream_4(memt, memh, NGLE_REG_2, 0);
-		bus_space_write_stream_4(memt, memh, NGLE_REG_26, 0x80008004);
+		gftfb_write4(sc, NGLE_REG_4, rgb);	/* FG */
+		gftfb_write4(sc, NGLE_REG_2, 0);
+		gftfb_write4(sc, NGLE_REG_26, 0x80008004);
 		gftfb_setup_fb(sc);	
 		mutex_exit(&sc->sc_hwlock);
 
@@ -1362,10 +1373,10 @@ gftfb_do_cursor(struct gftfb_softc *sc, 
 
 		copyin(cur->mask, buffer, 512);
 		gftfb_wait(sc);
-		bus_space_write_stream_4(memt, memh, NGLE_REG_14, 0x300);
-		bus_space_write_stream_4(memt, memh, NGLE_REG_13, 0xffffffff);
-		bus_space_write_stream_4(memt, memh, NGLE_REG_11, 0x28A07000);
-		bus_space_write_stream_4(memt, memh, NGLE_REG_3, 0);
+		gftfb_write4(sc, NGLE_REG_14, 0x300);
+		gftfb_write4(sc, NGLE_REG_13, 0xffffffff);
+		gftfb_write4(sc, NGLE_REG_11, 0x28A07000);
+		gftfb_write4(sc, NGLE_REG_3, 0);
 		for (i = 0; i < 128; i += 2) {
 			latch = 0;
 			tmp = buffer[i] & 0x80808080;
@@ -1384,7 +1395,7 @@ gftfb_do_cursor(struct gftfb_softc *sc, 
 			latch |= tmp << 5;
 			tmp = buffer[i] & 0x01010101;
 			latch |= tmp << 7;
-			bus_space_write_stream_4(memt, memh, NGLE_REG_4, latch);
+			gftfb_write4(sc, NGLE_REG_4, latch);
 			latch = 0;
 			tmp = buffer[i + 1] & 0x80808080;
 			latch |= tmp >> 7;
@@ -1402,15 +1413,15 @@ gftfb_do_cursor(struct gftfb_softc *sc, 
 			latch |= tmp << 5;
 			tmp = buffer[i + 1] & 0x01010101;
 			latch |= tmp << 7;
-			bus_space_write_stream_4(memt, memh, NGLE_REG_5, latch);
+			gftfb_write4(sc, NGLE_REG_5, latch);
 		}
 
 		copyin(cur->image, buffer, 512);
 		gftfb_wait(sc);
-		bus_space_write_stream_4(memt, memh, NGLE_REG_14, 0x300);
-		bus_space_write_stream_4(memt, memh, NGLE_REG_13, 0xffffffff);
-		bus_space_write_stream_4(memt, memh, NGLE_REG_11, 0x28A06000);
-		bus_space_write_stream_4(memt, memh, NGLE_REG_3, 0);
+		gftfb_write4(sc, NGLE_REG_14, 0x300);
+		gftfb_write4(sc, NGLE_REG_13, 0xffffffff);
+		gftfb_write4(sc, NGLE_REG_11, 0x28A06000);
+		gftfb_write4(sc, NGLE_REG_3, 0);
 		for (i = 0; i < 128; i += 2) {
 			latch = 0;
 			tmp = buffer[i] & 0x80808080;
@@ -1429,7 +1440,7 @@ gftfb_do_cursor(struct gftfb_softc *sc, 
 			latch |= tmp << 5;
 			tmp = buffer[i] & 0x01010101;
 			latch |= tmp << 7;
-			bus_space_write_stream_4(memt, memh, NGLE_REG_4, latch);
+			gftfb_write4(sc, NGLE_REG_4, latch);
 			latch = 0;
 			tmp = buffer[i + 1] & 0x80808080;
 			latch |= tmp >> 7;
@@ -1447,7 +1458,7 @@ gftfb_do_cursor(struct gftfb_softc *sc, 
 			latch |= tmp << 5;
 			tmp = buffer[i + 1] & 0x01010101;
 			latch |= tmp << 7;
-			bus_space_write_stream_4(memt, memh, NGLE_REG_5, latch);
+			gftfb_write4(sc, NGLE_REG_5, latch);
 		}
 		gftfb_setup_fb(sc);
 	}
@@ -1458,10 +1469,6 @@ gftfb_do_cursor(struct gftfb_softc *sc, 
 static void
 gftfb_set_video(struct gftfb_softc *sc, int on)
 {
-	struct sti_rom *rom = sc->sc_base.sc_rom;
-	bus_space_tag_t memt = rom->memt;
-	bus_space_handle_t memh = rom->regh[2];
-
 	if (sc->sc_video_on == on)
 		return;
 		
@@ -1469,14 +1476,14 @@ gftfb_set_video(struct gftfb_softc *sc, 
 
 	gftfb_wait(sc);
 	if (on) {
-		bus_space_write_stream_4(memt, memh, NGLE_REG_21,
-		    bus_space_read_stream_4(memt, memh, NGLE_REG_21) | 0x0a000000);
-		bus_space_write_stream_4(memt, memh, NGLE_REG_27,
-		    bus_space_read_stream_4(memt, memh, NGLE_REG_27) | 0x00800000);
+		gftfb_write4(sc, NGLE_REG_21,
+		    gftfb_read4(sc, NGLE_REG_21) | 0x0a000000);
+		gftfb_write4(sc, NGLE_REG_27,
+		    gftfb_read4(sc, NGLE_REG_27) | 0x00800000);
 	} else {
-		bus_space_write_stream_4(memt, memh, NGLE_REG_21,
-		    bus_space_read_stream_4(memt, memh, NGLE_REG_21) &  ~0x0a000000);
-		bus_space_write_stream_4(memt, memh, NGLE_REG_27,
-		    bus_space_read_stream_4(memt, memh, NGLE_REG_27) & ~0x00800000);
+		gftfb_write4(sc, NGLE_REG_21,
+		    gftfb_read4(sc, NGLE_REG_21) &  ~0x0a000000);
+		gftfb_write4(sc, NGLE_REG_27,
+		    gftfb_read4(sc, NGLE_REG_27) & ~0x00800000);
 	}
 }

Reply via email to