This patch updates the ichwd(4) driver to use the built-in bus space tag and 
handle from the relevent resource objects instead of storing duplicate copies 
in its softc.

Index: dev/ichwd/ichwd.c
===================================================================
--- dev/ichwd/ichwd.c   (revision 228954)
+++ dev/ichwd/ichwd.c   (working copy)
@@ -198,26 +198,26 @@
 static devclass_t ichwd_devclass;
 
 #define ichwd_read_tco_1(sc, off) \
-       bus_space_read_1((sc)->tco_bst, (sc)->tco_bsh, (off))
+       bus_read_1((sc)->tco_res, (off))
 #define ichwd_read_tco_2(sc, off) \
-       bus_space_read_2((sc)->tco_bst, (sc)->tco_bsh, (off))
+       bus_read_2((sc)->tco_res, (off))
 #define ichwd_read_tco_4(sc, off) \
-       bus_space_read_4((sc)->tco_bst, (sc)->tco_bsh, (off))
+       bus_read_4((sc)->tco_res, (off))
 #define ichwd_read_smi_4(sc, off) \
-       bus_space_read_4((sc)->smi_bst, (sc)->smi_bsh, (off))
+       bus_read_4((sc)->smi_res, (off))
 #define ichwd_read_gcs_4(sc, off) \
-       bus_space_read_4((sc)->gcs_bst, (sc)->gcs_bsh, (off))
+       bus_read_4((sc)->gcs_res, (off))
 
 #define ichwd_write_tco_1(sc, off, val) \
-       bus_space_write_1((sc)->tco_bst, (sc)->tco_bsh, (off), (val))
+       bus_write_1((sc)->tco_res, (off), (val))
 #define ichwd_write_tco_2(sc, off, val) \
-       bus_space_write_2((sc)->tco_bst, (sc)->tco_bsh, (off), (val))
+       bus_write_2((sc)->tco_res, (off), (val))
 #define ichwd_write_tco_4(sc, off, val) \
-       bus_space_write_4((sc)->tco_bst, (sc)->tco_bsh, (off), (val))
+       bus_write_4((sc)->tco_res, (off), (val))
 #define ichwd_write_smi_4(sc, off, val) \
-       bus_space_write_4((sc)->smi_bst, (sc)->smi_bsh, (off), (val))
+       bus_write_4((sc)->smi_res, (off), (val))
 #define ichwd_write_gcs_4(sc, off, val) \
-       bus_space_write_4((sc)->gcs_bst, (sc)->gcs_bsh, (off), (val))
+       bus_write_4((sc)->gcs_res, (off), (val))
 
 #define ichwd_verbose_printf(dev, ...) \
        do {                                            \
@@ -519,8 +519,6 @@
                device_printf(dev, "unable to reserve SMI registers\n");
                goto fail;
        }
-       sc->smi_bst = rman_get_bustag(sc->smi_res);
-       sc->smi_bsh = rman_get_bushandle(sc->smi_res);
 
        sc->tco_rid = 1;
        sc->tco_res = bus_alloc_resource(dev, SYS_RES_IOPORT, &sc->tco_rid,
@@ -530,8 +528,6 @@
                device_printf(dev, "unable to reserve TCO registers\n");
                goto fail;
        }
-       sc->tco_bst = rman_get_bustag(sc->tco_res);
-       sc->tco_bsh = rman_get_bushandle(sc->tco_res);
 
        sc->gcs_rid = 0;
        if (sc->ich_version >= 6) {
@@ -541,12 +537,6 @@
                        device_printf(dev, "unable to reserve GCS registers\n");
                        goto fail;
                }
-               sc->gcs_bst = rman_get_bustag(sc->gcs_res);
-               sc->gcs_bsh = rman_get_bushandle(sc->gcs_res);
-       } else {
-               sc->gcs_res = 0;
-               sc->gcs_bst = 0;
-               sc->gcs_bsh = 0;
        }
 
        if (ichwd_clear_noreboot(sc) != 0)
Index: dev/ichwd/ichwd.h
===================================================================
--- dev/ichwd/ichwd.h   (revision 228954)
+++ dev/ichwd/ichwd.h   (working copy)
@@ -48,18 +48,12 @@
        int                      smi_enabled;
        int                      smi_rid;
        struct resource         *smi_res;
-       bus_space_tag_t          smi_bst;
-       bus_space_handle_t       smi_bsh;
 
        int                      tco_rid;
        struct resource         *tco_res;
-       bus_space_tag_t          tco_bst;
-       bus_space_handle_t       tco_bsh;
 
        int                      gcs_rid;
        struct resource         *gcs_res;
-       bus_space_tag_t          gcs_bst;
-       bus_space_handle_t       gcs_bsh;
 
        eventhandler_tag         ev_tag;
 };

-- 
John Baldwin
_______________________________________________
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"

Reply via email to