summaryrefslogtreecommitdiff
path: root/zephyr/shim/include/gpio/gpio.h
diff options
context:
space:
mode:
Diffstat (limited to 'zephyr/shim/include/gpio/gpio.h')
-rw-r--r--zephyr/shim/include/gpio/gpio.h95
1 files changed, 0 insertions, 95 deletions
diff --git a/zephyr/shim/include/gpio/gpio.h b/zephyr/shim/include/gpio/gpio.h
deleted file mode 100644
index 18089e8a8e..0000000000
--- a/zephyr/shim/include/gpio/gpio.h
+++ /dev/null
@@ -1,95 +0,0 @@
-/* Copyright 2021 The Chromium OS Authors. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#ifndef ZEPHYR_SHIM_INCLUDE_GPIO_GPIO_H_
-#define ZEPHYR_SHIM_INCLUDE_GPIO_GPIO_H_
-
-#include <device.h>
-#include <devicetree.h>
-
-/* Information about each unused pin in the 'unused-pins' device tree node. */
-struct unused_pin_config {
- /* Device name of a unused gpio pin */
- const char *dev_name;
- /* Bit number of pin within a unused gpio pin */
- gpio_pin_t pin;
- /* Config flags of unused gpio pin */
- gpio_flags_t flags;
-};
-
-/**
- * @brief Set proper configuration for all unused pins.
- *
- * This function loops through all unused GPIOs in the node of "unused-gpios"
- * in the device tree file to set proper configuration. If the GPIO flag is 0,
- * set the GPIOs default setting for floating IOs to improve the power
- * consumption.
- *
- * @return 0 If successful.
- * @retval -ENOTSUP Not supported gpio device.
- * @retval -EIO I/O error when accessing an external GPIO chip.
- */
-int gpio_config_unused_pins(void) __attribute__((weak));
-
-#if DT_NODE_EXISTS(DT_PATH(unused_pins))
-/**
- * @brief Get a node from path '/unused-pins' which has a prop 'unused-gpios'.
- * It contains unused GPIOs and chip vendor needs to configure them for
- * better power consumption in the lowest power state.
- *
- * @return node identifier with that path.
- */
-#define UNUSED_PINS_LIST DT_PATH(unused_pins)
-
-/**
- * @brief Length of 'unused-gpios' property
- *
- * @return length of 'unused-gpios' prop which type is 'phandle-array'
- */
-#define UNUSED_GPIOS_LIST_LEN DT_PROP_LEN(UNUSED_PINS_LIST, unused_gpios)
-
-/**
- * @brief Construct a unused_pin_config structure from 'unused-gpios' property
- * at index 'i'
- *
- * @param i index of 'unused-gpios' prop which type is 'phandles-array'
- * @return unused_pin_config item at index 'i'
- */
-#define UNUSED_GPIO_CONFIG_BY_IDX(i, _) \
- { \
- .dev_name = DT_GPIO_LABEL_BY_IDX(UNUSED_PINS_LIST, \
- unused_gpios, i), \
- .pin = DT_GPIO_PIN_BY_IDX(UNUSED_PINS_LIST, unused_gpios, i), \
- .flags = DT_GPIO_FLAGS_BY_IDX(UNUSED_PINS_LIST, unused_gpios, \
- i), \
- },
-
-/**
- * @brief Macro function to construct a list of unused_pin_config items by
- * UTIL_LISTIFY func.
- *
- * Example devicetree fragment:
- * / {
- * unused-pins {
- * compatible = "unused-gpios";
- * unused-gpios = <&gpio5 1 0>,
- * <&gpiod 0 0>,
- * <&gpiof 3 0>;
- * };
- *
- * Example usage:
- * static const struct unused_pin_config unused_pin_configs[] = {
- * UNUSED_GPIO_CONFIG_LIST
- * };
- *
- * @return a list of unused_pin_config items
- */
-#define UNUSED_GPIO_CONFIG_LIST \
- UTIL_LISTIFY(UNUSED_GPIOS_LIST_LEN, UNUSED_GPIO_CONFIG_BY_IDX, _)
-
-#else
-#define UNUSED_GPIO_CONFIG_LIST /* Nothing if no 'unused-pins' node */
-#endif /* unused_pins */
-#endif /* ZEPHYR_SHIM_INCLUDE_GPIO_GPIO_H_ */