diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/drivers/xpowers/axp209/axp209.c | 13 | ||||
-rw-r--r-- | src/drivers/xpowers/axp209/chip.h | 21 |
2 files changed, 34 insertions, 0 deletions
diff --git a/src/drivers/xpowers/axp209/axp209.c b/src/drivers/xpowers/axp209/axp209.c index 68ab8a5d42..9f77cf6867 100644 --- a/src/drivers/xpowers/axp209/axp209.c +++ b/src/drivers/xpowers/axp209/axp209.c @@ -9,7 +9,9 @@ */ #include "axp209.h" +#include "chip.h" +#include <device/device.h> #include <device/i2c.h> /* Hide these definitions from the rest of the source, so keep them here */ @@ -228,3 +230,14 @@ enum cb_err axp209_set_ldo4_voltage(u8 bus, u16 millivolts) return CB_SUCCESS; } + +/* + * Usually, the AXP209 is enabled and configured in romstage, so there is no + * need for a full ramstage driver. Hence .enable_dev is NULL. + */ +#ifndef __PRE_RAM__ +struct chip_operations drivers_xpowers_axp209_config = { + CHIP_NAME("X-Powers AXP 209 Power Management Unit") + .enable_dev = NULL, +}; +#endif /* __PRE_RAM__ */ diff --git a/src/drivers/xpowers/axp209/chip.h b/src/drivers/xpowers/axp209/chip.h new file mode 100644 index 0000000000..c19253d6b5 --- /dev/null +++ b/src/drivers/xpowers/axp209/chip.h @@ -0,0 +1,21 @@ +/* + * X-Powers AXP 209 devicetree.cb interface + * + * Copyright (C) 2013 Alexandru Gagniuc <mr.nuke.me@gmail.com> + * Subject to the GNU GPL v2, or (at your option) any later version. + */ + +#ifndef AXP209_CHIP_H +#define AXP209_CHIP_H + +#include <types.h> + +struct drivers_xpowers_axp209_config { + u16 dcdc2_voltage_mv; /**< DCDC2 converter voltage output */ + u16 dcdc3_voltage_mv; /**< DCDC3 converter voltage output */ + u16 ldo2_voltage_mv; /**< LDO2 regulator voltage output */ + u16 ldo3_voltage_mv; /**< LDO3 regulator voltage output */ + u16 ldo4_voltage_mv; /**< LDO4 regulator voltage output */ +}; + +#endif /* AXP209_CHIP_H */ |