Index: sys/arm/allwinner/axp81x.c =================================================================== --- sys/arm/allwinner/axp81x.c +++ sys/arm/allwinner/axp81x.c @@ -44,7 +44,6 @@ #include #include -#include #include #include @@ -55,7 +54,6 @@ #include #include "gpio_if.h" -#include "iicbus_if.h" #include "regdev_if.h" MALLOC_DEFINE(M_AXP8XX_REG, "AXP8xx regulator", "AXP8xx power regulator"); @@ -684,7 +682,6 @@ struct axp8xx_softc { struct resource *res; - uint16_t addr; void *ih; device_t gpiodev; struct mtx mtx; @@ -716,43 +713,15 @@ static int axp8xx_read(device_t dev, uint8_t reg, uint8_t *data, uint8_t size) { - struct axp8xx_softc *sc; - struct iic_msg msg[2]; - - sc = device_get_softc(dev); - - msg[0].slave = sc->addr; - msg[0].flags = IIC_M_WR; - msg[0].len = 1; - msg[0].buf = ® - - msg[1].slave = sc->addr; - msg[1].flags = IIC_M_RD; - msg[1].len = size; - msg[1].buf = data; - return (iicbus_transfer(dev, msg, 2)); + return (iicdev_readfrom(dev, reg, data, size, IIC_INTRWAIT)); } static int axp8xx_write(device_t dev, uint8_t reg, uint8_t val) { - struct axp8xx_softc *sc; - struct iic_msg msg[2]; - - sc = device_get_softc(dev); - - msg[0].slave = sc->addr; - msg[0].flags = IIC_M_WR; - msg[0].len = 1; - msg[0].buf = ® - - msg[1].slave = sc->addr; - msg[1].flags = IIC_M_WR; - msg[1].len = 1; - msg[1].buf = &val; - return (iicbus_transfer(dev, msg, 2)); + return (iicdev_writeto(dev, reg, &val, sizeof(val), IIC_INTRWAIT)); } static int @@ -1460,7 +1429,6 @@ sc = device_get_softc(dev); - sc->addr = iicbus_get_addr(dev); mtx_init(&sc->mtx, device_get_nameunit(dev), NULL, MTX_DEF); error = bus_alloc_resources(dev, axp8xx_spec, &sc->res); @@ -1646,5 +1614,5 @@ ofwgpiobus_devclass, 0, 0, BUS_PASS_INTERRUPT + BUS_PASS_ORDER_LAST); DRIVER_MODULE(gpioc, axp8xx_pmu, gpioc_driver, gpioc_devclass, 0, 0); MODULE_VERSION(axp8xx, 1); -MODULE_DEPEND(axp8xx, iicbus, 1, 1, 1); +MODULE_DEPEND(axp8xx, iicbus, IICBUS_MINVER, IICBUS_PREFVER, IICBUS_MAXVER); SIMPLEBUS_PNP_INFO(compat_data); Index: sys/modules/allwinner/axp81x/Makefile =================================================================== --- sys/modules/allwinner/axp81x/Makefile +++ sys/modules/allwinner/axp81x/Makefile @@ -10,6 +10,5 @@ clknode_if.h \ device_if.h \ ofw_bus_if.h \ - iicbus_if.h .include