el access */ - dinfo->cfg_rid[i] = SIBA_CFG_RID(dinfo, i); + cfg_rid = SIBA_CFG_RID(dinfo, i); dinfo->cfg_res[i] = BHND_BUS_ALLOC_RESOURCE(dev, dev, - SYS_RES_MEMORY, dinfo->cfg_rid[i], r_start, r_end, + SYS_RES_MEMORY, cfg_rid, r_start, r_end, r_count, RF_ACTIVE|RF_SHAREABLE); if (dinfo->cfg_res[i] == NULL) { diff --git a/sys/dev/bhnd/siba/siba_subr.c b/sys/dev/bhnd/siba/siba_subr.c index fee874fea09f..6642185165cd 100644 --- a/sys/dev/bhnd/siba/siba_subr.c +++ b/sys/dev/bhnd/siba/siba_subr.c @@ -93,7 +93,6 @@ siba_alloc_dinfo(device_t bus) .cb_rid = -1, }); dinfo->cfg_res[i] = NULL; - dinfo->cfg_rid[i] = -1; } resource_list_init(&dinfo->resources); @@ -569,11 +568,9 @@ siba_free_dinfo(device_t dev, device_t child, struct siba_devinfo *dinfo) if (dinfo->cfg_res[i] == NULL) continue; - bhnd_release_resource(dev, SYS_RES_MEMORY, dinfo->cfg_rid[i], - dinfo->cfg_res[i]); + bhnd_release_resource(dev, dinfo->cfg_res[i]); dinfo->cfg_res[i] = NULL; - dinfo->cfg_rid[i] = -1; } /* Unmap the core's interrupt */ diff --git a/sys/dev/bhnd/siba/sibavar.h b/sys/dev/bhnd/siba/sibavar.h index 7fc1bcf228d9..2185c5b6b229 100644 --- a/sys/dev/bhnd/siba/sibavar.h +++ b/sys/dev/bhnd/siba/sibavar.h @@ -211,7 +211,6 @@ struct siba_devinfo { struct siba_intr intr; /**< interrupt flag mapping, if any */ struct bhnd_resource *cfg_res[SIBA_MAX_CFG]; /**< bus-mapped config block registers */ - int cfg_rid[SIBA_MAX_CFG]; /**< bus-mapped config block resource IDs */ siba_pmu_state pmu_state; /**< per-core PMU state */ union { void *bhnd_info; /**< if SIBA_PMU_BHND, bhnd(4)-managed per-core PMU info. */