diff options
Diffstat (limited to 'sys/dev/esp')
-rw-r--r-- | sys/dev/esp/esp_sbus.c | 2 | ||||
-rw-r--r-- | sys/dev/esp/ncr53c9x.c | 2 | ||||
-rw-r--r-- | sys/dev/esp/ncr53c9xvar.h | 1 |
3 files changed, 4 insertions, 1 deletions
diff --git a/sys/dev/esp/esp_sbus.c b/sys/dev/esp/esp_sbus.c index 70c6538..48e4a2f 100644 --- a/sys/dev/esp/esp_sbus.c +++ b/sys/dev/esp/esp_sbus.c @@ -391,6 +391,8 @@ espattach(struct esp_softc *esc, struct ncr53c9x_glue *gluep) sc->sc_maxsync = sc->sc_minsync; sc->sc_maxoffset = 15; + sc->sc_extended_geometry = 1; + /* * Alas, we must now modify the value a bit, because it's * only valid when can switch on FASTCLK and FASTSCSI bits diff --git a/sys/dev/esp/ncr53c9x.c b/sys/dev/esp/ncr53c9x.c index d160dcb..01d81a4 100644 --- a/sys/dev/esp/ncr53c9x.c +++ b/sys/dev/esp/ncr53c9x.c @@ -839,7 +839,7 @@ ncr53c9x_action(struct cam_sim *sim, union ccb *ccb) return; case XPT_CALC_GEOMETRY: mtx_unlock(&sc->sc_lock); - cam_calc_geometry(&ccb->ccg, 0); /* XXX Extended? */ + cam_calc_geometry(&ccb->ccg, sc->sc_extended_geom); xpt_done(ccb); return; case XPT_PATH_INQ: diff --git a/sys/dev/esp/ncr53c9xvar.h b/sys/dev/esp/ncr53c9xvar.h index fa4c6c4..ba44566 100644 --- a/sys/dev/esp/ncr53c9xvar.h +++ b/sys/dev/esp/ncr53c9xvar.h @@ -345,6 +345,7 @@ struct ncr53c9x_softc { int sc_maxsync; /* Maximum sync period */ int sc_maxoffset; /* Maximum offset */ int sc_maxwidth; /* Maximum width */ + int sc_extended_geom; /* Should we return extended geometry */ struct mtx sc_lock; /* driver mutex */ }; |