/openbmc/linux/Documentation/i2c/ |
H A 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 …]
|
/openbmc/linux/Documentation/devicetree/bindings/i2c/ |
H A 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 …]
|
/openbmc/linux/Documentation/filesystems/ |
H A 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 22 3) object removal. Locking rules: caller locks parent, finds victim, 25 4) rename() that is _not_ cross-directory. Locking rules: caller locks 26 the parent and finds source and target. Then we decide which of the 27 source and target need to be locked. Source needs to be locked if it's a 28 non-directory; target - if it's a non-directory or about to be removed. 31 non-directories - the source because it wouldn't be locked otherwise 32 and the target because mixing directory and non-directory is allowed [all …]
|
/openbmc/linux/drivers/staging/vme_user/ |
H A 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 …]
|
H A 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 …]
|
/openbmc/linux/drivers/i2c/ |
H A 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 …]
|
/openbmc/linux/fs/btrfs/ |
H A 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 …]
|
/openbmc/linux/drivers/gpu/drm/i915/ |
H A 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 …]
|
/openbmc/linux/drivers/clk/ti/ |
H A 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 …]
|
/openbmc/linux/fs/reiserfs/ |
H A 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 …]
|
/openbmc/linux/drivers/gpu/drm/ |
H A 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 …]
|
H A 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 …]
|
/openbmc/linux/drivers/net/ethernet/netronome/nfp/nfpcore/ |
H A 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 …]
|
/openbmc/linux/arch/x86/kernel/cpu/resctrl/ |
H A D | internal.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 30 #define MBM_CNTR_WIDTH_OFFSET_MAX (62 - MBM_CNTR_WIDTH_BASE) 38 /* Non-Temporal Writes to Local Memory */ 41 /* Non-Temporal Writes to Remote Memory */ 65 struct kernfs_fs_context *kfc = fc->fs_private; in rdt_fc2context() 74 * struct mon_evt - Entry in the event list of a resource 78 * @list: entry in &rdt_resource->evt_list 88 * union mon_data_bits - Monitoring details for each event file 127 * enum rdtgrp_mode - Mode of a RDT resource group 130 * @RDT_MODE_PSEUDO_LOCKSETUP: Resource group will be used for Pseudo-Locking [all …]
|
/openbmc/linux/drivers/pci/pcie/ |
H A D | aspm.c | 1 // SPDX-License-Identifier: GPL-2.0 49 struct pcie_link_state *parent; /* pointer to the parent Link state */ member 101 list_for_each_entry(child, &linkbus->devices, bus_list) in pci_function_0() 102 if (PCI_FUNC(child->devfn) == 0) in pci_function_0() 120 return link->aspm_default; in policy_to_aspm_state() 136 return link->clkpm_default; in policy_to_clkpm_state() 144 struct pci_bus *linkbus = link->pdev->subordinate; in pcie_set_clkpm_nocheck() 147 list_for_each_entry(child, &linkbus->devices, bus_list) in pcie_set_clkpm_nocheck() 151 link->clkpm_enabled = !!enable; in pcie_set_clkpm_nocheck() 160 if (!link->clkpm_capable || link->clkpm_disable) in pcie_set_clkpm() [all …]
|
/openbmc/linux/Documentation/driver-api/mmc/ |
H A 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
|
/openbmc/phosphor-user-manager/ |
H A D | users.hpp | 8 // http://www.apache.org/licenses/LICENSE-2.0 57 * @param[in] bus - sdbusplus handler 58 * @param[in] path - D-Bus path 59 * @param[in] groups - users group list 60 * @param[in] priv - users privilege 61 * @param[in] enabled - user enabled state 62 * @param[in] parent - user manager - parent object 66 UserMgr& parent); 76 * @param[in] value - User privilege 91 * @param[in] value - User groups [all …]
|
/openbmc/linux/net/sunrpc/ |
H A 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 …]
|
/openbmc/qemu/hw/misc/ |
H A D | aspeed_sdmc.c | 7 * the COPYING file in the top-level directory. 13 #include "qemu/error-report.h" 15 #include "hw/qdev-properties.h" 102 * what we care about right now as it is checked by U-Boot to 164 if (addr >= ARRAY_SIZE(s->regs)) { in aspeed_sdmc_read() 166 "%s: Out-of-bounds read at offset 0x%" HWADDR_PRIx "\n", in aspeed_sdmc_read() 171 trace_aspeed_sdmc_read(addr, s->regs[addr]); in aspeed_sdmc_read() 172 return s->regs[addr]; in aspeed_sdmc_read() 183 if (addr >= ARRAY_SIZE(s->regs)) { in aspeed_sdmc_write() 185 "%s: Out-of-bounds write at offset 0x%" HWADDR_PRIx "\n", in aspeed_sdmc_write() [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/clock/ti/ |
H A 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 …]
|
H A 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 …]
|
/openbmc/linux/drivers/clocksource/ |
H A 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 …]
|
/openbmc/linux/drivers/phy/freescale/ |
H A 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 …]
|
/openbmc/linux/drivers/usb/core/ |
H A 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 …]
|
/openbmc/linux/drivers/i2c/muxes/ |
H A D | i2c-mux-gpmux.c | 1 // SPDX-License-Identifier: GPL-2.0-only 11 #include <linux/i2c-mux.h> 28 ret = mux_control_select(mux->control, chan); in i2c_mux_select() 29 mux->do_not_deselect = ret < 0; in i2c_mux_select() 38 if (mux->do_not_deselect) in i2c_mux_deselect() 41 return mux_control_deselect(mux->control); in i2c_mux_deselect() 46 struct device_node *np = dev->of_node; in mux_parent_adapter() 48 struct i2c_adapter *parent; in mux_parent_adapter() local 50 parent_np = of_parse_phandle(np, "i2c-parent", 0); in mux_parent_adapter() 52 dev_err(dev, "Cannot parse i2c-parent\n"); in mux_parent_adapter() [all …]
|