Zephyr Project API 3.7.0
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
npm1300.h File Reference
#include <stddef.h>
#include <stdint.h>
#include <zephyr/device.h>
#include <zephyr/drivers/gpio.h>

Go to the source code of this file.

Enumerations

enum  mfd_npm1300_event_t {
  NPM1300_EVENT_CHG_COMPLETED , NPM1300_EVENT_CHG_ERROR , NPM1300_EVENT_BATTERY_DETECTED , NPM1300_EVENT_BATTERY_REMOVED ,
  NPM1300_EVENT_SHIPHOLD_PRESS , NPM1300_EVENT_SHIPHOLD_RELEASE , NPM1300_EVENT_WATCHDOG_WARN , NPM1300_EVENT_VBUS_DETECTED ,
  NPM1300_EVENT_VBUS_REMOVED , NPM1300_EVENT_GPIO0_EDGE , NPM1300_EVENT_GPIO1_EDGE , NPM1300_EVENT_GPIO2_EDGE ,
  NPM1300_EVENT_GPIO3_EDGE , NPM1300_EVENT_GPIO4_EDGE , NPM1300_EVENT_MAX
}
 

Functions

int mfd_npm1300_reg_read_burst (const struct device *dev, uint8_t base, uint8_t offset, void *data, size_t len)
 Read multiple registers from npm1300.
 
int mfd_npm1300_reg_read (const struct device *dev, uint8_t base, uint8_t offset, uint8_t *data)
 Read single register from npm1300.
 
int mfd_npm1300_reg_write (const struct device *dev, uint8_t base, uint8_t offset, uint8_t data)
 Write single register to npm1300.
 
int mfd_npm1300_reg_write2 (const struct device *dev, uint8_t base, uint8_t offset, uint8_t data1, uint8_t data2)
 Write two registers to npm1300.
 
int mfd_npm1300_reg_update (const struct device *dev, uint8_t base, uint8_t offset, uint8_t data, uint8_t mask)
 Update selected bits in npm1300 register.
 
int mfd_npm1300_set_timer (const struct device *dev, uint32_t time_ms)
 Write npm1300 timer register.
 
int mfd_npm1300_reset (const struct device *dev)
 npm1300 full power reset
 
int mfd_npm1300_hibernate (const struct device *dev, uint32_t time_ms)
 npm1300 hibernate
 
int mfd_npm1300_add_callback (const struct device *dev, struct gpio_callback *callback)
 Add npm1300 event callback.
 
int mfd_npm1300_remove_callback (const struct device *dev, struct gpio_callback *callback)
 Remove npm1300 event callback.