| /kernel/linux/linux-6.6/drivers/vdpa/vdpa_user/ |
| D | iova_domain.c | 20 static int vduse_iotlb_add_range(struct vduse_iova_domain *domain, in vduse_iotlb_add_range() argument 35 ret = vhost_iotlb_add_range_ctx(domain->iotlb, start, last, in vduse_iotlb_add_range() 45 static void vduse_iotlb_del_range(struct vduse_iova_domain *domain, in vduse_iotlb_del_range() argument 51 while ((map = vhost_iotlb_itree_first(domain->iotlb, start, last))) { in vduse_iotlb_del_range() 55 vhost_iotlb_map_free(domain->iotlb, map); in vduse_iotlb_del_range() 59 int vduse_domain_set_map(struct vduse_iova_domain *domain, in vduse_domain_set_map() argument 67 spin_lock(&domain->iotlb_lock); in vduse_domain_set_map() 68 vduse_iotlb_del_range(domain, start, last); in vduse_domain_set_map() 73 ret = vduse_iotlb_add_range(domain, map->start, map->last, in vduse_domain_set_map() 80 spin_unlock(&domain->iotlb_lock); in vduse_domain_set_map() [all …]
|
| /kernel/linux/linux-6.6/kernel/irq/ |
| D | irqdomain.c | 28 static int irq_domain_alloc_irqs_locked(struct irq_domain *domain, int irq_base, 31 static void irq_domain_check_hierarchy(struct irq_domain *domain); 62 * identifying an irq domain 65 * @name: Optional user provided domain name 74 * domain struct. 137 struct irq_domain *domain; in __irq_domain_create() local 146 domain = kzalloc_node(struct_size(domain, revmap, size), in __irq_domain_create() 148 if (!domain) in __irq_domain_create() 157 domain->name = kstrdup(fwid->name, GFP_KERNEL); in __irq_domain_create() 158 if (!domain->name) { in __irq_domain_create() [all …]
|
| D | msi.c | 24 * @domid: ID of the domain on which management operations should be done 39 /* The maximum domain size */ 127 * @domid: The id of the interrupt domain to which the desriptor is added 168 (dev->msi.domain && in msi_ctrl_valid() 169 !dev->msi.data->__domains[ctrl->domid].domain))) in msi_ctrl_valid() 205 * @domid: Id of the domain to operate on 314 * If @dev::msi::domain is set and is a global MSI domain, copy the in msi_setup_device_data() 315 * pointer into the domain array so all code can operate on domain in msi_setup_device_data() 319 if (dev->msi.domain && !irq_domain_is_msi_parent(dev->msi.domain)) in msi_setup_device_data() 320 md->__domains[MSI_DEFAULT_DOMAIN].domain = dev->msi.domain; in msi_setup_device_data() [all …]
|
| /kernel/linux/linux-5.10/kernel/irq/ |
| D | irqdomain.c | 28 static int irq_domain_alloc_irqs_locked(struct irq_domain *domain, int irq_base, 31 static void irq_domain_check_hierarchy(struct irq_domain *domain); 53 * identifying an irq domain 56 * @name: Optional user provided domain name 65 * domain struct. 128 struct irq_domain *domain; in __irq_domain_create() local 132 domain = kzalloc_node(sizeof(*domain) + (sizeof(unsigned int) * size), in __irq_domain_create() 134 if (!domain) in __irq_domain_create() 143 domain->fwnode = fwnode; in __irq_domain_create() 144 domain->name = kstrdup(fwid->name, GFP_KERNEL); in __irq_domain_create() [all …]
|
| D | msi.c | 79 static void msi_check_level(struct irq_domain *domain, struct msi_msg *msg) in msi_check_level() argument 81 struct msi_domain_info *info = domain->host_data; in msi_check_level() 111 msi_check_level(irq_data->domain, msg); in msi_domain_set_affinity() 118 static int msi_domain_activate(struct irq_domain *domain, in msi_domain_activate() argument 124 msi_check_level(irq_data->domain, msg); in msi_domain_activate() 129 static void msi_domain_deactivate(struct irq_domain *domain, in msi_domain_deactivate() argument 138 static int msi_domain_alloc(struct irq_domain *domain, unsigned int virq, in msi_domain_alloc() argument 141 struct msi_domain_info *info = domain->host_data; in msi_domain_alloc() 146 if (irq_find_mapping(domain, hwirq) > 0) in msi_domain_alloc() 149 if (domain->parent) { in msi_domain_alloc() [all …]
|
| /kernel/linux/linux-6.6/drivers/scsi/elx/libefc/ |
| D | efc_domain.c | 8 * domain_sm Domain State Machine: States 17 struct efc_domain *domain = NULL; in efc_domain_cb() local 22 domain = data; in efc_domain_cb() 24 /* Accept domain callback events from the user driver */ in efc_domain_cb() 34 efc_log_debug(efc, "Domain found: wwn %016llX\n", fcf_wwn); in efc_domain_cb() 36 /* lookup domain, or allocate a new one */ in efc_domain_cb() 37 domain = efc->domain; in efc_domain_cb() 38 if (!domain) { in efc_domain_cb() 39 domain = efc_domain_alloc(efc, fcf_wwn); in efc_domain_cb() 40 if (!domain) { in efc_domain_cb() [all …]
|
| D | efc_cmds.c | 132 nport->indicator, nport->domain->indicator); in efc_nport_alloc_init_vpi() 207 struct efc_domain *domain, u8 *wwpn) in efc_cmd_nport_alloc() argument 227 if (domain) { in efc_cmd_nport_alloc() 237 /* domain NULL and wwpn non-NULL */ in efc_cmd_nport_alloc() 278 nport->domain->indicator, false); in efc_cmd_nport_attach() 317 efc_domain_get_mbox_status(struct efc_domain *domain, u8 *mqe, int status) in efc_domain_get_mbox_status() argument 319 struct efc *efc = domain->efc; in efc_domain_get_mbox_status() 325 domain->indicator, status, in efc_domain_get_mbox_status() 334 efc_domain_free_resources(struct efc_domain *domain, int evt, void *data) in efc_domain_free_resources() argument 336 struct efc *efc = domain->efc; in efc_domain_free_resources() [all …]
|
| /kernel/linux/linux-6.6/drivers/pmdomain/imx/ |
| D | imx93-pd.c | 38 struct imx93_power_domain *domain = to_imx93_pd(genpd); in imx93_pd_on() local 39 void __iomem *addr = domain->addr; in imx93_pd_on() 43 ret = clk_bulk_prepare_enable(domain->num_clks, domain->clks); in imx93_pd_on() 45 dev_err(domain->dev, "failed to enable clocks for domain: %s\n", genpd->name); in imx93_pd_on() 56 dev_err(domain->dev, "pd_on timeout: name: %s, stat: %x\n", genpd->name, val); in imx93_pd_on() 65 struct imx93_power_domain *domain = to_imx93_pd(genpd); in imx93_pd_off() local 66 void __iomem *addr = domain->addr; in imx93_pd_off() 78 dev_err(domain->dev, "pd_off timeout: name: %s, stat: %x\n", genpd->name, val); in imx93_pd_off() 82 clk_bulk_disable_unprepare(domain->num_clks, domain->clks); in imx93_pd_off() 89 struct imx93_power_domain *domain = platform_get_drvdata(pdev); in imx93_pd_remove() local [all …]
|
| D | gpcv2.c | 318 struct imx_pgc_domain *domain = to_imx_pgc_domain(genpd); in imx_pgc_power_up() local 322 ret = pm_runtime_get_sync(domain->dev); in imx_pgc_power_up() 324 pm_runtime_put_noidle(domain->dev); in imx_pgc_power_up() 328 if (!IS_ERR(domain->regulator)) { in imx_pgc_power_up() 329 ret = regulator_enable(domain->regulator); in imx_pgc_power_up() 331 dev_err(domain->dev, in imx_pgc_power_up() 338 reset_control_assert(domain->reset); in imx_pgc_power_up() 340 /* Enable reset clocks for all devices in the domain */ in imx_pgc_power_up() 341 ret = clk_bulk_prepare_enable(domain->num_clks, domain->clks); in imx_pgc_power_up() 343 dev_err(domain->dev, "failed to enable reset clocks\n"); in imx_pgc_power_up() [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/clock/ |
| D | fsl,imx8-acm.yaml | 64 - description: power domain of IMX_SC_R_AUDIO_CLK_0 65 - description: power domain of IMX_SC_R_AUDIO_CLK_1 66 - description: power domain of IMX_SC_R_MCLK_OUT_0 67 - description: power domain of IMX_SC_R_MCLK_OUT_1 68 - description: power domain of IMX_SC_R_AUDIO_PLL_0 69 - description: power domain of IMX_SC_R_AUDIO_PLL_1 70 - description: power domain of IMX_SC_R_ASRC_0 71 - description: power domain of IMX_SC_R_ASRC_1 72 - description: power domain of IMX_SC_R_ESAI_0 73 - description: power domain of IMX_SC_R_SAI_0 [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/power/ |
| D | power-domain.yaml | 4 $id: http://devicetree.org/schemas/power/power-domain.yaml# 19 This device tree binding can be used to bind PM domain consumer devices with 20 their PM domains provided by PM domain providers. A PM domain provider can be 23 phandle arguments (so called PM domain specifiers) of length specified by the 24 \#power-domain-cells property in the PM domain provider node. 28 pattern: "^(power-controller|power-domain)([@-].*)?$" 30 domain-idle-states: 34 power-domain provider. The idle state definitions are compatible with the 35 domain-idle-state bindings, specified in ./domain-idle-state.yaml. 37 Note that, the domain-idle-state property reflects the idle states of this [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/power/ |
| D | power-domain.yaml | 4 $id: http://devicetree.org/schemas/power/power-domain.yaml# 19 This device tree binding can be used to bind PM domain consumer devices with 20 their PM domains provided by PM domain providers. A PM domain provider can be 23 phandle arguments (so called PM domain specifiers) of length specified by the 24 \#power-domain-cells property in the PM domain provider node. 28 pattern: "^(power-controller|power-domain)([@-].*)?$" 30 domain-idle-states: 36 power-domain provider. The idle state definitions are compatible with the 37 domain-idle-state bindings, specified in ./domain-idle-state.yaml. 39 Note that, the domain-idle-state property reflects the idle states of this [all …]
|
| D | mediatek,power-controller.yaml | 17 IP cores belonging to a power domain should contain a 'power-domains' 18 property that is a phandle for SCPSYS node representing the domain. 35 '#power-domain-cells': 45 "^power-domain@[0-9a-f]+$": 46 $ref: "#/$defs/power-domain-node" 48 "^power-domain@[0-9a-f]+$": 49 $ref: "#/$defs/power-domain-node" 51 "^power-domain@[0-9a-f]+$": 52 $ref: "#/$defs/power-domain-node" 54 "^power-domain@[0-9a-f]+$": [all …]
|
| /kernel/linux/linux-5.10/drivers/soc/imx/ |
| D | gpcv2.c | 133 struct imx_pgc_domain *domain = container_of(genpd, in imx_gpc_pu_pgc_sw_pxx_req() local 139 const bool has_regulator = !IS_ERR(domain->regulator); in imx_gpc_pu_pgc_sw_pxx_req() 143 regmap_update_bits(domain->regmap, GPC_PGC_CPU_MAPPING, in imx_gpc_pu_pgc_sw_pxx_req() 144 domain->bits.map, domain->bits.map); in imx_gpc_pu_pgc_sw_pxx_req() 147 ret = regulator_enable(domain->regulator); in imx_gpc_pu_pgc_sw_pxx_req() 149 dev_err(domain->dev, "failed to enable regulator\n"); in imx_gpc_pu_pgc_sw_pxx_req() 154 /* Enable reset clocks for all devices in the domain */ in imx_gpc_pu_pgc_sw_pxx_req() 155 for (i = 0; i < domain->num_clks; i++) in imx_gpc_pu_pgc_sw_pxx_req() 156 clk_prepare_enable(domain->clk[i]); in imx_gpc_pu_pgc_sw_pxx_req() 159 regmap_update_bits(domain->regmap, GPC_PGC_CTRL(domain->pgc), in imx_gpc_pu_pgc_sw_pxx_req() [all …]
|
| /kernel/linux/linux-5.10/drivers/soc/xilinx/ |
| D | zynqmp_pm_domains.c | 3 * ZynqMP Generic PM domain support 23 /* Flag stating if PM nodes mapped to the PM domain has been requested */ 30 * @gpd: Generic power domain 31 * @node_id: PM node ID corresponding to device inside PM domain 32 * @flags: ZynqMP PM domain flags 64 * zynqmp_gpd_power_on() - Power on PM domain 65 * @domain: Generic PM domain 67 * This function is called before devices inside a PM domain are resumed, to 68 * power on PM domain. 72 static int zynqmp_gpd_power_on(struct generic_pm_domain *domain) in zynqmp_gpd_power_on() argument [all …]
|
| /kernel/linux/linux-5.10/arch/arm/boot/dts/ |
| D | keystone-k2hk-clocks.dtsi | 59 reg-names = "control", "domain"; 60 domain-id = <0>; 69 reg-names = "control", "domain"; 70 domain-id = <4>; 79 reg-names = "control", "domain"; 80 domain-id = <5>; 89 reg-names = "control", "domain"; 90 domain-id = <9>; 99 reg-names = "control", "domain"; 100 domain-id = <10>; [all …]
|
| /kernel/linux/linux-6.6/arch/arm/boot/dts/ti/keystone/ |
| D | keystone-k2hk-clocks.dtsi | 59 reg-names = "control", "domain"; 60 domain-id = <0>; 69 reg-names = "control", "domain"; 70 domain-id = <4>; 79 reg-names = "control", "domain"; 80 domain-id = <5>; 89 reg-names = "control", "domain"; 90 domain-id = <9>; 99 reg-names = "control", "domain"; 100 domain-id = <10>; [all …]
|
| /kernel/linux/linux-6.6/include/linux/ |
| D | irqdomain.h | 14 * Interrupt controller "domain" data structure. This could be defined as a 15 * irq domain controller. That is, it handles the mapping between hardware 16 * and virtual interrupt numbers for a given interrupt domain. The domain 18 * (though a domain can cover more than one PIC if they have a flat number 19 * model). It's the domain callbacks that are responsible for setting the 23 * identify the domain. In some cases, and in order to preserve source 122 * @name: Name of interrupt domain 128 * @mutex: Domain lock, hierarchical domains use root domain's lock 129 * @root: Pointer to root domain, or containing structure if non-hierarchical 141 * purposes related to the irq domain. [all …]
|
| /kernel/linux/linux-6.6/drivers/pmdomain/xilinx/ |
| D | zynqmp-pm-domains.c | 3 * ZynqMP Generic PM domain support 28 * @gpd: Generic power domain 29 * @node_id: PM node ID corresponding to device inside PM domain 30 * @requested: The PM node mapped to the PM domain has been requested 65 * zynqmp_gpd_power_on() - Power on PM domain 66 * @domain: Generic PM domain 68 * This function is called before devices inside a PM domain are resumed, to 69 * power on PM domain. 73 static int zynqmp_gpd_power_on(struct generic_pm_domain *domain) in zynqmp_gpd_power_on() argument 75 struct zynqmp_pm_domain *pd = to_zynqmp_pm_domain(domain); in zynqmp_gpd_power_on() [all …]
|
| /kernel/linux/linux-6.6/drivers/pci/msi/ |
| D | irqdomain.c | 13 struct irq_domain *domain; in pci_msi_setup_msi_irqs() local 15 domain = dev_get_msi_domain(&dev->dev); in pci_msi_setup_msi_irqs() 16 if (domain && irq_domain_is_hierarchy(domain)) in pci_msi_setup_msi_irqs() 24 struct irq_domain *domain; in pci_msi_teardown_msi_irqs() local 26 domain = dev_get_msi_domain(&dev->dev); in pci_msi_teardown_msi_irqs() 27 if (domain && irq_domain_is_hierarchy(domain)) { in pci_msi_teardown_msi_irqs() 104 * pci_msi_create_irq_domain - Create a MSI interrupt domain 106 * @info: MSI domain info 107 * @parent: Parent irq domain 109 * Updates the domain and chip ops and creates a MSI interrupt domain. [all …]
|
| /kernel/linux/linux-6.6/drivers/base/ |
| D | platform-msi.c | 52 static int platform_msi_init(struct irq_domain *domain, in platform_msi_init() argument 57 return irq_domain_set_hwirq_and_chip(domain, virq, hwirq, in platform_msi_init() 111 * platform_msi_create_irq_domain - Create a platform MSI interrupt domain 113 * @info: MSI domain info 114 * @parent: Parent irq domain 116 * Updates the domain and chip ops and creates a platform MSI 117 * interrupt domain. 120 * A domain pointer or NULL in case of failure. 126 struct irq_domain *domain; in platform_msi_create_irq_domain() local 135 domain = msi_create_irq_domain(fwnode, info, parent); in platform_msi_create_irq_domain() [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/soc/rockchip/ |
| D | power_domain.txt | 6 Required properties for power domain controller: 19 - #power-domain-cells: Number of cells in a power-domain specifier. 24 Required properties for power domain sub nodes: 25 - reg: index of the power domain, should use macros in: 26 "include/dt-bindings/power/px30-power.h" - for PX30 type power domain. 27 "include/dt-bindings/power/rk3036-power.h" - for RK3036 type power domain. 28 "include/dt-bindings/power/rk3066-power.h" - for RK3066 type power domain. 29 "include/dt-bindings/power/rk3128-power.h" - for RK3128 type power domain. 30 "include/dt-bindings/power/rk3188-power.h" - for RK3188 type power domain. 31 "include/dt-bindings/power/rk3228-power.h" - for RK3228 type power domain. [all …]
|
| /kernel/linux/linux-6.6/Documentation/scheduler/ |
| D | sched-stats.rst | 13 per-domain. Note that domains (and their associated information) will only 16 In version 14 of schedstat, there is at least one level of domain 18 domain. Domains have no particular names in this implementation, but 20 cpus on the machine, while domain0 is the most tightly focused domain, 22 are no architectures which need more than three domain levels. The first 23 field in the domain stats is a bit map indicating which cpus are affected 24 by that domain. 65 Domain statistics 67 One of these is produced per domain for each cpu described. (Note that if 71 domain<N> <cpumask> 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 3… [all …]
|
| /kernel/linux/linux-5.10/Documentation/scheduler/ |
| D | sched-stats.rst | 13 per-domain. Note that domains (and their associated information) will only 16 In version 14 of schedstat, there is at least one level of domain 18 domain. Domains have no particular names in this implementation, but 20 cpus on the machine, while domain0 is the most tightly focused domain, 22 are no architectures which need more than three domain levels. The first 23 field in the domain stats is a bit map indicating which cpus are affected 24 by that domain. 65 Domain statistics 67 One of these is produced per domain for each cpu described. (Note that if 71 domain<N> <cpumask> 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 3… [all …]
|
| /kernel/linux/linux-5.10/include/linux/ |
| D | iommu.h | 58 /* Domain feature flags */ 60 #define __IOMMU_DOMAIN_DMA_API (1U << 1) /* Domain for use in DMA-API 62 #define __IOMMU_DOMAIN_PT (1U << 2) /* Domain is identity mapped */ 65 * This are the possible domain-types 160 IOMMU_DEV_FEAT_AUX, /* Aux-domain feature */ 188 * @domain_alloc: allocate iommu domain 189 * @domain_free: free iommu domain 190 * @attach_dev: attach device to an iommu domain 191 * @detach_dev: detach device from an iommu domain 192 * @map: map a physically contiguous memory region to an iommu domain [all …]
|