| /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/i2c/ |
| H A D | brcm,brcmstb-i2c.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/i2c/brcm,brcmstb-i2c.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Kamal Dasu <kdasu.kdev@gmail.com> 13 - $ref: /schemas/i2c/i2c-controller.yaml# 18 - brcm,bcm2711-hdmi-i2c 19 - brcm,brcmstb-i2c 20 - brcm,brcmper-i2c 26 - description: BSC register range [all …]
|
| H A D | marvell,mv64xxx-i2c.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/i2c/marvell,mv64xxx-i2c.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Marvell MV64XXX I2C Controller Device Tree Bindings 10 - Gregory CLEMENT <gregory.clement@bootlin.com> 15 - const: allwinner,sun4i-a10-i2c 16 - items: 17 - const: allwinner,sun7i-a20-i2c 18 - const: allwinner,sun4i-a10-i2c [all …]
|
| /OK3568_Linux_fs/kernel/drivers/media/i2c/it66353/ |
| H A D | config.h | 1 // SPDX-License-Identifier: GPL-2.0 8 * Wangqiang Guo <kay.guo@rock-chips.com> 20 * Switch register i2c address: 0x94(PCADR=0) or 0x96(PCADR=1) 25 * RX register i2c address ( programmable ) 30 * CEC register i2c address ( programmable ) 35 * EDID RAM i2c address ( programmable ) 53 * 1: Enable Auto EQ code 54 * 0: Disable Auto EQ code 60 * 1: Enable Auto EQ code 61 * 0: Disable Auto EQ code
|
| /OK3568_Linux_fs/kernel/drivers/media/dvb-frontends/ |
| H A D | sp2.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 8 * DVB-S2 CI card (cimax2) with following copyrights: 20 struct i2c_client *client = s->client; in sp2_read_i2c() 21 struct i2c_adapter *adap = client->adapter; in sp2_read_i2c() 24 .addr = client->addr, in sp2_read_i2c() 29 .addr = client->addr, in sp2_read_i2c() 39 dev_err(&client->dev, "i2c read error, reg = 0x%02x, status = %d\n", in sp2_read_i2c() 44 return -EIO; in sp2_read_i2c() 47 dev_dbg(&s->client->dev, "addr=0x%04x, reg = 0x%02x, data = %02x\n", in sp2_read_i2c() 48 client->addr, reg, buf[0]); in sp2_read_i2c() [all …]
|
| H A D | dib3000mb.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Frontend driver for mobile DVB-T demodulator DiBcom 3000M-B 6 * Copyright (C) 2004-5 Patrick Boettcher (patrick.boettcher@posteo.de) 15 * sources, on which this driver (and the dvb-dibusb) are based. 17 * see Documentation/driver-api/media/drivers/dvb-usb.rst for more information 36 #define DRIVER_DESC "DiBcom 3000M-B DVB-T demodulator" 41 MODULE_PARM_DESC(debug, "set debugging level (1=info,2=xfer,4=setfe,8=getfe (|-able))."); 56 { .addr = state->config.demod_address, .flags = 0, .buf = wb, .len = 2 }, in dib3000_read_reg() 57 { .addr = state->config.demod_address, .flags = I2C_M_RD, .buf = rb, .len = 2 }, in dib3000_read_reg() 60 if (i2c_transfer(state->i2c, msg, 2) != 2) in dib3000_read_reg() [all …]
|
| H A D | stv6110.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 19 /* Max transfer size done by I2C transfer functions */ 26 struct i2c_adapter *i2c; member 43 return a - b; in abssub() 45 return b - a; in abssub() 50 kfree(fe->tuner_priv); in stv6110_release() 51 fe->tuner_priv = NULL; in stv6110_release() 57 struct stv6110_priv *priv = fe->tuner_priv; in stv6110_write_regs() 61 .addr = priv->i2c_address, in stv6110_write_regs() 71 "%s: i2c wr: len=%d is too big!\n", in stv6110_write_regs() [all …]
|
| H A D | ascot2e.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Sony Ascot3E DVB-T/T2/C/C2 tuner driver 31 struct i2c_adapter *i2c; member 76 ASCOT2E_OFFSET(-8), ASCOT2E_OFFSET(-6), ASCOT2E_BW_6, 0x0B, 0x00 }, 78 ASCOT2E_OFFSET(-8), ASCOT2E_OFFSET(-6), ASCOT2E_BW_6, 0x0B, 0x00 }, 80 ASCOT2E_OFFSET(-6), ASCOT2E_OFFSET(-4), ASCOT2E_BW_7, 0x0B, 0x00 }, 82 ASCOT2E_OFFSET(-4), ASCOT2E_OFFSET(-2), ASCOT2E_BW_8, 0x0B, 0x00 }, 84 ASCOT2E_OFFSET(-10), ASCOT2E_OFFSET(-16), ASCOT2E_BW_1_7, 0x0B, 0x00 }, 86 ASCOT2E_OFFSET(-8), ASCOT2E_OFFSET(-6), ASCOT2E_BW_6, 0x0B, 0x00 }, 88 ASCOT2E_OFFSET(-8), ASCOT2E_OFFSET(-6), ASCOT2E_BW_6, 0x0B, 0x00 }, [all …]
|
| /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/mfd/ |
| H A D | as3711.txt | 1 AS3711 is an I2C PMIC from Austria MicroSystems with multiple DCDC and LDO power 4 standard regulator properties, they must belong to a sub-node, called 9 - compatible : must be "ams,as3711" 10 - reg : specifies the I2C address 14 - su1-dev : framebuffer phandle 15 - su1-max-uA : maximum current 19 - su2-dev : framebuffer phandle 20 - su1-max-uA : maximum current 24 - su2-feedback-voltage : voltage feedback is used 25 - su2-feedback-curr1 : CURR1 input used for current feedback [all …]
|
| /OK3568_Linux_fs/kernel/Documentation/hwmon/ |
| H A D | adm9240.rst | 10 Addresses scanned: I2C 0x2c - 0x2f 20 Addresses scanned: I2C 0x2c - 0x2f 24 http://pdfserv.maxim-ic.com/en/ds/DS1780.pdf 30 Addresses scanned: I2C 0x2c - 0x2f 37 - Frodo Looijaard <frodol@dds.nl>, 38 - Philip Edelbrock <phil@netroedge.com>, 39 - Michiel Rook <michiel@grendelproject.nl>, 40 - Grant Coady <gcoady.lk@gmail.com> with guidance 44 --------- 45 The I2C addresses listed above assume BIOS has not changed the [all …]
|
| /OK3568_Linux_fs/kernel/drivers/media/pci/cx23885/ |
| H A D | cimax2.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * CIMax2(R) SP2 driver in conjunction with NetUp Dual DVB-S2 CI card 16 /* Max transfer size done by I2C transfer functions */ 20 bits 31-16 21 +-----------+ 23 +-----------+ 25 +-------+-------+-------+-------+-------+-------+-------+-------+ 27 +-------+-------+-------+-------+-------+-------+-------+-------+ 29 +-------+-------+-------+-------+-------+-------+-------+-------+ 31 +-------+-------+-------+-------+-------+-------+-------+-------+ [all …]
|
| /OK3568_Linux_fs/u-boot/drivers/i2c/ |
| H A D | exynos_hs_i2c.c | 7 * SPDX-License-Identifier: GPL-2.0+ 12 #include <i2c.h> 20 /* HSI2C-specific register description */ 97 * @param i2c: pointer to the appropriate register bank 103 static int hsi2c_wait_for_trx(struct exynos5_hsi2c *i2c) in hsi2c_wait_for_trx() argument 107 while (i-- > 0) { in hsi2c_wait_for_trx() 108 u32 int_status = readl(&i2c->usi_int_stat); in hsi2c_wait_for_trx() 111 u32 trans_status = readl(&i2c->usi_trans_status); in hsi2c_wait_for_trx() 114 writel(int_status, &i2c->usi_int_stat); in hsi2c_wait_for_trx() 142 struct exynos5_hsi2c *hsregs = i2c_bus->hsregs; in hsi2c_get_clk_details() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/media/tuners/ |
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 2 # Analog TV tuners, auto-loaded via tuner.ko 5 …A_ANALOG_TV_SUPPORT || MEDIA_DIGITAL_TV_SUPPORT || MEDIA_RADIO_SUPPORT || MEDIA_SDR_SUPPORT) && I2C 18 comment "Tuner drivers auto-selected by 'Autoselect ancillary drivers'" 28 depends on MEDIA_SUPPORT && I2C 36 depends on MEDIA_SUPPORT && I2C 43 depends on MEDIA_SUPPORT && I2C 52 depends on MEDIA_SUPPORT && I2C 55 A DVB-T silicon tuner module. Say Y when you want to support this tuner. 59 depends on MEDIA_SUPPORT && I2C [all …]
|
| /OK3568_Linux_fs/kernel/Documentation/i2c/ |
| H A D | i2c-topology.rst | 2 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. 14 from the I2C bus, at least most of the time, and sits behind a gate 20 These constructs are represented as I2C adapter trees by Linux, where 23 I2C transfers, and all adapters with a parent are part of an "i2c-mux" 27 an I2C transfer on one of its child adapters. The mux driver can 37 There are two variants of locking available to I2C muxes, they can be 38 mux-locked or parent-locked muxes. As is evident from below, it can be 39 useful to know if a mux is mux-locked or if it is parent-locked. The [all …]
|
| H A D | writing-clients.rst | 2 Implementing I2C device drivers 5 This is a small guide for those who want to write kernel drivers for I2C 19 it for non-exported symbols too. We will use the prefix ``foo_`` in this 28 routines, and should be zero-initialized except for fields with data you 29 provide. A client structure holds device-specific information like the 30 driver model device node, and its I2C address. 40 MODULE_DEVICE_TABLE(i2c, foo_idtable); 66 All other fields are for call-back functions which will be explained 74 structure at all. You should use this to keep device-specific data. 85 to NULL in remove() or if probe() failed anymore. The i2c-core does this [all …]
|
| /OK3568_Linux_fs/kernel/drivers/media/dvb-frontends/drx39xyj/ |
| H A D | drx_driver.h | 2 Copyright (c), 2004-2005,2007-2010 Trident Microsystems, Inc. 37 #include <linux/i2c.h> 40 * This structure contains the I2C address, the device ID and a user_data pointer. 44 u16 i2c_addr; /* The I2C address of the device. */ 51 * \brief Determine if I2C address 'addr' is a 10 bits address or not. 52 * \param addr The I2C address. 54 * \retval 0 if address is not a 10 bits I2C address. 55 * \retval 1 if address is a 10 bits I2C address. 60 /*------------------------------------------------------------------------------ 62 ------------------------------------------------------------------------------*/ [all …]
|
| /OK3568_Linux_fs/kernel/drivers/media/i2c/m5mols/ |
| H A D | m5mols.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 3 * Header for M-5MOLS 8M Pixel camera sensor with ISP 16 #include <media/v4l2-subdev.h> 35 * struct m5mols_resolution - structure for the resolution 49 * struct m5mols_exif - structure for the EXIF information of M-5MOLS 72 * struct m5mols_capture - Structure for the capture capability 88 * struct m5mols_scenemode - structure for the scenemode capability 91 * @wb_mode: mode which means the WhiteBalance is Auto or Manual 97 * @af_range: Auto Focus's range 99 * @mcc: Multi-axis Color Conversion which means emotion color [all …]
|
| /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/extcon/ |
| H A D | extcon-rt8973a.txt | 2 * Richtek RT8973A - Micro USB Switch device 4 The Richtek RT8973A is Micro USB Switch with OVP and I2C interface. The RT8973A 7 speed USB operation. Also, RT8973A support 'auto-configuration' mode. 8 If auto-configuration mode is enabled, RT8973A would control internal h/w patch 9 for USB D-/D+ switching. 12 - compatible: Should be "richtek,rt8973a-muic" 13 - reg: Specifies the I2C slave address of the MUIC block. It should be 0x14 14 - interrupts: Interrupt specifiers for detection interrupt sources. 19 compatible = "richtek,rt8973a-muic"; 20 interrupt-parent = <&gpx1>;
|
| /OK3568_Linux_fs/kernel/drivers/net/ethernet/intel/ixgbe/ |
| H A D | ixgbe_phy.c | 1 // SPDX-License-Identifier: GPL-2.0 2 /* Copyright(c) 1999 - 2018 Intel Corporation. */ 29 * ixgbe_out_i2c_byte_ack - Send I2C byte with ack 46 * ixgbe_in_i2c_byte_ack - Receive an I2C byte and send ack 64 * ixgbe_ones_comp_byte_add - Perform one's complement addition 68 * Returns one's complement 8-bit sum. 79 * ixgbe_read_i2c_combined_generic_int - Perform I2C read combined operation 81 * @addr: I2C bus address to read from 82 * @reg: I2C device register to read from 91 u32 swfw_mask = hw->phy.phy_semaphore_mask; in ixgbe_read_i2c_combined_generic_int() [all …]
|
| /OK3568_Linux_fs/kernel/include/linux/platform_data/ |
| H A D | i2c-mux-gpio.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * i2c-mux-gpio interface to platform code 12 #define I2C_MUX_GPIO_NO_IDLE ((unsigned)-1) 15 * struct i2c_mux_gpio_platform_data - Platform-dependent data for i2c-mux-gpio 16 * @parent: Parent I2C bus adapter number 17 * @base_nr: Base I2C bus number to number adapters from or zero for dynamic 21 * @classes: Optional I2C auto-detection classes
|
| H A D | i2c-mux-reg.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 3 * I2C multiplexer using a single register 13 * struct i2c_mux_reg_platform_data - Platform-dependent data for i2c-mux-reg 14 * @parent: Parent I2C bus adapter number 15 * @base_nr: Base I2C bus number to number adapters from or zero for dynamic 20 * @classes: Optional I2C auto-detection classes
|
| /OK3568_Linux_fs/kernel/drivers/regulator/ |
| H A D | xz3216.c | 6 * Based on xz3216.c that is work by zhangqing<zhangqing@rock-chips.com> 16 #include <linux/i2c.h> 66 struct i2c_client *i2c; member 97 ret = regmap_read(xz3216->regmap, xz3216->vol_reg, &val); in xz3216_dcdc_get_mode() 112 return regmap_update_bits(xz3216->regmap, xz3216->vol_reg, in xz3216_dcdc_set_mode() 115 return regmap_update_bits(xz3216->regmap, xz3216->vol_reg, in xz3216_dcdc_set_mode() 118 DBG("error:dcdc_xz3216 only auto and pwm mode\n"); in xz3216_dcdc_set_mode() 119 return -EINVAL; in xz3216_dcdc_set_mode() 126 return regmap_update_bits(xz3216->regmap, XZ3216_BUCK1_SLP_VOL_BASE, in xz3216_dcdc_suspend_enable() 133 return regmap_update_bits(xz3216->regmap, XZ3216_BUCK1_SLP_VOL_BASE, in xz3216_dcdc_suspend_disable() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/extcon/ |
| H A D | extcon-rt8973a.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * extcon-rt8973a.c - Richtek RT8973A extcon driver to support USB switches 10 #include <linux/i2c.h> 19 #include <linux/extcon-provider.h> 21 #include "extcon-rt8973a.h" 42 struct i2c_client *i2c; member 145 /* |---------|--ADC| */ 152 { RT8973A_INT1_ATTACH, "muic-attach" }, 153 { RT8973A_INT1_DETACH, "muic-detach" }, 154 { RT8973A_INT1_CHGDET, "muic-chgdet" }, [all …]
|
| /OK3568_Linux_fs/kernel/sound/soc/codecs/ |
| H A D | pcm512x-i2c.c | 1 // SPDX-License-Identifier: GPL-2.0-only 11 #include <linux/i2c.h> 16 static int pcm512x_i2c_probe(struct i2c_client *i2c, in pcm512x_i2c_probe() argument 22 /* msb needs to be set to enable auto-increment of addresses */ in pcm512x_i2c_probe() 26 regmap = devm_regmap_init_i2c(i2c, &config); in pcm512x_i2c_probe() 30 return pcm512x_probe(&i2c->dev, regmap); in pcm512x_i2c_probe() 33 static int pcm512x_i2c_remove(struct i2c_client *i2c) in pcm512x_i2c_remove() argument 35 pcm512x_remove(&i2c->dev); in pcm512x_i2c_remove() 46 MODULE_DEVICE_TABLE(i2c, pcm512x_i2c_id); 84 MODULE_DESCRIPTION("ASoC PCM512x codec driver - I2C");
|
| /OK3568_Linux_fs/kernel/sound/soc/amd/ |
| H A D | acp-da7219-max98357a.c | 30 #include <sound/soc-dapm.h> 37 #include <linux/i2c.h> 43 #include "../codecs/da7219-aad.h" 56 struct snd_soc_card *card = rtd->card; in cz_da7219_init() 58 struct snd_soc_component *component = codec_dai->component; in cz_da7219_init() 60 dev_info(rtd->dev, "codec dai name = %s\n", codec_dai->name); in cz_da7219_init() 65 dev_err(rtd->dev, "can't set codec sysclk: %d\n", ret); in cz_da7219_init() 72 dev_err(rtd->dev, "can't set codec pll: %d\n", ret); in cz_da7219_init() 76 da7219_dai_wclk = devm_clk_get(component->dev, "da7219-dai-wclk"); in cz_da7219_init() 80 da7219_dai_bclk = devm_clk_get(component->dev, "da7219-dai-bclk"); in cz_da7219_init() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/rtc/ |
| H A D | rtc-s5m.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 // Copyright (c) 2013-2014 Samsung Electronics Co., Ltd 11 #include <linux/i2c.h> 26 * in S5M_RTC_UDR_CON register. UDR is auto-cleared when data have 48 * specific fields in UDR register. These fields usually are auto-cleared 74 * auto-cleared after successful update. 77 /* Auto-cleared mask in UDR field for writing time and alarm */ 131 * Register map for S2MPS15 - in comparison to S2MPS14 the WUDR and AUDR bits 149 struct i2c_client *i2c; member 176 tm->tm_sec = data[RTC_SEC] & 0x7f; in s5m8767_data_to_tm() [all …]
|