/illumos-gate/usr/src/uts/common/os/ |
H A D | devcfg.c | 103 dev_info_t *dip; member 225 static void ndi_devi_exit_and_wait(dev_info_t *dip, clock_t end_time); 226 static int ndi_devi_unbind_driver(dev_info_t *dip); 228 static int i_ddi_check_retire(dev_info_t *dip); 427 i_ddi_free_node(dev_info_t *dip) in i_ddi_free_node() argument 429 struct dev_info *devi = DEVI(dip); in i_ddi_free_node() 442 if (i_ndi_dev_is_auto_assigned_node(dip)) in i_ddi_free_node() 443 impl_ddi_free_nodeid(DEVI(dip)->devi_nodeid); in i_ddi_free_node() 445 if (ndi_dev_is_persistent_node(dip)) { in i_ddi_free_node() 454 if (DEVI(dip)->devi_compat_names) in i_ddi_free_node() [all …]
|
H A D | sunpm.c | 322 #define PM_MIN_SCAN(dip) (PM_ISCPU(dip) ? pm_cpu_min_scan : \ argument 504 #define PM_MAJOR(dip) ddi_driver_major(dip) argument 505 #define PM_IS_NEXUS(dip) ((PM_MAJOR(dip) == DDI_MAJOR_T_NONE) ? 0 : \ argument 506 NEXUS_DRV(devopsp[PM_MAJOR(dip)])) 510 #define PM_INCR_NOTLOWEST(dip) { \ argument 512 if (!PM_IS_NEXUS(dip) || \ 513 (DEVI(dip)->devi_pm_flags & (PMC_DEV_THRESH|PMC_COMP_THRESH))) {\ 515 pm_ppm_notify_all_lowest(dip, PM_NOT_ALL_LOWEST);\ 518 pmf, PM_DEVICE(dip), pm_comps_notlowest)) \ 522 #define PM_DECR_NOTLOWEST(dip) { \ argument [all …]
|
H A D | ddi_intr_impl.c | 49 i_ddi_intr_devi_init(dev_info_t *dip) in i_ddi_intr_devi_init() argument 54 (void *)dip)); in i_ddi_intr_devi_init() 56 if (DEVI(dip)->devi_intr_p) in i_ddi_intr_devi_init() 59 DEVI(dip)->devi_intr_p = kmem_zalloc(sizeof (devinfo_intr_t), KM_SLEEP); in i_ddi_intr_devi_init() 61 supported_types = i_ddi_intr_get_supported_types(dip); in i_ddi_intr_devi_init() 64 i_ddi_intr_set_supported_types(dip, supported_types); in i_ddi_intr_devi_init() 68 i_ddi_intr_devi_fini(dev_info_t *dip) in i_ddi_intr_devi_fini() argument 70 devinfo_intr_t *intr_p = DEVI(dip)->devi_intr_p; in i_ddi_intr_devi_fini() 73 (void *)dip)); in i_ddi_intr_devi_fini() 75 if ((intr_p == NULL) || i_ddi_intr_get_current_nintrs(dip)) in i_ddi_intr_devi_fini() [all …]
|
H A D | ddi_hp_ndi.c | 67 ndi_hp_register(dev_info_t *dip, ddi_hp_cn_info_t *info_p) in ndi_hp_register() argument 72 (void *)dip, (void *)info_p)); in ndi_hp_register() 79 if ((dip == NULL) || (info_p == NULL)) in ndi_hp_register() 82 if (!NEXUS_HAS_HP_OP(dip)) { in ndi_hp_register() 86 ndi_devi_enter(dip); in ndi_hp_register() 88 hdlp = ddihp_cn_name_to_handle(dip, info_p->cn_name); in ndi_hp_register() 91 ndi_devi_exit(dip); in ndi_hp_register() 102 hdlp->cn_dip = dip; in ndi_hp_register() 110 "ddi_cn_getstate failed\n", (void *)dip, (void *)hdlp)); in ndi_hp_register() 118 DDIHP_LIST_APPEND(ddi_hp_cn_handle_t, (DEVI(dip)->devi_hp_hdlp), in ndi_hp_register() [all …]
|
H A D | ddi_hp_impl.c | 296 static boolean_t ddihp_check_status_prop(dev_info_t *dip); 310 dev_info_t *pdip, *dip; in ddihp_modctl() local 316 dip = e_ddi_hold_devi_by_path(path, 0); in ddihp_modctl() 318 if (dip == NULL) in ddihp_modctl() 322 "cn_name %s arg %p rval %p\n", (void *)dip, hp_op, path, cn_name, in ddihp_modctl() 325 if (!NEXUS_HAS_HP_OP(dip)) { in ddihp_modctl() 326 ddi_release_devi(dip); in ddihp_modctl() 337 pdip = ddi_get_parent(dip); in ddihp_modctl() 342 ndi_devi_enter(dip); in ddihp_modctl() 344 hdlp = ddihp_cn_name_to_handle(dip, cn_name); in ddihp_modctl() [all …]
|
/illumos-gate/usr/src/uts/common/io/pciex/ |
H A D | pcie_pwr.c | 84 static int pcie_pwr_change(dev_info_t *dip, pcie_pwr_t *pwr_p, int new); 87 static void pcie_add_comps(dev_info_t *dip, dev_info_t *cdip, 89 static void pcie_remove_comps(dev_info_t *dip, dev_info_t *cdip, 91 static void pcie_pm_subrelease(dev_info_t *dip, pcie_pwr_t *pwr_p); 92 static boolean_t pcie_is_pcie(dev_info_t *dip); 108 pcie_power(dev_info_t *dip, int component, int level) in pcie_power() argument 110 pcie_pwr_t *pwr_p = PCIE_NEXUS_PMINFO(dip); in pcie_power() 116 if (dip) in pcie_power() 128 ddi_driver_name(dip), ddi_get_instance(dip), pwr_p->pwr_func_lvl, in pcie_power() 132 ddi_driver_name(dip), ddi_get_instance(dip), level); in pcie_power() [all …]
|
/illumos-gate/usr/src/uts/common/sys/ |
H A D | ddi_impldefs.h | 87 typedef int (*ddi_cb_func_t)(dev_info_t *dip, ddi_cb_action_t action, 370 #define DEVI_IS_DEVICE_OFFLINE(dip) \ argument 371 ((DEVI(dip)->devi_state & DEVI_DEVICE_OFFLINE) == DEVI_DEVICE_OFFLINE) 373 #define DEVI_SET_DEVICE_ONLINE(dip) { \ argument 374 ASSERT(mutex_owned(&DEVI(dip)->devi_lock)); \ 375 if (DEVI(dip)->devi_state & DEVI_DEVICE_DEGRADED) { \ 376 mutex_exit(&DEVI(dip)->devi_lock); \ 377 e_ddi_undegrade_finalize(dip); \ 378 mutex_enter(&DEVI(dip)->devi_lock); \ 381 DEVI(dip)->devi_state &= ~(DEVI_DEVICE_DOWN | \ [all …]
|
H A D | epm.h | 239 #define PPM(dip) ((dev_info_t *)DEVI(dip)->devi_pm_ppm) argument 586 #define PM_GET_PM_INFO(dip) (DEVI(dip)->devi_pm_info) argument 587 #define PM_GET_PM_SCAN(dip) (DEVI(dip)->devi_pm_scan) argument 589 #define PM_NUMCMPTS(dip) (DEVI(dip)->devi_pm_num_components) argument 590 #define PM_CP(dip, comp) (&DEVI(dip)->devi_pm_components[comp]) argument 595 #define PM_ISDIRECT(dip) \ argument 596 (((pm_info_t *)PM_GET_PM_INFO(dip))->pmi_dev_pm_state & PM_DIRECT) 602 #define PM_ISBC(dip) (DEVI(dip)->devi_pm_flags & PMC_BC) argument 607 #define PM_SKBU(dip) (DEVI(dip)->devi_pm_flags & PMC_SKIP_BRINGUP) argument 612 #define PM_ISCPU(dip) (DEVI(dip)->devi_pm_flags & PMC_CPU_DEVICE) argument [all …]
|
H A D | sunndi.h | 68 ndi_prop_create_boolean(dev_t match_dev, dev_info_t *dip, char *name); 74 ndi_prop_update_int(dev_t match_dev, dev_info_t *dip, char *name, int data); 77 ndi_prop_update_int_array(dev_t match_dev, dev_info_t *dip, char *name, 81 ndi_prop_update_int64(dev_t match_dev, dev_info_t *dip, char *name, 85 ndi_prop_update_int64_array(dev_t match_dev, dev_info_t *dip, char *name, 92 ndi_prop_update_string(dev_t match_dev, dev_info_t *dip, char *name, 96 ndi_prop_update_string_array(dev_t match_dev, dev_info_t *dip, 103 ndi_prop_update_byte_array(dev_t match_dev, dev_info_t *dip, 110 ndi_prop_remove(dev_t dev, dev_info_t *dip, char *name); 113 ndi_prop_remove_all(dev_info_t *dip); [all …]
|
/illumos-gate/usr/src/uts/common/io/usb/usba/ |
H A D | usba10_calls.c | 52 dev_info_t *dip, in usba10_usb_register_client() argument 59 dip, version, dev_data, parse_level, flags)); in usba10_usb_register_client() 65 dev_info_t *dip, in usba10_usb_unregister_client() argument 68 usb_unregister_client(dip, dev_data); in usba10_usb_unregister_client() 74 dev_info_t *dip, in usba10_usb_free_descr_tree() argument 77 usb_free_descr_tree(dip, dev_data); in usba10_usb_free_descr_tree() 95 dev_info_t *dip, in usba10_usb_get_ep_data() argument 103 dip, dev_datap, interface, alternate, type, direction)); in usba10_usb_get_ep_data() 109 dev_info_t *dip, in usba10_usb_get_string_descr() argument 115 return (usb_get_string_descr(dip, langid, index, buf, buflen)); in usba10_usb_get_string_descr() [all …]
|
H A D | usbai.c | 120 usb_alloc_log_hdl(dev_info_t *dip, char *name, in usb_alloc_log_hdl() argument 129 hdl->lh_dip = dip; in usb_alloc_log_hdl() 130 if (dip && (name == NULL)) { in usb_alloc_log_hdl() 131 hdl->lh_name = (char *)ddi_driver_name(dip); in usb_alloc_log_hdl() 141 (void) usb_alloc_log_handle(dip, name, errlevel, mask, in usb_alloc_log_hdl() 152 usb_alloc_log_handle(dev_info_t *dip, char *name, in usb_alloc_log_handle() argument 156 return (usb_alloc_log_hdl(dip, name, errlevel, mask, in usb_alloc_log_handle() 218 usb_vprintf(dev_info_t *dip, int level, char *label, char *fmt, va_list ap) in usb_vprintf() argument 246 if (dip) { in usb_vprintf() 247 instance = ddi_get_instance(dip); in usb_vprintf() [all …]
|
/illumos-gate/usr/src/uts/sun4v/io/px/ |
H A D | px_lib4v.c | 91 px_lib_dev_init(dev_info_t *dip, devhandle_t *dev_hdl) in px_lib_dev_init() argument 96 px_t *px_p = DIP_TO_STATE(dip); in px_lib_dev_init() 100 DBG(DBG_ATTACH, dip, "px_lib_dev_init: dip 0x%p\n", dip); in px_lib_dev_init() 116 ret = ddi_prop_lookup_byte_array(DDI_DEV_T_ANY, dip, DDI_PROP_DONTPASS, in px_lib_dev_init() 119 DBG(DBG_ATTACH, dip, "px_lib_dev_init failed ret=%d\n", ret); in px_lib_dev_init() 136 (void) ddi_prop_update_int(makedevice(ddi_driver_major(dip), in px_lib_dev_init() 137 PCI_MINOR_NUM(ddi_get_instance(dip), PCI_DEVCTL_MINOR)), dip, in px_lib_dev_init() 140 DBG(DBG_ATTACH, dip, "px_lib_dev_init: dev_hdl 0x%llx\n", *dev_hdl); in px_lib_dev_init() 146 if (!ddi_prop_exists(DDI_DEV_T_ANY, dip, DDI_PROP_DONTPASS, in px_lib_dev_init() 148 DBG(DBG_ATTACH, dip, "px_lib_dev_init: " in px_lib_dev_init() [all …]
|
/illumos-gate/usr/src/uts/sun4/io/px/ |
H A D | px.c | 50 static int px_attach(dev_info_t *dip, ddi_attach_cmd_t cmd); 51 static int px_detach(dev_info_t *dip, ddi_detach_cmd_t cmd); 54 static int px_info(dev_info_t *dip, ddi_info_cmd_t infocmd, 57 static int px_pwr_setup(dev_info_t *dip); 58 static void px_pwr_teardown(dev_info_t *dip); 189 px_info(dev_info_t *dip, ddi_info_cmd_t infocmd, void *arg, void **result) in px_info() argument 222 px_attach(dev_info_t *dip, ddi_attach_cmd_t cmd) in px_attach() argument 225 int instance = DIP_TO_INST(dip); in px_attach() 233 DBG(DBG_ATTACH, dip, "DDI_ATTACH\n"); in px_attach() 244 ddi_driver_name(dip), instance); in px_attach() [all …]
|
H A D | px_lib.h | 37 #define DIP_TO_HANDLE(dip) ((px_t *)DIP_TO_STATE(dip))->px_dev_hdl argument 57 extern int px_lib_dev_init(dev_info_t *dip, devhandle_t *dev_hdl); 58 extern int px_lib_dev_fini(dev_info_t *dip); 59 extern int px_lib_map_vconfig(dev_info_t *dip, ddi_map_req_t *mp, 63 extern int px_lib_intr_devino_to_sysino(dev_info_t *dip, devino_t devino, 65 extern int px_lib_intr_getvalid(dev_info_t *dip, sysino_t sysino, 67 extern int px_lib_intr_setvalid(dev_info_t *dip, sysino_t sysino, 69 extern int px_lib_intr_getstate(dev_info_t *dip, sysino_t sysino, 71 extern int px_lib_intr_setstate(dev_info_t *dip, sysino_t sysino, 73 extern int px_lib_intr_gettarget(dev_info_t *dip, sysino_t sysino, [all …]
|
/illumos-gate/usr/src/uts/common/cpr/ |
H A D | cpr_driver.c | 69 cpr_suspend_devices(dev_info_t *dip) in cpr_suspend_devices() argument 74 for (; dip != NULL; dip = ddi_get_next_sibling(dip)) { in cpr_suspend_devices() 75 if (cpr_suspend_devices(ddi_get_child(dip))) in cpr_suspend_devices() 77 if (!cpr_is_real_device(dip)) in cpr_suspend_devices() 80 devi_string(dip, buf)); in cpr_suspend_devices() 81 ASSERT((DEVI(dip)->devi_cpr_flags & DCF_CPR_SUSPENDED) == 0); in cpr_suspend_devices() 84 i_cpr_save_configuration(dip); in cpr_suspend_devices() 88 if (!i_ddi_devi_attached(dip)) { in cpr_suspend_devices() 94 cpr_device == ddi_driver_major(dip))) { in cpr_suspend_devices() 96 error = devi_detach(dip, DDI_SUSPEND); in cpr_suspend_devices() [all …]
|
/illumos-gate/usr/src/uts/common/io/usb/usba10/ |
H A D | usba10.c | 79 dev_info_t *dip, in usb_register_client() argument 86 dip, version, dev_data, parse_level, flags)); in usb_register_client() 92 dev_info_t *dip, in usb_unregister_client() argument 95 usba10_usb_unregister_client(dip, dev_data); in usb_unregister_client() 101 dev_info_t *dip, in usb_free_descr_tree() argument 104 usba10_usb_free_descr_tree(dip, dev_data); in usb_free_descr_tree() 123 dev_info_t *dip, in usb_get_ep_data() argument 131 dip, dev_datap, interface, alternate, type, direction)); in usb_get_ep_data() 137 dev_info_t *dip, in usb_get_string_descr() argument 143 return (usba10_usb_get_string_descr(dip, langid, index, buf, buflen)); in usb_get_string_descr() [all …]
|
/illumos-gate/usr/src/uts/sun4u/io/px/ |
H A D | px_lib4u.c | 106 px_lib_map_regs(pxu_t *pxu_p, dev_info_t *dip) in px_lib_map_regs() argument 111 DBG(DBG_ATTACH, dip, "px_lib_map_regs: pxu_p:0x%p, dip 0x%p\n", in px_lib_map_regs() 112 pxu_p, dip); in px_lib_map_regs() 121 if (ddi_regs_map_setup(dip, reg_bank, &pxu_p->px_address[reg_bank], in px_lib_map_regs() 131 if (ddi_regs_map_setup(dip, reg_bank, &pxu_p->px_address[reg_bank], in px_lib_map_regs() 140 DBG(DBG_ATTACH, dip, "reg_bank 0x%x address 0x%p\n", in px_lib_map_regs() 148 ddi_driver_name(dip), ddi_get_instance(dip), reg_bank); in px_lib_map_regs() 179 px_lib_dev_init(dev_info_t *dip, devhandle_t *dev_hdl) in px_lib_dev_init() argument 186 px_t *px_p = DIP_TO_STATE(dip); in px_lib_dev_init() 189 DBG(DBG_ATTACH, dip, "px_lib_dev_init: dip 0x%p", dip); in px_lib_dev_init() [all …]
|
/illumos-gate/usr/src/uts/common/io/cardbus/ |
H A D | cardbus.c | 85 static int cardbus_bus_map(dev_info_t *dip, dev_info_t *rdip, 95 static void cardbus_removechild(dev_info_t *dip); 97 static int cardbus_dma_allochdl(dev_info_t *dip, dev_info_t *rdip, 100 static int cardbus_dma_freehdl(dev_info_t *dip, dev_info_t *rdip, 102 static int cardbus_dma_bindhdl(dev_info_t *dip, dev_info_t *rdip, 105 static int cardbus_dma_unbindhdl(dev_info_t *dip, dev_info_t *rdip, 107 static int cardbus_dma_flush(dev_info_t *dip, dev_info_t *rdip, 110 static int cardbus_dma_win(dev_info_t *dip, dev_info_t *rdip, 113 static int cardbus_dma_map(dev_info_t *dip, dev_info_t *rdip, 116 static int cardbus_prop_op(dev_t dev, dev_info_t *dip, dev_info_t *ch_dip, [all …]
|
H A D | cardbus_cfg.c | 122 dev_info_t *dip; member 136 dev_info_t *dip; /* Associated with the attach point */ member 156 dev_info_t *dip; /* Associated with the attach point */ member 166 static cardbus_phdl_t *cardbus_find_phdl(dev_info_t *dip); 167 static cardbus_phdl_t *cardbus_create_phdl(dev_info_t *dip); 168 static int cardbus_destroy_phdl(dev_info_t *dip); 174 static int cardbus_isa_bridge_ranges(dev_info_t *dip, cardbus_phdl_t *entry, 204 static int cardbus_update_reg_prop(dev_info_t *dip, uint32_t regvalue, 206 static int cardbus_set_standard_props(dev_info_t *parent, dev_info_t *dip, 208 static int cardbus_set_isa_props(dev_info_t *parent, dev_info_t *dip, [all …]
|
/illumos-gate/usr/src/uts/common/io/pciex/hotplug/ |
H A D | pcie_hp.c | 62 static int pcie_hp_list_occupants(dev_info_t *dip, void *arg); 63 static int pcie_hp_register_port(dev_info_t *dip, dev_info_t *pdip, 65 static int pcie_hp_register_ports_for_dev(dev_info_t *dip, int device_num); 68 static int pcie_hp_match_dev_func(dev_info_t *dip, void *hdl); 69 static boolean_t pcie_hp_match_dev(dev_info_t *dip, int dev_num); 72 static int pcie_hp_create_port_name_num(dev_info_t *dip, 74 static int pcie_hp_check_hardware_existence(dev_info_t *dip, int dev_num, 215 pcie_hp_init(dev_info_t *dip, caddr_t arg) in pcie_hp_init() argument 217 pcie_bus_t *bus_p = PCIE_DIP2BUS(dip); in pcie_hp_init() 223 ret = pciehpc_init(dip, arg); in pcie_hp_init() [all …]
|
/illumos-gate/usr/src/uts/common/contract/ |
H A D | device.c | 365 static void ct_barrier_acquire(dev_info_t *dip); 366 static void ct_barrier_release(dev_info_t *dip); 367 static int ct_barrier_held(dev_info_t *dip); 368 static int ct_barrier_empty(dev_info_t *dip); 369 static void ct_barrier_wait_for_release(dev_info_t *dip); 370 static int ct_barrier_wait_for_empty(dev_info_t *dip, int secs); 371 static void ct_barrier_decr(dev_info_t *dip); 372 static void ct_barrier_incr(dev_info_t *dip); 505 dev_info_t *dip; in ctmpl_device_set() local 560 dip = NULL; in ctmpl_device_set() [all …]
|
/illumos-gate/usr/src/lib/libdlpi/common/ |
H A D | libdlpi.c | 137 dlpi_impl_t *dip; in dlpi_open() local 155 if ((dip = calloc(1, sizeof (dlpi_impl_t))) == NULL) in dlpi_open() 159 dip->dli_timeout = DLPI_DEF_TIMEOUT; in dlpi_open() 160 dip->dli_ppa = ifsp.ifsp_ppa; in dlpi_open() 161 dip->dli_oflags = flags; in dlpi_open() 162 dip->dli_notifylistp = NULL; in dlpi_open() 163 dip->dli_note_processing = B_FALSE; in dlpi_open() 165 dip->dli_oflags |= DLPI_DEVONLY; in dlpi_open() 168 if (strlcpy(dip->dli_linkname, linkname, sizeof (dip->dli_linkname)) >= in dlpi_open() 169 sizeof (dip->dli_linkname)) { in dlpi_open() [all …]
|
/illumos-gate/usr/src/uts/intel/sys/ |
H A D | iommulib.h | 62 dev_info_t *dip, dev_info_t *rdip, ddi_dma_attr_t *attr, 66 dev_info_t *dip, dev_info_t *rdip, ddi_dma_handle_t dma_handle); 68 int (*ilops_dma_bindhdl)(iommulib_handle_t handle, dev_info_t *dip, 74 dev_info_t *dip, dev_info_t *rdip, ddi_dma_handle_t dma_handle); 76 int (*ilops_dma_sync)(iommulib_handle_t handle, dev_info_t *dip, 80 int (*ilops_dma_win)(iommulib_handle_t handle, dev_info_t *dip, 86 dev_info_t *dip, dev_info_t *rdip, ddi_dma_handle_t dma_handle, 90 dev_info_t *dip, dev_info_t *rdip, ddi_dma_handle_t dma_handle, 111 #define IOMMU_USED(dip) \ argument 112 (DEVI(dip)->devi_iommulib_handle != NULL && \ [all …]
|
/illumos-gate/usr/src/uts/common/sys/usb/usba/ |
H A D | usba10.h | 51 dev_info_t *dip, 63 dev_info_t *dip, 72 dev_info_t *dip, 76 usb_get_max_isoc_pkts(dev_info_t *dip); 79 usb_is_pm_enabled(dev_info_t *dip); 89 dev_info_t *dip, 96 dev_info_t *dip, 101 dev_info_t *dip, 124 dev_info_t *dip, 132 dev_info_t *dip, [all …]
|
/illumos-gate/usr/src/uts/common/io/ |
H A D | dma_engine.c | 81 i_dmae_init(dev_info_t *dip) in i_dmae_init() argument 92 return (d37A_init(dip)); in i_dmae_init() 105 i_dmae_acquire(dev_info_t *dip, int chnl, int (*dmae_waitfp)(), caddr_t arg) in i_dmae_acquire() argument 108 dip = dip; in i_dmae_acquire() 145 i_dmae_free(dev_info_t *dip, int chnl) in i_dmae_free() argument 148 dip = dip; in i_dmae_free() 171 i_dmae_get_best_mode(dev_info_t *dip, struct ddi_dmae_req *dmaereqp) in i_dmae_get_best_mode() argument 174 dip = dip; in i_dmae_get_best_mode() 220 i_dmae_prog(dev_info_t *dip, struct ddi_dmae_req *dmaereqp, in i_dmae_prog() argument 227 dip = dip; in i_dmae_prog() [all …]
|