| /kernel/linux/linux-4.19/Documentation/i2c/ |
| D | gpio-fault-injection | 26 "sda" 29 By reading this file, you get the current state of SDA. By writing, you can 31 "echo 0 > sda" you force SDA low and thus, data cannot be transmitted. The bus 35 succeed because SDA is still pinned low until you manually release it again 36 with "echo 1 > sda". A test with an automatic release can be done with the 42 The following fault injectors create situations where SDA will be held low by a 44 there are I2C client devices which detect a stuck SDA on their side and release 46 device deglitching and monitoring the I2C bus. It could also detect a stuck SDA 57 transmitted. Because the device will ACK its presence, this results in SDA 58 being pulled low by the device while SCL is high. So, similar to the "sda" file [all …]
|
| /kernel/linux/linux-5.10/Documentation/i2c/ |
| D | gpio-fault-injection.rst | 30 "sda" 33 By reading this file, you get the current state of SDA. By writing, you can 35 "echo 0 > sda" you force SDA low and thus, data cannot be transmitted. The bus 39 succeed because SDA is still pinned low until you manually release it again 40 with "echo 1 > sda". A test with an automatic release can be done with the 46 The following fault injectors create situations where SDA will be held low by a 48 there are I2C client devices which detect a stuck SDA on their side and release 50 device deglitching and monitoring the I2C bus. It could also detect a stuck SDA 61 transmitted. Because the device will ACK its presence, this results in SDA 62 being pulled low by the device while SCL is high. So, similar to the "sda" file [all …]
|
| /kernel/linux/linux-5.10/drivers/gpu/drm/amd/display/dc/dce/ |
| D | dce_i2c_sw.c | 32 #define SDA true macro 111 write_bit_to_ddc(ddc_handle, SDA, (byte >> shift) & 1); in write_byte_sw() 125 /* The display sends ACK by preventing the SDA from going high in write_byte_sw() 127 * If the SDA goes high after that bit, it's a NACK in write_byte_sw() 132 write_bit_to_ddc(ddc_handle, SDA, true); in write_byte_sw() 143 ack = !read_bit_from_ddc(ddc_handle, SDA); in write_byte_sw() 175 if (read_bit_from_ddc(ddc_handle, SDA)) in read_byte_sw() 192 * SDA low means ACK, SDA high means NACK in read_byte_sw() 195 write_bit_to_ddc(ddc_handle, SDA, !more); in read_byte_sw() 208 write_bit_to_ddc(ddc_handle, SDA, true); in read_byte_sw() [all …]
|
| /kernel/linux/linux-4.19/drivers/video/fbdev/ |
| D | amba-clcd-nomadik.c | 16 static struct gpio_desc *sda; variable 29 gpiod_set_value_cansleep(sda, 1); in tpg110_readwrite_reg() 31 gpiod_set_value_cansleep(sda, 0); in tpg110_readwrite_reg() 42 gpiod_set_value_cansleep(sda, 0); in tpg110_readwrite_reg() 45 gpiod_set_value_cansleep(sda, 1); in tpg110_readwrite_reg() 56 gpiod_direction_input(sda); in tpg110_readwrite_reg() 70 gpiod_set_value_cansleep(sda, value); in tpg110_readwrite_reg() 72 value = gpiod_get_value(sda); in tpg110_readwrite_reg() 84 gpiod_direction_output(sda, 0); in tpg110_readwrite_reg() 206 sda = devm_fwnode_get_gpiod_from_child(dev, "sda", &np->fwnode, in tpg110_init() [all …]
|
| /kernel/linux/linux-5.10/drivers/i2c/busses/ |
| D | i2c-acorn.c | 20 #define SDA 0x01 macro 25 * SDA outputs as well (which may be different from the 32 u_int ioc_control = ioc_readb(IOC_CONTROL) & ~(SCL | SDA); in ioc_setscl() 47 u_int ioc_control = ioc_readb(IOC_CONTROL) & ~(SCL | SDA); in ioc_setsda() 51 ones |= SDA; in ioc_setsda() 53 ones &= ~SDA; in ioc_setsda() 67 return (ioc_readb(IOC_CONTROL) & SDA) != 0; in ioc_getsda() 87 force_ones = FORCE_ONES | SCL | SDA; in i2c_ioc_init()
|
| D | i2c-gpio.c | 22 struct gpio_desc *sda; member 36 * Toggle SDA by changing the output value of the pin. This is only 44 gpiod_set_value_cansleep(priv->sda, state); in i2c_gpio_setsda_val() 64 return gpiod_get_value_cansleep(priv->sda); in i2c_gpio_getsda() 104 WIRE_ATTRIBUTE(sda); 139 /* ADDR (7 bit) + RD (1 bit) + Client ACK, keep SDA hi (1 bit) */ in fops_incomplete_addr_phase_set() 158 /* 0x00 (8 bit) + Client ACK, keep SDA hi (1 bit) */ in fops_incomplete_write_byte_set() 222 * really started the transfer. Interrupt on falling SDA did only in fops_lose_arbitration_set() 289 debugfs_create_file_unsafe("sda", 0600, priv->debug_dir, priv, &fops_sda); in i2c_gpio_fault_injector_init() 314 of_property_read_bool(np, "i2c-gpio,sda-open-drain"); in of_i2c_gpio_get_props() [all …]
|
| /kernel/linux/linux-4.19/drivers/gpu/drm/amd/display/dc/i2caux/ |
| D | i2c_sw_engine.c | 50 #define SDA true macro 113 * the SDA going low from high, while the SCL is high. */ in start_sync() 120 write_bit_to_ddc(ddc_handle, SDA, true); in start_sync() 122 if (!read_bit_from_ddc(ddc_handle, SDA)) { in start_sync() 134 write_bit_to_ddc(ddc_handle, SDA, false); in start_sync() 156 * the SDA going high from low, while the SCL is high. */ in stop_sync() 162 write_bit_to_ddc(ddc_handle, SDA, false); in stop_sync() 171 write_bit_to_ddc(ddc_handle, SDA, true); in stop_sync() 176 if (read_bit_from_ddc(ddc_handle, SDA)) in stop_sync() 199 write_bit_to_ddc(ddc_handle, SDA, (byte >> shift) & 1); in write_byte() [all …]
|
| /kernel/linux/linux-4.19/drivers/i2c/busses/ |
| D | i2c-acorn.c | 23 #define SDA 0x01 macro 28 * SDA outputs as well (which may be different from the 35 u_int ioc_control = ioc_readb(IOC_CONTROL) & ~(SCL | SDA); in ioc_setscl() 50 u_int ioc_control = ioc_readb(IOC_CONTROL) & ~(SCL | SDA); in ioc_setsda() 54 ones |= SDA; in ioc_setsda() 56 ones &= ~SDA; in ioc_setsda() 70 return (ioc_readb(IOC_CONTROL) & SDA) != 0; in ioc_getsda() 90 force_ones = FORCE_ONES | SCL | SDA; in i2c_ioc_init()
|
| D | i2c-gpio.c | 23 struct gpio_desc *sda; member 34 * Toggle SDA by changing the output value of the pin. This is only 42 gpiod_set_value_cansleep(priv->sda, state); in i2c_gpio_setsda_val() 62 return gpiod_get_value_cansleep(priv->sda); in i2c_gpio_getsda() 102 WIRE_ATTRIBUTE(sda); 137 /* ADDR (7 bit) + RD (1 bit) + Client ACK, keep SDA hi (1 bit) */ in fops_incomplete_addr_phase_set() 156 /* 0x00 (8 bit) + Client ACK, keep SDA hi (1 bit) */ in fops_incomplete_write_byte_set() 185 debugfs_create_file_unsafe("sda", 0600, priv->debug_dir, priv, &fops_sda); in i2c_gpio_fault_injector_init() 214 of_property_read_bool(np, "i2c-gpio,sda-open-drain"); in of_i2c_gpio_get_props() 289 * If the SDA line is marked from platform data or device tree as in i2c_gpio_probe() [all …]
|
| /kernel/linux/linux-4.19/drivers/staging/sm750fb/ |
| D | ddk750_swi2c.c | 21 * a point in time where the SCL or SDA may be changed. 31 * the SDA may only be changed in section 2. and section 4. The table 40 * Tx Start SDA | | H | | L | 43 * Tx Stop SDA | | L | | H | 46 * Tx bit H SDA | | H | | | 49 * Tx bit L SDA | | L | | | 109 * value - Bit value to set to the SCL or SDA (0 = low, 1 = high) 143 * This function set/reset the SDA GPIO pin 146 * value - Bit value to set to the SCL or SDA (0 = low, 1 = high) 180 * This function read the data from the SDA GPIO pin [all …]
|
| /kernel/linux/linux-5.10/drivers/staging/sm750fb/ |
| D | ddk750_swi2c.c | 19 * a point in time where the SCL or SDA may be changed. 29 * the SDA may only be changed in section 2. and section 4. The table 38 * Tx Start SDA | | H | | L | 41 * Tx Stop SDA | | L | | H | 44 * Tx bit H SDA | | H | | | 47 * Tx bit L SDA | | L | | | 107 * value - Bit value to set to the SCL or SDA (0 = low, 1 = high) 141 * This function set/reset the SDA GPIO pin 144 * value - Bit value to set to the SCL or SDA (0 = low, 1 = high) 178 * This function read the data from the SDA GPIO pin [all …]
|
| /kernel/linux/linux-4.19/Documentation/devicetree/bindings/i2c/ |
| D | i2c-gpio.txt | 5 - sda-gpios: gpio used for the sda signal, this should be flagged as 20 - gpios: sda and scl gpio, alternative for {sda,scl}-gpios 21 - i2c-gpio,sda-open-drain: this means that something outside of our 22 control has put the GPIO line used for SDA into open drain mode, and 36 sda-gpios = <&pioA 23 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>;
|
| D | i2c-designware.txt | 14 - i2c-sda-hold-time-ns : should contain the SDA hold time in nanoseconds. 20 - i2c-sda-falling-time-ns : should contain the SDA falling time in nanoseconds. 42 i2c-sda-hold-time-ns = <300>; 43 i2c-sda-falling-time-ns = <300>;
|
| D | i2c-s3c2410.txt | 16 - samsung,i2c-sda-delay: Delay (in ns) applied to data line (SDA) edges. 20 - gpios: The order of the gpios should be the following: <SDA, SCL>. 41 samsung,i2c-sda-delay = <100>; 44 gpios = <&gpd1 2 0 /* SDA */
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/i2c/ |
| D | i2c-gpio.yaml | 20 sda-gpios: 22 gpio used for the sda signal, this should be flagged as 52 description: sda and scl gpio, alternative for {sda,scl}-gpios 54 i2c-gpio,sda-open-drain: 58 the GPIO line used for SDA into open drain mode, and that something is 70 - sda-gpios
|
| D | snps,designware-i2c.yaml | 42 ICPU_CFG:TWI_DELAY registers to setup the SDA hold time. 68 i2c-sda-hold-time-ns: 71 The property should contain the SDA hold time in nanoseconds. This option 82 i2c-sda-falling-time-ns: 85 The property should contain the SDA falling time in nanoseconds. 126 i2c-sda-hold-time-ns = <300>; 127 i2c-sda-falling-time-ns = <300>;
|
| D | i2c-s3c2410.txt | 16 - samsung,i2c-sda-delay: Delay (in ns) applied to data line (SDA) edges. 20 - gpios: The order of the gpios should be the following: <SDA, SCL>. 41 samsung,i2c-sda-delay = <100>; 44 gpios = <&gpd1 2 0 /* SDA */
|
| /kernel/linux/linux-4.19/drivers/media/usb/gspca/ |
| D | w996Xcf.c | 189 w9968cf_write_sb(sd, 0x0011); /* SDE=1, SDA=0, SCL=1 */ in w9968cf_smbus_start() 190 w9968cf_write_sb(sd, 0x0010); /* SDE=1, SDA=0, SCL=0 */ in w9968cf_smbus_start() 195 w9968cf_write_sb(sd, 0x0010); /* SDE=1, SDA=0, SCL=0 */ in w9968cf_smbus_stop() 196 w9968cf_write_sb(sd, 0x0011); /* SDE=1, SDA=0, SCL=1 */ in w9968cf_smbus_stop() 197 w9968cf_write_sb(sd, 0x0013); /* SDE=1, SDA=1, SCL=1 */ in w9968cf_smbus_stop() 203 int sda; in w9968cf_smbus_write_byte() local 206 sda = (v & 0x80) ? 2 : 0; in w9968cf_smbus_write_byte() 208 /* SDE=1, SDA=sda, SCL=0 */ in w9968cf_smbus_write_byte() 209 w9968cf_write_sb(sd, 0x10 | sda); in w9968cf_smbus_write_byte() 210 /* SDE=1, SDA=sda, SCL=1 */ in w9968cf_smbus_write_byte() [all …]
|
| /kernel/linux/linux-5.10/drivers/media/usb/gspca/ |
| D | w996Xcf.c | 179 w9968cf_write_sb(sd, 0x0011); /* SDE=1, SDA=0, SCL=1 */ in w9968cf_smbus_start() 180 w9968cf_write_sb(sd, 0x0010); /* SDE=1, SDA=0, SCL=0 */ in w9968cf_smbus_start() 185 w9968cf_write_sb(sd, 0x0010); /* SDE=1, SDA=0, SCL=0 */ in w9968cf_smbus_stop() 186 w9968cf_write_sb(sd, 0x0011); /* SDE=1, SDA=0, SCL=1 */ in w9968cf_smbus_stop() 187 w9968cf_write_sb(sd, 0x0013); /* SDE=1, SDA=1, SCL=1 */ in w9968cf_smbus_stop() 193 int sda; in w9968cf_smbus_write_byte() local 196 sda = (v & 0x80) ? 2 : 0; in w9968cf_smbus_write_byte() 198 /* SDE=1, SDA=sda, SCL=0 */ in w9968cf_smbus_write_byte() 199 w9968cf_write_sb(sd, 0x10 | sda); in w9968cf_smbus_write_byte() 200 /* SDE=1, SDA=sda, SCL=1 */ in w9968cf_smbus_write_byte() [all …]
|
| /kernel/linux/linux-5.10/drivers/i2c/algos/ |
| D | i2c-algo-bit.c | 117 /* assert: scl, sda are high */ in i2c_start() 185 /* read ack: SDA should be pulled down by slave, or it may in i2c_outb() 188 ack = !getsda(adap); /* ack: sda is pulled low -> success */ in i2c_outb() 194 /* assert: scl is low (sda undef) */ in i2c_outb() 233 int scl, sda, ret; in test_bus() local 242 pr_info("%s: Testing SDA only, SCL is not readable\n", name); in test_bus() 244 sda = getsda(adap); in test_bus() 246 if (!scl || !sda) { in test_bus() 248 "%s: bus seems to be busy (scl=%d, sda=%d)\n", in test_bus() 249 name, scl, sda); in test_bus() [all …]
|
| /kernel/linux/linux-4.19/drivers/i2c/algos/ |
| D | i2c-algo-bit.c | 126 /* assert: scl, sda are high */ in i2c_start() 194 /* read ack: SDA should be pulled down by slave, or it may in i2c_outb() 197 ack = !getsda(adap); /* ack: sda is pulled low -> success */ in i2c_outb() 203 /* assert: scl is low (sda undef) */ in i2c_outb() 242 int scl, sda, ret; in test_bus() local 251 pr_info("%s: Testing SDA only, SCL is not readable\n", name); in test_bus() 253 sda = getsda(adap); in test_bus() 255 if (!scl || !sda) { in test_bus() 257 "%s: bus seems to be busy (scl=%d, sda=%d)\n", in test_bus() 258 name, scl, sda); in test_bus() [all …]
|
| /kernel/linux/linux-5.10/Documentation/admin-guide/device-mapper/ |
| D | dm-ebs.rst | 42 Emulate 1 sector = 512 bytes logical block size on /dev/sda starting at 45 ebs /dev/sda 1024 1 47 Emulate 2 sector = 1KiB logical block size on /dev/sda starting at 49 This presumes 2KiB logical blocksize on /dev/sda or less to work: 51 ebs /dev/sda 128 2 4
|
| /kernel/linux/linux-5.10/arch/arm/mach-sa1100/ |
| D | assabet.c | 118 #define SDA GPIO_GPIO(15) macro 126 GPSR = SDA; in adv7171_start() 128 GPCR = SDA; in adv7171_start() 135 GPSR = SDA; in adv7171_stop() 147 GPSR = SDA; in adv7171_send() 149 GPCR = SDA; in adv7171_send() 156 GPSR = SDA; in adv7171_send() 158 GPDR &= ~SDA; in adv7171_send() 161 if (GPLR & SDA) in adv7171_send() 164 GPCR = SCK | SDA; in adv7171_send() [all …]
|
| /kernel/linux/linux-5.10/drivers/hwmon/ |
| D | emc1403.c | 38 struct sensor_device_attribute *sda = to_sensor_dev_attr(attr); in temp_show() local 43 retval = regmap_read(data->regmap, sda->index, &val); in temp_show() 52 struct sensor_device_attribute_2 *sda = to_sensor_dev_attr_2(attr); in bit_show() local 57 retval = regmap_read(data->regmap, sda->nr, &val); in bit_show() 60 return sprintf(buf, "%d\n", !!(val & sda->index)); in bit_show() 66 struct sensor_device_attribute *sda = to_sensor_dev_attr(attr); in temp_store() local 73 retval = regmap_write(data->regmap, sda->index, in temp_store() 83 struct sensor_device_attribute_2 *sda = to_sensor_dev_attr_2(attr); in bit_store() local 91 retval = regmap_update_bits(data->regmap, sda->nr, sda->index, in bit_store() 92 val ? sda->index : 0); in bit_store() [all …]
|
| /kernel/linux/linux-4.19/arch/arm/mach-sa1100/ |
| D | assabet.c | 121 #define SDA GPIO_GPIO(15) macro 129 GPSR = SDA; in adv7171_start() 131 GPCR = SDA; in adv7171_start() 138 GPSR = SDA; in adv7171_stop() 150 GPSR = SDA; in adv7171_send() 152 GPCR = SDA; in adv7171_send() 159 GPSR = SDA; in adv7171_send() 161 GPDR &= ~SDA; in adv7171_send() 164 if (GPLR & SDA) in adv7171_send() 167 GPCR = SCK | SDA; in adv7171_send() [all …]
|