| /linux/drivers/char/ipmi/ |
| H A D | ssif_bmc.c | 28 /* Transaction includes the address, the command, the length and the PEC byte */ 54 u8 pec; member 342 /* PEC - Start Read Address */ in calculate_response_part_pec() 343 part->pec = i2c_smbus_pec(0, &addr, 1); in calculate_response_part_pec() 344 /* PEC - SSIF Command */ in calculate_response_part_pec() 345 part->pec = i2c_smbus_pec(part->pec, &part->smbus_cmd, 1); in calculate_response_part_pec() 346 /* PEC - Restart Write Address */ in calculate_response_part_pec() 348 part->pec = i2c_smbus_pec(part->pec, &addr, 1); in calculate_response_part_pec() 349 part->pec = i2c_smbus_pec(part->pec, &part->length, 1); in calculate_response_part_pec() 351 part->pec = i2c_smbus_pec(part->pec, part->payload, part->length); in calculate_response_part_pec() [all …]
|
| /linux/drivers/net/mctp/ |
| H A D | mctp-i3c.c | 26 /* One byte less to allow for the PEC */ 28 /* 4 byte MCTP header, no data, 1 byte PEC */ 108 u8 pec, addr; in mctp_i3c_read() local 145 /* check PEC, including address byte */ in mctp_i3c_read() 147 pec = i2c_smbus_pec(0, &addr, 1); in mctp_i3c_read() 148 pec = i2c_smbus_pec(pec, xfer.data.in, xfer.len - 1); in mctp_i3c_read() 149 if (pec != ((u8 *)xfer.data.in)[xfer.len - 1]) { in mctp_i3c_read() 155 /* Remove PEC */ in mctp_i3c_read() 368 u8 addr, pec; in mctp_i3c_xmit() local 394 /* Need a linear buffer with space for the PEC */ in mctp_i3c_xmit() [all …]
|
| H A D | mctp-i2c.c | 33 /* Allow space for dest_address, command, byte_count, data, PEC */ 104 /* Count of bytes following byte_count, excluding PEC */ 278 u8 pec, calc_pec; in mctp_i2c_recv() local 282 /* + 1 for the PEC */ in mctp_i2c_recv() 287 /* recvlen excludes PEC */ in mctp_i2c_recv() 301 pec = midev->rx_buffer[midev->rx_pos - 1]; in mctp_i2c_recv() 303 if (pec != calc_pec) { in mctp_i2c_recv() 503 /* Linear case with space, we can just append the PEC */ in mctp_i2c_xmit() 514 /* command, bytecount, data, pec */ in mctp_i2c_xmit()
|
| /linux/arch/s390/pci/ |
| H A D | pci_event.c | 35 u16 pec; /* PCI event code */ member 48 u16 pec; /* PCI event code */ member 300 zpci_dbg(3, "err fid:%x, fh:%x, pec:%x\n", in __zpci_event_error() 301 ccdf->fid, ccdf->fh, ccdf->pec); in __zpci_event_error() 322 pdev ? pci_name(pdev) : "n/a", ccdf->pec, ccdf->fid); in __zpci_event_error() 327 switch (ccdf->pec) { in __zpci_event_error() 392 zpci_dbg(3, "avl fid:%x, fh:%x, pec:%x\n", in __zpci_event_availability() 393 ccdf->fid, ccdf->fh, ccdf->pec); in __zpci_event_availability() 398 switch (ccdf->pec) { in __zpci_event_availability()
|
| /linux/drivers/i2c/busses/ |
| H A D | i2c-amd8111.c | 150 #define AMD_SMB_PRTCL 0x00 /* protocol, PEC */ 194 unsigned char protocol, len, pec, temp[2]; in amd8111_access() local 199 pec = (flags & I2C_CLIENT_PEC) ? AMD_SMB_PRTCL_PEC : 0; in amd8111_access() 244 protocol |= AMD_SMB_PRTCL_WORD_DATA | pec; in amd8111_access() 265 protocol |= AMD_SMB_PRTCL_BLOCK_DATA | pec; in amd8111_access() 300 protocol = AMD_SMB_PRTCL_PROC_CALL | pec; in amd8111_access() 319 protocol = AMD_SMB_PRTCL_BLOCK_PROC_CALL | pec; in amd8111_access()
|
| H A D | i2c-amd-asf-plat.c | 158 /* Enable PEC and PEC append */ in amd_asf_setup_target() 182 /* Enable PEC and PEC append */ in amd_asf_access() 203 /* Exclude the receive header and PEC */ in amd_asf_xfer()
|
| H A D | i2c-mlxbf.c | 210 /* Packet error check (PEC) value. */ 237 #define MLXBF_I2C_MASTER_SEND_PEC_SHIFT 20 /* Send PEC byte when set to 1 */ 275 /* Packet error check (PEC) value. */ 293 #define MLXBF_I2C_SLAVE_SEND_PEC_SHIFT 21 /* Send PEC byte shift. */ 666 /* Zero PEC byte. */ in mlxbf_i2c_smbus_enable() 1018 *data_len = length; /* including PEC byte. */ in mlxbf_i2c_smbus_blk_process_call_func() 1892 pec_en = 0; /* Disable PEC since it is not supported. */ in mlxbf_i2c_irq_send() 2037 bool read, pec; in mlxbf_i2c_smbus_xfer() local 2043 pec = flags & I2C_FUNC_SMBUS_PEC; in mlxbf_i2c_smbus_xfer() 2054 pec); in mlxbf_i2c_smbus_xfer() [all …]
|
| H A D | i2c-npcm7xx.c | 127 #define NPCM_I2CPEC 0x16 /* PEC Data */ 575 u16 PEC_mask; /* PEC bit mask per slave address */ 1538 dev_info(bus->dev, "i2c%d register slave SA=0x%x, PEC=%d\n", bus->num, in npcm_i2c_reg_slave() 2262 /* for tx PEC is appended to buffer from i2c IF. PEC flag is ignored */ in npcm_i2c_master_start_xmit()
|
| /linux/drivers/i3c/master/ |
| H A D | ast2600-i3c-master.c | 109 * if the PEC is disabled. We have no way to restrict the length of in ast2600_i3c_set_dat_ibi() 111 * PEC checking, which means we drop a byte of payload data in ast2600_i3c_set_dat_ibi() 115 "Enabling PEC workaround. IBI payloads will be truncated\n"); in ast2600_i3c_set_dat_ibi()
|
| /linux/drivers/i2c/ |
| H A D | i2c-core-smbus.c | 61 static u8 i2c_smbus_msg_pec(u8 pec, struct i2c_msg *msg) in i2c_smbus_msg_pec() argument 65 pec = i2c_smbus_pec(pec, &addr, 1); in i2c_smbus_msg_pec() 68 return i2c_smbus_pec(pec, msg->buf, msg->len); in i2c_smbus_msg_pec() 89 pr_debug("Bad PEC 0x%02x vs. 0x%02x\n", in i2c_smbus_check_pec() 458 /* Compute PEC if first message is a write */ in i2c_smbus_xfer_emulated() 465 /* Ask for PEC if last message is a read */ in i2c_smbus_xfer_emulated() 479 /* Check PEC if last message is a read */ in i2c_smbus_xfer_emulated()
|
| H A D | i2c-dev.c | 427 * Setting the PEC flag here won't affect kernel drivers, in i2cdev_ioctl() 430 * the PEC flag already set, the i2c-dev driver won't see in i2cdev_ioctl() 613 * information and maybe a PEC flag. in i2cdev_open()
|
| H A D | i2c-smbus.c | 117 * use. We neither handle them, nor try to use PEC here. in smbus_alert()
|
| /linux/include/uapi/linux/ |
| H A D | i2c.h | 50 * if used, the SMBus PEC); and this value will be incremented by the number 64 * with SMBus PEC. The transfer terminates with a NAK, or when all those
|
| H A D | i2c-dev.h | 37 #define I2C_PEC 0x0708 /* != 0 to use PEC with SMBus */
|
| /linux/Documentation/i2c/ |
| H A D | smbus-protocol.rst | 246 Packet Error Checking (PEC) 251 PEC adds a CRC-8 error-checking byte to transfers using it, immediately 264 require PEC checksums.
|
| H A D | fault-codes.rst | 60 may have a way to report PEC mismatches on writes from the
|
| H A D | dev-interface.rst | 118 Selects SMBus PEC (packet error checking) generation and verification
|
| /linux/Documentation/i2c/busses/ |
| H A D | i2c-amd8111.rst | 35 Supported. Both PEC and block process call support is implemented. Slave
|
| H A D | i2c-viapro.rst | 76 The CX700/VX800/VX820 additionally appears to support SMBus PEC, although
|
| /linux/drivers/hwmon/ |
| H A D | max6621.c | 499 /* Set CONFIG0 register masking temperature alerts and PEC. */ in max6621_probe() 505 /* Set CONFIG1 register for PEC access retry number. */ in max6621_probe()
|
| /linux/drivers/hwmon/pmbus/ |
| H A D | pli1209bc.c | 17 * the page register is set to 1 will falsely enable PEC support. Disable
|
| /linux/Documentation/ABI/testing/ |
| H A D | sysfs-class-hwmon | 1068 What: /sys/class/hwmon/hwmonX/device/pec 1070 PEC support on I2C devices
|
| /linux/arch/s390/include/asm/ |
| H A D | ctlreg.h | 204 unsigned long pec : 1; /* PAI extension control */ member
|
| /linux/drivers/i2c/algos/ |
| H A D | i2c-algo-bit.c | 363 * the SMBus PEC was wrong. in sendbytes() 438 or 2 for a PEC transaction. */ in readbytes()
|
| /linux/Documentation/images/ |
| H A D | logo.svg | 1579 inkscape:label="Left Pec Shadow" 1587 inkscape:label="Right Pec Shadow" 1594 inkscape:label="Middle Pec Shadow" 1608 inkscape:label="Left Pec Upper Shadow" 1616 inkscape:label="Right Pec Side Shadow"
|