Skip to content

Commit

Permalink
charger: Adds basic stub API doc.
Browse files Browse the repository at this point in the history
Adds a short stub doc as a placeholder for future documentation in the
charger API.

Signed-off-by: Ricardo Rivera-Matos <rriveram@opensource.cirrus.com>
  • Loading branch information
rriveramcrus committed Apr 17, 2023
1 parent ed579ae commit db3f587
Show file tree
Hide file tree
Showing 4 changed files with 54 additions and 0 deletions.
4 changes: 4 additions & 0 deletions doc/develop/api/overview.rst
Expand Up @@ -45,6 +45,10 @@ between major releases are available in the :ref:`zephyr_release_notes`.
- Stable
- 1.14

* - :ref:`charger_api`
- Experimental
- 3.3

* - :ref:`counter_api`
- Unstable
- 1.14
Expand Down
38 changes: 38 additions & 0 deletions doc/hardware/peripherals/charger.rst
@@ -0,0 +1,38 @@
.. _charger_api:

Chargers (Experimental API Stub Doc)
#######################################

The charger subsystem exposes an API to uniformly access battery charger devices. Currently,
only reading data is supported.

Note: This API is currently experimental and this doc will be significantly changed as new features
are added to the API.

Basic Operation
***************

Properties
==========

Fundamentally, a property is a configurable setting, state, or quantity that a charger device can
measure.

Chargers typically support multiple properties, such as temperature readings of the battery-pack
or present-time current/voltage.

Properties are fetched using a client allocated array of :c:struct:`charger_get_property`. This
array is then populated by values as according to its `property_type` field.

Caching
=======

The Charger API explicitly provides no caching for its clients.


.. _charger_api_reference:

API Reference
*************

.. doxygengroup:: charger_interface
1 change: 1 addition & 0 deletions doc/hardware/peripherals/index.rst
Expand Up @@ -9,6 +9,7 @@ Peripherals
adc.rst
audio/index.rst
canbus/index.rst
charger.rst
coredump.rst
counter.rst
clock_control.rst
Expand Down
11 changes: 11 additions & 0 deletions include/zephyr/drivers/charger.h
Expand Up @@ -7,6 +7,13 @@
#ifndef ZEPHYR_INCLUDE_DRIVERS_CHARGER_H_
#define ZEPHYR_INCLUDE_DRIVERS_CHARGER_H_

/**
* @brief Charger Interface
* @defgroup charger_interface Charger Interface
* @ingroup io_interfaces
* @{
*/

#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
Expand Down Expand Up @@ -121,6 +128,10 @@ static inline int z_impl_charger_get_prop(const struct device *dev,
return api->get_property(dev, props, props_len);
}

/**
* @}
*/

#ifdef __cplusplus
}
#endif /* __cplusplus */
Expand Down

0 comments on commit db3f587

Please sign in to comment.