From fd1a2ff603f0748e5bd35be200fd176c236f6f8a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Markus=20Fr=C3=B6schle?= Date: Mon, 12 Jan 2015 14:00:20 +0000 Subject: [PATCH] added skeleton for planned i2c API --- BaS_gcc/BaS_gcc.files | 1 + BaS_gcc/Makefile | 3 ++- BaS_gcc/i2c/i2c.c | 41 +++++++++++++++++++++++++++++++++++++++++ BaS_gcc/include/i2c.h | 11 +++++++++++ 4 files changed, 55 insertions(+), 1 deletion(-) create mode 100644 BaS_gcc/i2c/i2c.c diff --git a/BaS_gcc/BaS_gcc.files b/BaS_gcc/BaS_gcc.files index be2ea1f..f18b5a4 100644 --- a/BaS_gcc/BaS_gcc.files +++ b/BaS_gcc/BaS_gcc.files @@ -196,3 +196,4 @@ util/bas_string.c util/printf_helper.S util/wait.c bas.lk.in +i2c/i2c.c diff --git a/BaS_gcc/Makefile b/BaS_gcc/Makefile index f67ee07..559a046 100644 --- a/BaS_gcc/Makefile +++ b/BaS_gcc/Makefile @@ -52,7 +52,7 @@ TRGTDIRS= ./firebee ./m5484lite ./m54455 OBJDIRS=$(patsubst %, %/objs,$(TRGTDIRS)) TOOLDIR=util -VPATH=dma exe flash fs if kbd pci spi sys usb net util video radeon x86emu xhdi +VPATH=dma exe flash fs i2c if kbd pci spi sys usb net util video radeon x86emu xhdi # Linker control file. The final $(LDCFILE) is intermediate only (preprocessed version of $(LDCSRC) LDCFILE=bas.lk @@ -85,6 +85,7 @@ CSRCS= \ s19reader.c \ flash.c \ dma.c \ + i2c.c \ xhdi_sd.c \ xhdi_interface.c \ pci.c \ diff --git a/BaS_gcc/i2c/i2c.c b/BaS_gcc/i2c/i2c.c new file mode 100644 index 0000000..94e0cb8 --- /dev/null +++ b/BaS_gcc/i2c/i2c.c @@ -0,0 +1,41 @@ + +#include + +void i2c_init(void) +{ + +} + +void i2c_set_frequency(int hz) +{ +} + +int i2c_read(int address, char *data, int lengt, bool repeated) +{ + return 0; +} + +int i2c_read_byte(int ack) +{ + return 0; +} + +int i2c_write(int address, const char *data, int length, bool repeated) +{ + return 0; +} + +int i2c_write_byte(int data) +{ + return 0; +} + +void i2c_start(void) +{ + +} + +void i2c_stop(void) +{ + +} diff --git a/BaS_gcc/include/i2c.h b/BaS_gcc/include/i2c.h index 5884ada..ac44287 100644 --- a/BaS_gcc/include/i2c.h +++ b/BaS_gcc/include/i2c.h @@ -28,6 +28,8 @@ #ifndef _I2C_H #define _I2C_H +#include "bas_types.h" + /* --- General options ------------------------------------------------ */ struct i2c_msg; @@ -82,4 +84,13 @@ struct i2c_msg unsigned char *buf; /* pointer to msg data */ }; +extern void i2c_init(void); +extern void i2c_set_frequency(int hz); +extern int i2c_read(int address, char *data, int lengt, bool repeated); +extern int i2c_read_byte(int ack); +extern int i2c_write(int address, const char *data, int length, bool repeated); +extern int i2c_write_byte(int data); +extern void i2c_start(void); +extern void i2c_stop(void); + #endif /* _I2C_H */