/Linux-v6.6/Documentation/devicetree/bindings/i2c/ |
D | i2c-gate.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/i2c/i2c-gate.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Common i2c gate properties 10 - Peter Rosin <peda@axentia.se> 13 An i2c gate is useful to e.g. reduce the digital noise for RF tuners connected 14 to the i2c bus. Gates are similar to arbitrators in that you need to perform 15 some kind of operation to access the i2c bus past the arbitrator/gate, but 20 - $ref: /schemas/i2c/i2c-controller.yaml [all …]
|
/Linux-v6.6/Documentation/devicetree/bindings/iio/imu/ |
D | invensense,mpu6050.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: InvenSense MPU-6050 Six-Axis (Gyro + Accelerometer) MEMS MotionTracking Device 10 - Jean-Baptiste Maneyrol <jmaneyrol@invensense.com> 13 These devices support both I2C and SPI bus interfaces. 18 - enum: 19 - invensense,iam20680 20 - invensense,icm20608 21 - invensense,icm20609 [all …]
|
/Linux-v6.6/drivers/staging/sm750fb/ |
D | ddk750_power.c | 1 // SPDX-License-Identifier: GPL-2.0 75 void sm750_set_current_gate(unsigned int gate) in sm750_set_current_gate() argument 78 poke32(MODE1_GATE, gate); in sm750_set_current_gate() 80 poke32(MODE0_GATE, gate); in sm750_set_current_gate() 88 u32 gate; in sm750_enable_2d_engine() local 90 gate = peek32(CURRENT_GATE); in sm750_enable_2d_engine() 92 gate |= (CURRENT_GATE_DE | CURRENT_GATE_CSC); in sm750_enable_2d_engine() 94 gate &= ~(CURRENT_GATE_DE | CURRENT_GATE_CSC); in sm750_enable_2d_engine() 96 sm750_set_current_gate(gate); in sm750_enable_2d_engine() 101 u32 gate; in sm750_enable_dma() local [all …]
|
/Linux-v6.6/drivers/media/tuners/ |
D | tda18218.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 10 /* Max transfer size done by I2C transfer functions */ 20 .addr = priv->cfg->i2c_address, in tda18218_wr_regs() 27 dev_warn(&priv->i2c->dev, in tda18218_wr_regs() 28 "%s: i2c wr reg=%04x: len=%d is too big!\n", in tda18218_wr_regs() 30 return -EINVAL; in tda18218_wr_regs() 34 remaining -= (priv->cfg->i2c_wr_max - 1)) { in tda18218_wr_regs() 36 if (len2 > (priv->cfg->i2c_wr_max - 1)) in tda18218_wr_regs() 37 len2 = (priv->cfg->i2c_wr_max - 1); in tda18218_wr_regs() 40 buf[0] = reg + len - remaining; in tda18218_wr_regs() [all …]
|
D | fc0013.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Copyright (C) 2012 Hans-Frieder Vogt <hfvogt@gmx.net> 11 #include "fc0013-priv.h" 17 .addr = priv->addr, .flags = 0, .buf = buf, .len = 2 in fc0013_writereg() 20 if (i2c_transfer(priv->i2c, &msg, 1) != 1) { in fc0013_writereg() 21 err("I2C write reg failed, reg: %02x, val: %02x", reg, val); in fc0013_writereg() 22 return -EREMOTEIO; in fc0013_writereg() 30 { .addr = priv->addr, .flags = 0, .buf = ®, .len = 1 }, in fc0013_readreg() 31 { .addr = priv->addr, .flags = I2C_M_RD, .buf = val, .len = 1 }, in fc0013_readreg() 34 if (i2c_transfer(priv->i2c, msg, 2) != 2) { in fc0013_readreg() [all …]
|
D | fc0012.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Copyright (C) 2012 Hans-Frieder Vogt <hfvogt@gmx.net> 9 #include "fc0012-priv.h" 15 .addr = priv->cfg->i2c_address, .flags = 0, .buf = buf, .len = 2 in fc0012_writereg() 18 if (i2c_transfer(priv->i2c, &msg, 1) != 1) { in fc0012_writereg() 19 dev_err(&priv->i2c->dev, in fc0012_writereg() 20 "%s: I2C write reg failed, reg: %02x, val: %02x\n", in fc0012_writereg() 22 return -EREMOTEIO; in fc0012_writereg() 30 { .addr = priv->cfg->i2c_address, .flags = 0, in fc0012_readreg() 32 { .addr = priv->cfg->i2c_address, .flags = I2C_M_RD, in fc0012_readreg() [all …]
|
D | tda18271.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 3 tda18271.h - header for the Philips / NXP TDA18271 silicon tuner 12 #include <linux/i2c.h> 84 /* use i2c gate provided by analog or digital demod */ 85 enum tda18271_i2c_gate gate; member 90 /* some i2c providers can't write all 39 registers at once */ 114 struct i2c_adapter *i2c, 119 struct i2c_adapter *i2c, in tda18271_attach() argument
|
D | tda18212.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 21 struct tda18212_dev *dev = fe->tuner_priv; in tda18212_set_params() 22 struct dtv_frontend_properties *c = &fe->dtv_property_cache; in tda18212_set_params() 50 dev_dbg(&dev->client->dev, in tda18212_set_params() 52 c->delivery_system, c->frequency, in tda18212_set_params() 53 c->bandwidth_hz); in tda18212_set_params() 55 if (fe->ops.i2c_gate_ctrl) in tda18212_set_params() 56 fe->ops.i2c_gate_ctrl(fe, 1); /* open I2C-gate */ in tda18212_set_params() 58 switch (c->delivery_system) { in tda18212_set_params() 60 if_khz = dev->cfg.if_atsc_vsb; in tda18212_set_params() [all …]
|
/Linux-v6.6/Documentation/devicetree/bindings/iio/gyroscope/ |
D | invensense,mpu3050.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Invensense MPU-3050 Gyroscope 10 - Linus Walleij <linus.walleij@linaro.org> 19 vdd-supply: true 21 vlogic-supply: true 28 mount-matrix: true 30 i2c-gate: 31 $ref: /schemas/i2c/i2c-controller.yaml [all …]
|
/Linux-v6.6/arch/arm/boot/dts/intel/socfpga/ |
D | socfpga.dtsi | 1 // SPDX-License-Identifier: GPL-2.0+ 6 #include <dt-bindings/reset/altr,rst-mgr.h> 9 #address-cells = <1>; 10 #size-cells = <1>; 22 #address-cells = <1>; 23 #size-cells = <0>; 24 enable-method = "altr,socfpga-smp"; 27 compatible = "arm,cortex-a9"; 30 next-level-cache = <&L2>; 33 compatible = "arm,cortex-a9"; [all …]
|
D | socfpga_arria10.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 6 #include <dt-bindings/interrupt-controller/arm-gic.h> 7 #include <dt-bindings/reset/altr,rst-mgr-a10.h> 10 #address-cells = <1>; 11 #size-cells = <1>; 14 #address-cells = <1>; 15 #size-cells = <0>; 16 enable-method = "altr,socfpga-a10-smp"; 19 compatible = "arm,cortex-a9"; 22 next-level-cache = <&L2>; [all …]
|
/Linux-v6.6/drivers/media/dvb-frontends/ |
D | zl10039.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Driver for Zarlink ZL10039 DVB-S tuner 19 /* Max transfer size done by I2C transfer functions */ 33 struct i2c_adapter *i2c; member 64 .addr = state->i2c_addr, in zl10039_read() 69 .addr = state->i2c_addr, in zl10039_read() 78 if (i2c_transfer(state->i2c, msg, 2) != 2) { in zl10039_read() 79 dprintk("%s: i2c read error\n", __func__); in zl10039_read() 80 return -EREMOTEIO; in zl10039_read() 92 .addr = state->i2c_addr, in zl10039_write() [all …]
|
D | dibx000_common.c | 1 // SPDX-License-Identifier: GPL-2.0-only 4 #include <linux/i2c.h> 24 if (mutex_lock_interruptible(&mst->i2c_buffer_lock) < 0) { in dibx000_write_word() 26 return -EINVAL; in dibx000_write_word() 29 mst->i2c_write_buffer[0] = (reg >> 8) & 0xff; in dibx000_write_word() 30 mst->i2c_write_buffer[1] = reg & 0xff; in dibx000_write_word() 31 mst->i2c_write_buffer[2] = (val >> 8) & 0xff; in dibx000_write_word() 32 mst->i2c_write_buffer[3] = val & 0xff; in dibx000_write_word() 34 memset(mst->msg, 0, sizeof(struct i2c_msg)); in dibx000_write_word() 35 mst->msg[0].addr = mst->i2c_addr; in dibx000_write_word() [all …]
|
D | drxd.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * drxd.h: DRXD DVB-T demodulator driver 5 * Copyright (C) 2005-2007 Micronas 12 #include <linux/i2c.h> 30 /* If the tuner is not behind an i2c gate, be sure to flip this bit 31 or else the i2c bus could get wedged */ 41 void *priv, struct i2c_adapter *i2c, 46 void *priv, struct i2c_adapter *i2c, in drxd_attach() argument 49 printk(KERN_INFO "%s: not probed - driver disabled by Kconfig\n", in drxd_attach()
|
D | tda10048.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 18 /* the demodulator's i2c address */ 52 /* Disable I2C gate access */ 66 struct i2c_adapter *i2c); 70 struct i2c_adapter *i2c) in tda10048_attach() argument
|
/Linux-v6.6/drivers/clk/tegra/ |
D | clk-tegra-periph.c | 1 // SPDX-License-Identifier: GPL-2.0-only 7 #include <linux/clk-provider.h> 16 #include "clk-id.h" 130 #define MASK(x) (BIT(x) - 1) 200 #define I2C(_name, _parents, _offset,\ macro 229 #define GATE(_name, _parent_name, \ macro 609 I2C("i2c1", mux_pllp_clkm, CLK_SOURCE_I2C1, 12, tegra_clk_i2c1), 610 I2C("i2c2", mux_pllp_clkm, CLK_SOURCE_I2C2, 54, tegra_clk_i2c2), 611 I2C("i2c3", mux_pllp_clkm, CLK_SOURCE_I2C3, 67, tegra_clk_i2c3), 612 I2C("i2c4", mux_pllp_clkm, CLK_SOURCE_I2C4, 103, tegra_clk_i2c4), [all …]
|
/Linux-v6.6/drivers/i2c/ |
D | i2c-mux.c | 2 * Multiplexed I2C bus driver. 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> 8 * Simplifies access to complex multiplexed I2C bus topologies, by presenting 9 * each multiplexed bus segment as an additional I2C adapter. 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> [all …]
|
/Linux-v6.6/Documentation/driver-api/nfc/ |
D | nfc-hci.rst | 5 - Author: Eric Lapuyade, Samuel Ortiz 6 - Contact: eric.lapuyade@intel.com, samuel.ortiz@intel.com 9 ------- 12 enables easy writing of HCI-based NFC drivers. The HCI layer runs as an NFC Core 17 --- 30 - one for executing commands : nfc_hci_msg_tx_work(). Only one command 32 - one for dispatching received events and commands : nfc_hci_msg_rx_work(). 35 -------------------------- 41 In case the chip supports pre-opened gates and pseudo-static pipes, the driver 45 ------------------- [all …]
|
/Linux-v6.6/drivers/iio/imu/inv_mpu6050/ |
D | inv_mpu_i2c.c | 1 // SPDX-License-Identifier: GPL-2.0-only 8 #include <linux/i2c.h> 30 switch (st->chip_type) { in inv_mpu_i2c_aux_bus() 38 /* no i2c auxiliary bus on the chip */ in inv_mpu_i2c_aux_bus() 43 if (st->magn_disabled) in inv_mpu_i2c_aux_bus() 55 struct device *dev = indio_dev->dev.parent; in inv_mpu_i2c_aux_setup() 60 * MPU9xxx magnetometer support requires to disable i2c auxiliary bus. in inv_mpu_i2c_aux_setup() 62 * i2c auxiliary bus if it used. in inv_mpu_i2c_aux_setup() 63 * Check for i2c-gate node in devicetree and set magnetometer disabled. in inv_mpu_i2c_aux_setup() 66 switch (st->chip_type) { in inv_mpu_i2c_aux_setup() [all …]
|
/Linux-v6.6/drivers/clk/ingenic/ |
D | jz4755-cgu.c | 1 // SPDX-License-Identifier: GPL-2.0 10 #include <linux/clk-provider.h> 14 #include <dt-bindings/clock/ingenic,jz4755-cgu.h> 33 0x0, 0x1, -1, 0x3, 80 CGU_REG_CPCCR, 21, 1, 1, -1, -1, -1, 0, 89 CGU_REG_CPCCR, 30, 1, 1, -1, -1, -1, 0, 98 CGU_REG_CPCCR, 0, 1, 4, 22, -1, -1, 0, 107 CGU_REG_CPCCR, 4, 1, 4, 22, -1, -1, 0, 116 CGU_REG_CPCCR, 8, 1, 4, 22, -1, -1, 0, 125 CGU_REG_CPCCR, 12, 1, 4, 22, -1, -1, 0, [all …]
|
D | jz4740-cgu.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 9 #include <linux/clk-provider.h> 14 #include <dt-bindings/clock/ingenic,jz4740-cgu.h> 51 0x0, 0x1, -1, 0x3, 71 .parents = { JZ4740_CLK_EXT, -1, -1, -1 }, 96 .parents = { JZ4740_CLK_PLL, -1, -1, -1 }, 98 CGU_REG_CPCCR, 21, 1, 1, -1, -1, -1, 0, 110 .parents = { JZ4740_CLK_PLL, -1, -1, -1 }, 112 CGU_REG_CPCCR, 0, 1, 4, 22, -1, -1, 0, 119 .parents = { JZ4740_CLK_PLL, -1, -1, -1 }, [all …]
|
D | jz4725b-cgu.c | 1 // SPDX-License-Identifier: GPL-2.0 9 #include <linux/clk-provider.h> 13 #include <dt-bindings/clock/ingenic,jz4725b-cgu.h> 36 0x0, 0x1, -1, 0x3, 56 .parents = { JZ4725B_CLK_EXT, -1, -1, -1 }, 81 .parents = { JZ4725B_CLK_PLL, -1, -1, -1 }, 83 CGU_REG_CPCCR, 21, 1, 1, -1, -1, -1, 0, 95 .parents = { JZ4725B_CLK_PLL, -1, -1, -1 }, 97 CGU_REG_CPCCR, 0, 1, 4, 22, -1, -1, 0, 104 .parents = { JZ4725B_CLK_PLL, -1, -1, -1 }, [all …]
|
/Linux-v6.6/drivers/clk/ |
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 59 Low-Noise JESD204B Compliant Clock Jitter Cleaner With Dual Loop PLLs 79 depends on I2C 88 These multi-function devices have two fixed-rate oscillators, clocked at 32KHz each. 98 multi-function device has one fixed-rate oscillator, clocked 123 depends on I2C 129 be pre-programmed to support other configurations and features not yet 134 depends on I2C 142 depends on I2C 151 depends on I2C [all …]
|
/Linux-v6.6/drivers/mfd/ |
D | sm501.c | 1 // SPDX-License-Identifier: GPL-2.0-only 19 #include <linux/platform_data/i2c-gpio.h> 25 #include <linux/sm501-regs.h> 135 unsigned long misct = smc501_readl(sm->regs + SM501_MISC_TIMING); in sm501_dump_clk() 136 unsigned long pm0 = smc501_readl(sm->regs + SM501_POWER_MODE_0_CLOCK); in sm501_dump_clk() 137 unsigned long pm1 = smc501_readl(sm->regs + SM501_POWER_MODE_1_CLOCK); in sm501_dump_clk() 138 unsigned long pmc = smc501_readl(sm->regs + SM501_POWER_MODE_CONTROL); in sm501_dump_clk() 163 dev_dbg(sm->dev, "MISCT=%08lx, PM0=%08lx, PM1=%08lx\n", in sm501_dump_clk() 166 dev_dbg(sm->dev, "PLL2 = %ld.%ld MHz (%ld), SDCLK0=%08lx, SDCLK1=%08lx\n", in sm501_dump_clk() 169 dev_dbg(sm->dev, "SDRAM: PM0=%ld, PM1=%ld\n", sdclk0, sdclk1); in sm501_dump_clk() [all …]
|
/Linux-v6.6/drivers/media/pci/saa7134/ |
D | saa7134-i2c.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * i2c interface support 11 #include "saa7134-reg.h" 19 #include <media/v4l2-common.h> 21 /* ----------------------------------------------------------- */ 25 MODULE_PARM_DESC(i2c_debug,"enable debug messages [i2c]"); 29 MODULE_PARM_DESC(i2c_scan,"scan i2c bus at insmod time"); 33 printk(KERN_DEBUG pr_fmt("i2c: " fmt), ## arg); \ 44 /* ----------------------------------------------------------- */ 53 IDLE = 0, // no I2C command pending [all …]
|