/linux-6.8/Documentation/i2c/ |
D | i2c-topology.rst | 6 than a straight-forward I2C bus with one adapter and one or more devices. 23 each adapter has a parent adapter (except the root adapter) and zero or 25 I2C transfers, and all adapters with a parent are part of an "i2c-mux" 40 mux-locked or parent-locked muxes. 43 Mux-locked muxes 44 ---------------- 46 Mux-locked muxes does not lock the entire parent adapter during the 47 full select-transfer-deselect transaction, only the muxes on the parent 48 adapter are locked. Mux-locked muxes are mostly interesting if the 50 their tasks. Since the parent adapter is not fully locked during the [all …]
|
/linux-6.8/Documentation/filesystems/ |
D | directory-locking.rst | 7 kinds of locks - per-inode (->i_rwsem) and per-filesystem 8 (->s_vfs_rename_mutex). 10 When taking the i_rwsem on multiple non-directory objects, we 30 * lock the parent (exclusive) 36 * lock the parent (exclusive) 40 5. rename that is _not_ cross-directory. Locking rules: 42 * lock the parent (exclusive) 44 * decide which of the source and target need to be locked. 45 The source needs to be locked if it's a non-directory, target - if it's 46 a non-directory or about to be removed. [all …]
|
/linux-6.8/Documentation/devicetree/bindings/i2c/ |
D | i2c-mux-gpmux.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/i2c/i2c-mux-gpmux.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Peter Rosin <peda@axentia.se> 16 .-----. .-----. 18 .------------. '-----' '-----' 20 | | .--------+--------' 21 | .------. | .------+ child bus A, on MUX value set to 0 22 | | I2C |-|--| Mux | [all …]
|
/linux-6.8/Documentation/netlink/specs/ |
D | dpll.yaml | 1 # SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) 8 - 16 - 20 - 23 render-max: true 24 - 26 name: lock-status 31 - 34 dpll was not yet locked to any valid input (or forced by setting 37 - [all …]
|
/linux-6.8/drivers/i2c/ |
D | i2c-mux.c | 4 * Copyright (c) 2008-2009 Rodolfo Giometti <giometti@linux.it> 5 * Copyright (c) 2008-2009 Eurotech S.p.A. <info@eurotech.it> 6 * Copyright (c) 2009-2010 NSN GmbH & Co KG <michael.lawnick.ext@nsn.com> 10 * Supports multi-level mux'ing (mux behind a mux). 13 * i2c-virt.c from Kumar Gala <galak@kernel.crashing.org> 14 * i2c-virtual.c from Ken Harrenstien, Copyright (c) 2004 Google, Inc. 15 * i2c-virtual.c from Brian Kuschak <bkuschak@yahoo.com> 24 #include <linux/i2c-mux.h> 42 struct i2c_mux_priv *priv = adap->algo_data; in __i2c_mux_master_xfer() 43 struct i2c_mux_core *muxc = priv->muxc; in __i2c_mux_master_xfer() [all …]
|
/linux-6.8/drivers/staging/vme_user/ |
D | vme_bridge.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 13 struct vme_bridge *parent; member 19 int locked; member 30 struct vme_bridge *parent; member 32 int locked; member 56 struct vme_dma_resource *parent; member 63 struct vme_bridge *parent; member 65 int locked; member 74 struct vme_bridge *parent; member 76 int locked; member [all …]
|
D | vme.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 24 #include <linux/dma-mapping.h> 51 switch (resource->type) { in find_bridge() 53 return list_entry(resource->entry, struct vme_master_resource, in find_bridge() 54 list)->parent; in find_bridge() 56 return list_entry(resource->entry, struct vme_slave_resource, in find_bridge() 57 list)->parent; in find_bridge() 59 return list_entry(resource->entry, struct vme_dma_resource, in find_bridge() 60 list)->parent; in find_bridge() 62 return list_entry(resource->entry, struct vme_lm_resource, in find_bridge() [all …]
|
/linux-6.8/fs/btrfs/ |
D | defrag.c | 1 // SPDX-License-Identifier: GPL-2.0 8 #include "disk-io.h" 9 #include "print-tree.h" 14 #include "delalloc-space.h" 17 #include "file-item.h" 42 * This value is different for compressed/non-compressed extents, thus 52 if (defrag1->root > defrag2->root) in __compare_inode_defrag() 54 else if (defrag1->root < defrag2->root) in __compare_inode_defrag() 55 return -1; in __compare_inode_defrag() 56 else if (defrag1->ino > defrag2->ino) in __compare_inode_defrag() [all …]
|
/linux-6.8/drivers/gpu/drm/i915/ |
D | i915_scheduler.c | 2 * SPDX-License-Identifier: MIT 47 GEM_BUG_ON(rb_first_cached(&sched_engine->queue) != in assert_priolists() 48 rb_first(&sched_engine->queue.rb_root)); in assert_priolists() 51 for (rb = rb_first_cached(&sched_engine->queue); rb; rb = rb_next(rb)) { in assert_priolists() 54 GEM_BUG_ON(p->priority > last_prio); in assert_priolists() 55 last_prio = p->priority; in assert_priolists() 63 struct rb_node **parent, *rb; in i915_sched_lookup_priolist() local 66 lockdep_assert_held(&sched_engine->lock); in i915_sched_lookup_priolist() 69 if (unlikely(sched_engine->no_priolist)) in i915_sched_lookup_priolist() 75 parent = &sched_engine->queue.rb_root.rb_node; in i915_sched_lookup_priolist() [all …]
|
/linux-6.8/drivers/clk/ti/ |
D | dpll3xxx.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * OMAP3/4 - specific DPLL control functions 5 * Copyright (C) 2009-2010 Texas Instruments, Inc. 6 * Copyright (C) 2009-2010 Nokia Corporation 46 /* _omap3_dpll_write_clken - write clken_bits arg to a DPLL's enable bits */ 52 dd = clk->dpll_data; in _omap3_dpll_write_clken() 54 v = ti_clk_ll_ops->clk_readl(&dd->control_reg); in _omap3_dpll_write_clken() 55 v &= ~dd->enable_mask; in _omap3_dpll_write_clken() 56 v |= clken_bits << __ffs(dd->enable_mask); in _omap3_dpll_write_clken() 57 ti_clk_ll_ops->clk_writel(v, &dd->control_reg); in _omap3_dpll_write_clken() [all …]
|
/linux-6.8/drivers/pci/pcie/ |
D | aspm.c | 1 // SPDX-License-Identifier: GPL-2.0 52 struct pcie_link_state *parent; /* pointer to the parent Link state */ member 104 list_for_each_entry(child, &linkbus->devices, bus_list) in pci_function_0() 105 if (PCI_FUNC(child->devfn) == 0) in pci_function_0() 123 return link->aspm_default; in policy_to_aspm_state() 139 return link->clkpm_default; in policy_to_clkpm_state() 147 struct pci_bus *linkbus = link->pdev->subordinate; in pcie_set_clkpm_nocheck() 150 list_for_each_entry(child, &linkbus->devices, bus_list) in pcie_set_clkpm_nocheck() 154 link->clkpm_enabled = !!enable; in pcie_set_clkpm_nocheck() 163 if (!link->clkpm_capable || link->clkpm_disable) in pcie_set_clkpm() [all …]
|
/linux-6.8/fs/reiserfs/ |
D | fix_node.c | 39 "vs-8005: for INSERT mode and item number of inserted item"); in old_item_num() 41 return new_num - 1; in old_item_num() 45 "vs-8010: old_item_num: mode must be M_DELETE (mode = \'%c\'", in old_item_num() 54 struct virtual_node *vn = tb->tb_vn; in create_virtual_node() 56 struct buffer_head *Sh; /* this comes from tb->S[h] */ in create_virtual_node() 58 Sh = PATH_H_PBUFFER(tb->tb_path, h); in create_virtual_node() 61 vn->vn_size = in create_virtual_node() 62 MAX_CHILD_SIZE(Sh) - B_FREE_SPACE(Sh) + tb->insert_size[h]; in create_virtual_node() 66 vn->vn_nr_item = (vn->vn_size - DC_SIZE) / (DC_SIZE + KEY_SIZE); in create_virtual_node() 71 vn->vn_nr_item = in create_virtual_node() [all …]
|
/linux-6.8/drivers/gpu/drm/ |
D | drm_privacy_screen.c | 1 // SPDX-License-Identifier: MIT 3 * Copyright (C) 2020 - 2021 Red Hat, Inc. 24 * register a privacy-screen device, which the KMS drivers can then use 25 * to implement the standard privacy-screen properties, see 28 * KMS drivers using a privacy-screen class device are advised to use the 45 * drm_privacy_screen_lookup_add - add an entry to the static privacy-screen 49 * Add an entry to the static privacy-screen lookup list. Note the 51 * gets added to a list owned by the privacy-screen core. So the passed in 52 * &struct drm_privacy_screen_lookup must not be free-ed until it is removed 58 list_add(&lookup->list, &drm_privacy_screen_lookup_list); in drm_privacy_screen_lookup_add() [all …]
|
D | drm_vma_manager.c | 1 // SPDX-License-Identifier: GPL-2.0 OR MIT 3 * Copyright (c) 2006-2009 VMware, Inc., Palo Alto, CA., USA 39 * The vma-manager is responsible to map arbitrary driver-dependent memory 40 * regions into the linear user address-space. It provides offsets to the 41 * caller which can then be used on the address_space of the drm-device. It 43 * confuse mm-core by inconsistent fake vm_pgoff fields. 45 * only be used to manage mappings into linear user-space VMs. 48 * optimized for alloc/free calls, not lookups. Hence, we use an rb-tree to 52 * Otherwise, mm-core will be unable to tear down memory mappings as the VM will 55 * This offset manager works on page-based addresses. That is, every argument [all …]
|
/linux-6.8/drivers/net/ethernet/netronome/nfp/nfpcore/ |
D | nfp_cppcore.c | 1 // SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 /* Copyright (C) 2015-2018 Netronome Systems, Inc. */ 6 * Provides low-level access to the NFP's internal CPP bus 39 * struct nfp_cpp - main nfpcore device structure 40 * Following fields are read-only after probe() exits or netdevs are spawned. 42 * @op: low-level implementation ops 43 * @priv: private data of the low-level implementation 115 if (tmp->cpp_id > res->cpp_id) in __resource_add() 118 if (tmp->cpp_id == res->cpp_id && tmp->start > res->start) in __resource_add() 122 list_add_tail(&res->list, pos); in __resource_add() [all …]
|
/linux-6.8/drivers/gpu/drm/xe/ |
D | xe_pt.c | 1 // SPDX-License-Identifier: MIT 23 /** @children: Array of page-table child nodes */ 28 #define xe_pt_set_addr(__xe_pt, __addr) ((__xe_pt)->addr = (__addr)) 29 #define xe_pt_addr(__xe_pt) ((__xe_pt)->addr) 38 #define XE_PT_HIGHEST_LEVEL (ARRAY_SIZE(xe_normal_pt_shifts) - 1) 47 return container_of(pt_dir->children[index], struct xe_pt, base); in xe_pt_entry() 54 u16 pat_index = xe->pat.idx[XE_CACHE_WB]; in __xe_pt_empty_pte() 55 u8 id = tile->id; in __xe_pt_empty_pte() 61 return vm->pt_ops->pde_encode_bo(vm->scratch_pt[id][level - 1]->bo, in __xe_pt_empty_pte() 64 return vm->pt_ops->pte_encode_addr(xe, 0, pat_index, level, IS_DGFX(xe), 0) | in __xe_pt_empty_pte() [all …]
|
/linux-6.8/arch/x86/kernel/cpu/resctrl/ |
D | internal.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 31 #define MBM_CNTR_WIDTH_OFFSET_MAX (62 - MBM_CNTR_WIDTH_BASE) 39 /* Non-Temporal Writes to Local Memory */ 42 /* Non-Temporal Writes to Remote Memory */ 67 struct kernfs_fs_context *kfc = fc->fs_private; in rdt_fc2context() 76 * struct mon_evt - Entry in the event list of a resource 80 * @list: entry in &rdt_resource->evt_list 90 * union mon_data_bits - Monitoring details for each event file 129 * enum rdtgrp_mode - Mode of a RDT resource group 132 * @RDT_MODE_PSEUDO_LOCKSETUP: Resource group will be used for Pseudo-Locking [all …]
|
/linux-6.8/Documentation/driver-api/mmc/ |
D | mmc-dev-parts.rst | 10 parent /dev/mmcblkX. 21 To enable write access to /dev/mmcblkXbootY, disable the forced read-only 26 To re-enable read-only access:: 30 The boot partitions can also be locked read only until the next power on, 37 feature has been disabled on the card, the file will be read-only. 39 The boot partitions can also be locked permanently, but this feature is
|
/linux-6.8/net/sunrpc/ |
D | sysfs.c | 1 // SPDX-License-Identifier: GPL-2.0 21 kfree(addr->addr); in free_xprt_addr() 47 struct kobject *parent) in rpc_sysfs_object_alloc() argument 53 kobj->kset = kset; in rpc_sysfs_object_alloc() 55 parent, "%s", name) == 0) in rpc_sysfs_object_alloc() 68 return xprt_get(x->xprt); in rpc_sysfs_xprt_kobj_get_xprt() 77 return xprt_switch_get(x->xprt_switch); in rpc_sysfs_xprt_kobj_get_xprt_switch() 86 return xprt_switch_get(x->xprt_switch); in rpc_sysfs_xprt_switch_kobj_get_xprt() 100 ret = sprintf(buf, "%s\n", xprt->address_strings[RPC_DISPLAY_ADDR]); in rpc_sysfs_xprt_dstaddr_show() 116 } else if (xprt->ops->get_srcaddr) { in rpc_sysfs_xprt_srcaddr_show() [all …]
|
/linux-6.8/drivers/clocksource/ |
D | timer-tegra186.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (c) 2019-2020 NVIDIA Corporation. All rights reserved. 61 struct tegra186_timer *parent; member 72 bool locked; member 95 writel_relaxed(value, tmr->regs + offset); in tmr_writel() 100 writel_relaxed(value, wdt->regs + offset); in wdt_writel() 105 return readl_relaxed(wdt->regs + offset); in wdt_readl() 114 tmr = devm_kzalloc(tegra->dev, sizeof(*tmr), GFP_KERNEL); in tegra186_tmr_create() 116 return ERR_PTR(-ENOMEM); in tegra186_tmr_create() 118 tmr->parent = tegra; in tegra186_tmr_create() [all …]
|
/linux-6.8/drivers/phy/freescale/ |
D | phy-fsl-imx8qm-lvds-phy.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Copyright 2017-2020,2022 NXP 68 struct mixel_lvds_phy_priv *priv = dev_get_drvdata(phy->dev.parent); in mixel_lvds_phy_init() 70 mutex_lock(&priv->lock); in mixel_lvds_phy_init() 71 regmap_update_bits(priv->regmap, in mixel_lvds_phy_init() 73 mutex_unlock(&priv->lock); in mixel_lvds_phy_init() 80 struct mixel_lvds_phy_priv *priv = dev_get_drvdata(phy->dev.parent); in mixel_lvds_phy_power_on() 82 struct mixel_lvds_phy *companion = priv->phys[lvds_phy->id ^ 1]; in mixel_lvds_phy_power_on() 83 struct phy_configure_opts_lvds *cfg = &lvds_phy->cfg; in mixel_lvds_phy_power_on() 85 u32 locked; in mixel_lvds_phy_power_on() local [all …]
|
/linux-6.8/Documentation/devicetree/bindings/clock/ti/ |
D | apll.txt | 3 Binding status: Unstable - ABI compatibility may be broken in the future 6 register-mapped APLL with usually two selectable input clocks 7 (reference clock and bypass clock), with analog phase locked 10 modes (locked, low power stop etc.) APLL mostly behaves like 13 [1] Documentation/devicetree/bindings/clock/clock-bindings.txt 17 - compatible : shall be "ti,dra7-apll-clock" or "ti,omap2-apll-clock" 18 - #clock-cells : from common clock binding; shall be set to 0. 19 - clocks : link phandles of parent clocks (clk-ref and clk-bypass) 20 - reg : address and length of the register set for controlling the APLL. 22 "control" - contains the control register offset [all …]
|
D | dpll.txt | 3 Binding status: Unstable - ABI compatibility may be broken in the future 6 register-mapped DPLL with usually two selectable input clocks 7 (reference clock and bypass clock), with digital phase locked 10 modes (locked, low power stop etc.) This binding has several 11 sub-types, which effectively result in slightly different setup 14 [1] Documentation/devicetree/bindings/clock/clock-bindings.txt 17 - compatible : shall be one of: 18 "ti,omap3-dpll-clock", 19 "ti,omap3-dpll-core-clock", 20 "ti,omap3-dpll-per-clock", [all …]
|
/linux-6.8/fs/ |
D | dcache.c | 1 // SPDX-License-Identifier: GPL-2.0-only 6 * (C) 1997 Thomas Schoebel-Theuer, 13 * The dcache is a master of the icache - whenever a dcache entry 40 * dcache->d_inode->i_lock protects: 41 * - i_dentry, d_u.d_alias, d_inode of aliases 43 * - the dcache hash table 45 * - the s_roots list (see __d_drop) 46 * dentry->d_sb->s_dentry_lru_lock protects: 47 * - the dcache lru lists and counters 49 * - d_flags [all …]
|
/linux-6.8/drivers/usb/core/ |
D | usb.c | 1 // SPDX-License-Identifier: GPL-2.0 6 * (C) Copyright Johannes Erdfelt 1999-2001 11 * (C) Copyright David Brownell 2000-2004 14 * (C) Copyright Greg Kroah-Hartman 2002-2003 46 #include <linux/dma-mapping.h> 119 * usb_find_common_endpoints() -- look up common endpoint descriptors 126 * Search the alternate setting's endpoint descriptors for the first bulk-in, 127 * bulk-out, interrupt-in and interrupt-out endpoints and return them in the 133 * Return: Zero if all requested descriptors were found, or -ENXIO otherwise. 153 for (i = 0; i < alt->desc.bNumEndpoints; ++i) { in usb_find_common_endpoints() [all …]
|