diff --git a/sys/arm/arm/nexus.c b/sys/arm/arm/nexus.c --- a/sys/arm/arm/nexus.c +++ b/sys/arm/arm/nexus.c @@ -45,20 +45,20 @@ #include #include #include +#include #include #include #include -#include #include -#include -#include -#include #include #include -#include +#include +#include #include +#include +#include #include @@ -79,37 +79,31 @@ static struct rman mem_rman; static struct rman irq_rman; -static int nexus_probe(device_t); -static int nexus_attach(device_t); -static int nexus_print_child(device_t, device_t); -static device_t nexus_add_child(device_t, u_int, const char *, int); -static struct resource *nexus_alloc_resource(device_t, device_t, int, int *, - rman_res_t, rman_res_t, rman_res_t, u_int); -static int nexus_activate_resource(device_t, device_t, int, int, - struct resource *); -static int nexus_adjust_resource(device_t, device_t, int, struct resource *, - rman_res_t, rman_res_t); -static bus_space_tag_t nexus_get_bus_tag(device_t, device_t); -static bus_dma_tag_t nexus_get_dma_tag(device_t dev, device_t child); +static device_probe_t nexus_probe; +static device_attach_t nexus_attach; + +static bus_add_child_t nexus_add_child; +static bus_print_child_t nexus_print_child; + +static bus_activate_resource_t nexus_activate_resource; +static bus_adjust_resource_t nexus_adjust_resource; +static bus_alloc_resource_t nexus_alloc_resource; +static bus_deactivate_resource_t nexus_deactivate_resource; +static bus_release_resource_t nexus_release_resource; + #ifdef SMP -static int nexus_bind_intr(device_t, device_t, struct resource *, int); +static bus_bind_intr_t nexus_bind_intr; #endif -static int nexus_config_intr(device_t dev, int irq, enum intr_trigger trig, - enum intr_polarity pol); -static int nexus_describe_intr(device_t dev, device_t child, - struct resource *irq, void *cookie, const char *descr); -static int nexus_deactivate_resource(device_t, device_t, int, int, - struct resource *); -static int nexus_release_resource(device_t, device_t, int, int, - struct resource *); - -static int nexus_setup_intr(device_t dev, device_t child, struct resource *res, - int flags, driver_filter_t *filt, driver_intr_t *intr, void *arg, void **cookiep); -static int nexus_teardown_intr(device_t, device_t, struct resource *, void *); +static bus_config_intr_t nexus_config_intr; +static bus_describe_intr_t nexus_describe_intr; +static bus_setup_intr_t nexus_setup_intr; +static bus_teardown_intr_t nexus_teardown_intr; + +static bus_get_bus_tag_t nexus_get_bus_tag; +static bus_get_dma_tag_t nexus_get_dma_tag; #ifdef FDT -static int nexus_ofw_map_intr(device_t dev, device_t child, phandle_t iparent, - int icells, pcell_t *intr); +static ofw_bus_map_intr_t nexus_ofw_map_intr; #endif /* @@ -123,27 +117,29 @@ /* Device interface */ DEVMETHOD(device_probe, nexus_probe), DEVMETHOD(device_attach, nexus_attach), + /* Bus interface */ - DEVMETHOD(bus_print_child, nexus_print_child), DEVMETHOD(bus_add_child, nexus_add_child), - DEVMETHOD(bus_alloc_resource, nexus_alloc_resource), - DEVMETHOD(bus_activate_resource, nexus_activate_resource), + DEVMETHOD(bus_print_child, nexus_print_child), + DEVMETHOD(bus_activate_resource, nexus_activate_resource), DEVMETHOD(bus_adjust_resource, nexus_adjust_resource), - DEVMETHOD(bus_config_intr, nexus_config_intr), - DEVMETHOD(bus_deactivate_resource, nexus_deactivate_resource), + DEVMETHOD(bus_alloc_resource, nexus_alloc_resource), + DEVMETHOD(bus_deactivate_resource, nexus_deactivate_resource), DEVMETHOD(bus_release_resource, nexus_release_resource), +#ifdef SMP + DEVMETHOD(bus_bind_intr, nexus_bind_intr), +#endif + DEVMETHOD(bus_config_intr, nexus_config_intr), + DEVMETHOD(bus_describe_intr, nexus_describe_intr), DEVMETHOD(bus_setup_intr, nexus_setup_intr), DEVMETHOD(bus_teardown_intr, nexus_teardown_intr), DEVMETHOD(bus_get_bus_tag, nexus_get_bus_tag), DEVMETHOD(bus_get_dma_tag, nexus_get_dma_tag), - DEVMETHOD(bus_describe_intr, nexus_describe_intr), -#ifdef SMP - DEVMETHOD(bus_bind_intr, nexus_bind_intr), -#endif #ifdef FDT + /* ofw_bus interface */ DEVMETHOD(ofw_bus_map_intr, nexus_ofw_map_intr), #endif - { 0, 0 } + DEVMETHOD_END }; static driver_t nexus_driver = { @@ -218,7 +214,6 @@ child = device_add_child_ordered(bus, order, name, unit); - /* should we free this in nexus_child_detached? */ device_set_ivars(child, ndev); return (child); @@ -227,7 +222,6 @@ /* * Allocate a resource on behalf of child. NB: child is usually going to be a * child of one of our descendants, not a direct child of nexus0. - * (Exceptions include footbridge.) */ static struct resource * nexus_alloc_resource(device_t bus, device_t child, int type, int *rid, @@ -309,9 +303,9 @@ { #ifdef FDT - return(fdtbus_bs_tag); + return (fdtbus_bs_tag); #else - return((void *)1); + return ((void *)1); #endif } @@ -319,7 +313,7 @@ nexus_get_dma_tag(device_t dev, device_t child) { - return nexus_dma_tag; + return (nexus_dma_tag); } void @@ -348,7 +342,7 @@ if ((rman_get_flags(res) & RF_SHAREABLE) == 0) flags |= INTR_EXCL; - return(intr_setup_irq(child, res, filt, intr, arg, flags, cookiep)); + return (intr_setup_irq(child, res, filt, intr, arg, flags, cookiep)); } static int