1
0
mirror of https://xff.cz/git/u-boot/ synced 2025-10-18 08:23:24 +02:00

gpio: add ops to get dir flags

Add the ops for GPIO driver get_dir_flags(), allows to get dynamically
the current gpio configuration; it is used by the API function
dm_gpio_get_dir_flags().

When these optional ops are absent, the gpio uclass continues to use
the mandatory ops (direction_output, direction_input, get_value) and
value of desc->flags to manage only the main dir flags:
- GPIOD_IS_IN
- GPIOD_IS_OUT
- GPIOD_IS_OUT_ACTIVE
- GPIOD_ACTIVE_LOW

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Patrick Delaunay
2020-01-13 11:35:08 +01:00
committed by Tom Rini
parent 477ca57b9a
commit d2c07e56ab
2 changed files with 40 additions and 6 deletions

View File

@@ -297,6 +297,21 @@ struct dm_gpio_ops {
*/
int (*xlate)(struct udevice *dev, struct gpio_desc *desc,
struct ofnode_phandle_args *args);
/**
* get_dir_flags() - Get GPIO dir flags
*
* This function return the GPIO direction flags used.
*
* This method is optional.
*
* @dev: GPIO device
* @offset: GPIO offset within that device
* @flags: place to put the used direction flags by GPIO
* @return 0 if OK, -ve on error
*/
int (*get_dir_flags)(struct udevice *dev, unsigned int offset,
ulong *flags);
};
/**