From 5e37bf11d20696ffbf87b87ec4c3bd6c7679e303 Mon Sep 17 00:00:00 2001 From: Sergi Granell Date: Tue, 11 Jul 2017 01:26:22 +0200 Subject: Update I2C --- include/kernel/lowio/i2c.h | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) (limited to 'include/kernel/lowio/i2c.h') diff --git a/include/kernel/lowio/i2c.h b/include/kernel/lowio/i2c.h index 6d500f6..b4b92f1 100644 --- a/include/kernel/lowio/i2c.h +++ b/include/kernel/lowio/i2c.h @@ -10,24 +10,26 @@ extern "C" { typedef enum SceI2cErrorCode { SCE_I2C_ERROR_INVALID_BUS = 0x803F0300, SCE_I2C_ERROR_INVALID_SIZE = 0x803F0302, - SCE_I2C_ERROR_INVALID_DEVICE = 0x803F0303 + SCE_I2C_ERROR_INVALID_ADDR = 0x803F0303 } SceI2cErrorCode; typedef struct SceI2cDebugHandlers { unsigned int size; - void (*write_start)(int bus, int device, unsigned char *buffer, int size); - void (*write_error)(int bus, int error, int result); - void (*read_start)(int bus, int device, unsigned char *buffer, int size); - void (*read_error)(int bus, int error, int result); - void (*write_read_start)(int bus, int write_device, unsigned char *write_buffer, int write_size); - void (*write_read_error)(int bus, int error, int result); + void (*write_start)(int bus, int addr, unsigned char *buffer, int size); + void (*write_end)(int bus, int error, int result); + void (*read_start)(int bus, int addr, unsigned char *buffer, int size); + void (*read_end)(int bus, int error, int result); + void (*write_read_start)(int bus, int write_addr, unsigned char *write_buffer, int write_size, + unsigned int read_addr, unsigned char *read_buffer, int read_size); + void (*write_read_end)(int bus, int error, int result); } SceI2cDebugHandlers; -int sceI2cTransferRead(int bus, unsigned int address, unsigned char *buffer, int size); -int sceI2cTransferWrite(int bus, unsigned int device, const unsigned char *buffer, int size); +int sceI2cInit(int bus); +int sceI2cTransferRead(int bus, unsigned int addr, unsigned char *buffer, int size); +int sceI2cTransferWrite(int bus, unsigned int addr, const unsigned char *buffer, int size); int sceI2cTransferWriteRead(int bus, - unsigned int write_device, const unsigned char *write_buffer, int write_size, - unsigned int read_device, unsigned char *read_buffer, int read_size); + unsigned int write_addr, unsigned char *write_buffer, int write_size, + unsigned int read_addr, unsigned char *read_buffer, int read_size); int sceI2cSetDebugHandlers(int bus, SceI2cDebugHandlers *debug_handlers); -- cgit v1.2.3