diff options
Diffstat (limited to 'src/include/usr')
-rw-r--r-- | src/include/usr/devicefw/driverif.H | 13 | ||||
-rw-r--r-- | src/include/usr/i2c/i2creasoncodes.H | 31 |
2 files changed, 36 insertions, 8 deletions
diff --git a/src/include/usr/devicefw/driverif.H b/src/include/usr/devicefw/driverif.H index 4b721cb63..ee43e0519 100644 --- a/src/include/usr/devicefw/driverif.H +++ b/src/include/usr/devicefw/driverif.H @@ -43,7 +43,7 @@ namespace DeviceFW */ enum AccessType_DriverOnly { - XSCOM = LAST_ACCESS_TYPE, + XSCOM = LAST_ACCESS_TYPE, I2C, FSISCOM, @@ -79,9 +79,16 @@ namespace DeviceFW /** * Construct the device addressing parameters for the I2C device ops. + * @param[in] i_address - I2C address to access on slave device. + * @param[in] i_port - Which port to use from the I2C master. + * @param[in] i_engine - Which I2C master engine to use. + * @param[in] i_devAddr - The device address on a given engine/port. */ - #define DEVICE_I2C_ADDRESS( i_address )\ - DeviceFW::I2C, static_cast<uint64_t>(( i_address )) + #define DEVICE_I2C_ADDRESS( i_address, i_port, i_engine, i_devAddr )\ + DeviceFW::I2C, static_cast<uint64_t>(( i_address )),\ + static_cast<uint64_t>(( i_port )),\ + static_cast<uint64_t>(( i_engine )),\ + static_cast<uint64_t>(( i_devAddr )) /** @class InvalidParameterType diff --git a/src/include/usr/i2c/i2creasoncodes.H b/src/include/usr/i2c/i2creasoncodes.H index ad494d739..52b65770e 100644 --- a/src/include/usr/i2c/i2creasoncodes.H +++ b/src/include/usr/i2c/i2creasoncodes.H @@ -39,13 +39,20 @@ namespace I2C /** * @enum i2cModuleid * -* @brief Module Ids used in created errorlogs. Indicates which +* @brief Module Ids used in created errorlogs. Indicates which * functions an error log was created in. * */ enum i2cModuleId { - I2C_PERFORM_OP = 0x01, + I2C_INVALID_MODULE = 0x00, + I2C_PERFORM_OP = 0x01, + I2C_READ = 0x02, + I2C_WRITE = 0x03, + I2C_SETUP = 0x04, + I2C_WAIT_FOR_CMD_COMP = 0x05, + I2C_READ_STATUS_REG = 0x06, + I2C_CHECK_FOR_ERRORS = 0x07, }; /** @@ -56,9 +63,23 @@ enum i2cModuleId */ enum i2cReasonCode { - I2C_INVALID_DATA_BUFFER = I2C_COMP_ID | 0x01, - I2C_INVALID_OP_TYPE = I2C_COMP_ID | 0x02, - + I2C_INVALID_REASONCODE = I2C_COMP_ID | 0x00, // Invalid Reasoncode + I2C_INVALID_DATA_BUFFER = I2C_COMP_ID | 0x01, // Invalid Data Buffer pointer + I2C_INVALID_OP_TYPE = I2C_COMP_ID | 0x02, // Invalid Operation type + I2C_INVALID_COMMAND = I2C_COMP_ID | 0x03, // Invalid Command Status + I2C_LBUS_PARITY_ERROR = I2C_COMP_ID | 0x04, // Local Bus Parity Error + I2C_BACKEND_OVERRUN_ERROR = I2C_COMP_ID | 0x05, // Backend overrun Error + I2C_BACKEND_ACCESS_ERROR = I2C_COMP_ID | 0x06, // Backend access Error + I2C_ARBITRATION_LOST_ERROR = I2C_COMP_ID | 0x07, // Arbitration lost + I2C_NACK_RECEIVED = I2C_COMP_ID | 0x08, // NACK Received + I2C_DATA_REQUEST = I2C_COMP_ID | 0x09, // Data Request + I2C_STOP_ERROR = I2C_COMP_ID | 0x0A, // Stop Error + I2C_INTERRUPT = I2C_COMP_ID | 0x0B, // Interrupt Present - TODO - more to be added when bad machine path code is added. + I2C_FIFO_TIMEOUT = I2C_COMP_ID | 0x0C, // Timed out waiting on FIFO + I2C_BUS_NOT_READY = I2C_COMP_ID | 0x0D, // Bus Not ready + I2C_CMD_COMP_TIMEOUT = I2C_COMP_ID | 0x0E, // Timeout waiting for Cmd Complete + I2C_HW_ERROR_FOUND = I2C_COMP_ID | 0x0F, // Error found in Status register + I2C_MASTER_SENTINEL_TARGET = I2C_COMP_ID | 0x10, // Master Sentinel used as target }; }; // end I2C |