TT-System-Firmware APIs 19.10.99
Tenstorrent Firmware
Loading...
Searching...
No Matches
gpio_tt_bh.c File Reference
Include dependency graph for gpio_tt_bh.c:

Data Structures

struct  gpio_tt_bh_config
struct  gpio_tt_bh_data

Macros

#define DT_DRV_COMPAT   tenstorrent_bh_gpio
#define LOG_LEVEL   CONFIG_GPIO_LOG_LEVEL
#define DEFINE_GPIO_TT_BH(_num)

Functions

 LOG_MODULE_REGISTER (gpio_tt_bh)
static int gpio_tt_bh_pin_configure (const struct device *port, gpio_pin_t pin, gpio_flags_t flags)
static int gpio_tt_bh_port_get_raw (const struct device *port, gpio_port_value_t *value)
static int gpio_tt_bh_port_set_masked_raw (const struct device *port, gpio_port_pins_t mask, gpio_port_value_t value)
static int gpio_tt_bh_port_set_bits_raw (const struct device *port, gpio_port_pins_t pins)
static int gpio_tt_bh_port_clear_bits_raw (const struct device *port, gpio_port_pins_t pins)
static int gpio_tt_bh_port_toggle_bits (const struct device *port, gpio_port_pins_t pins)
static int gpio_tt_bh_pin_interrupt_configure (const struct device *port, gpio_pin_t pin, enum gpio_int_mode mode, enum gpio_int_trig trig)
static int gpio_tt_bh_manage_callback (const struct device *port, struct gpio_callback *cb, bool set)
static uint32_t gpio_tt_bh_get_pending_int (const struct device *dev)
static DEVICE_API (gpio, gpio_tt_bh_driver)
static int gpio_tt_bh_init (const struct device *dev)

Macro Definition Documentation

◆ DEFINE_GPIO_TT_BH

#define DEFINE_GPIO_TT_BH ( _num)
Value:
static const struct gpio_tt_bh_config gpio_tt_bh_config_##_num = { \
.common = {.port_pin_mask = GPIO_PORT_PIN_MASK_FROM_DT_INST(_num)}, \
.ngpios = DT_INST_PROP(_num, ngpios), \
.trien_addr = DT_REG_ADDR_BY_NAME(DT_DRV_INST(_num), trien), \
.rxen_addr = DT_REG_ADDR_BY_NAME(DT_DRV_INST(_num), rxen), \
.data_addr = DT_REG_ADDR_BY_NAME(DT_DRV_INST(_num), data), \
}; \
\
static struct gpio_tt_bh_data gpio_tt_bh_data_##_num = {}; \
\
DEVICE_DT_INST_DEFINE(_num, gpio_tt_bh_init, NULL, &gpio_tt_bh_data_##_num, \
&gpio_tt_bh_config_##_num, POST_KERNEL, CONFIG_GPIO_INIT_PRIORITY, \
&gpio_tt_bh_driver);
#define NULL
Definition avs.c:45
static int gpio_tt_bh_init(const struct device *dev)
Definition gpio_tt_bh.c:218
#define DT_DRV_INST(inst)
#define DT_INST_PROP(inst, prop)
#define DT_REG_ADDR_BY_NAME(node_id, name)
#define GPIO_PORT_PIN_MASK_FROM_DT_INST(inst)
Definition gpio_tt_bh.c:21

◆ DT_DRV_COMPAT

#define DT_DRV_COMPAT   tenstorrent_bh_gpio

◆ LOG_LEVEL

#define LOG_LEVEL   CONFIG_GPIO_LOG_LEVEL

Function Documentation

◆ DEVICE_API()

DEVICE_API ( gpio ,
gpio_tt_bh_driver  )
static

◆ gpio_tt_bh_get_pending_int()

uint32_t gpio_tt_bh_get_pending_int ( const struct device * dev)
static

◆ gpio_tt_bh_init()

int gpio_tt_bh_init ( const struct device * dev)
static

◆ gpio_tt_bh_manage_callback()

int gpio_tt_bh_manage_callback ( const struct device * port,
struct gpio_callback * cb,
bool set )
static

◆ gpio_tt_bh_pin_configure()

int gpio_tt_bh_pin_configure ( const struct device * port,
gpio_pin_t pin,
gpio_flags_t flags )
static

◆ gpio_tt_bh_pin_interrupt_configure()

int gpio_tt_bh_pin_interrupt_configure ( const struct device * port,
gpio_pin_t pin,
enum gpio_int_mode mode,
enum gpio_int_trig trig )
static

◆ gpio_tt_bh_port_clear_bits_raw()

int gpio_tt_bh_port_clear_bits_raw ( const struct device * port,
gpio_port_pins_t pins )
static

◆ gpio_tt_bh_port_get_raw()

int gpio_tt_bh_port_get_raw ( const struct device * port,
gpio_port_value_t * value )
static

◆ gpio_tt_bh_port_set_bits_raw()

int gpio_tt_bh_port_set_bits_raw ( const struct device * port,
gpio_port_pins_t pins )
static

◆ gpio_tt_bh_port_set_masked_raw()

int gpio_tt_bh_port_set_masked_raw ( const struct device * port,
gpio_port_pins_t mask,
gpio_port_value_t value )
static

◆ gpio_tt_bh_port_toggle_bits()

int gpio_tt_bh_port_toggle_bits ( const struct device * port,
gpio_port_pins_t pins )
static

◆ LOG_MODULE_REGISTER()

LOG_MODULE_REGISTER ( gpio_tt_bh )