Home
last modified time | relevance | path

Searched +full:i2c +full:- +full:topology (Results 1 – 25 of 86) sorted by relevance

1234

/openbmc/linux/Documentation/i2c/
H A Di2c-topology.rst2 I2C muxes and complex topologies
5 There are a couple of reasons for building more complex I2C topologies
6 than a straight-forward I2C bus with one adapter and one or more devices.
16 from the I2C bus, at least most of the time, and sits behind a gate
19 Several types of hardware components such as I2C muxes, I2C gates and I2C
22 These components are represented as I2C adapter trees by Linux, where
25 I2C transfers, and all adapters with a parent are part of an "i2c-mux"
29 an I2C transfer on one of its child adapters. The mux driver can
39 There are two variants of locking available to I2C muxes, they can be
40 mux-locked or parent-locked muxes.
[all …]
H A Di2c-sysfs.rst1 .. SPDX-License-Identifier: GPL-2.0
4 Linux I2C Sysfs
10 I2C topology can be complex because of the existence of I2C MUX
11 (I2C Multiplexer). The Linux
12 kernel abstracts the MUX channels into logical I2C bus numbers. However, there
13 is a gap of knowledge to map from the I2C bus physical number and MUX topology
14 to logical I2C bus number. This doc is aimed to fill in this gap, so the
16 the concept of logical I2C buses in the kernel, by knowing the physical I2C
17 topology and navigating through the I2C sysfs in Linux shell. This knowledge is
18 useful and essential to use ``i2c-tools`` for the purpose of development and
[all …]
H A Dindex.rst1 .. SPDX-License-Identifier: GPL-2.0
4 I2C/SMBus Subsystem
14 i2c-protocol
15 smbus-protocol
16 instantiating-devices
18 i2c-topology
19 muxes/i2c-mux-gpio
20 i2c-sysfs
21 i2c-address-translators
29 writing-clients
[all …]
H A Di2c-address-translators.rst1 .. SPDX-License-Identifier: GPL-2.0
4 I2C Address Translators
11 -----------
13 An I2C Address Translator (ATR) is a device with an I2C slave parent
14 ("upstream") port and N I2C master child ("downstream") ports, and
21 An ATR looks similar to an i2c-mux except:
22 - the address on the parent and child busses can be different
23 - there is normally no need to select the child port; the alias used on the
27 The kernel i2c-atr provides a helper to implement an ATR within a driver.
29 The ATR creates a new I2C "child" adapter on each child bus. Adding
[all …]
/openbmc/linux/Documentation/devicetree/bindings/fsi/
H A Dfsi.txt4 The FSI bus is probe-able, so the OS is able to enumerate FSI slaves, and
6 nodes to probed engines. This allows for fsi engines to expose non-probeable
8 that is an I2C master - the I2C bus can be described by the device tree under
13 the fsi-master-* binding specifications.
15 Under the masters' nodes, we can describe the bus topology using nodes to
18 fsi-master {
19 /* top-level of FSI bus topology, bound to an FSI master driver and
22 fsi-slave@<link,id> {
26 fsi-slave-engine@<addr> {
32 fsi-slave-engine@<addr> {
[all …]
/openbmc/linux/sound/soc/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
11 select REGMAP_I2C if I2C
22 will be called snd-soc-core.
42 bool "Build topology core"
47 the topology core, KUnit is frequently tested in virtual
48 environments with minimal drivers enabled but the topology
53 tristate "KUnit tests for SoC topology"
58 If you want to perform tests on ALSA SoC topology support say Y here.
61 test cases against soc-topology.c API. This should be primarily used
121 # generic frame-work
/openbmc/linux/include/drm/display/
H A Ddrm_dp_mst_helper.h52 * struct drm_dp_mst_port - MST port
56 * @mcs: message capability status - DP 1.2 spec. Protected by
58 * @ddps: DisplayPort Device Plug Status - DP 1.2. Protected by
73 * @aux: i2c aux transport to talk to device connected to this port, protected
75 * @passthrough_aux: parent aux to which DSC pass-through requests should be
76 * sent, only set if DSC pass-through is possible.
81 * @mgr: topology manager this port lives under.
84 * in the MST topology.
88 * @topology_kref: refcount for this port's lifetime in the topology,
102 * @topology_ref_history: A history of each topology
[all …]
/openbmc/linux/include/sound/
H A Dsoc-acpi.h1 /* SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (C) 2013-15, Intel Corporation. All rights reserved.
22 /* codec name is used in DAIs is i2c-<HID>:00 with HID being 8 chars */
61 * @acpi_ipc_irq_index: used for BYT-CR detection
64 * @dmic_num: number of SoC- or chipset-attached PDM digital microphones
93 * snd_soc_acpi_endpoint - endpoint descriptor
96 * @group_position: zero-based order (only when @aggregated is 1)
97 * @group_id: platform-unique group identifier (only when @aggregrated is 1)
107 * snd_soc_acpi_adr_device - descriptor for _ADR-enumerated device
121 * snd_soc_acpi_link_adr - ACPI-based list of _ADR enumerated devices
[all …]
/openbmc/linux/Documentation/firmware-guide/acpi/
H A Di2c-muxes.rst1 .. SPDX-License-Identifier: GPL-2.0
4 ACPI I2C Muxes
7 Describing an I2C device hierarchy that includes I2C muxes requires an ACPI
10 Consider this topology::
12 +------+ +------+
13 | SMB1 |-->| MUX0 |--CH00--> i2c client A (0x50)
14 | | | 0x70 |--CH01--> i2c client B (0x50)
15 +------+ +------+
/openbmc/linux/Documentation/devicetree/bindings/net/
H A Dmctp-i2c-controller.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/net/mctp-i2c-controller.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: MCTP I2C transport
10 - Matt Johnston <matt@codeconstruct.com.au>
13 An mctp-i2c-controller defines a local MCTP endpoint on an I2C controller.
14 MCTP I2C is specified by DMTF DSP0237.
16 An mctp-i2c-controller must be attached to an I2C adapter which supports
17 slave functionality. I2C busses (either directly or as subordinate mux
[all …]
/openbmc/docs/designs/
H A Dphysical-topology.md1 # Physical Topology for Inventory Items
27 Changes to phosphor-dbus-interfaces documenting new Associations have been
28 [proposed](https://gerrit.openbmc.org/c/openbmc/phosphor-dbus-interfaces/+/46806)
37 - Must represent one-to-many relationships from chassis inventory objects which:
38 - Connect to cables
39 - Contain other chassis and/or are contained by a chassis
40 - Contain storage drives
41 - Are cooled by fans
42 - Are powered by power supplies
43 - Contain processors such as CPUs
[all …]
/openbmc/linux/drivers/platform/x86/intel/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
15 source "drivers/platform/x86/intel/uncore-frequency/Kconfig"
22 depends on I2C
35 depends on I2C
106 depends on X86 && ACPI && I2C && REGULATOR
115 resources for a MAX17042 Fuel Gauge, FUSB302 USB Type-C Controller
117 This driver instantiates i2c-clients for these, so that standard
118 i2c drivers for these chips can bind to the them.
129 This driver is for accessing the PSE (Programmable Service Engine) -
130 an Embedded Controller like IP - using ISHTP (Integrated Sensor Hub
[all …]
/openbmc/linux/drivers/gpu/drm/display/
H A Ddrm_dp_mst_topology.c26 #include <linux/i2c.h>
56 * protocol. The helpers contain a topology manager and bandwidth manager.
206 number_of_bits--; in drm_dp_msg_header_crc4()
210 bitshift--; in drm_dp_msg_header_crc4()
222 number_of_bits--; in drm_dp_msg_header_crc4()
240 number_of_bits--; in drm_dp_msg_data_crc4()
244 bitshift--; in drm_dp_msg_data_crc4()
256 number_of_bits--; in drm_dp_msg_data_crc4()
268 size += (hdr->lct / 2); in drm_dp_calc_sb_hdr_size()
279 buf[idx++] = ((hdr->lct & 0xf) << 4) | (hdr->lcr & 0xf); in drm_dp_encode_sideband_msg_hdr()
[all …]
/openbmc/linux/Documentation/devicetree/bindings/i2c/
H A Di2c-mux-gpmux.yaml1 # 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#
7 title: General Purpose I2C Bus Mux
10 - Peter Rosin <peda@axentia.se>
13 This binding describes an I2C bus multiplexer that uses a mux controller
14 from the mux subsystem to route the I2C signals.
16 .-----. .-----.
18 .------------. '-----' '-----'
[all …]
/openbmc/u-boot/board/Marvell/db-88f6820-gp/
H A Ddb-88f6820-gp.c1 // SPDX-License-Identifier: GPL-2.0+
7 #include <i2c.h>
20 * Those values and defines are taken from the Marvell U-Boot version
21 * "u-boot-2013.01-2014_T3.0"
44 { 0x20, 6, 0x20 }, /* Configuration registers: Bit on --> Input bits */
45 { 0x20, 7, 0xC3 }, /* Configuration registers: Bit on --> Input bits */
48 { 0x21, 6, 0xC3 }, /* Configuration registers: Bit on --> Input bits */
49 { 0x21, 7, 0x31 }, /* Configuration registers: Bit on --> Input bits */
71 * Define the DDR layout / topology here in the board file. This will
72 * be used by the DDR3 init code in the SPL U-Boot version to configure
[all …]
/openbmc/u-boot/board/kobol/helios4/
H A Dhelios4.c1 // SPDX-License-Identifier: GPL-2.0+
8 #include <i2c.h>
21 * Those values and defines are taken from the Marvell U-Boot version
22 * "u-boot-2013.01-15t1-helios4" as well as the upstream config for clearfog
49 * Define the DDR layout / topology here in the board file. This will
50 * be used by the DDR3 init code in the SPL U-Boot version to configure
77 /* Return the board topology as defined in the board code */ in mv_ddr_topology_map_get()
111 gd->bd->bi_boot_params = mvebu_sdram_bar(0) + 0x100; in board_init()
/openbmc/entity-manager/src/
H A Dmeson.build1 cpp_args = boost_args + ['-DPACKAGE_DIR="' + packagedir + '/"']
2 cpp_args += ['-DSYSCONF_DIR="' + sysconfdir + '/"' ]
3 installdir = join_paths(get_option('libexecdir'), 'entity-manager')
6 'entity-manager',
12 'topology.cpp',
14 cpp_args: cpp_args + ['-DBOOST_ASIO_DISABLE_THREADS'],
26 if get_option('fru-device')
28 if get_option('fru-device-resizefru')
29 cpp_args_fd = cpp_args_fd + ['-DENABLE_FRU_AREA_RESIZE']
31 detect_mode = get_option('fru-device-16bitdetectmode')
[all …]
/openbmc/u-boot/board/Marvell/db-88f6820-amc/
H A Ddb-88f6820-amc.c1 // SPDX-License-Identifier: GPL-2.0+
7 #include <i2c.h>
20 * Those values and defines are taken from the Marvell U-Boot version
21 * "u-boot-2013.01-2016_T1.0.eng_drop_v10"
50 * Define the DDR layout / topology here in the board file. This will
51 * be used by the DDR3 init code in the SPL U-Boot version to configure
78 /* Return the board topology as defined in the board code */ in mv_ddr_topology_map_get()
112 gd->bd->bi_boot_params = mvebu_sdram_bar(0) + 0x100; in board_init()
119 puts("Board: Marvell DB-88F6820-AMC\n"); in checkboard()
/openbmc/linux/drivers/gpu/drm/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
16 select I2C
19 # gallium uses SYS_kcmp for os_same_file_description() to de-duplicate
25 Kernel-level support for the Direct Rendering Infrastructure (DRI)
64 Use dynamic-debug to avoid drm_debug_enabled() runtime overheads.
95 Documentation/dev-tools/kunit/.
113 Enables debug tracing for topology refs in DRM's DP MST helpers. A
114 history of each topology reference/dereference will be printed to the
115 kernel log once a port or branch device's topology refcount reaches 0.
129 contention. A history of each drm modeset lock path hitting -EDEADLK
[all …]
/openbmc/u-boot/board/solidrun/clearfog/
H A Dclearfog.c1 // SPDX-License-Identifier: GPL-2.0+
7 #include <i2c.h>
20 * Those values and defines are taken from the Marvell U-Boot version
21 * "u-boot-2013.01-15t1-clearfog"
48 * Define the DDR layout / topology here in the board file. This will
49 * be used by the DDR3 init code in the SPL U-Boot version to configure
76 /* Return the board topology as defined in the board code */ in mv_ddr_topology_map_get()
110 gd->bd->bi_boot_params = mvebu_sdram_bar(0) + 0x100; in board_init()
/openbmc/u-boot/board/CZ.NIC/turris_omnia/
H A Dturris_omnia.c1 // SPDX-License-Identifier: GPL-2.0+
7 * Marvell/db-88f6820-gp by Stefan Roese <sr@denx.de>
12 #include <i2c.h>
23 # include <atsha204a-i2c.h>
35 #define OMNIA_I2C_EEPROM_DM_NAME "i2c@0"
41 #define OMNIA_I2C_MCU_DM_NAME "i2c@0"
56 * Those values and defines are taken from the Marvell U-Boot version
57 * "u-boot-2013.01-2014_T3.0"
109 for (; retry > 0; --retry) { in omnia_detect_sata()
116 puts("I2C read failed! Default PEX\n"); in omnia_detect_sata()
[all …]
/openbmc/u-boot/board/alliedtelesis/x530/
H A Dx530.c1 // SPDX-License-Identifier: GPL-2.0+
9 #include <i2c.h>
44 * Define the DDR layout / topology here in the board file. This will
45 * be used by the DDR3 init code in the SPL U-Boot version to configure
72 /* Return the board topology as defined in the board code */ in mv_ddr_topology_map_get()
94 gd->bd->bi_boot_params = mvebu_sdram_bar(0) + 0x100; in board_init()
113 node = fdt_node_offset_by_compatible(gd->fdt_blob, 0, in led_7seg_init()
114 "atl,of-led-7seg"); in led_7seg_init()
116 return -ENODEV; in led_7seg_init()
119 "segment-gpios", desc, in led_7seg_init()
[all …]
/openbmc/linux/drivers/media/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
36 If not selected, all non-optional media core functionality
41 bool "Autoselect ancillary drivers (tuners, sensors, i2c, spi, frontends)"
43 select I2C
47 By default, a media driver auto-selects all possible ancillary
65 # Multimedia support - automatically enable V4L2 and DVB core
127 prompt "Platform-specific devices" if MEDIA_SUPPORT_FILTER
163 depends on (I2C || I2C=n)
175 topology and configure it dynamically.
187 depends on (I2C || I2C=n)
[all …]
/openbmc/u-boot/drivers/ddr/marvell/a38x/
H A Dddr_topology_def.h1 /* SPDX-License-Identifier: GPL-2.0 */
18 /* Chip Select (CS) bitmask (bits 0-CS0, bit 1- CS1 ...) */
23 * (bits 0-CS0 mirroring, bit 1- CS1 mirroring ...)
27 /* DQS Swap (polarity) - true if enable */
30 /* CK swap (polarity) - true if enable */
52 * - 0 for using default value (jedec suggested)
58 * - 0 for using default value (jedec suggested)
164 /* ddr interface size - ddr flow will update this parameter */
167 /* ddr i2c spd data address */
170 /* ddr i2c spd page 0 select address */
[all …]
/openbmc/linux/include/linux/platform_data/
H A Dmlxreg.h1 /* SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0 */
3 * Copyright (C) 2017-2020 Mellanox Technologies Ltd.
14 * enum mlxreg_wdt_type - type of HW watchdog
28 * enum mlxreg_hotplug_kind - kind of hotplug entry
36 * after hardware-firmware synchronization handshake;
57 * enum mlxreg_hotplug_device_action - hotplug device action required for
73 * struct mlxreg_core_hotplug_notifier - hotplug notifier block:
86 * struct mlxreg_hotplug_device - I2C device data:
88 * @adapter: I2C device adapter;
89 * @client: I2C device client;
[all …]

1234