/Linux-v5.15/kernel/irq/ |
D | irqdomain.c | 28 static void irq_domain_check_hierarchy(struct irq_domain *domain); 59 * identifying an irq domain 62 * @name: Optional user provided domain name 71 * domain struct. 133 * @ops: domain callbacks 137 * Returns pointer to IRQ domain, or NULL on failure. 145 struct irq_domain *domain; in __irq_domain_add() local 153 domain = kzalloc_node(struct_size(domain, revmap, size), in __irq_domain_add() 155 if (!domain) in __irq_domain_add() 164 domain->fwnode = fwnode; in __irq_domain_add() [all …]
|
D | msi.c | 215 static void msi_check_level(struct irq_domain *domain, struct msi_msg *msg) in msi_check_level() argument 217 struct msi_domain_info *info = domain->host_data; in msi_check_level() 249 msi_check_level(irq_data->domain, msg); in msi_domain_set_affinity() 256 static int msi_domain_activate(struct irq_domain *domain, in msi_domain_activate() argument 262 msi_check_level(irq_data->domain, msg); in msi_domain_activate() 267 static void msi_domain_deactivate(struct irq_domain *domain, in msi_domain_deactivate() argument 276 static int msi_domain_alloc(struct irq_domain *domain, unsigned int virq, in msi_domain_alloc() argument 279 struct msi_domain_info *info = domain->host_data; in msi_domain_alloc() 284 if (irq_find_mapping(domain, hwirq) > 0) in msi_domain_alloc() 287 if (domain->parent) { in msi_domain_alloc() [all …]
|
/Linux-v5.15/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 …]
|
/Linux-v5.15/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() 277 nport->domain->indicator, false); in efc_cmd_nport_attach() 312 efc_domain_get_mbox_status(struct efc_domain *domain, u8 *mqe, int status) in efc_domain_get_mbox_status() argument 314 struct efc *efc = domain->efc; in efc_domain_get_mbox_status() 320 domain->indicator, status, in efc_domain_get_mbox_status() 329 efc_domain_free_resources(struct efc_domain *domain, int evt, void *data) in efc_domain_free_resources() argument 331 struct efc *efc = domain->efc; in efc_domain_free_resources() [all …]
|
/Linux-v5.15/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 …]
|
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. 31 '#power-domain-cells': 41 "^power-domain@[0-9a-f]+$": 45 in Documentation/devicetree/bindings/power/power-domain.yaml. 49 '#power-domain-cells': 51 Must be 0 for nodes representing a single PM domain and 1 for nodes 62 Power domain index. Valid values are defined in: 63 "include/dt-bindings/power/mt8167-power.h" - for MT8167 type power domain. 64 "include/dt-bindings/power/mt8173-power.h" - for MT8173 type power domain. [all …]
|
D | rockchip,power-controller.yaml | 19 generic power domain providers documented in 20 Documentation/devicetree/bindings/power/power-domain.yaml. 22 IP cores belonging to a power domain should contain a 24 power domain node representing the domain. 45 "#power-domain-cells": 56 - "#power-domain-cells" 61 "^power-domain@[0-9a-f]+$": 75 "^power-domain@[0-9a-f]+$": 89 "^power-domain@[0-9a-f]+$": 96 "#power-domain-cells": [all …]
|
/Linux-v5.15/drivers/soc/imx/ |
D | gpcv2.c | 222 struct imx_pgc_domain *domain = to_imx_pgc_domain(genpd); in imx_pgc_power_up() local 226 ret = pm_runtime_get_sync(domain->dev); in imx_pgc_power_up() 228 pm_runtime_put_noidle(domain->dev); in imx_pgc_power_up() 232 if (!IS_ERR(domain->regulator)) { in imx_pgc_power_up() 233 ret = regulator_enable(domain->regulator); in imx_pgc_power_up() 235 dev_err(domain->dev, "failed to enable regulator\n"); in imx_pgc_power_up() 240 /* Enable reset clocks for all devices in the domain */ in imx_pgc_power_up() 241 ret = clk_bulk_prepare_enable(domain->num_clks, domain->clks); in imx_pgc_power_up() 243 dev_err(domain->dev, "failed to enable reset clocks\n"); in imx_pgc_power_up() 247 if (domain->bits.pxx) { in imx_pgc_power_up() [all …]
|
D | gpc.c | 70 /* Gate off domain when powered down */ in imx6_pm_domain_power_off() 74 /* Request GPC to power down domain */ in imx6_pm_domain_power_off() 102 /* Enable reset clocks for all devices in the domain */ in imx6_pm_domain_power_on() 106 /* Gate off domain when powered down */ in imx6_pm_domain_power_on() 110 /* Request GPC to power up domain */ in imx6_pm_domain_power_on() 118 pr_err("powerup request on domain %s timed out\n", genpd->name); in imx6_pm_domain_power_on() 123 /* Disable reset clocks for all devices in the domain */ in imx6_pm_domain_power_on() 130 static int imx_pgc_get_clocks(struct device *dev, struct imx_pm_domain *domain) in imx_pgc_get_clocks() argument 143 domain->clk[i] = clk; in imx_pgc_get_clocks() 145 domain->num_clks = i; in imx_pgc_get_clocks() [all …]
|
/Linux-v5.15/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 …]
|
/Linux-v5.15/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 …]
|
D | keystone-k2l-clocks.dtsi | 49 reg-names = "control", "domain"; 51 domain-id = <0>; 60 reg-names = "control", "domain"; 61 domain-id = <4>; 70 reg-names = "control", "domain"; 71 domain-id = <9>; 80 reg-names = "control", "domain"; 81 domain-id = <10>; 90 reg-names = "control", "domain"; 91 domain-id = <11>; [all …]
|
D | keystone-clocks.dtsi | 166 reg-names = "control", "domain"; 167 domain-id = <0>; 177 reg-names = "control", "domain"; 178 domain-id = <0>; 187 reg-names = "control", "domain"; 188 domain-id = <0>; 198 reg-names = "control", "domain"; 199 domain-id = <1>; 208 reg-names = "control", "domain"; 209 domain-id = <1>; [all …]
|
/Linux-v5.15/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 …]
|
D | sched-domains.rst | 5 Each CPU has a "base" scheduling domain (struct sched_domain). The domain 7 MUST be NULL terminated, and domain structures should be per-CPU as they are 10 Each scheduling domain spans a number of CPUs (stored in the ->span field). 11 A domain's span MUST be a superset of it child's span (this restriction could 12 be relaxed if the need arises), and a base domain for CPU i MUST span at least 13 i. The top domain for each CPU will generally span all CPUs in the system 16 explicitly set. A sched domain's span means "balance process load among these 19 Each scheduling domain must have one or more CPU groups (struct sched_group) 22 domain's span. The group pointed to by the ->groups pointer MUST contain the CPU 23 to which the domain belongs. Groups may be shared among CPUs as they contain [all …]
|
/Linux-v5.15/include/linux/ |
D | iommu.h | 59 /* Domain feature flags */ 61 #define __IOMMU_DOMAIN_DMA_API (1U << 1) /* Domain for use in DMA-API 63 #define __IOMMU_DOMAIN_PT (1U << 2) /* Domain is identity mapped */ 67 * This are the possible domain-types 99 static inline bool iommu_is_dma_domain(struct iommu_domain *domain) in iommu_is_dma_domain() argument 101 return domain->type & __IOMMU_DOMAIN_DMA_API; in iommu_is_dma_domain() 147 * @IOMMU_DEV_FEAT_AUX: Auxiliary domain feature 196 * @domain_alloc: allocate iommu domain 197 * @domain_free: free iommu domain 198 * @attach_dev: attach device to an iommu domain [all …]
|
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 69 * different purposes (for example one domain is for PCI/MSI, and the 137 * @name: Name of interrupt domain 182 /* Irq domain flags */ 184 /* Irq domain is hierarchical */ [all …]
|
/Linux-v5.15/net/netlabel/ |
D | netlabel_domainhash.c | 3 * NetLabel Domain Hash Table 5 * This file manages the domain hash table that NetLabel uses to determine 6 * which network labeling protocol to use for a given domain. The NetLabel 40 /* Domain hash table */ 51 * Domain Hash Table Helper Functions 55 * netlbl_domhsh_free_entry - Frees a domain hash table entry 90 kfree(ptr->domain); in netlbl_domhsh_free_entry() 95 * netlbl_domhsh_hash - Hashing function for the domain hash table 96 * @key: the domain name to hash 99 * This is the hashing function for the domain hash table, it returns the [all …]
|
/Linux-v5.15/drivers/iommu/ |
D | ipmmu-vmsa.c | 208 static u32 ipmmu_ctx_read_root(struct ipmmu_vmsa_domain *domain, in ipmmu_ctx_read_root() argument 211 return ipmmu_ctx_read(domain->mmu->root, domain->context_id, reg); in ipmmu_ctx_read_root() 214 static void ipmmu_ctx_write_root(struct ipmmu_vmsa_domain *domain, in ipmmu_ctx_write_root() argument 217 ipmmu_ctx_write(domain->mmu->root, domain->context_id, reg, data); in ipmmu_ctx_write_root() 220 static void ipmmu_ctx_write_all(struct ipmmu_vmsa_domain *domain, in ipmmu_ctx_write_all() argument 223 if (domain->mmu != domain->mmu->root) in ipmmu_ctx_write_all() 224 ipmmu_ctx_write(domain->mmu, domain->context_id, reg, data); in ipmmu_ctx_write_all() 226 ipmmu_ctx_write(domain->mmu->root, domain->context_id, reg, data); in ipmmu_ctx_write_all() 251 static void ipmmu_tlb_sync(struct ipmmu_vmsa_domain *domain) in ipmmu_tlb_sync() argument 255 while (ipmmu_ctx_read_root(domain, IMCTR) & IMCTR_FLUSH) { in ipmmu_tlb_sync() [all …]
|
/Linux-v5.15/include/linux/sched/ |
D | sd_flags.h | 13 * SHARED_CHILD: These flags are meant to be set from the base domain upwards. 14 * If a domain has this flag set, all of its children should have it set. This 16 * domain share the same resource), or because they are tied to a scheduling 20 * In those cases it doesn't make sense to have the flag set for a domain but 26 * SHARED_PARENT: These flags are meant to be set from the highest domain 27 * downwards. If a domain has this flag set, all of its parents should have it 29 * certain level (e.g. domain starts spanning CPUs outside of the base CPU's 38 * NEEDS_GROUPS: These flags are only relevant if the domain they are set on has 48 * SHARED_CHILD: Set from the base domain up to cpuset.sched_relax_domain_level. 56 * SHARED_CHILD: Set from the base domain up to the NUMA reclaim level. [all …]
|
/Linux-v5.15/drivers/dca/ |
D | dca-core.c | 44 struct dca_domain *domain; in dca_allocate_domain() local 46 domain = kzalloc(sizeof(*domain), GFP_NOWAIT); in dca_allocate_domain() 47 if (!domain) in dca_allocate_domain() 50 INIT_LIST_HEAD(&domain->dca_providers); in dca_allocate_domain() 51 domain->pci_rc = rc; in dca_allocate_domain() 53 return domain; in dca_allocate_domain() 56 static void dca_free_domain(struct dca_domain *domain) in dca_free_domain() argument 58 list_del(&domain->node); in dca_free_domain() 59 kfree(domain); in dca_free_domain() 81 struct dca_domain *domain; in unregister_dca_providers() local [all …]
|
/Linux-v5.15/include/trace/events/ |
D | kyber.h | 16 TP_PROTO(dev_t dev, const char *domain, const char *type, 20 TP_ARGS(dev, domain, type, percentile, numerator, denominator, samples), 24 __array( char, domain, DOMAIN_LEN ) 34 strlcpy(__entry->domain, domain, sizeof(__entry->domain)); 43 MAJOR(__entry->dev), MINOR(__entry->dev), __entry->domain, 50 TP_PROTO(dev_t dev, const char *domain, unsigned int depth), 52 TP_ARGS(dev, domain, depth), 56 __array( char, domain, DOMAIN_LEN ) 62 strlcpy(__entry->domain, domain, sizeof(__entry->domain)); 67 MAJOR(__entry->dev), MINOR(__entry->dev), __entry->domain, [all …]
|
/Linux-v5.15/Documentation/devicetree/bindings/dvfs/ |
D | performance-domain.yaml | 4 $id: http://devicetree.org/schemas/dvfs/performance-domain.yaml# 14 CPUs that run in the same performance domain. Performance domains must not 15 be confused with power domains. A performance domain is defined by a set 17 performance domain, there is a single point of control that affects all the 18 devices in the domain, making it impossible to set the performance level of 19 an individual device in the domain independently from other devices in 20 that domain. For example, a set of CPUs that share a voltage domain, and 22 domain. 24 This device tree binding can be used to bind performance domain consumer 25 devices with their performance domains provided by performance domain [all …]
|
/Linux-v5.15/drivers/soc/dove/ |
D | pmu.c | 131 * This deals with the "old" Marvell sequence of bringing a power domain 143 static int pmu_domain_power_off(struct generic_pm_domain *domain) in pmu_domain_power_off() argument 145 struct pmu_domain *pmu_dom = to_pmu_domain(domain); in pmu_domain_power_off() 177 static int pmu_domain_power_on(struct generic_pm_domain *domain) in pmu_domain_power_on() argument 179 struct pmu_domain *pmu_dom = to_pmu_domain(domain); in pmu_domain_power_on() 211 static void __pmu_domain_register(struct pmu_domain *domain, in __pmu_domain_register() argument 214 unsigned int val = readl_relaxed(domain->pmu->pmu_base + PMU_PWR); in __pmu_domain_register() 216 domain->base.power_off = pmu_domain_power_off; in __pmu_domain_register() 217 domain->base.power_on = pmu_domain_power_on; in __pmu_domain_register() 219 pm_genpd_init(&domain->base, NULL, !(val & domain->pwr_mask)); in __pmu_domain_register() [all …]
|