diff --git a/sys/dev/pcf/pcf.c b/sys/dev/pcf/pcf.c index 22ef678e5501..5799f4c96332 100644 --- a/sys/dev/pcf/pcf.c +++ b/sys/dev/pcf/pcf.c @@ -139,6 +139,7 @@ pcf_probe(device_t pcfdev) { struct pcf_softc *pcf = DEVTOSOFTC(pcfdev); device_t parent = device_get_parent(pcfdev); + uintptr_t base; device_set_desc(pcfdev, "PCF8584 I2C bus controller"); @@ -156,7 +157,8 @@ pcf_probe(device_t pcfdev) device_printf(pcfdev, "cannot reserve I/O port range\n"); goto error; } - BUS_READ_IVAR(parent, pcfdev, ISA_IVAR_PORT, &pcf->pcf_base); + BUS_READ_IVAR(parent, pcfdev, ISA_IVAR_PORT, &base); + pcf->pcf_base = base; pcf->pcf_flags = device_get_flags(pcfdev); diff --git a/sys/i386/isa/pcf.c b/sys/i386/isa/pcf.c index 22ef678e5501..5799f4c96332 100644 --- a/sys/i386/isa/pcf.c +++ b/sys/i386/isa/pcf.c @@ -139,6 +139,7 @@ pcf_probe(device_t pcfdev) { struct pcf_softc *pcf = DEVTOSOFTC(pcfdev); device_t parent = device_get_parent(pcfdev); + uintptr_t base; device_set_desc(pcfdev, "PCF8584 I2C bus controller"); @@ -156,7 +157,8 @@ pcf_probe(device_t pcfdev) device_printf(pcfdev, "cannot reserve I/O port range\n"); goto error; } - BUS_READ_IVAR(parent, pcfdev, ISA_IVAR_PORT, &pcf->pcf_base); + BUS_READ_IVAR(parent, pcfdev, ISA_IVAR_PORT, &base); + pcf->pcf_base = base; pcf->pcf_flags = device_get_flags(pcfdev);