summaryrefslogtreecommitdiff
path: root/fw/fe310/eos/dev/drv/apds9151.c
diff options
context:
space:
mode:
authorUros Majstorovic <majstor@majstor.org>2025-02-16 20:11:47 +0100
committerUros Majstorovic <majstor@majstor.org>2025-02-16 20:11:47 +0100
commit064631db87182694459056ceeb331506b553d0f0 (patch)
treed1113214d11a6f407548c4f16008adb1e7c73475 /fw/fe310/eos/dev/drv/apds9151.c
parentaeb896b55c384d7f9a6e9a29f74cf560c6392c5b (diff)
drivers made independent from microcontroller/os
Diffstat (limited to 'fw/fe310/eos/dev/drv/apds9151.c')
-rw-r--r--fw/fe310/eos/dev/drv/apds9151.c32
1 files changed, 15 insertions, 17 deletions
diff --git a/fw/fe310/eos/dev/drv/apds9151.c b/fw/fe310/eos/dev/drv/apds9151.c
index a96b70b..796155d 100644
--- a/fw/fe310/eos/dev/drv/apds9151.c
+++ b/fw/fe310/eos/dev/drv/apds9151.c
@@ -1,9 +1,7 @@
#include <stdlib.h>
#include <stdint.h>
-#include "eos.h"
-#include "soc/i2c.h"
-
+#include "platform.h"
#include "apds9151.h"
#define APDS9151_ADDR 0x52
@@ -11,14 +9,14 @@
static int reg_read8(uint8_t reg, uint8_t *data) {
int rv;
- rv = eos_i2c_read8(APDS9151_ADDR, reg, data, 1);
+ rv = drv_i2c_read8(APDS9151_ADDR, reg, data, 1);
return rv;
}
static int reg_write8(uint8_t reg, uint8_t data) {
int rv;
- rv = eos_i2c_write8(APDS9151_ADDR, reg, &data, 1);
+ rv = drv_i2c_write8(APDS9151_ADDR, reg, &data, 1);
return rv;
}
@@ -26,13 +24,13 @@ static int reg_read16(uint8_t reg, uint16_t *data) {
int rv;
uint8_t b[2];
- rv = eos_i2c_read8(APDS9151_ADDR, reg, b, 2);
+ rv = drv_i2c_read8(APDS9151_ADDR, reg, b, 2);
if (rv) return rv;
*data = \
((uint16_t)b[0]) | \
((uint16_t)b[1] << 8);
- return EOS_OK;
+ return DRV_OK;
}
static int reg_write16(uint8_t reg, uint16_t data) {
@@ -41,24 +39,24 @@ static int reg_write16(uint8_t reg, uint16_t data) {
b[0] = data;
b[1] = data >> 8;
- rv = eos_i2c_write8(APDS9151_ADDR, reg, b, 2);
+ rv = drv_i2c_write8(APDS9151_ADDR, reg, b, 2);
if (rv) return rv;
- return EOS_OK;
+ return DRV_OK;
}
static int reg_read32(uint8_t reg, uint32_t *data) {
int rv;
uint8_t b[3];
- rv = eos_i2c_read8(APDS9151_ADDR, reg, b, 3);
+ rv = drv_i2c_read8(APDS9151_ADDR, reg, b, 3);
if (rv) return rv;
*data = \
((uint32_t)b[0]) | \
((uint32_t)b[1] << 8) | \
((uint32_t)b[2] << 16);
- return EOS_OK;
+ return DRV_OK;
}
static int reg_write32(uint8_t reg, uint32_t data) {
@@ -68,14 +66,14 @@ static int reg_write32(uint8_t reg, uint32_t data) {
b[0] = data;
b[1] = data >> 8;
b[2] = data >> 16;
- rv = eos_i2c_write8(APDS9151_ADDR, reg, b, 3);
+ rv = drv_i2c_write8(APDS9151_ADDR, reg, b, 3);
if (rv) return rv;
- return EOS_OK;
+ return DRV_OK;
}
int apds9151_reg_read(uint8_t reg, void *data) {
- int rv = EOS_OK;
+ int rv = DRV_OK;
switch (reg & (~APDS9151_REG_MASK)) {
case APDS9151_REG_SIZE_8: {
@@ -90,14 +88,14 @@ int apds9151_reg_read(uint8_t reg, void *data) {
rv = reg_read32(reg & APDS9151_REG_MASK, (uint32_t *)data);
break;
}
- default: return EOS_ERR;
+ default: return DRV_ERR;
}
return rv;
}
int apds9151_reg_write(uint8_t reg, uint32_t data) {
- int rv = EOS_OK;
+ int rv = DRV_OK;
switch (reg & (~APDS9151_REG_MASK)) {
case APDS9151_REG_SIZE_8: {
@@ -112,7 +110,7 @@ int apds9151_reg_write(uint8_t reg, uint32_t data) {
rv = reg_write32(reg & APDS9151_REG_MASK, (uint32_t)data);
break;
}
- default: return EOS_ERR;
+ default: return DRV_ERR;
}
return rv;