summaryrefslogtreecommitdiffstats
path: root/rtemsbsd/local
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2016-10-07 15:10:20 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2017-01-10 09:53:31 +0100
commitc40e45b75eb76d79a05c7fa85c1fa9b5c728a12f (patch)
treead4f2519067709f00ab98b3c591186c26dc3a21f /rtemsbsd/local
parentuserspace-header-gen.py: Simplify program ports (diff)
downloadrtems-libbsd-c40e45b75eb76d79a05c7fa85c1fa9b5c728a12f.tar.bz2
Update to FreeBSD head 2016-08-23
Git mirror commit 9fe7c416e6abb28b1398fd3e5687099846800cfd.
Diffstat (limited to 'rtemsbsd/local')
-rw-r--r--rtemsbsd/local/bus_if.c196
-rw-r--r--rtemsbsd/local/device_if.c55
-rw-r--r--rtemsbsd/local/gpio_if.c88
-rw-r--r--rtemsbsd/local/if_dwc_if.c52
-rw-r--r--rtemsbsd/local/miibus_if.c30
-rw-r--r--rtemsbsd/local/mmcbr_if.c30
-rw-r--r--rtemsbsd/local/mmcbus_if.c18
-rw-r--r--rtemsbsd/local/pci_if.c149
-rw-r--r--rtemsbsd/local/pcib_if.c75
-rw-r--r--rtemsbsd/local/usb_if.c12
10 files changed, 329 insertions, 376 deletions
diff --git a/rtemsbsd/local/bus_if.c b/rtemsbsd/local/bus_if.c
index 558888af..169ea7d5 100644
--- a/rtemsbsd/local/bus_if.c
+++ b/rtemsbsd/local/bus_if.c
@@ -24,8 +24,8 @@
static struct resource *
null_alloc_resource(device_t dev, device_t child,
- int type, int *rid, u_long start, u_long end,
- u_long count, u_int flags)
+ int type, int *rid, rman_res_t start, rman_res_t end,
+ rman_res_t count, u_int flags)
{
return (0);
}
@@ -47,243 +47,155 @@ null_add_child(device_t bus, int order, const char *name,
panic("bus_add_child is not implemented");
}
-struct kobj_method bus_print_child_method_default = {
- &bus_print_child_desc, (kobjop_t) bus_generic_print_child
-};
-
struct kobjop_desc bus_print_child_desc = {
- 0, &bus_print_child_method_default
-};
-
-struct kobj_method bus_probe_nomatch_method_default = {
- &bus_probe_nomatch_desc, (kobjop_t) kobj_error_method
+ 0, { &bus_print_child_desc, (kobjop_t)bus_generic_print_child }
};
struct kobjop_desc bus_probe_nomatch_desc = {
- 0, &bus_probe_nomatch_method_default
-};
-
-struct kobj_method bus_read_ivar_method_default = {
- &bus_read_ivar_desc, (kobjop_t) kobj_error_method
+ 0, { &bus_probe_nomatch_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc bus_read_ivar_desc = {
- 0, &bus_read_ivar_method_default
-};
-
-struct kobj_method bus_write_ivar_method_default = {
- &bus_write_ivar_desc, (kobjop_t) kobj_error_method
+ 0, { &bus_read_ivar_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc bus_write_ivar_desc = {
- 0, &bus_write_ivar_method_default
-};
-
-struct kobj_method bus_child_deleted_method_default = {
- &bus_child_deleted_desc, (kobjop_t) kobj_error_method
+ 0, { &bus_write_ivar_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc bus_child_deleted_desc = {
- 0, &bus_child_deleted_method_default
-};
-
-struct kobj_method bus_child_detached_method_default = {
- &bus_child_detached_desc, (kobjop_t) kobj_error_method
+ 0, { &bus_child_deleted_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc bus_child_detached_desc = {
- 0, &bus_child_detached_method_default
-};
-
-struct kobj_method bus_driver_added_method_default = {
- &bus_driver_added_desc, (kobjop_t) bus_generic_driver_added
+ 0, { &bus_child_detached_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc bus_driver_added_desc = {
- 0, &bus_driver_added_method_default
-};
-
-struct kobj_method bus_add_child_method_default = {
- &bus_add_child_desc, (kobjop_t) null_add_child
+ 0, { &bus_driver_added_desc, (kobjop_t)bus_generic_driver_added }
};
struct kobjop_desc bus_add_child_desc = {
- 0, &bus_add_child_method_default
+ 0, { &bus_add_child_desc, (kobjop_t)null_add_child }
};
-struct kobj_method bus_alloc_resource_method_default = {
- &bus_alloc_resource_desc, (kobjop_t) null_alloc_resource
+struct kobjop_desc bus_rescan_desc = {
+ 0, { &bus_rescan_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc bus_alloc_resource_desc = {
- 0, &bus_alloc_resource_method_default
-};
-
-struct kobj_method bus_activate_resource_method_default = {
- &bus_activate_resource_desc, (kobjop_t) kobj_error_method
+ 0, { &bus_alloc_resource_desc, (kobjop_t)null_alloc_resource }
};
struct kobjop_desc bus_activate_resource_desc = {
- 0, &bus_activate_resource_method_default
+ 0, { &bus_activate_resource_desc, (kobjop_t)kobj_error_method }
};
-struct kobj_method bus_deactivate_resource_method_default = {
- &bus_deactivate_resource_desc, (kobjop_t) kobj_error_method
+struct kobjop_desc bus_map_resource_desc = {
+ 0, { &bus_map_resource_desc, (kobjop_t)bus_generic_map_resource }
};
-struct kobjop_desc bus_deactivate_resource_desc = {
- 0, &bus_deactivate_resource_method_default
+struct kobjop_desc bus_unmap_resource_desc = {
+ 0, { &bus_unmap_resource_desc, (kobjop_t)bus_generic_unmap_resource }
};
-struct kobj_method bus_adjust_resource_method_default = {
- &bus_adjust_resource_desc, (kobjop_t) kobj_error_method
+struct kobjop_desc bus_deactivate_resource_desc = {
+ 0, { &bus_deactivate_resource_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc bus_adjust_resource_desc = {
- 0, &bus_adjust_resource_method_default
-};
-
-struct kobj_method bus_release_resource_method_default = {
- &bus_release_resource_desc, (kobjop_t) kobj_error_method
+ 0, { &bus_adjust_resource_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc bus_release_resource_desc = {
- 0, &bus_release_resource_method_default
-};
-
-struct kobj_method bus_setup_intr_method_default = {
- &bus_setup_intr_desc, (kobjop_t) kobj_error_method
+ 0, { &bus_release_resource_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc bus_setup_intr_desc = {
- 0, &bus_setup_intr_method_default
-};
-
-struct kobj_method bus_teardown_intr_method_default = {
- &bus_teardown_intr_desc, (kobjop_t) kobj_error_method
+ 0, { &bus_setup_intr_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc bus_teardown_intr_desc = {
- 0, &bus_teardown_intr_method_default
-};
-
-struct kobj_method bus_set_resource_method_default = {
- &bus_set_resource_desc, (kobjop_t) kobj_error_method
+ 0, { &bus_teardown_intr_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc bus_set_resource_desc = {
- 0, &bus_set_resource_method_default
-};
-
-struct kobj_method bus_get_resource_method_default = {
- &bus_get_resource_desc, (kobjop_t) kobj_error_method
+ 0, { &bus_set_resource_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc bus_get_resource_desc = {
- 0, &bus_get_resource_method_default
-};
-
-struct kobj_method bus_delete_resource_method_default = {
- &bus_delete_resource_desc, (kobjop_t) kobj_error_method
+ 0, { &bus_get_resource_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc bus_delete_resource_desc = {
- 0, &bus_delete_resource_method_default
-};
-
-struct kobj_method bus_get_resource_list_method_default = {
- &bus_get_resource_list_desc, (kobjop_t) bus_generic_get_resource_list
+ 0, { &bus_delete_resource_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc bus_get_resource_list_desc = {
- 0, &bus_get_resource_list_method_default
-};
-
-struct kobj_method bus_child_present_method_default = {
- &bus_child_present_desc, (kobjop_t) bus_generic_child_present
+ 0, { &bus_get_resource_list_desc, (kobjop_t)bus_generic_get_resource_list }
};
struct kobjop_desc bus_child_present_desc = {
- 0, &bus_child_present_method_default
-};
-
-struct kobj_method bus_child_pnpinfo_str_method_default = {
- &bus_child_pnpinfo_str_desc, (kobjop_t) kobj_error_method
+ 0, { &bus_child_present_desc, (kobjop_t)bus_generic_child_present }
};
struct kobjop_desc bus_child_pnpinfo_str_desc = {
- 0, &bus_child_pnpinfo_str_method_default
-};
-
-struct kobj_method bus_child_location_str_method_default = {
- &bus_child_location_str_desc, (kobjop_t) kobj_error_method
+ 0, { &bus_child_pnpinfo_str_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc bus_child_location_str_desc = {
- 0, &bus_child_location_str_method_default
-};
-
-struct kobj_method bus_bind_intr_method_default = {
- &bus_bind_intr_desc, (kobjop_t) bus_generic_bind_intr
+ 0, { &bus_child_location_str_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc bus_bind_intr_desc = {
- 0, &bus_bind_intr_method_default
-};
-
-struct kobj_method bus_config_intr_method_default = {
- &bus_config_intr_desc, (kobjop_t) bus_generic_config_intr
+ 0, { &bus_bind_intr_desc, (kobjop_t)bus_generic_bind_intr }
};
struct kobjop_desc bus_config_intr_desc = {
- 0, &bus_config_intr_method_default
-};
-
-struct kobj_method bus_describe_intr_method_default = {
- &bus_describe_intr_desc, (kobjop_t) bus_generic_describe_intr
+ 0, { &bus_config_intr_desc, (kobjop_t)bus_generic_config_intr }
};
struct kobjop_desc bus_describe_intr_desc = {
- 0, &bus_describe_intr_method_default
+ 0, { &bus_describe_intr_desc, (kobjop_t)bus_generic_describe_intr }
};
-struct kobj_method bus_hinted_child_method_default = {
- &bus_hinted_child_desc, (kobjop_t) kobj_error_method
+struct kobjop_desc bus_hinted_child_desc = {
+ 0, { &bus_hinted_child_desc, (kobjop_t)kobj_error_method }
};
-struct kobjop_desc bus_hinted_child_desc = {
- 0, &bus_hinted_child_method_default
+struct kobjop_desc bus_get_dma_tag_desc = {
+ 0, { &bus_get_dma_tag_desc, (kobjop_t)bus_generic_get_dma_tag }
};
-struct kobj_method bus_get_dma_tag_method_default = {
- &bus_get_dma_tag_desc, (kobjop_t) bus_generic_get_dma_tag
+struct kobjop_desc bus_get_bus_tag_desc = {
+ 0, { &bus_get_bus_tag_desc, (kobjop_t)bus_generic_get_bus_tag }
};
-struct kobjop_desc bus_get_dma_tag_desc = {
- 0, &bus_get_dma_tag_method_default
+struct kobjop_desc bus_hint_device_unit_desc = {
+ 0, { &bus_hint_device_unit_desc, (kobjop_t)kobj_error_method }
};
-struct kobj_method bus_hint_device_unit_method_default = {
- &bus_hint_device_unit_desc, (kobjop_t) kobj_error_method
+struct kobjop_desc bus_new_pass_desc = {
+ 0, { &bus_new_pass_desc, (kobjop_t)bus_generic_new_pass }
};
-struct kobjop_desc bus_hint_device_unit_desc = {
- 0, &bus_hint_device_unit_method_default
+struct kobjop_desc bus_remap_intr_desc = {
+ 0, { &bus_remap_intr_desc, (kobjop_t)null_remap_intr }
};
-struct kobj_method bus_new_pass_method_default = {
- &bus_new_pass_desc, (kobjop_t) bus_generic_new_pass
+struct kobjop_desc bus_suspend_child_desc = {
+ 0, { &bus_suspend_child_desc, (kobjop_t)bus_generic_suspend_child }
};
-struct kobjop_desc bus_new_pass_desc = {
- 0, &bus_new_pass_method_default
+struct kobjop_desc bus_resume_child_desc = {
+ 0, { &bus_resume_child_desc, (kobjop_t)bus_generic_resume_child }
};
-struct kobj_method bus_remap_intr_method_default = {
- &bus_remap_intr_desc, (kobjop_t) null_remap_intr
+struct kobjop_desc bus_get_domain_desc = {
+ 0, { &bus_get_domain_desc, (kobjop_t)bus_generic_get_domain }
};
-struct kobjop_desc bus_remap_intr_desc = {
- 0, &bus_remap_intr_method_default
+struct kobjop_desc bus_get_cpus_desc = {
+ 0, { &bus_get_cpus_desc, (kobjop_t)bus_generic_get_cpus }
};
diff --git a/rtemsbsd/local/device_if.c b/rtemsbsd/local/device_if.c
index 1c04d55d..20ab6221 100644
--- a/rtemsbsd/local/device_if.c
+++ b/rtemsbsd/local/device_if.c
@@ -37,70 +37,47 @@ static int null_resume(device_t dev)
static int null_quiesce(device_t dev)
{
- return EOPNOTSUPP;
+ return 0;
}
-struct kobj_method device_probe_method_default = {
- &device_probe_desc, (kobjop_t) kobj_error_method
-};
+static void * null_register(device_t dev)
+{
+ return NULL;
+}
struct kobjop_desc device_probe_desc = {
- 0, &device_probe_method_default
-};
-
-struct kobj_method device_identify_method_default = {
- &device_identify_desc, (kobjop_t) kobj_error_method
+ 0, { &device_probe_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc device_identify_desc = {
- 0, &device_identify_method_default
-};
-
-struct kobj_method device_attach_method_default = {
- &device_attach_desc, (kobjop_t) kobj_error_method
+ 0, { &device_identify_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc device_attach_desc = {
- 0, &device_attach_method_default
-};
-
-struct kobj_method device_detach_method_default = {
- &device_detach_desc, (kobjop_t) kobj_error_method
+ 0, { &device_attach_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc device_detach_desc = {
- 0, &device_detach_method_default
-};
-
-struct kobj_method device_shutdown_method_default = {
- &device_shutdown_desc, (kobjop_t) null_shutdown
+ 0, { &device_detach_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc device_shutdown_desc = {
- 0, &device_shutdown_method_default
-};
-
-struct kobj_method device_suspend_method_default = {
- &device_suspend_desc, (kobjop_t) null_suspend
+ 0, { &device_shutdown_desc, (kobjop_t)null_shutdown }
};
struct kobjop_desc device_suspend_desc = {
- 0, &device_suspend_method_default
-};
-
-struct kobj_method device_resume_method_default = {
- &device_resume_desc, (kobjop_t) null_resume
+ 0, { &device_suspend_desc, (kobjop_t)null_suspend }
};
struct kobjop_desc device_resume_desc = {
- 0, &device_resume_method_default
+ 0, { &device_resume_desc, (kobjop_t)null_resume }
};
-struct kobj_method device_quiesce_method_default = {
- &device_quiesce_desc, (kobjop_t) null_quiesce
+struct kobjop_desc device_quiesce_desc = {
+ 0, { &device_quiesce_desc, (kobjop_t)null_quiesce }
};
-struct kobjop_desc device_quiesce_desc = {
- 0, &device_quiesce_method_default
+struct kobjop_desc device_register_desc = {
+ 0, { &device_register_desc, (kobjop_t)null_register }
};
diff --git a/rtemsbsd/local/gpio_if.c b/rtemsbsd/local/gpio_if.c
new file mode 100644
index 00000000..ca15c8bd
--- /dev/null
+++ b/rtemsbsd/local/gpio_if.c
@@ -0,0 +1,88 @@
+#include <machine/rtems-bsd-kernel-space.h>
+
+/*
+ * This file is produced automatically.
+ * Do not modify anything in here by hand.
+ *
+ * Created from source file
+ * freebsd-org/sys/dev/gpio/gpio_if.m
+ * with
+ * makeobjops.awk
+ *
+ * See the source file for legal information
+ */
+
+#include <rtems/bsd/sys/param.h>
+#include <sys/queue.h>
+#include <sys/kernel.h>
+#include <sys/kobj.h>
+#include <sys/bus.h>
+#include <sys/gpio.h>
+#include <rtems/bsd/local/gpio_if.h>
+
+
+static device_t
+gpio_default_get_bus(void)
+{
+
+ return (NULL);
+}
+
+static int
+gpio_default_map_gpios(device_t bus, phandle_t dev,
+ phandle_t gparent, int gcells, pcell_t *gpios, uint32_t *pin,
+ uint32_t *flags)
+{
+ /* Propagate up the bus hierarchy until someone handles it. */
+ if (device_get_parent(bus) != NULL)
+ return (GPIO_MAP_GPIOS(device_get_parent(bus), dev,
+ gparent, gcells, gpios, pin, flags));
+
+ /* If that fails, then assume the FreeBSD defaults. */
+ *pin = gpios[0];
+ if (gcells == 2 || gcells == 3)
+ *flags = gpios[gcells - 1];
+
+ return (0);
+}
+
+struct kobjop_desc gpio_get_bus_desc = {
+ 0, { &gpio_get_bus_desc, (kobjop_t)gpio_default_get_bus }
+};
+
+struct kobjop_desc gpio_pin_max_desc = {
+ 0, { &gpio_pin_max_desc, (kobjop_t)kobj_error_method }
+};
+
+struct kobjop_desc gpio_pin_set_desc = {
+ 0, { &gpio_pin_set_desc, (kobjop_t)kobj_error_method }
+};
+
+struct kobjop_desc gpio_pin_get_desc = {
+ 0, { &gpio_pin_get_desc, (kobjop_t)kobj_error_method }
+};
+
+struct kobjop_desc gpio_pin_toggle_desc = {
+ 0, { &gpio_pin_toggle_desc, (kobjop_t)kobj_error_method }
+};
+
+struct kobjop_desc gpio_pin_getcaps_desc = {
+ 0, { &gpio_pin_getcaps_desc, (kobjop_t)kobj_error_method }
+};
+
+struct kobjop_desc gpio_pin_getflags_desc = {
+ 0, { &gpio_pin_getflags_desc, (kobjop_t)kobj_error_method }
+};
+
+struct kobjop_desc gpio_pin_getname_desc = {
+ 0, { &gpio_pin_getname_desc, (kobjop_t)kobj_error_method }
+};
+
+struct kobjop_desc gpio_pin_setflags_desc = {
+ 0, { &gpio_pin_setflags_desc, (kobjop_t)kobj_error_method }
+};
+
+struct kobjop_desc gpio_map_gpios_desc = {
+ 0, { &gpio_map_gpios_desc, (kobjop_t)gpio_default_map_gpios }
+};
+
diff --git a/rtemsbsd/local/if_dwc_if.c b/rtemsbsd/local/if_dwc_if.c
new file mode 100644
index 00000000..cd8b8922
--- /dev/null
+++ b/rtemsbsd/local/if_dwc_if.c
@@ -0,0 +1,52 @@
+#include <machine/rtems-bsd-kernel-space.h>
+
+/*
+ * This file is produced automatically.
+ * Do not modify anything in here by hand.
+ *
+ * Created from source file
+ * freebsd-org/sys/dev/dwc/if_dwc_if.m
+ * with
+ * makeobjops.awk
+ *
+ * See the source file for legal information
+ */
+
+#include <rtems/bsd/sys/param.h>
+#include <sys/queue.h>
+#include <sys/kernel.h>
+#include <sys/kobj.h>
+#include <rtems/bsd/local/if_dwc_if.h>
+
+#include <dev/dwc/if_dwc.h>
+
+static int
+if_dwc_default_init(device_t dev)
+{
+ return (0);
+}
+
+static int
+if_dwc_default_mac_type(device_t dev)
+{
+ return (DWC_GMAC);
+}
+
+static int
+if_dwc_default_mii_clk(device_t dev)
+{
+ return (GMAC_MII_CLK_25_35M_DIV16);
+}
+
+struct kobjop_desc if_dwc_init_desc = {
+ 0, { &if_dwc_init_desc, (kobjop_t)if_dwc_default_init }
+};
+
+struct kobjop_desc if_dwc_mac_type_desc = {
+ 0, { &if_dwc_mac_type_desc, (kobjop_t)if_dwc_default_mac_type }
+};
+
+struct kobjop_desc if_dwc_mii_clk_desc = {
+ 0, { &if_dwc_mii_clk_desc, (kobjop_t)if_dwc_default_mii_clk }
+};
+
diff --git a/rtemsbsd/local/miibus_if.c b/rtemsbsd/local/miibus_if.c
index 433e7a67..fdb30e81 100644
--- a/rtemsbsd/local/miibus_if.c
+++ b/rtemsbsd/local/miibus_if.c
@@ -19,43 +19,23 @@
#include <sys/bus.h>
#include <rtems/bsd/local/miibus_if.h>
-struct kobj_method miibus_readreg_method_default = {
- &miibus_readreg_desc, (kobjop_t) kobj_error_method
-};
-
struct kobjop_desc miibus_readreg_desc = {
- 0, &miibus_readreg_method_default
-};
-
-struct kobj_method miibus_writereg_method_default = {
- &miibus_writereg_desc, (kobjop_t) kobj_error_method
+ 0, { &miibus_readreg_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc miibus_writereg_desc = {
- 0, &miibus_writereg_method_default
-};
-
-struct kobj_method miibus_statchg_method_default = {
- &miibus_statchg_desc, (kobjop_t) kobj_error_method
+ 0, { &miibus_writereg_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc miibus_statchg_desc = {
- 0, &miibus_statchg_method_default
-};
-
-struct kobj_method miibus_linkchg_method_default = {
- &miibus_linkchg_desc, (kobjop_t) kobj_error_method
+ 0, { &miibus_statchg_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc miibus_linkchg_desc = {
- 0, &miibus_linkchg_method_default
-};
-
-struct kobj_method miibus_mediainit_method_default = {
- &miibus_mediainit_desc, (kobjop_t) kobj_error_method
+ 0, { &miibus_linkchg_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc miibus_mediainit_desc = {
- 0, &miibus_mediainit_method_default
+ 0, { &miibus_mediainit_desc, (kobjop_t)kobj_error_method }
};
diff --git a/rtemsbsd/local/mmcbr_if.c b/rtemsbsd/local/mmcbr_if.c
index 1ce2d263..83c8f03e 100644
--- a/rtemsbsd/local/mmcbr_if.c
+++ b/rtemsbsd/local/mmcbr_if.c
@@ -22,43 +22,23 @@
#include <dev/mmc/mmcreg.h>
#include <rtems/bsd/local/mmcbr_if.h>
-struct kobj_method mmcbr_update_ios_method_default = {
- &mmcbr_update_ios_desc, (kobjop_t) kobj_error_method
-};
-
struct kobjop_desc mmcbr_update_ios_desc = {
- 0, &mmcbr_update_ios_method_default
-};
-
-struct kobj_method mmcbr_request_method_default = {
- &mmcbr_request_desc, (kobjop_t) kobj_error_method
+ 0, { &mmcbr_update_ios_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc mmcbr_request_desc = {
- 0, &mmcbr_request_method_default
-};
-
-struct kobj_method mmcbr_get_ro_method_default = {
- &mmcbr_get_ro_desc, (kobjop_t) kobj_error_method
+ 0, { &mmcbr_request_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc mmcbr_get_ro_desc = {
- 0, &mmcbr_get_ro_method_default
-};
-
-struct kobj_method mmcbr_acquire_host_method_default = {
- &mmcbr_acquire_host_desc, (kobjop_t) kobj_error_method
+ 0, { &mmcbr_get_ro_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc mmcbr_acquire_host_desc = {
- 0, &mmcbr_acquire_host_method_default
-};
-
-struct kobj_method mmcbr_release_host_method_default = {
- &mmcbr_release_host_desc, (kobjop_t) kobj_error_method
+ 0, { &mmcbr_acquire_host_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc mmcbr_release_host_desc = {
- 0, &mmcbr_release_host_method_default
+ 0, { &mmcbr_release_host_desc, (kobjop_t)kobj_error_method }
};
diff --git a/rtemsbsd/local/mmcbus_if.c b/rtemsbsd/local/mmcbus_if.c
index a757a561..fc5e6ffb 100644
--- a/rtemsbsd/local/mmcbus_if.c
+++ b/rtemsbsd/local/mmcbus_if.c
@@ -21,27 +21,15 @@
#include <dev/mmc/bridge.h>
#include <rtems/bsd/local/mmcbus_if.h>
-struct kobj_method mmcbus_wait_for_request_method_default = {
- &mmcbus_wait_for_request_desc, (kobjop_t) kobj_error_method
-};
-
struct kobjop_desc mmcbus_wait_for_request_desc = {
- 0, &mmcbus_wait_for_request_method_default
-};
-
-struct kobj_method mmcbus_acquire_bus_method_default = {
- &mmcbus_acquire_bus_desc, (kobjop_t) kobj_error_method
+ 0, { &mmcbus_wait_for_request_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc mmcbus_acquire_bus_desc = {
- 0, &mmcbus_acquire_bus_method_default
-};
-
-struct kobj_method mmcbus_release_bus_method_default = {
- &mmcbus_release_bus_desc, (kobjop_t) kobj_error_method
+ 0, { &mmcbus_acquire_bus_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc mmcbus_release_bus_desc = {
- 0, &mmcbus_release_bus_method_default
+ 0, { &mmcbus_release_bus_desc, (kobjop_t)kobj_error_method }
};
diff --git a/rtemsbsd/local/pci_if.c b/rtemsbsd/local/pci_if.c
index 7531ee15..f8ea8d96 100644
--- a/rtemsbsd/local/pci_if.c
+++ b/rtemsbsd/local/pci_if.c
@@ -12,11 +12,12 @@
* See the source file for legal information
*/
-#include <rtems/bsd/sys/param.h>
+#include <sys/param.h>
#include <sys/queue.h>
#include <sys/kernel.h>
#include <sys/kobj.h>
#include <sys/bus.h>
+#include <dev/pci/pcivar.h>
#include <rtems/bsd/local/pci_if.h>
@@ -26,147 +27,141 @@ null_msi_count(device_t dev, device_t child)
return (0);
}
-struct kobj_method pci_read_config_method_default = {
- &pci_read_config_desc, (kobjop_t) kobj_error_method
-};
+static int
+null_msix_bar(device_t dev, device_t child)
+{
+ return (-1);
+}
-struct kobjop_desc pci_read_config_desc = {
- 0, &pci_read_config_method_default
-};
+static device_t
+null_create_iov_child(device_t bus, device_t pf, uint16_t rid,
+ uint16_t vid, uint16_t did)
+{
+ device_printf(bus, "PCI_IOV not implemented on this bus.\n");
+ return (NULL);
+}
-struct kobj_method pci_write_config_method_default = {
- &pci_write_config_desc, (kobjop_t) kobj_error_method
+struct kobjop_desc pci_read_config_desc = {
+ 0, { &pci_read_config_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc pci_write_config_desc = {
- 0, &pci_write_config_method_default
-};
-
-struct kobj_method pci_get_powerstate_method_default = {
- &pci_get_powerstate_desc, (kobjop_t) kobj_error_method
+ 0, { &pci_write_config_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc pci_get_powerstate_desc = {
- 0, &pci_get_powerstate_method_default
-};
-
-struct kobj_method pci_set_powerstate_method_default = {
- &pci_set_powerstate_desc, (kobjop_t) kobj_error_method
+ 0, { &pci_get_powerstate_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc pci_set_powerstate_desc = {
- 0, &pci_set_powerstate_method_default
-};
-
-struct kobj_method pci_get_vpd_ident_method_default = {
- &pci_get_vpd_ident_desc, (kobjop_t) kobj_error_method
+ 0, { &pci_set_powerstate_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc pci_get_vpd_ident_desc = {
- 0, &pci_get_vpd_ident_method_default
+ 0, { &pci_get_vpd_ident_desc, (kobjop_t)kobj_error_method }
};
-struct kobj_method pci_get_vpd_readonly_method_default = {
- &pci_get_vpd_readonly_desc, (kobjop_t) kobj_error_method
+struct kobjop_desc pci_get_vpd_readonly_desc = {
+ 0, { &pci_get_vpd_readonly_desc, (kobjop_t)kobj_error_method }
};
-struct kobjop_desc pci_get_vpd_readonly_desc = {
- 0, &pci_get_vpd_readonly_method_default
+struct kobjop_desc pci_enable_busmaster_desc = {
+ 0, { &pci_enable_busmaster_desc, (kobjop_t)kobj_error_method }
};
-struct kobj_method pci_enable_busmaster_method_default = {
- &pci_enable_busmaster_desc, (kobjop_t) kobj_error_method
+struct kobjop_desc pci_disable_busmaster_desc = {
+ 0, { &pci_disable_busmaster_desc, (kobjop_t)kobj_error_method }
};
-struct kobjop_desc pci_enable_busmaster_desc = {
- 0, &pci_enable_busmaster_method_default
+struct kobjop_desc pci_enable_io_desc = {
+ 0, { &pci_enable_io_desc, (kobjop_t)kobj_error_method }
};
-struct kobj_method pci_disable_busmaster_method_default = {
- &pci_disable_busmaster_desc, (kobjop_t) kobj_error_method
+struct kobjop_desc pci_disable_io_desc = {
+ 0, { &pci_disable_io_desc, (kobjop_t)kobj_error_method }
};
-struct kobjop_desc pci_disable_busmaster_desc = {
- 0, &pci_disable_busmaster_method_default
+struct kobjop_desc pci_assign_interrupt_desc = {
+ 0, { &pci_assign_interrupt_desc, (kobjop_t)kobj_error_method }
};
-struct kobj_method pci_enable_io_method_default = {
- &pci_enable_io_desc, (kobjop_t) kobj_error_method
+struct kobjop_desc pci_find_cap_desc = {
+ 0, { &pci_find_cap_desc, (kobjop_t)kobj_error_method }
};
-struct kobjop_desc pci_enable_io_desc = {
- 0, &pci_enable_io_method_default
+struct kobjop_desc pci_find_extcap_desc = {
+ 0, { &pci_find_extcap_desc, (kobjop_t)kobj_error_method }
};
-struct kobj_method pci_disable_io_method_default = {
- &pci_disable_io_desc, (kobjop_t) kobj_error_method
+struct kobjop_desc pci_find_htcap_desc = {
+ 0, { &pci_find_htcap_desc, (kobjop_t)kobj_error_method }
};
-struct kobjop_desc pci_disable_io_desc = {
- 0, &pci_disable_io_method_default
+struct kobjop_desc pci_alloc_msi_desc = {
+ 0, { &pci_alloc_msi_desc, (kobjop_t)kobj_error_method }
};
-struct kobj_method pci_assign_interrupt_method_default = {
- &pci_assign_interrupt_desc, (kobjop_t) kobj_error_method
+struct kobjop_desc pci_alloc_msix_desc = {
+ 0, { &pci_alloc_msix_desc, (kobjop_t)kobj_error_method }
};
-struct kobjop_desc pci_assign_interrupt_desc = {
- 0, &pci_assign_interrupt_method_default
+struct kobjop_desc pci_enable_msi_desc = {
+ 0, { &pci_enable_msi_desc, (kobjop_t)kobj_error_method }
};
-struct kobj_method pci_find_extcap_method_default = {
- &pci_find_extcap_desc, (kobjop_t) kobj_error_method
+struct kobjop_desc pci_enable_msix_desc = {
+ 0, { &pci_enable_msix_desc, (kobjop_t)kobj_error_method }
};
-struct kobjop_desc pci_find_extcap_desc = {
- 0, &pci_find_extcap_method_default
+struct kobjop_desc pci_disable_msi_desc = {
+ 0, { &pci_disable_msi_desc, (kobjop_t)kobj_error_method }
};
-struct kobj_method pci_alloc_msi_method_default = {
- &pci_alloc_msi_desc, (kobjop_t) kobj_error_method
+struct kobjop_desc pci_remap_msix_desc = {
+ 0, { &pci_remap_msix_desc, (kobjop_t)kobj_error_method }
};
-struct kobjop_desc pci_alloc_msi_desc = {
- 0, &pci_alloc_msi_method_default
+struct kobjop_desc pci_release_msi_desc = {
+ 0, { &pci_release_msi_desc, (kobjop_t)kobj_error_method }
};
-struct kobj_method pci_alloc_msix_method_default = {
- &pci_alloc_msix_desc, (kobjop_t) kobj_error_method
+struct kobjop_desc pci_msi_count_desc = {
+ 0, { &pci_msi_count_desc, (kobjop_t)null_msi_count }
};
-struct kobjop_desc pci_alloc_msix_desc = {
- 0, &pci_alloc_msix_method_default
+struct kobjop_desc pci_msix_count_desc = {
+ 0, { &pci_msix_count_desc, (kobjop_t)null_msi_count }
};
-struct kobj_method pci_remap_msix_method_default = {
- &pci_remap_msix_desc, (kobjop_t) kobj_error_method
+struct kobjop_desc pci_msix_pba_bar_desc = {
+ 0, { &pci_msix_pba_bar_desc, (kobjop_t)null_msix_bar }
};
-struct kobjop_desc pci_remap_msix_desc = {
- 0, &pci_remap_msix_method_default
+struct kobjop_desc pci_msix_table_bar_desc = {
+ 0, { &pci_msix_table_bar_desc, (kobjop_t)null_msix_bar }
};
-struct kobj_method pci_release_msi_method_default = {
- &pci_release_msi_desc, (kobjop_t) kobj_error_method
+struct kobjop_desc pci_get_id_desc = {
+ 0, { &pci_get_id_desc, (kobjop_t)kobj_error_method }
};
-struct kobjop_desc pci_release_msi_desc = {
- 0, &pci_release_msi_method_default
+struct kobjop_desc pci_alloc_devinfo_desc = {
+ 0, { &pci_alloc_devinfo_desc, (kobjop_t)kobj_error_method }
};
-struct kobj_method pci_msi_count_method_default = {
- &pci_msi_count_desc, (kobjop_t) null_msi_count
+struct kobjop_desc pci_child_added_desc = {
+ 0, { &pci_child_added_desc, (kobjop_t)kobj_error_method }
};
-struct kobjop_desc pci_msi_count_desc = {
- 0, &pci_msi_count_method_default
+struct kobjop_desc pci_iov_attach_desc = {
+ 0, { &pci_iov_attach_desc, (kobjop_t)kobj_error_method }
};
-struct kobj_method pci_msix_count_method_default = {
- &pci_msix_count_desc, (kobjop_t) null_msi_count
+struct kobjop_desc pci_iov_detach_desc = {
+ 0, { &pci_iov_detach_desc, (kobjop_t)kobj_error_method }
};
-struct kobjop_desc pci_msix_count_desc = {
- 0, &pci_msix_count_method_default
+struct kobjop_desc pci_create_iov_child_desc = {
+ 0, { &pci_create_iov_child_desc, (kobjop_t)null_create_iov_child }
};
diff --git a/rtemsbsd/local/pcib_if.c b/rtemsbsd/local/pcib_if.c
index 07d7abb5..d0c2aa89 100644
--- a/rtemsbsd/local/pcib_if.c
+++ b/rtemsbsd/local/pcib_if.c
@@ -17,7 +17,9 @@
#include <sys/kernel.h>
#include <sys/kobj.h>
#include <sys/bus.h>
+#include <sys/rman.h>
#include <dev/pci/pcivar.h>
+#include <dev/pci/pcib_private.h>
#include <rtems/bsd/local/pcib_if.h>
@@ -27,83 +29,70 @@ null_route_interrupt(device_t pcib, device_t dev, int pin)
return (PCI_INVALID_IRQ);
}
-struct kobj_method pcib_maxslots_method_default = {
- &pcib_maxslots_desc, (kobjop_t) kobj_error_method
-};
+static int
+pcib_null_ari_enabled(device_t pcib)
+{
+
+ return (0);
+}
struct kobjop_desc pcib_maxslots_desc = {
- 0, &pcib_maxslots_method_default
+ 0, { &pcib_maxslots_desc, (kobjop_t)kobj_error_method }
};
-struct kobj_method pcib_read_config_method_default = {
- &pcib_read_config_desc, (kobjop_t) kobj_error_method
+struct kobjop_desc pcib_maxfuncs_desc = {
+ 0, { &pcib_maxfuncs_desc, (kobjop_t)pcib_maxfuncs }
};
struct kobjop_desc pcib_read_config_desc = {
- 0, &pcib_read_config_method_default
-};
-
-struct kobj_method pcib_write_config_method_default = {
- &pcib_write_config_desc, (kobjop_t) kobj_error_method
+ 0, { &pcib_read_config_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc pcib_write_config_desc = {
- 0, &pcib_write_config_method_default
-};
-
-struct kobj_method pcib_route_interrupt_method_default = {
- &pcib_route_interrupt_desc, (kobjop_t) null_route_interrupt
+ 0, { &pcib_write_config_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc pcib_route_interrupt_desc = {
- 0, &pcib_route_interrupt_method_default
-};
-
-struct kobj_method pcib_alloc_msi_method_default = {
- &pcib_alloc_msi_desc, (kobjop_t) kobj_error_method
+ 0, { &pcib_route_interrupt_desc, (kobjop_t)null_route_interrupt }
};
struct kobjop_desc pcib_alloc_msi_desc = {
- 0, &pcib_alloc_msi_method_default
-};
-
-struct kobj_method pcib_release_msi_method_default = {
- &pcib_release_msi_desc, (kobjop_t) kobj_error_method
+ 0, { &pcib_alloc_msi_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc pcib_release_msi_desc = {
- 0, &pcib_release_msi_method_default
+ 0, { &pcib_release_msi_desc, (kobjop_t)kobj_error_method }
};
-struct kobj_method pcib_alloc_msix_method_default = {
- &pcib_alloc_msix_desc, (kobjop_t) kobj_error_method
+struct kobjop_desc pcib_alloc_msix_desc = {
+ 0, { &pcib_alloc_msix_desc, (kobjop_t)kobj_error_method }
};
-struct kobjop_desc pcib_alloc_msix_desc = {
- 0, &pcib_alloc_msix_method_default
+struct kobjop_desc pcib_release_msix_desc = {
+ 0, { &pcib_release_msix_desc, (kobjop_t)kobj_error_method }
};
-struct kobj_method pcib_release_msix_method_default = {
- &pcib_release_msix_desc, (kobjop_t) kobj_error_method
+struct kobjop_desc pcib_map_msi_desc = {
+ 0, { &pcib_map_msi_desc, (kobjop_t)kobj_error_method }
};
-struct kobjop_desc pcib_release_msix_desc = {
- 0, &pcib_release_msix_method_default
+struct kobjop_desc pcib_power_for_sleep_desc = {
+ 0, { &pcib_power_for_sleep_desc, (kobjop_t)kobj_error_method }
};
-struct kobj_method pcib_map_msi_method_default = {
- &pcib_map_msi_desc, (kobjop_t) kobj_error_method
+struct kobjop_desc pcib_get_id_desc = {
+ 0, { &pcib_get_id_desc, (kobjop_t)pcib_get_id }
};
-struct kobjop_desc pcib_map_msi_desc = {
- 0, &pcib_map_msi_method_default
+struct kobjop_desc pcib_try_enable_ari_desc = {
+ 0, { &pcib_try_enable_ari_desc, (kobjop_t)kobj_error_method }
};
-struct kobj_method pcib_power_for_sleep_method_default = {
- &pcib_power_for_sleep_desc, (kobjop_t) kobj_error_method
+struct kobjop_desc pcib_ari_enabled_desc = {
+ 0, { &pcib_ari_enabled_desc, (kobjop_t)pcib_null_ari_enabled }
};
-struct kobjop_desc pcib_power_for_sleep_desc = {
- 0, &pcib_power_for_sleep_method_default
+struct kobjop_desc pcib_decode_rid_desc = {
+ 0, { &pcib_decode_rid_desc, (kobjop_t)pcib_decode_rid }
};
diff --git a/rtemsbsd/local/usb_if.c b/rtemsbsd/local/usb_if.c
index d88ab545..4f334ec8 100644
--- a/rtemsbsd/local/usb_if.c
+++ b/rtemsbsd/local/usb_if.c
@@ -19,19 +19,11 @@
#include <sys/bus.h>
#include <rtems/bsd/local/usb_if.h>
-struct kobj_method usb_handle_request_method_default = {
- &usb_handle_request_desc, (kobjop_t) kobj_error_method
-};
-
struct kobjop_desc usb_handle_request_desc = {
- 0, &usb_handle_request_method_default
-};
-
-struct kobj_method usb_take_controller_method_default = {
- &usb_take_controller_desc, (kobjop_t) kobj_error_method
+ 0, { &usb_handle_request_desc, (kobjop_t)kobj_error_method }
};
struct kobjop_desc usb_take_controller_desc = {
- 0, &usb_take_controller_method_default
+ 0, { &usb_take_controller_desc, (kobjop_t)kobj_error_method }
};