diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2019-02-11 15:26:17 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2019-02-12 09:17:32 +0100 |
commit | 556ec29b4ea1a7bf64304913ca7c881738589f3a (patch) | |
tree | 3b4216bb4da32855c7f8c4938cf8d7bb6ed9fe3d /rtemsbsd | |
parent | atomic.h: Add atomic_fetchadd_64() (diff) | |
download | rtems-libbsd-556ec29b4ea1a7bf64304913ca7c881738589f3a.tar.bz2 |
Update to FreeBSD stable/12 2019-02-11
Git mirror commit 606b591dae1023a71ff020faf99789059eb6591f.
Diffstat (limited to 'rtemsbsd')
-rw-r--r-- | rtemsbsd/include/machine/rtems-bsd-kernel-namespace.h | 19 | ||||
-rw-r--r-- | rtemsbsd/include/rtems/bsd/local/bus_if.h | 178 | ||||
-rw-r--r-- | rtemsbsd/include/rtems/bsd/local/gpiobus_if.h | 36 | ||||
-rw-r--r-- | rtemsbsd/include/rtems/bsd/local/ifdi_if.h | 126 | ||||
-rw-r--r-- | rtemsbsd/include/rtems/bsd/local/miibus_if.h | 8 | ||||
-rw-r--r-- | rtemsbsd/include/rtems/bsd/local/mmcbr_if.h | 32 | ||||
-rw-r--r-- | rtemsbsd/include/rtems/bsd/local/mmcbus_if.h | 12 | ||||
-rw-r--r-- | rtemsbsd/include/rtems/bsd/local/ofw_bus_if.h | 28 | ||||
-rw-r--r-- | rtemsbsd/include/rtems/bsd/local/ofw_if.h | 84 | ||||
-rw-r--r-- | rtemsbsd/include/rtems/bsd/local/pcib_if.h | 56 | ||||
-rw-r--r-- | rtemsbsd/include/rtems/bsd/local/usb_if.h | 8 | ||||
-rw-r--r-- | rtemsbsd/local/bus_if.c | 8 |
12 files changed, 496 insertions, 99 deletions
diff --git a/rtemsbsd/include/machine/rtems-bsd-kernel-namespace.h b/rtemsbsd/include/machine/rtems-bsd-kernel-namespace.h index c4c30ade..29aeebcf 100644 --- a/rtemsbsd/include/machine/rtems-bsd-kernel-namespace.h +++ b/rtemsbsd/include/machine/rtems-bsd-kernel-namespace.h @@ -433,6 +433,7 @@ #define bus_generic_release_resource _bsd_bus_generic_release_resource #define bus_generic_resume _bsd_bus_generic_resume #define bus_generic_resume_child _bsd_bus_generic_resume_child +#define bus_generic_resume_intr _bsd_bus_generic_resume_intr #define bus_generic_rl_alloc_resource _bsd_bus_generic_rl_alloc_resource #define bus_generic_rl_delete_resource _bsd_bus_generic_rl_delete_resource #define bus_generic_rl_get_resource _bsd_bus_generic_rl_get_resource @@ -442,6 +443,7 @@ #define bus_generic_shutdown _bsd_bus_generic_shutdown #define bus_generic_suspend _bsd_bus_generic_suspend #define bus_generic_suspend_child _bsd_bus_generic_suspend_child +#define bus_generic_suspend_intr _bsd_bus_generic_suspend_intr #define bus_generic_teardown_intr _bsd_bus_generic_teardown_intr #define bus_generic_unmap_resource _bsd_bus_generic_unmap_resource #define bus_generic_write_ivar _bsd_bus_generic_write_ivar @@ -459,9 +461,11 @@ #define bus_print_child_header _bsd_bus_print_child_header #define bus_release_resource _bsd_bus_release_resource #define bus_release_resources _bsd_bus_release_resources +#define bus_resume_intr _bsd_bus_resume_intr #define bus_set_pass _bsd_bus_set_pass #define bus_set_resource _bsd_bus_set_resource #define bus_setup_intr _bsd_bus_setup_intr +#define bus_suspend_intr _bsd_bus_suspend_intr #define bus_teardown_intr _bsd_bus_teardown_intr #define bus_unmap_resource _bsd_bus_unmap_resource #define calculate_crc32c _bsd_calculate_crc32c @@ -1389,6 +1393,7 @@ #define ieee80211_add_channel_ht40 _bsd_ieee80211_add_channel_ht40 #define ieee80211_add_channel_list_2ghz _bsd_ieee80211_add_channel_list_2ghz #define ieee80211_add_channel_list_5ghz _bsd_ieee80211_add_channel_list_5ghz +#define ieee80211_add_channels_default_2ghz _bsd_ieee80211_add_channels_default_2ghz #define ieee80211_add_htcap _bsd_ieee80211_add_htcap #define ieee80211_add_htcap_ch _bsd_ieee80211_add_htcap_ch #define ieee80211_add_htcap_vendor _bsd_ieee80211_add_htcap_vendor @@ -1461,6 +1466,9 @@ #define ieee80211_classify _bsd_ieee80211_classify #define ieee80211_compute_duration _bsd_ieee80211_compute_duration #define ieee80211_compute_duration_ht _bsd_ieee80211_compute_duration_ht +#define ieee80211_com_vdecref _bsd_ieee80211_com_vdecref +#define ieee80211_com_vdetach _bsd_ieee80211_com_vdetach +#define ieee80211_com_vincref _bsd_ieee80211_com_vincref #define ieee80211_create_ibss _bsd_ieee80211_create_ibss #define ieee80211_crypto_attach _bsd_ieee80211_crypto_attach #define ieee80211_crypto_available _bsd_ieee80211_crypto_available @@ -1895,7 +1903,6 @@ #define if_input _bsd_if_input #define ifioctl _bsd_ifioctl #define if_link_state_change _bsd_if_link_state_change -#define ifma6_restart _bsd_ifma6_restart #define if_maddr_rlock _bsd_if_maddr_rlock #define if_maddr_runlock _bsd_if_maddr_runlock #define ifma_restart _bsd_ifma_restart @@ -2043,11 +2050,11 @@ #define in6_mcast_loop _bsd_in6_mcast_loop #define in6m_clear_recorded _bsd_in6m_clear_recorded #define in6m_commit _bsd_in6m_commit -#define in6m_disconnect _bsd_in6m_disconnect +#define in6m_disconnect_locked _bsd_in6m_disconnect_locked #define in6m_print _bsd_in6m_print #define in6m_record_source _bsd_in6m_record_source -#define in6m_release_deferred _bsd_in6m_release_deferred #define in6m_release_list_deferred _bsd_in6m_release_list_deferred +#define in6m_release_wait _bsd_in6m_release_wait #define in6_multi_free_mtx _bsd_in6_multi_free_mtx #define in6_multi_list_mtx _bsd_in6_multi_list_mtx #define in6_multi_sx _bsd_in6_multi_sx @@ -2211,6 +2218,8 @@ #define in_sockaddr _bsd_in_sockaddr #define intr_event_add_handler _bsd_intr_event_add_handler #define intr_event_create _bsd_intr_event_create +#define intr_event_resume_handler _bsd_intr_event_resume_handler +#define intr_event_suspend_handler _bsd_intr_event_suspend_handler #define ip4_ah_net_deflev _bsd_ip4_ah_net_deflev #define ip4_ah_trans_deflev _bsd_ip4_ah_trans_deflev #define ip4_esp_net_deflev _bsd_ip4_esp_net_deflev @@ -3750,6 +3759,7 @@ #define rman_get_device _bsd_rman_get_device #define rman_get_end _bsd_rman_get_end #define rman_get_flags _bsd_rman_get_flags +#define rman_get_irq_cookie _bsd_rman_get_irq_cookie #define rman_get_mapping _bsd_rman_get_mapping #define rman_get_rid _bsd_rman_get_rid #define rman_get_size _bsd_rman_get_size @@ -3769,6 +3779,7 @@ #define rman_set_bustag _bsd_rman_set_bustag #define rman_set_device _bsd_rman_set_device #define rman_set_end _bsd_rman_set_end +#define rman_set_irq_cookie _bsd_rman_set_irq_cookie #define rman_set_mapping _bsd_rman_set_mapping #define rman_set_rid _bsd_rman_set_rid #define rman_set_start _bsd_rman_set_start @@ -4490,6 +4501,8 @@ #define Skein_512_Output _bsd_Skein_512_Output #define Skein_512_Process_Block _bsd_Skein_512_Process_Block #define Skein_512_Update _bsd_Skein_512_Update +#define Skein_Get64_LSB_First _bsd_Skein_Get64_LSB_First +#define Skein_Put64_LSB_First _bsd_Skein_Put64_LSB_First #define skipjack_backwards _bsd_skipjack_backwards #define skipjack_forwards _bsd_skipjack_forwards #define sl_compress_init _bsd_sl_compress_init diff --git a/rtemsbsd/include/rtems/bsd/local/bus_if.h b/rtemsbsd/include/rtems/bsd/local/bus_if.h index fb71413f..cc15dcad 100644 --- a/rtemsbsd/include/rtems/bsd/local/bus_if.h +++ b/rtemsbsd/include/rtems/bsd/local/bus_if.h @@ -42,8 +42,10 @@ typedef int bus_print_child_t(device_t _dev, device_t _child); static __inline int BUS_PRINT_CHILD(device_t _dev, device_t _child) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_print_child); - return ((bus_print_child_t *) _m)(_dev, _child); + rc = ((bus_print_child_t *) _m)(_dev, _child); + return (rc); } /** @brief Unique descriptor for the BUS_PROBE_NOMATCH() method */ @@ -104,8 +106,10 @@ static __inline int BUS_READ_IVAR(device_t _dev, device_t _child, int _index, uintptr_t *_result) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_read_ivar); - return ((bus_read_ivar_t *) _m)(_dev, _child, _index, _result); + rc = ((bus_read_ivar_t *) _m)(_dev, _child, _index, _result); + return (rc); } /** @brief Unique descriptor for the BUS_WRITE_IVAR() method */ @@ -135,8 +139,10 @@ static __inline int BUS_WRITE_IVAR(device_t _dev, device_t _child, int _indx, uintptr_t _value) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_write_ivar); - return ((bus_write_ivar_t *) _m)(_dev, _child, _indx, _value); + rc = ((bus_write_ivar_t *) _m)(_dev, _child, _indx, _value); + return (rc); } /** @brief Unique descriptor for the BUS_CHILD_DELETED() method */ @@ -235,8 +241,10 @@ static __inline device_t BUS_ADD_CHILD(device_t _dev, u_int _order, const char *_name, int _unit) { kobjop_t _m; + device_t rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_add_child); - return ((bus_add_child_t *) _m)(_dev, _order, _name, _unit); + rc = ((bus_add_child_t *) _m)(_dev, _order, _name, _unit); + return (rc); } /** @brief Unique descriptor for the BUS_RESCAN() method */ @@ -256,8 +264,10 @@ typedef int bus_rescan_t(device_t _dev); static __inline int BUS_RESCAN(device_t _dev) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_rescan); - return ((bus_rescan_t *) _m)(_dev); + rc = ((bus_rescan_t *) _m)(_dev); + return (rc); } /** @brief Unique descriptor for the BUS_ALLOC_RESOURCE() method */ @@ -306,8 +316,10 @@ static __inline struct resource * BUS_ALLOC_RESOURCE(device_t _dev, u_int _flags) { kobjop_t _m; + struct resource * rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_alloc_resource); - return ((bus_alloc_resource_t *) _m)(_dev, _child, _type, _rid, _start, _end, _count, _flags); + rc = ((bus_alloc_resource_t *) _m)(_dev, _child, _type, _rid, _start, _end, _count, _flags); + return (rc); } /** @brief Unique descriptor for the BUS_ACTIVATE_RESOURCE() method */ @@ -335,8 +347,10 @@ static __inline int BUS_ACTIVATE_RESOURCE(device_t _dev, device_t _child, struct resource *_r) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_activate_resource); - return ((bus_activate_resource_t *) _m)(_dev, _child, _type, _rid, _r); + rc = ((bus_activate_resource_t *) _m)(_dev, _child, _type, _rid, _r); + return (rc); } /** @brief Unique descriptor for the BUS_MAP_RESOURCE() method */ @@ -367,8 +381,10 @@ static __inline int BUS_MAP_RESOURCE(device_t _dev, device_t _child, int _type, struct resource_map *_map) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_map_resource); - return ((bus_map_resource_t *) _m)(_dev, _child, _type, _r, _args, _map); + rc = ((bus_map_resource_t *) _m)(_dev, _child, _type, _r, _args, _map); + return (rc); } /** @brief Unique descriptor for the BUS_UNMAP_RESOURCE() method */ @@ -396,8 +412,10 @@ static __inline int BUS_UNMAP_RESOURCE(device_t _dev, device_t _child, struct resource_map *_map) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_unmap_resource); - return ((bus_unmap_resource_t *) _m)(_dev, _child, _type, _r, _map); + rc = ((bus_unmap_resource_t *) _m)(_dev, _child, _type, _r, _map); + return (rc); } /** @brief Unique descriptor for the BUS_DEACTIVATE_RESOURCE() method */ @@ -423,8 +441,10 @@ static __inline int BUS_DEACTIVATE_RESOURCE(device_t _dev, device_t _child, struct resource *_r) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_deactivate_resource); - return ((bus_deactivate_resource_t *) _m)(_dev, _child, _type, _rid, _r); + rc = ((bus_deactivate_resource_t *) _m)(_dev, _child, _type, _rid, _r); + return (rc); } /** @brief Unique descriptor for the BUS_ADJUST_RESOURCE() method */ @@ -454,8 +474,10 @@ static __inline int BUS_ADJUST_RESOURCE(device_t _dev, device_t _child, rman_res_t _start, rman_res_t _end) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_adjust_resource); - return ((bus_adjust_resource_t *) _m)(_dev, _child, _type, _res, _start, _end); + rc = ((bus_adjust_resource_t *) _m)(_dev, _child, _type, _res, _start, _end); + return (rc); } /** @brief Unique descriptor for the BUS_RELEASE_RESOURCE() method */ @@ -482,8 +504,10 @@ static __inline int BUS_RELEASE_RESOURCE(device_t _dev, device_t _child, struct resource *_res) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_release_resource); - return ((bus_release_resource_t *) _m)(_dev, _child, _type, _rid, _res); + rc = ((bus_release_resource_t *) _m)(_dev, _child, _type, _rid, _res); + return (rc); } /** @brief Unique descriptor for the BUS_SETUP_INTR() method */ @@ -524,8 +548,10 @@ static __inline int BUS_SETUP_INTR(device_t _dev, device_t _child, void **_cookiep) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_setup_intr); - return ((bus_setup_intr_t *) _m)(_dev, _child, _irq, _flags, _filter, _intr, _arg, _cookiep); + rc = ((bus_setup_intr_t *) _m)(_dev, _child, _irq, _flags, _filter, _intr, _arg, _cookiep); + return (rc); } /** @brief Unique descriptor for the BUS_TEARDOWN_INTR() method */ @@ -551,8 +577,68 @@ static __inline int BUS_TEARDOWN_INTR(device_t _dev, device_t _child, struct resource *_irq, void *_cookie) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_teardown_intr); - return ((bus_teardown_intr_t *) _m)(_dev, _child, _irq, _cookie); + rc = ((bus_teardown_intr_t *) _m)(_dev, _child, _irq, _cookie); + return (rc); +} + +/** @brief Unique descriptor for the BUS_SUSPEND_INTR() method */ +extern struct kobjop_desc bus_suspend_intr_desc; +/** @brief A function implementing the BUS_SUSPEND_INTR() method */ +typedef int bus_suspend_intr_t(device_t _dev, device_t _child, + struct resource *_irq); +/** + * @brief Suspend an interrupt handler + * + * This method is used to mark a handler as suspended in the case + * that the associated device is powered down and cannot be a source + * for the, typically shared, interrupt. + * The value of @p _irq must be the interrupt resource passed + * to a previous call to BUS_SETUP_INTR(). + * + * @param _dev the parent device of @p _child + * @param _child the device which allocated the resource + * @param _irq the resource representing the interrupt + */ + +static __inline int BUS_SUSPEND_INTR(device_t _dev, device_t _child, + struct resource *_irq) +{ + kobjop_t _m; + int rc; + KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_suspend_intr); + rc = ((bus_suspend_intr_t *) _m)(_dev, _child, _irq); + return (rc); +} + +/** @brief Unique descriptor for the BUS_RESUME_INTR() method */ +extern struct kobjop_desc bus_resume_intr_desc; +/** @brief A function implementing the BUS_RESUME_INTR() method */ +typedef int bus_resume_intr_t(device_t _dev, device_t _child, + struct resource *_irq); +/** + * @brief Resume an interrupt handler + * + * This method is used to clear suspended state of a handler when + * the associated device is powered up and can be an interrupt source + * again. + * The value of @p _irq must be the interrupt resource passed + * to a previous call to BUS_SETUP_INTR(). + * + * @param _dev the parent device of @p _child + * @param _child the device which allocated the resource + * @param _irq the resource representing the interrupt + */ + +static __inline int BUS_RESUME_INTR(device_t _dev, device_t _child, + struct resource *_irq) +{ + kobjop_t _m; + int rc; + KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_resume_intr); + rc = ((bus_resume_intr_t *) _m)(_dev, _child, _irq); + return (rc); } /** @brief Unique descriptor for the BUS_SET_RESOURCE() method */ @@ -583,8 +669,10 @@ static __inline int BUS_SET_RESOURCE(device_t _dev, device_t _child, int _type, rman_res_t _count) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_set_resource); - return ((bus_set_resource_t *) _m)(_dev, _child, _type, _rid, _start, _count); + rc = ((bus_set_resource_t *) _m)(_dev, _child, _type, _rid, _start, _count); + return (rc); } /** @brief Unique descriptor for the BUS_GET_RESOURCE() method */ @@ -614,8 +702,10 @@ static __inline int BUS_GET_RESOURCE(device_t _dev, device_t _child, int _type, rman_res_t *_countp) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_get_resource); - return ((bus_get_resource_t *) _m)(_dev, _child, _type, _rid, _startp, _countp); + rc = ((bus_get_resource_t *) _m)(_dev, _child, _type, _rid, _startp, _countp); + return (rc); } /** @brief Unique descriptor for the BUS_DELETE_RESOURCE() method */ @@ -663,8 +753,10 @@ static __inline struct resource_list * BUS_GET_RESOURCE_LIST(device_t _dev, device_t _child) { kobjop_t _m; + struct resource_list * rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_get_resource_list); - return ((bus_get_resource_list_t *) _m)(_dev, _child); + rc = ((bus_get_resource_list_t *) _m)(_dev, _child); + return (rc); } /** @brief Unique descriptor for the BUS_CHILD_PRESENT() method */ @@ -690,8 +782,10 @@ typedef int bus_child_present_t(device_t _dev, device_t _child); static __inline int BUS_CHILD_PRESENT(device_t _dev, device_t _child) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_child_present); - return ((bus_child_present_t *) _m)(_dev, _child); + rc = ((bus_child_present_t *) _m)(_dev, _child); + return (rc); } /** @brief Unique descriptor for the BUS_CHILD_PNPINFO_STR() method */ @@ -723,8 +817,10 @@ static __inline int BUS_CHILD_PNPINFO_STR(device_t _dev, device_t _child, char *_buf, size_t _buflen) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_child_pnpinfo_str); - return ((bus_child_pnpinfo_str_t *) _m)(_dev, _child, _buf, _buflen); + rc = ((bus_child_pnpinfo_str_t *) _m)(_dev, _child, _buf, _buflen); + return (rc); } /** @brief Unique descriptor for the BUS_CHILD_LOCATION_STR() method */ @@ -756,8 +852,10 @@ static __inline int BUS_CHILD_LOCATION_STR(device_t _dev, device_t _child, char *_buf, size_t _buflen) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_child_location_str); - return ((bus_child_location_str_t *) _m)(_dev, _child, _buf, _buflen); + rc = ((bus_child_location_str_t *) _m)(_dev, _child, _buf, _buflen); + return (rc); } /** @brief Unique descriptor for the BUS_BIND_INTR() method */ @@ -779,8 +877,10 @@ static __inline int BUS_BIND_INTR(device_t _dev, device_t _child, struct resource *_irq, int _cpu) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_bind_intr); - return ((bus_bind_intr_t *) _m)(_dev, _child, _irq, _cpu); + rc = ((bus_bind_intr_t *) _m)(_dev, _child, _irq, _cpu); + return (rc); } /** @brief Unique descriptor for the BUS_CONFIG_INTR() method */ @@ -803,8 +903,10 @@ static __inline int BUS_CONFIG_INTR(device_t _dev, int _irq, enum intr_polarity _pol) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_config_intr); - return ((bus_config_intr_t *) _m)(_dev, _irq, _trig, _pol); + rc = ((bus_config_intr_t *) _m)(_dev, _irq, _trig, _pol); + return (rc); } /** @brief Unique descriptor for the BUS_DESCRIBE_INTR() method */ @@ -830,8 +932,10 @@ static __inline int BUS_DESCRIBE_INTR(device_t _dev, device_t _child, const char *_descr) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_describe_intr); - return ((bus_describe_intr_t *) _m)(_dev, _child, _irq, _cookie, _descr); + rc = ((bus_describe_intr_t *) _m)(_dev, _child, _irq, _cookie, _descr); + return (rc); } /** @brief Unique descriptor for the BUS_HINTED_CHILD() method */ @@ -877,8 +981,10 @@ typedef bus_dma_tag_t bus_get_dma_tag_t(device_t _dev, device_t _child); static __inline bus_dma_tag_t BUS_GET_DMA_TAG(device_t _dev, device_t _child) { kobjop_t _m; + bus_dma_tag_t rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_get_dma_tag); - return ((bus_get_dma_tag_t *) _m)(_dev, _child); + rc = ((bus_get_dma_tag_t *) _m)(_dev, _child); + return (rc); } /** @brief Unique descriptor for the BUS_GET_BUS_TAG() method */ @@ -895,8 +1001,10 @@ typedef bus_space_tag_t bus_get_bus_tag_t(device_t _dev, device_t _child); static __inline bus_space_tag_t BUS_GET_BUS_TAG(device_t _dev, device_t _child) { kobjop_t _m; + bus_space_tag_t rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_get_bus_tag); - return ((bus_get_bus_tag_t *) _m)(_dev, _child); + rc = ((bus_get_bus_tag_t *) _m)(_dev, _child); + return (rc); } /** @brief Unique descriptor for the BUS_HINT_DEVICE_UNIT() method */ @@ -953,8 +1061,10 @@ typedef int bus_remap_intr_t(device_t _dev, device_t _child, u_int _irq); static __inline int BUS_REMAP_INTR(device_t _dev, device_t _child, u_int _irq) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_remap_intr); - return ((bus_remap_intr_t *) _m)(_dev, _child, _irq); + rc = ((bus_remap_intr_t *) _m)(_dev, _child, _irq); + return (rc); } /** @brief Unique descriptor for the BUS_SUSPEND_CHILD() method */ @@ -971,8 +1081,10 @@ typedef int bus_suspend_child_t(device_t _dev, device_t _child); static __inline int BUS_SUSPEND_CHILD(device_t _dev, device_t _child) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_suspend_child); - return ((bus_suspend_child_t *) _m)(_dev, _child); + rc = ((bus_suspend_child_t *) _m)(_dev, _child); + return (rc); } /** @brief Unique descriptor for the BUS_RESUME_CHILD() method */ @@ -989,8 +1101,10 @@ typedef int bus_resume_child_t(device_t _dev, device_t _child); static __inline int BUS_RESUME_CHILD(device_t _dev, device_t _child) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_resume_child); - return ((bus_resume_child_t *) _m)(_dev, _child); + rc = ((bus_resume_child_t *) _m)(_dev, _child); + return (rc); } /** @brief Unique descriptor for the BUS_GET_DOMAIN() method */ @@ -1008,8 +1122,10 @@ typedef int bus_get_domain_t(device_t _dev, device_t _child, int *_domain); static __inline int BUS_GET_DOMAIN(device_t _dev, device_t _child, int *_domain) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_get_domain); - return ((bus_get_domain_t *) _m)(_dev, _child, _domain); + rc = ((bus_get_domain_t *) _m)(_dev, _child, _domain); + return (rc); } /** @brief Unique descriptor for the BUS_GET_CPUS() method */ @@ -1033,8 +1149,10 @@ static __inline int BUS_GET_CPUS(device_t _dev, device_t _child, cpuset_t *_cpuset) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_get_cpus); - return ((bus_get_cpus_t *) _m)(_dev, _child, _op, _setsize, _cpuset); + rc = ((bus_get_cpus_t *) _m)(_dev, _child, _op, _setsize, _cpuset); + return (rc); } #endif /* _bus_if_h_ */ diff --git a/rtemsbsd/include/rtems/bsd/local/gpiobus_if.h b/rtemsbsd/include/rtems/bsd/local/gpiobus_if.h index fb270f2e..31b7f41d 100644 --- a/rtemsbsd/include/rtems/bsd/local/gpiobus_if.h +++ b/rtemsbsd/include/rtems/bsd/local/gpiobus_if.h @@ -22,8 +22,10 @@ typedef int gpiobus_acquire_bus_t(device_t busdev, device_t dev, int how); static __inline int GPIOBUS_ACQUIRE_BUS(device_t busdev, device_t dev, int how) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)busdev)->ops,gpiobus_acquire_bus); - return ((gpiobus_acquire_bus_t *) _m)(busdev, dev, how); + rc = ((gpiobus_acquire_bus_t *) _m)(busdev, dev, how); + return (rc); } /** @brief Unique descriptor for the GPIOBUS_RELEASE_BUS() method */ @@ -48,8 +50,10 @@ static __inline int GPIOBUS_PIN_SET(device_t dev, device_t child, uint32_t pin_num, uint32_t pin_value) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)dev)->ops,gpiobus_pin_set); - return ((gpiobus_pin_set_t *) _m)(dev, child, pin_num, pin_value); + rc = ((gpiobus_pin_set_t *) _m)(dev, child, pin_num, pin_value); + return (rc); } /** @brief Unique descriptor for the GPIOBUS_PIN_GET() method */ @@ -62,8 +66,10 @@ static __inline int GPIOBUS_PIN_GET(device_t dev, device_t child, uint32_t pin_num, uint32_t *pin_value) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)dev)->ops,gpiobus_pin_get); - return ((gpiobus_pin_get_t *) _m)(dev, child, pin_num, pin_value); + rc = ((gpiobus_pin_get_t *) _m)(dev, child, pin_num, pin_value); + return (rc); } /** @brief Unique descriptor for the GPIOBUS_PIN_TOGGLE() method */ @@ -76,8 +82,10 @@ static __inline int GPIOBUS_PIN_TOGGLE(device_t dev, device_t child, uint32_t pin_num) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)dev)->ops,gpiobus_pin_toggle); - return ((gpiobus_pin_toggle_t *) _m)(dev, child, pin_num); + rc = ((gpiobus_pin_toggle_t *) _m)(dev, child, pin_num); + return (rc); } /** @brief Unique descriptor for the GPIOBUS_PIN_GETCAPS() method */ @@ -90,8 +98,10 @@ static __inline int GPIOBUS_PIN_GETCAPS(device_t dev, device_t child, uint32_t pin_num, uint32_t *caps) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)dev)->ops,gpiobus_pin_getcaps); - return ((gpiobus_pin_getcaps_t *) _m)(dev, child, pin_num, caps); + rc = ((gpiobus_pin_getcaps_t *) _m)(dev, child, pin_num, caps); + return (rc); } /** @brief Unique descriptor for the GPIOBUS_PIN_GETFLAGS() method */ @@ -104,8 +114,10 @@ static __inline int GPIOBUS_PIN_GETFLAGS(device_t dev, device_t child, uint32_t pin_num, uint32_t *flags) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)dev)->ops,gpiobus_pin_getflags); - return ((gpiobus_pin_getflags_t *) _m)(dev, child, pin_num, flags); + rc = ((gpiobus_pin_getflags_t *) _m)(dev, child, pin_num, flags); + return (rc); } /** @brief Unique descriptor for the GPIOBUS_PIN_SETFLAGS() method */ @@ -118,8 +130,10 @@ static __inline int GPIOBUS_PIN_SETFLAGS(device_t dev, device_t child, uint32_t pin_num, uint32_t flags) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)dev)->ops,gpiobus_pin_setflags); - return ((gpiobus_pin_setflags_t *) _m)(dev, child, pin_num, flags); + rc = ((gpiobus_pin_setflags_t *) _m)(dev, child, pin_num, flags); + return (rc); } /** @brief Unique descriptor for the GPIOBUS_PIN_GETNAME() method */ @@ -131,8 +145,10 @@ static __inline int GPIOBUS_PIN_GETNAME(device_t dev, uint32_t pin_num, char *name) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)dev)->ops,gpiobus_pin_getname); - return ((gpiobus_pin_getname_t *) _m)(dev, pin_num, name); + rc = ((gpiobus_pin_getname_t *) _m)(dev, pin_num, name); + return (rc); } /** @brief Unique descriptor for the GPIOBUS_PIN_SETNAME() method */ @@ -145,8 +161,10 @@ static __inline int GPIOBUS_PIN_SETNAME(device_t dev, uint32_t pin_num, const char *name) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)dev)->ops,gpiobus_pin_setname); - return ((gpiobus_pin_setname_t *) _m)(dev, pin_num, name); + rc = ((gpiobus_pin_setname_t *) _m)(dev, pin_num, name); + return (rc); } #endif /* _gpiobus_if_h_ */ diff --git a/rtemsbsd/include/rtems/bsd/local/ifdi_if.h b/rtemsbsd/include/rtems/bsd/local/ifdi_if.h index a1b92481..29740c78 100644 --- a/rtemsbsd/include/rtems/bsd/local/ifdi_if.h +++ b/rtemsbsd/include/rtems/bsd/local/ifdi_if.h @@ -14,6 +14,48 @@ #ifndef _ifdi_if_h_ #define _ifdi_if_h_ +/** @brief Unique descriptor for the IFDI_KNLIST_ADD() method */ +extern struct kobjop_desc ifdi_knlist_add_desc; +/** @brief A function implementing the IFDI_KNLIST_ADD() method */ +typedef int ifdi_knlist_add_t(if_ctx_t _ctx, struct knote *_kn); + +static __inline int IFDI_KNLIST_ADD(if_ctx_t _ctx, struct knote *_kn) +{ + kobjop_t _m; + int rc; + KOBJOPLOOKUP(((kobj_t)_ctx)->ops,ifdi_knlist_add); + rc = ((ifdi_knlist_add_t *) _m)(_ctx, _kn); + return (rc); +} + +/** @brief Unique descriptor for the IFDI_KNOTE_EVENT() method */ +extern struct kobjop_desc ifdi_knote_event_desc; +/** @brief A function implementing the IFDI_KNOTE_EVENT() method */ +typedef int ifdi_knote_event_t(if_ctx_t _ctx, struct knote *_kn, int hint); + +static __inline int IFDI_KNOTE_EVENT(if_ctx_t _ctx, struct knote *_kn, int hint) +{ + kobjop_t _m; + int rc; + KOBJOPLOOKUP(((kobj_t)_ctx)->ops,ifdi_knote_event); + rc = ((ifdi_knote_event_t *) _m)(_ctx, _kn, hint); + return (rc); +} + +/** @brief Unique descriptor for the IFDI_OBJECT_INFO_GET() method */ +extern struct kobjop_desc ifdi_object_info_get_desc; +/** @brief A function implementing the IFDI_OBJECT_INFO_GET() method */ +typedef int ifdi_object_info_get_t(if_ctx_t _ctx, void *data, int size); + +static __inline int IFDI_OBJECT_INFO_GET(if_ctx_t _ctx, void *data, int size) +{ + kobjop_t _m; + int rc; + KOBJOPLOOKUP(((kobj_t)_ctx)->ops,ifdi_object_info_get); + rc = ((ifdi_object_info_get_t *) _m)(_ctx, data, size); + return (rc); +} + /** @brief Unique descriptor for the IFDI_ATTACH_PRE() method */ extern struct kobjop_desc ifdi_attach_pre_desc; /** @brief A function implementing the IFDI_ATTACH_PRE() method */ @@ -42,6 +84,50 @@ static __inline int IFDI_ATTACH_POST(if_ctx_t _ctx) return (rc); } +/** @brief Unique descriptor for the IFDI_REINIT_PRE() method */ +extern struct kobjop_desc ifdi_reinit_pre_desc; +/** @brief A function implementing the IFDI_REINIT_PRE() method */ +typedef int ifdi_reinit_pre_t(if_ctx_t _ctx); + +static __inline int IFDI_REINIT_PRE(if_ctx_t _ctx) +{ + kobjop_t _m; + int rc; + KOBJOPLOOKUP(((kobj_t)_ctx)->ops,ifdi_reinit_pre); + rc = ((ifdi_reinit_pre_t *) _m)(_ctx); + return (rc); +} + +/** @brief Unique descriptor for the IFDI_REINIT_POST() method */ +extern struct kobjop_desc ifdi_reinit_post_desc; +/** @brief A function implementing the IFDI_REINIT_POST() method */ +typedef int ifdi_reinit_post_t(if_ctx_t _ctx); + +static __inline int IFDI_REINIT_POST(if_ctx_t _ctx) +{ + kobjop_t _m; + int rc; + KOBJOPLOOKUP(((kobj_t)_ctx)->ops,ifdi_reinit_post); + rc = ((ifdi_reinit_post_t *) _m)(_ctx); + return (rc); +} + +/** @brief Unique descriptor for the IFDI_CLONEATTACH() method */ +extern struct kobjop_desc ifdi_cloneattach_desc; +/** @brief A function implementing the IFDI_CLONEATTACH() method */ +typedef int ifdi_cloneattach_t(if_ctx_t _ctx, struct if_clone *_ifc, + const char *_name, caddr_t params); + +static __inline int IFDI_CLONEATTACH(if_ctx_t _ctx, struct if_clone *_ifc, + const char *_name, caddr_t params) +{ + kobjop_t _m; + int rc; + KOBJOPLOOKUP(((kobj_t)_ctx)->ops,ifdi_cloneattach); + rc = ((ifdi_cloneattach_t *) _m)(_ctx, _ifc, _name, params); + return (rc); +} + /** @brief Unique descriptor for the IFDI_DETACH() method */ extern struct kobjop_desc ifdi_detach_desc; /** @brief A function implementing the IFDI_DETACH() method */ @@ -144,6 +230,20 @@ static __inline void IFDI_QUEUES_FREE(if_ctx_t _ctx) ((ifdi_queues_free_t *) _m)(_ctx); } +/** @brief Unique descriptor for the IFDI_RX_CLSET() method */ +extern struct kobjop_desc ifdi_rx_clset_desc; +/** @brief A function implementing the IFDI_RX_CLSET() method */ +typedef void ifdi_rx_clset_t(if_ctx_t _ctx, uint16_t _fl, uint16_t _qsetid, + caddr_t *_sdcl); + +static __inline void IFDI_RX_CLSET(if_ctx_t _ctx, uint16_t _fl, + uint16_t _qsetid, caddr_t *_sdcl) +{ + kobjop_t _m; + KOBJOPLOOKUP(((kobj_t)_ctx)->ops,ifdi_rx_clset); + ((ifdi_rx_clset_t *) _m)(_ctx, _fl, _qsetid, _sdcl); +} + /** @brief Unique descriptor for the IFDI_INIT() method */ extern struct kobjop_desc ifdi_init_desc; /** @brief A function implementing the IFDI_INIT() method */ @@ -272,6 +372,20 @@ static __inline int IFDI_MTU_SET(if_ctx_t _ctx, uint32_t _mtu) return (rc); } +/** @brief Unique descriptor for the IFDI_MAC_SET() method */ +extern struct kobjop_desc ifdi_mac_set_desc; +/** @brief A function implementing the IFDI_MAC_SET() method */ +typedef int ifdi_mac_set_t(if_ctx_t _ctx, const uint8_t *_mac); + +static __inline int IFDI_MAC_SET(if_ctx_t _ctx, const uint8_t *_mac) +{ + kobjop_t _m; + int rc; + KOBJOPLOOKUP(((kobj_t)_ctx)->ops,ifdi_mac_set); + rc = ((ifdi_mac_set_t *) _m)(_ctx, _mac); + return (rc); +} + /** @brief Unique descriptor for the IFDI_MEDIA_SET() method */ extern struct kobjop_desc ifdi_media_set_desc; /** @brief A function implementing the IFDI_MEDIA_SET() method */ @@ -498,6 +612,18 @@ static __inline void IFDI_WATCHDOG_RESET(if_ctx_t _ctx) ((ifdi_watchdog_reset_t *) _m)(_ctx); } +/** @brief Unique descriptor for the IFDI_WATCHDOG_RESET_QUEUE() method */ +extern struct kobjop_desc ifdi_watchdog_reset_queue_desc; +/** @brief A function implementing the IFDI_WATCHDOG_RESET_QUEUE() method */ +typedef void ifdi_watchdog_reset_queue_t(if_ctx_t _ctx, uint16_t _q); + +static __inline void IFDI_WATCHDOG_RESET_QUEUE(if_ctx_t _ctx, uint16_t _q) +{ + kobjop_t _m; + KOBJOPLOOKUP(((kobj_t)_ctx)->ops,ifdi_watchdog_reset_queue); + ((ifdi_watchdog_reset_queue_t *) _m)(_ctx, _q); +} + /** @brief Unique descriptor for the IFDI_LED_FUNC() method */ extern struct kobjop_desc ifdi_led_func_desc; /** @brief A function implementing the IFDI_LED_FUNC() method */ diff --git a/rtemsbsd/include/rtems/bsd/local/miibus_if.h b/rtemsbsd/include/rtems/bsd/local/miibus_if.h index ec35ca19..db3f368f 100644 --- a/rtemsbsd/include/rtems/bsd/local/miibus_if.h +++ b/rtemsbsd/include/rtems/bsd/local/miibus_if.h @@ -22,8 +22,10 @@ typedef int miibus_readreg_t(device_t dev, int phy, int reg); static __inline int MIIBUS_READREG(device_t dev, int phy, int reg) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)dev)->ops,miibus_readreg); - return ((miibus_readreg_t *) _m)(dev, phy, reg); + rc = ((miibus_readreg_t *) _m)(dev, phy, reg); + return (rc); } /** @brief Unique descriptor for the MIIBUS_WRITEREG() method */ @@ -34,8 +36,10 @@ typedef int miibus_writereg_t(device_t dev, int phy, int reg, int val); static __inline int MIIBUS_WRITEREG(device_t dev, int phy, int reg, int val) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)dev)->ops,miibus_writereg); - return ((miibus_writereg_t *) _m)(dev, phy, reg, val); + rc = ((miibus_writereg_t *) _m)(dev, phy, reg, val); + return (rc); } /** @brief Unique descriptor for the MIIBUS_STATCHG() method */ diff --git a/rtemsbsd/include/rtems/bsd/local/mmcbr_if.h b/rtemsbsd/include/rtems/bsd/local/mmcbr_if.h index 2fc1656c..8436e147 100644 --- a/rtemsbsd/include/rtems/bsd/local/mmcbr_if.h +++ b/rtemsbsd/include/rtems/bsd/local/mmcbr_if.h @@ -22,8 +22,10 @@ typedef int mmcbr_update_ios_t(device_t brdev, device_t reqdev); static __inline int MMCBR_UPDATE_IOS(device_t brdev, device_t reqdev) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)brdev)->ops,mmcbr_update_ios); - return ((mmcbr_update_ios_t *) _m)(brdev, reqdev); + rc = ((mmcbr_update_ios_t *) _m)(brdev, reqdev); + return (rc); } /** @brief Unique descriptor for the MMCBR_SWITCH_VCCQ() method */ @@ -34,8 +36,10 @@ typedef int mmcbr_switch_vccq_t(device_t brdev, device_t reqdev); static __inline int MMCBR_SWITCH_VCCQ(device_t brdev, device_t reqdev) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)brdev)->ops,mmcbr_switch_vccq); - return ((mmcbr_switch_vccq_t *) _m)(brdev, reqdev); + rc = ((mmcbr_switch_vccq_t *) _m)(brdev, reqdev); + return (rc); } /** @brief Unique descriptor for the MMCBR_TUNE() method */ @@ -46,8 +50,10 @@ typedef int mmcbr_tune_t(device_t brdev, device_t reqdev, bool hs400); static __inline int MMCBR_TUNE(device_t brdev, device_t reqdev, bool hs400) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)brdev)->ops,mmcbr_tune); - return ((mmcbr_tune_t *) _m)(brdev, reqdev, hs400); + rc = ((mmcbr_tune_t *) _m)(brdev, reqdev, hs400); + return (rc); } /** @brief Unique descriptor for the MMCBR_RETUNE() method */ @@ -58,8 +64,10 @@ typedef int mmcbr_retune_t(device_t brdev, device_t reqdev, bool reset); static __inline int MMCBR_RETUNE(device_t brdev, device_t reqdev, bool reset) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)brdev)->ops,mmcbr_retune); - return ((mmcbr_retune_t *) _m)(brdev, reqdev, reset); + rc = ((mmcbr_retune_t *) _m)(brdev, reqdev, reset); + return (rc); } /** @brief Unique descriptor for the MMCBR_REQUEST() method */ @@ -72,8 +80,10 @@ static __inline int MMCBR_REQUEST(device_t brdev, device_t reqdev, struct mmc_request *req) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)brdev)->ops,mmcbr_request); - return ((mmcbr_request_t *) _m)(brdev, reqdev, req); + rc = ((mmcbr_request_t *) _m)(brdev, reqdev, req); + return (rc); } /** @brief Unique descriptor for the MMCBR_GET_RO() method */ @@ -84,8 +94,10 @@ typedef int mmcbr_get_ro_t(device_t brdev, device_t reqdev); static __inline int MMCBR_GET_RO(device_t brdev, device_t reqdev) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)brdev)->ops,mmcbr_get_ro); - return ((mmcbr_get_ro_t *) _m)(brdev, reqdev); + rc = ((mmcbr_get_ro_t *) _m)(brdev, reqdev); + return (rc); } /** @brief Unique descriptor for the MMCBR_ACQUIRE_HOST() method */ @@ -96,8 +108,10 @@ typedef int mmcbr_acquire_host_t(device_t brdev, device_t reqdev); static __inline int MMCBR_ACQUIRE_HOST(device_t brdev, device_t reqdev) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)brdev)->ops,mmcbr_acquire_host); - return ((mmcbr_acquire_host_t *) _m)(brdev, reqdev); + rc = ((mmcbr_acquire_host_t *) _m)(brdev, reqdev); + return (rc); } /** @brief Unique descriptor for the MMCBR_RELEASE_HOST() method */ @@ -108,8 +122,10 @@ typedef int mmcbr_release_host_t(device_t brdev, device_t reqdev); static __inline int MMCBR_RELEASE_HOST(device_t brdev, device_t reqdev) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)brdev)->ops,mmcbr_release_host); - return ((mmcbr_release_host_t *) _m)(brdev, reqdev); + rc = ((mmcbr_release_host_t *) _m)(brdev, reqdev); + return (rc); } #endif /* _mmcbr_if_h_ */ diff --git a/rtemsbsd/include/rtems/bsd/local/mmcbus_if.h b/rtemsbsd/include/rtems/bsd/local/mmcbus_if.h index e9e61557..13c98adb 100644 --- a/rtemsbsd/include/rtems/bsd/local/mmcbus_if.h +++ b/rtemsbsd/include/rtems/bsd/local/mmcbus_if.h @@ -50,8 +50,10 @@ static __inline int MMCBUS_WAIT_FOR_REQUEST(device_t busdev, device_t reqdev, struct mmc_request *req) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)busdev)->ops,mmcbus_wait_for_request); - return ((mmcbus_wait_for_request_t *) _m)(busdev, reqdev, req); + rc = ((mmcbus_wait_for_request_t *) _m)(busdev, reqdev, req); + return (rc); } /** @brief Unique descriptor for the MMCBUS_ACQUIRE_BUS() method */ @@ -62,8 +64,10 @@ typedef int mmcbus_acquire_bus_t(device_t busdev, device_t reqdev); static __inline int MMCBUS_ACQUIRE_BUS(device_t busdev, device_t reqdev) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)busdev)->ops,mmcbus_acquire_bus); - return ((mmcbus_acquire_bus_t *) _m)(busdev, reqdev); + rc = ((mmcbus_acquire_bus_t *) _m)(busdev, reqdev); + return (rc); } /** @brief Unique descriptor for the MMCBUS_RELEASE_BUS() method */ @@ -74,8 +78,10 @@ typedef int mmcbus_release_bus_t(device_t busdev, device_t reqdev); static __inline int MMCBUS_RELEASE_BUS(device_t busdev, device_t reqdev) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)busdev)->ops,mmcbus_release_bus); - return ((mmcbus_release_bus_t *) _m)(busdev, reqdev); + rc = ((mmcbus_release_bus_t *) _m)(busdev, reqdev); + return (rc); } #endif /* _mmcbus_if_h_ */ diff --git a/rtemsbsd/include/rtems/bsd/local/ofw_bus_if.h b/rtemsbsd/include/rtems/bsd/local/ofw_bus_if.h index b21b9eda..1f270e0e 100644 --- a/rtemsbsd/include/rtems/bsd/local/ofw_bus_if.h +++ b/rtemsbsd/include/rtems/bsd/local/ofw_bus_if.h @@ -34,8 +34,10 @@ static __inline const struct ofw_bus_devinfo * OFW_BUS_GET_DEVINFO(device_t bus, device_t dev) { kobjop_t _m; + const struct ofw_bus_devinfo * rc; KOBJOPLOOKUP(((kobj_t)bus)->ops,ofw_bus_get_devinfo); - return ((ofw_bus_get_devinfo_t *) _m)(bus, dev); + rc = ((ofw_bus_get_devinfo_t *) _m)(bus, dev); + return (rc); } /** @brief Unique descriptor for the OFW_BUS_GET_COMPAT() method */ @@ -46,8 +48,10 @@ typedef const char * ofw_bus_get_compat_t(device_t bus, device_t dev); static __inline const char * OFW_BUS_GET_COMPAT(device_t bus, device_t dev) { kobjop_t _m; + const char * rc; KOBJOPLOOKUP(((kobj_t)bus)->ops,ofw_bus_get_compat); - return ((ofw_bus_get_compat_t *) _m)(bus, dev); + rc = ((ofw_bus_get_compat_t *) _m)(bus, dev); + return (rc); } /** @brief Unique descriptor for the OFW_BUS_GET_MODEL() method */ @@ -58,8 +62,10 @@ typedef const char * ofw_bus_get_model_t(device_t bus, device_t dev); static __inline const char * OFW_BUS_GET_MODEL(device_t bus, device_t dev) { kobjop_t _m; + const char * rc; KOBJOPLOOKUP(((kobj_t)bus)->ops,ofw_bus_get_model); - return ((ofw_bus_get_model_t *) _m)(bus, dev); + rc = ((ofw_bus_get_model_t *) _m)(bus, dev); + return (rc); } /** @brief Unique descriptor for the OFW_BUS_GET_NAME() method */ @@ -70,8 +76,10 @@ typedef const char * ofw_bus_get_name_t(device_t bus, device_t dev); static __inline const char * OFW_BUS_GET_NAME(device_t bus, device_t dev) { kobjop_t _m; + const char * rc; KOBJOPLOOKUP(((kobj_t)bus)->ops,ofw_bus_get_name); - return ((ofw_bus_get_name_t *) _m)(bus, dev); + rc = ((ofw_bus_get_name_t *) _m)(bus, dev); + return (rc); } /** @brief Unique descriptor for the OFW_BUS_GET_NODE() method */ @@ -82,8 +90,10 @@ typedef phandle_t ofw_bus_get_node_t(device_t bus, device_t dev); static __inline phandle_t OFW_BUS_GET_NODE(device_t bus, device_t dev) { kobjop_t _m; + phandle_t rc; KOBJOPLOOKUP(((kobj_t)bus)->ops,ofw_bus_get_node); - return ((ofw_bus_get_node_t *) _m)(bus, dev); + rc = ((ofw_bus_get_node_t *) _m)(bus, dev); + return (rc); } /** @brief Unique descriptor for the OFW_BUS_GET_TYPE() method */ @@ -94,8 +104,10 @@ typedef const char * ofw_bus_get_type_t(device_t bus, device_t dev); static __inline const char * OFW_BUS_GET_TYPE(device_t bus, device_t dev) { kobjop_t _m; + const char * rc; KOBJOPLOOKUP(((kobj_t)bus)->ops,ofw_bus_get_type); - return ((ofw_bus_get_type_t *) _m)(bus, dev); + rc = ((ofw_bus_get_type_t *) _m)(bus, dev); + return (rc); } /** @brief Unique descriptor for the OFW_BUS_MAP_INTR() method */ @@ -109,8 +121,10 @@ static __inline int OFW_BUS_MAP_INTR(device_t bus, device_t dev, pcell_t *interrupt) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)bus)->ops,ofw_bus_map_intr); - return ((ofw_bus_map_intr_t *) _m)(bus, dev, iparent, icells, interrupt); + rc = ((ofw_bus_map_intr_t *) _m)(bus, dev, iparent, icells, interrupt); + return (rc); } #endif /* _ofw_bus_if_h_ */ diff --git a/rtemsbsd/include/rtems/bsd/local/ofw_if.h b/rtemsbsd/include/rtems/bsd/local/ofw_if.h index 1bf051b2..31ef3eef 100644 --- a/rtemsbsd/include/rtems/bsd/local/ofw_if.h +++ b/rtemsbsd/include/rtems/bsd/local/ofw_if.h @@ -33,8 +33,10 @@ typedef int ofw_init_t(ofw_t _ofw, void *_cookie); static __inline int OFW_INIT(ofw_t _ofw, void *_cookie) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_ofw)->ops,ofw_init); - return ((ofw_init_t *) _m)(_ofw, _cookie); + rc = ((ofw_init_t *) _m)(_ofw, _cookie); + return (rc); } /** @brief Unique descriptor for the OFW_PEER() method */ @@ -50,8 +52,10 @@ typedef phandle_t ofw_peer_t(ofw_t _ofw, phandle_t _node); static __inline phandle_t OFW_PEER(ofw_t _ofw, phandle_t _node) { kobjop_t _m; + phandle_t rc; KOBJOPLOOKUP(((kobj_t)_ofw)->ops,ofw_peer); - return ((ofw_peer_t *) _m)(_ofw, _node); + rc = ((ofw_peer_t *) _m)(_ofw, _node); + return (rc); } /** @brief Unique descriptor for the OFW_PARENT() method */ @@ -67,8 +71,10 @@ typedef phandle_t ofw_parent_t(ofw_t _ofw, phandle_t _node); static __inline phandle_t OFW_PARENT(ofw_t _ofw, phandle_t _node) { kobjop_t _m; + phandle_t rc; KOBJOPLOOKUP(((kobj_t)_ofw)->ops,ofw_parent); - return ((ofw_parent_t *) _m)(_ofw, _node); + rc = ((ofw_parent_t *) _m)(_ofw, _node); + return (rc); } /** @brief Unique descriptor for the OFW_CHILD() method */ @@ -84,8 +90,10 @@ typedef phandle_t ofw_child_t(ofw_t _ofw, phandle_t _node); static __inline phandle_t OFW_CHILD(ofw_t _ofw, phandle_t _node) { kobjop_t _m; + phandle_t rc; KOBJOPLOOKUP(((kobj_t)_ofw)->ops,ofw_child); - return ((ofw_child_t *) _m)(_ofw, _node); + rc = ((ofw_child_t *) _m)(_ofw, _node); + return (rc); } /** @brief Unique descriptor for the OFW_INSTANCE_TO_PACKAGE() method */ @@ -101,8 +109,10 @@ typedef phandle_t ofw_instance_to_package_t(ofw_t _ofw, ihandle_t _handle); static __inline phandle_t OFW_INSTANCE_TO_PACKAGE(ofw_t _ofw, ihandle_t _handle) { kobjop_t _m; + phandle_t rc; KOBJOPLOOKUP(((kobj_t)_ofw)->ops,ofw_instance_to_package); - return ((ofw_instance_to_package_t *) _m)(_ofw, _handle); + rc = ((ofw_instance_to_package_t *) _m)(_ofw, _handle); + return (rc); } /** @brief Unique descriptor for the OFW_GETPROPLEN() method */ @@ -121,8 +131,10 @@ static __inline ssize_t OFW_GETPROPLEN(ofw_t _ofw, phandle_t _node, const char *_prop) { kobjop_t _m; + ssize_t rc; KOBJOPLOOKUP(((kobj_t)_ofw)->ops,ofw_getproplen); - return ((ofw_getproplen_t *) _m)(_ofw, _node, _prop); + rc = ((ofw_getproplen_t *) _m)(_ofw, _node, _prop); + return (rc); } /** @brief Unique descriptor for the OFW_GETPROP() method */ @@ -143,8 +155,10 @@ static __inline ssize_t OFW_GETPROP(ofw_t _ofw, phandle_t _node, const char *_prop, void *_buf, size_t _size) { kobjop_t _m; + ssize_t rc; KOBJOPLOOKUP(((kobj_t)_ofw)->ops,ofw_getprop); - return ((ofw_getprop_t *) _m)(_ofw, _node, _prop, _buf, _size); + rc = ((ofw_getprop_t *) _m)(_ofw, _node, _prop, _buf, _size); + return (rc); } /** @brief Unique descriptor for the OFW_NEXTPROP() method */ @@ -165,8 +179,10 @@ static __inline int OFW_NEXTPROP(ofw_t _ofw, phandle_t _node, const char *_prop, char *_buf, size_t _size) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_ofw)->ops,ofw_nextprop); - return ((ofw_nextprop_t *) _m)(_ofw, _node, _prop, _buf, _size); + rc = ((ofw_nextprop_t *) _m)(_ofw, _node, _prop, _buf, _size); + return (rc); } /** @brief Unique descriptor for the OFW_SETPROP() method */ @@ -187,8 +203,10 @@ static __inline int OFW_SETPROP(ofw_t _ofw, phandle_t _node, const char *_prop, const void *_buf, size_t _size) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_ofw)->ops,ofw_setprop); - return ((ofw_setprop_t *) _m)(_ofw, _node, _prop, _buf, _size); + rc = ((ofw_setprop_t *) _m)(_ofw, _node, _prop, _buf, _size); + return (rc); } /** @brief Unique descriptor for the OFW_CANON() method */ @@ -208,8 +226,10 @@ static __inline ssize_t OFW_CANON(ofw_t _ofw, const char *_path, char *_buf, size_t _size) { kobjop_t _m; + ssize_t rc; KOBJOPLOOKUP(((kobj_t)_ofw)->ops,ofw_canon); - return ((ofw_canon_t *) _m)(_ofw, _path, _buf, _size); + rc = ((ofw_canon_t *) _m)(_ofw, _path, _buf, _size); + return (rc); } /** @brief Unique descriptor for the OFW_FINDDEVICE() method */ @@ -225,8 +245,10 @@ typedef phandle_t ofw_finddevice_t(ofw_t _ofw, const char *_path); static __inline phandle_t OFW_FINDDEVICE(ofw_t _ofw, const char *_path) { kobjop_t _m; + phandle_t rc; KOBJOPLOOKUP(((kobj_t)_ofw)->ops,ofw_finddevice); - return ((ofw_finddevice_t *) _m)(_ofw, _path); + rc = ((ofw_finddevice_t *) _m)(_ofw, _path); + return (rc); } /** @brief Unique descriptor for the OFW_INSTANCE_TO_PATH() method */ @@ -246,8 +268,10 @@ static __inline ssize_t OFW_INSTANCE_TO_PATH(ofw_t _ofw, ihandle_t _handle, char *_path, size_t _size) { kobjop_t _m; + ssize_t rc; KOBJOPLOOKUP(((kobj_t)_ofw)->ops,ofw_instance_to_path); - return ((ofw_instance_to_path_t *) _m)(_ofw, _handle, _path, _size); + rc = ((ofw_instance_to_path_t *) _m)(_ofw, _handle, _path, _size); + return (rc); } /** @brief Unique descriptor for the OFW_PACKAGE_TO_PATH() method */ @@ -267,8 +291,10 @@ static __inline ssize_t OFW_PACKAGE_TO_PATH(ofw_t _ofw, phandle_t _node, char *_path, size_t _size) { kobjop_t _m; + ssize_t rc; KOBJOPLOOKUP(((kobj_t)_ofw)->ops,ofw_package_to_path); - return ((ofw_package_to_path_t *) _m)(_ofw, _node, _path, _size); + rc = ((ofw_package_to_path_t *) _m)(_ofw, _node, _path, _size); + return (rc); } /** @brief Unique descriptor for the OFW_TEST() method */ @@ -284,8 +310,10 @@ typedef int ofw_test_t(ofw_t _ofw, const char *_name); static __inline int OFW_TEST(ofw_t _ofw, const char *_name) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_ofw)->ops,ofw_test); - return ((ofw_test_t *) _m)(_ofw, _name); + rc = ((ofw_test_t *) _m)(_ofw, _name); + return (rc); } /** @brief Unique descriptor for the OFW_CALL_METHOD() method */ @@ -309,8 +337,10 @@ static __inline int OFW_CALL_METHOD(ofw_t _ofw, ihandle_t _instance, int _nreturns, cell_t *_args_and_returns) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_ofw)->ops,ofw_call_method); - return ((ofw_call_method_t *) _m)(_ofw, _instance, _method, _nargs, _nreturns, _args_and_returns); + rc = ((ofw_call_method_t *) _m)(_ofw, _instance, _method, _nargs, _nreturns, _args_and_returns); + return (rc); } /** @brief Unique descriptor for the OFW_INTERPRET() method */ @@ -330,8 +360,10 @@ static __inline int OFW_INTERPRET(ofw_t _ofw, const char *_cmd, int _nreturns, cell_t *_returns) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_ofw)->ops,ofw_interpret); - return ((ofw_interpret_t *) _m)(_ofw, _cmd, _nreturns, _returns); + rc = ((ofw_interpret_t *) _m)(_ofw, _cmd, _nreturns, _returns); + return (rc); } /** @brief Unique descriptor for the OFW_OPEN() method */ @@ -347,8 +379,10 @@ typedef ihandle_t ofw_open_t(ofw_t _ofw, const char *_path); static __inline ihandle_t OFW_OPEN(ofw_t _ofw, const char *_path) { kobjop_t _m; + ihandle_t rc; KOBJOPLOOKUP(((kobj_t)_ofw)->ops,ofw_open); - return ((ofw_open_t *) _m)(_ofw, _path); + rc = ((ofw_open_t *) _m)(_ofw, _path); + return (rc); } /** @brief Unique descriptor for the OFW_CLOSE() method */ @@ -385,8 +419,10 @@ static __inline ssize_t OFW_READ(ofw_t _ofw, ihandle_t _instance, void *_buf, size_t size) { kobjop_t _m; + ssize_t rc; KOBJOPLOOKUP(((kobj_t)_ofw)->ops,ofw_read); - return ((ofw_read_t *) _m)(_ofw, _instance, _buf, size); + rc = ((ofw_read_t *) _m)(_ofw, _instance, _buf, size); + return (rc); } /** @brief Unique descriptor for the OFW_WRITE() method */ @@ -406,8 +442,10 @@ static __inline ssize_t OFW_WRITE(ofw_t _ofw, ihandle_t _instance, const void *_buf, size_t size) { kobjop_t _m; + ssize_t rc; KOBJOPLOOKUP(((kobj_t)_ofw)->ops,ofw_write); - return ((ofw_write_t *) _m)(_ofw, _instance, _buf, size); + rc = ((ofw_write_t *) _m)(_ofw, _instance, _buf, size); + return (rc); } /** @brief Unique descriptor for the OFW_SEEK() method */ @@ -424,8 +462,10 @@ typedef int ofw_seek_t(ofw_t _ofw, ihandle_t _instance, uint64_t _off); static __inline int OFW_SEEK(ofw_t _ofw, ihandle_t _instance, uint64_t _off) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)_ofw)->ops,ofw_seek); - return ((ofw_seek_t *) _m)(_ofw, _instance, _off); + rc = ((ofw_seek_t *) _m)(_ofw, _instance, _off); + return (rc); } /** @brief Unique descriptor for the OFW_CLAIM() method */ @@ -445,8 +485,10 @@ static __inline caddr_t OFW_CLAIM(ofw_t _ofw, void *_addr, size_t _size, u_int _align) { kobjop_t _m; + caddr_t rc; KOBJOPLOOKUP(((kobj_t)_ofw)->ops,ofw_claim); - return ((ofw_claim_t *) _m)(_ofw, _addr, _size, _align); + rc = ((ofw_claim_t *) _m)(_ofw, _addr, _size, _align); + return (rc); } /** @brief Unique descriptor for the OFW_RELEASE() method */ diff --git a/rtemsbsd/include/rtems/bsd/local/pcib_if.h b/rtemsbsd/include/rtems/bsd/local/pcib_if.h index a362d74f..dc27f1cd 100644 --- a/rtemsbsd/include/rtems/bsd/local/pcib_if.h +++ b/rtemsbsd/include/rtems/bsd/local/pcib_if.h @@ -25,8 +25,10 @@ typedef int pcib_maxslots_t(device_t dev); static __inline int PCIB_MAXSLOTS(device_t dev) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)dev)->ops,pcib_maxslots); - return ((pcib_maxslots_t *) _m)(dev); + rc = ((pcib_maxslots_t *) _m)(dev); + return (rc); } /** @brief Unique descriptor for the PCIB_MAXFUNCS() method */ @@ -37,8 +39,10 @@ typedef int pcib_maxfuncs_t(device_t dev); static __inline int PCIB_MAXFUNCS(device_t dev) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)dev)->ops,pcib_maxfuncs); - return ((pcib_maxfuncs_t *) _m)(dev); + rc = ((pcib_maxfuncs_t *) _m)(dev); + return (rc); } /** @brief Unique descriptor for the PCIB_READ_CONFIG() method */ @@ -51,8 +55,10 @@ static __inline u_int32_t PCIB_READ_CONFIG(device_t dev, u_int bus, u_int slot, u_int func, u_int reg, int width) { kobjop_t _m; + u_int32_t rc; KOBJOPLOOKUP(((kobj_t)dev)->ops,pcib_read_config); - return ((pcib_read_config_t *) _m)(dev, bus, slot, func, reg, width); + rc = ((pcib_read_config_t *) _m)(dev, bus, slot, func, reg, width); + return (rc); } /** @brief Unique descriptor for the PCIB_WRITE_CONFIG() method */ @@ -79,8 +85,10 @@ typedef int pcib_route_interrupt_t(device_t pcib, device_t dev, int pin); static __inline int PCIB_ROUTE_INTERRUPT(device_t pcib, device_t dev, int pin) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)pcib)->ops,pcib_route_interrupt); - return ((pcib_route_interrupt_t *) _m)(pcib, dev, pin); + rc = ((pcib_route_interrupt_t *) _m)(pcib, dev, pin); + return (rc); } /** @brief Unique descriptor for the PCIB_ALLOC_MSI() method */ @@ -93,8 +101,10 @@ static __inline int PCIB_ALLOC_MSI(device_t pcib, device_t dev, int count, int maxcount, int *irqs) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)pcib)->ops,pcib_alloc_msi); - return ((pcib_alloc_msi_t *) _m)(pcib, dev, count, maxcount, irqs); + rc = ((pcib_alloc_msi_t *) _m)(pcib, dev, count, maxcount, irqs); + return (rc); } /** @brief Unique descriptor for the PCIB_RELEASE_MSI() method */ @@ -107,8 +117,10 @@ static __inline int PCIB_RELEASE_MSI(device_t pcib, device_t dev, int count, int *irqs) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)pcib)->ops,pcib_release_msi); - return ((pcib_release_msi_t *) _m)(pcib, dev, count, irqs); + rc = ((pcib_release_msi_t *) _m)(pcib, dev, count, irqs); + return (rc); } /** @brief Unique descriptor for the PCIB_ALLOC_MSIX() method */ @@ -119,8 +131,10 @@ typedef int pcib_alloc_msix_t(device_t pcib, device_t dev, int *irq); static __inline int PCIB_ALLOC_MSIX(device_t pcib, device_t dev, int *irq) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)pcib)->ops,pcib_alloc_msix); - return ((pcib_alloc_msix_t *) _m)(pcib, dev, irq); + rc = ((pcib_alloc_msix_t *) _m)(pcib, dev, irq); + return (rc); } /** @brief Unique descriptor for the PCIB_RELEASE_MSIX() method */ @@ -131,8 +145,10 @@ typedef int pcib_release_msix_t(device_t pcib, device_t dev, int irq); static __inline int PCIB_RELEASE_MSIX(device_t pcib, device_t dev, int irq) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)pcib)->ops,pcib_release_msix); - return ((pcib_release_msix_t *) _m)(pcib, dev, irq); + rc = ((pcib_release_msix_t *) _m)(pcib, dev, irq); + return (rc); } /** @brief Unique descriptor for the PCIB_MAP_MSI() method */ @@ -145,8 +161,10 @@ static __inline int PCIB_MAP_MSI(device_t pcib, device_t dev, int irq, uint64_t *addr, uint32_t *data) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)pcib)->ops,pcib_map_msi); - return ((pcib_map_msi_t *) _m)(pcib, dev, irq, addr, data); + rc = ((pcib_map_msi_t *) _m)(pcib, dev, irq, addr, data); + return (rc); } /** @brief Unique descriptor for the PCIB_POWER_FOR_SLEEP() method */ @@ -158,8 +176,10 @@ static __inline int PCIB_POWER_FOR_SLEEP(device_t pcib, device_t dev, int *pstate) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)pcib)->ops,pcib_power_for_sleep); - return ((pcib_power_for_sleep_t *) _m)(pcib, dev, pstate); + rc = ((pcib_power_for_sleep_t *) _m)(pcib, dev, pstate); + return (rc); } /** @brief Unique descriptor for the PCIB_GET_ID() method */ @@ -172,8 +192,10 @@ static __inline int PCIB_GET_ID(device_t pcib, device_t dev, enum pci_id_type type, uintptr_t *id) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)pcib)->ops,pcib_get_id); - return ((pcib_get_id_t *) _m)(pcib, dev, type, id); + rc = ((pcib_get_id_t *) _m)(pcib, dev, type, id); + return (rc); } /** @brief Unique descriptor for the PCIB_TRY_ENABLE_ARI() method */ @@ -184,8 +206,10 @@ typedef int pcib_try_enable_ari_t(device_t pcib, device_t dev); static __inline int PCIB_TRY_ENABLE_ARI(device_t pcib, device_t dev) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)pcib)->ops,pcib_try_enable_ari); - return ((pcib_try_enable_ari_t *) _m)(pcib, dev); + rc = ((pcib_try_enable_ari_t *) _m)(pcib, dev); + return (rc); } /** @brief Unique descriptor for the PCIB_ARI_ENABLED() method */ @@ -196,8 +220,10 @@ typedef int pcib_ari_enabled_t(device_t pcib); static __inline int PCIB_ARI_ENABLED(device_t pcib) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)pcib)->ops,pcib_ari_enabled); - return ((pcib_ari_enabled_t *) _m)(pcib); + rc = ((pcib_ari_enabled_t *) _m)(pcib); + return (rc); } /** @brief Unique descriptor for the PCIB_DECODE_RID() method */ @@ -224,8 +250,10 @@ static __inline int PCIB_REQUEST_FEATURE(device_t pcib, device_t dev, enum pci_feature feature) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)pcib)->ops,pcib_request_feature); - return ((pcib_request_feature_t *) _m)(pcib, dev, feature); + rc = ((pcib_request_feature_t *) _m)(pcib, dev, feature); + return (rc); } #endif /* _pcib_if_h_ */ diff --git a/rtemsbsd/include/rtems/bsd/local/usb_if.h b/rtemsbsd/include/rtems/bsd/local/usb_if.h index 1c5b9199..02317bff 100644 --- a/rtemsbsd/include/rtems/bsd/local/usb_if.h +++ b/rtemsbsd/include/rtems/bsd/local/usb_if.h @@ -24,8 +24,10 @@ static __inline int USB_HANDLE_REQUEST(device_t dev, const void *req, /* pointer to the device request */ void **pptr, /* data pointer */ uint16_t *plen, /* maximum transfer length */ uint16_t offset, /* data offset */ uint8_t *pstate) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)dev)->ops,usb_handle_request); - return ((usb_handle_request_t *) _m)(dev, req, pptr, plen, offset, pstate); + rc = ((usb_handle_request_t *) _m)(dev, req, pptr, plen, offset, pstate); + return (rc); } /** @brief Unique descriptor for the USB_TAKE_CONTROLLER() method */ @@ -36,8 +38,10 @@ typedef int usb_take_controller_t(device_t dev); static __inline int USB_TAKE_CONTROLLER(device_t dev) { kobjop_t _m; + int rc; KOBJOPLOOKUP(((kobj_t)dev)->ops,usb_take_controller); - return ((usb_take_controller_t *) _m)(dev); + rc = ((usb_take_controller_t *) _m)(dev); + return (rc); } #endif /* _usb_if_h_ */ diff --git a/rtemsbsd/local/bus_if.c b/rtemsbsd/local/bus_if.c index 5d34c6da..4b679f43 100644 --- a/rtemsbsd/local/bus_if.c +++ b/rtemsbsd/local/bus_if.c @@ -119,6 +119,14 @@ struct kobjop_desc bus_teardown_intr_desc = { 0, { &bus_teardown_intr_desc, (kobjop_t)kobj_error_method } }; +struct kobjop_desc bus_suspend_intr_desc = { + 0, { &bus_suspend_intr_desc, (kobjop_t)bus_generic_suspend_intr } +}; + +struct kobjop_desc bus_resume_intr_desc = { + 0, { &bus_resume_intr_desc, (kobjop_t)bus_generic_resume_intr } +}; + struct kobjop_desc bus_set_resource_desc = { 0, { &bus_set_resource_desc, (kobjop_t)kobj_error_method } }; |