| /optee_os/core/include/kernel/ |
| H A D | interrupt.h | 79 void (*configure)(struct itr_chip *chip, size_t it, uint32_t type, 81 void (*enable)(struct itr_chip *chip, size_t it); 82 void (*disable)(struct itr_chip *chip, size_t it); 83 void (*mask)(struct itr_chip *chip, size_t it); 84 void (*unmask)(struct itr_chip *chip, size_t it); 85 void (*raise_pi)(struct itr_chip *chip, size_t it); 86 void (*raise_sgi)(struct itr_chip *chip, size_t it, 88 void (*set_affinity)(struct itr_chip *chip, size_t it, 90 void (*set_wake)(struct itr_chip *chip, size_t it, bool on); 103 struct itr_chip *chip; member [all …]
|
| /optee_os/core/drivers/ |
| H A D | versal_gpio.c | 73 static void versal_gpio_get_pin(struct versal_gpio_chip *chip, uint32_t gpio, in versal_gpio_get_pin() argument 76 struct versal_gpio_platdata *platdata = &chip->plat; in versal_gpio_get_pin() 98 static enum gpio_level versal_gpio_get_value(struct versal_gpio_chip *chip, in versal_gpio_get_value() argument 104 versal_gpio_get_pin(chip, gpio, &bank, &pin); in versal_gpio_get_value() 106 return (io_read32(chip->base + DATA_RO_OFFSET(bank)) >> pin) & 1; in versal_gpio_get_value() 109 static void versal_gpio_set_value(struct versal_gpio_chip *chip, uint32_t gpio, in versal_gpio_set_value() argument 116 versal_gpio_get_pin(chip, gpio, &bank, &pin); in versal_gpio_set_value() 133 io_write32(chip->base + off, val); in versal_gpio_set_value() 136 static void versal_gpio_set_direction(struct versal_gpio_chip *chip, in versal_gpio_set_direction() argument 143 versal_gpio_get_pin(chip, gpio, &bank, &pin); in versal_gpio_set_direction() [all …]
|
| H A D | sp805_wdt.c | 15 static vaddr_t chip_to_base(struct wdt_chip *chip) in chip_to_base() argument 18 container_of(chip, struct sp805_wdt_data, chip); in chip_to_base() 23 static TEE_Result sp805_setload(struct wdt_chip *chip, unsigned long timeout) in sp805_setload() argument 26 container_of(chip, struct sp805_wdt_data, chip); in sp805_setload() 46 static void sp805_config(struct wdt_chip *chip, bool enable) in sp805_config() argument 49 container_of(chip, struct sp805_wdt_data, chip); in sp805_config() 50 vaddr_t base = chip_to_base(chip); in sp805_config() 66 static void sp805_ping(struct wdt_chip *chip) in sp805_ping() argument 68 sp805_config(chip, false); in sp805_ping() 71 static void sp805_enable(struct wdt_chip *chip) in sp805_enable() argument [all …]
|
| H A D | serial8250_uart.c | 33 static vaddr_t chip_to_base(struct serial_chip *chip) in chip_to_base() argument 36 container_of(chip, struct serial8250_uart_data, chip); in chip_to_base() 41 static void serial8250_uart_flush(struct serial_chip *chip) in serial8250_uart_flush() argument 43 vaddr_t base = chip_to_base(chip); in serial8250_uart_flush() 54 static bool serial8250_uart_have_rx_data(struct serial_chip *chip) in serial8250_uart_have_rx_data() argument 56 vaddr_t base = chip_to_base(chip); in serial8250_uart_have_rx_data() 61 static int serial8250_uart_getchar(struct serial_chip *chip) in serial8250_uart_getchar() argument 63 vaddr_t base = chip_to_base(chip); in serial8250_uart_getchar() 65 while (!serial8250_uart_have_rx_data(chip)) { in serial8250_uart_getchar() 72 static void serial8250_uart_putc(struct serial_chip *chip, int ch) in serial8250_uart_putc() argument [all …]
|
| H A D | sprd_uart.c | 44 static vaddr_t chip_to_base(struct serial_chip *chip) in chip_to_base() argument 47 container_of(chip, struct sprd_uart_data, chip); in chip_to_base() 52 static void sprd_uart_flush(struct serial_chip *chip) in sprd_uart_flush() argument 54 vaddr_t base = chip_to_base(chip); in sprd_uart_flush() 60 static bool sprd_uart_have_rx_data(struct serial_chip *chip) in sprd_uart_have_rx_data() argument 62 vaddr_t base = chip_to_base(chip); in sprd_uart_have_rx_data() 67 static void sprd_uart_putc(struct serial_chip *chip, int ch) in sprd_uart_putc() argument 69 vaddr_t base = chip_to_base(chip); in sprd_uart_putc() 71 sprd_uart_flush(chip); in sprd_uart_putc() 75 static int sprd_uart_getchar(struct serial_chip *chip) in sprd_uart_getchar() argument [all …]
|
| H A D | ffa_console.c | 16 struct serial_chip chip; member 36 static void ffa_console_32_flush(struct serial_chip *chip) in ffa_console_32_flush() argument 39 container_of(chip, struct ffa_console_data, chip); in ffa_console_32_flush() 49 static void ffa_console_32_putc(struct serial_chip *chip, int ch) in ffa_console_32_putc() argument 52 container_of(chip, struct ffa_console_data, chip); in ffa_console_32_putc() 57 ffa_console_32_flush(chip); in ffa_console_32_putc() 65 static void ffa_console_64_flush(struct serial_chip *chip) in ffa_console_64_flush() argument 68 container_of(chip, struct ffa_console_data, chip); in ffa_console_64_flush() 78 static void ffa_console_64_putc(struct serial_chip *chip, int ch) in ffa_console_64_putc() argument 81 container_of(chip, struct ffa_console_data, chip); in ffa_console_64_putc() [all …]
|
| H A D | pl011.c | 80 static vaddr_t chip_to_base(struct serial_chip *chip) in chip_to_base() argument 83 container_of(chip, struct pl011_data, chip); in chip_to_base() 88 static void pl011_flush(struct serial_chip *chip) in pl011_flush() argument 90 vaddr_t base = chip_to_base(chip); in pl011_flush() 104 static bool pl011_have_rx_data(struct serial_chip *chip) in pl011_have_rx_data() argument 106 vaddr_t base = chip_to_base(chip); in pl011_have_rx_data() 111 static int pl011_getchar(struct serial_chip *chip) in pl011_getchar() argument 113 vaddr_t base = chip_to_base(chip); in pl011_getchar() 115 while (!pl011_have_rx_data(chip)) in pl011_getchar() 120 static void pl011_putc(struct serial_chip *chip, int ch) in pl011_putc() argument [all …]
|
| H A D | sifive_uart.c | 25 static vaddr_t chip_to_base(struct serial_chip *chip) in chip_to_base() argument 28 container_of(chip, struct sifive_uart_data, chip); in chip_to_base() 33 static void sifive_uart_flush(struct serial_chip *chip) in sifive_uart_flush() argument 35 vaddr_t base = chip_to_base(chip); in sifive_uart_flush() 43 static bool sifive_uart_have_rx_data(struct serial_chip *chip) in sifive_uart_have_rx_data() argument 45 vaddr_t base = chip_to_base(chip); in sifive_uart_have_rx_data() 50 static int sifive_uart_getchar(struct serial_chip *chip) in sifive_uart_getchar() argument 52 vaddr_t base = chip_to_base(chip); in sifive_uart_getchar() 54 while (!sifive_uart_have_rx_data(chip)) { in sifive_uart_getchar() 61 static void sifive_uart_putc(struct serial_chip *chip, int ch) in sifive_uart_putc() argument [all …]
|
| H A D | cdns_uart.c | 59 static vaddr_t chip_to_base(struct serial_chip *chip) in chip_to_base() argument 62 container_of(chip, struct cdns_uart_data, chip); in chip_to_base() 67 static void cdns_uart_flush(struct serial_chip *chip) in cdns_uart_flush() argument 69 vaddr_t base = chip_to_base(chip); in cdns_uart_flush() 76 static bool cdns_uart_have_rx_data(struct serial_chip *chip) in cdns_uart_have_rx_data() argument 78 vaddr_t base = chip_to_base(chip); in cdns_uart_have_rx_data() 84 static int cdns_uart_getchar(struct serial_chip *chip) in cdns_uart_getchar() argument 86 vaddr_t base = chip_to_base(chip); in cdns_uart_getchar() 88 while (!cdns_uart_have_rx_data(chip)) in cdns_uart_getchar() 93 static void cdns_uart_putc(struct serial_chip *chip, int ch) in cdns_uart_putc() argument [all …]
|
| H A D | imx_lpuart.c | 21 static vaddr_t chip_to_base(struct serial_chip *chip) in chip_to_base() argument 24 container_of(chip, struct imx_uart_data, chip); in chip_to_base() 29 static int imx_lpuart_getchar(struct serial_chip *chip) in imx_lpuart_getchar() argument 32 vaddr_t base = chip_to_base(chip); in imx_lpuart_getchar() 45 static void imx_lpuart_putc(struct serial_chip *chip, int ch) in imx_lpuart_putc() argument 47 vaddr_t base = chip_to_base(chip); in imx_lpuart_putc() 64 pd->chip.ops = &imx_lpuart_ops; in imx_uart_init() 80 return &pd->chip; in imx_lpuart_dev_alloc() 83 static int imx_lpuart_dev_init(struct serial_chip *chip, const void *fdt, in imx_lpuart_dev_init() argument 87 container_of(chip, struct imx_uart_data, chip); in imx_lpuart_dev_init() [all …]
|
| H A D | ns16550.c | 49 static vaddr_t chip_to_base_and_data(struct serial_chip *chip, in chip_to_base_and_data() argument 52 *pd = container_of(chip, struct ns16550_data, chip); in chip_to_base_and_data() 57 static void ns16550_flush(struct serial_chip *chip) in ns16550_flush() argument 60 vaddr_t base = chip_to_base_and_data(chip, &pd); in ns16550_flush() 67 static void ns16550_putc(struct serial_chip *chip, int ch) in ns16550_putc() argument 70 vaddr_t base = chip_to_base_and_data(chip, &pd); in ns16550_putc() 72 ns16550_flush(chip); in ns16550_putc() 78 static bool ns16550_have_rx_data(struct serial_chip *chip) in ns16550_have_rx_data() argument 81 vaddr_t base = chip_to_base_and_data(chip, &pd); in ns16550_have_rx_data() 87 static int ns16550_getchar(struct serial_chip *chip) in ns16550_getchar() argument [all …]
|
| H A D | mvebu_uart.c | 57 static vaddr_t chip_to_base(struct serial_chip *chip) in chip_to_base() argument 60 container_of(chip, struct mvebu_uart_data, chip); in chip_to_base() 65 static void mvebu_uart_flush(struct serial_chip *chip) in mvebu_uart_flush() argument 67 vaddr_t base = chip_to_base(chip); in mvebu_uart_flush() 80 static bool mvebu_uart_have_rx_data(struct serial_chip *chip) in mvebu_uart_have_rx_data() argument 82 vaddr_t base = chip_to_base(chip); in mvebu_uart_have_rx_data() 87 static int mvebu_uart_getchar(struct serial_chip *chip) in mvebu_uart_getchar() argument 89 vaddr_t base = chip_to_base(chip); in mvebu_uart_getchar() 91 while (!mvebu_uart_have_rx_data(chip)) in mvebu_uart_getchar() 96 static void mvebu_uart_putc(struct serial_chip *chip, int ch) in mvebu_uart_putc() argument [all …]
|
| H A D | imx_uart.c | 87 static vaddr_t chip_to_base(struct serial_chip *chip) in chip_to_base() argument 90 container_of(chip, struct imx_uart_data, chip); in chip_to_base() 95 static void imx_uart_flush(struct serial_chip *chip) in imx_uart_flush() argument 97 vaddr_t base = chip_to_base(chip); in imx_uart_flush() 105 static int imx_uart_getchar(struct serial_chip *chip) in imx_uart_getchar() argument 107 vaddr_t base = chip_to_base(chip); in imx_uart_getchar() 115 static void imx_uart_putc(struct serial_chip *chip, int ch) in imx_uart_putc() argument 117 vaddr_t base = chip_to_base(chip); in imx_uart_putc() 137 pd->chip.ops = &imx_uart_ops; in imx_uart_init() 153 return &pd->chip; in imx_uart_dev_alloc() [all …]
|
| H A D | hi16xx_uart.c | 61 static vaddr_t chip_to_base(struct serial_chip *chip) in chip_to_base() argument 64 container_of(chip, struct hi16xx_uart_data, chip); in chip_to_base() 69 static void hi16xx_uart_flush(struct serial_chip *chip) in hi16xx_uart_flush() argument 71 vaddr_t base = chip_to_base(chip); in hi16xx_uart_flush() 77 static void hi16xx_uart_putc(struct serial_chip *chip, int ch) in hi16xx_uart_putc() argument 79 vaddr_t base = chip_to_base(chip); in hi16xx_uart_putc() 89 static bool hi16xx_uart_have_rx_data(struct serial_chip *chip) in hi16xx_uart_have_rx_data() argument 91 vaddr_t base = chip_to_base(chip); in hi16xx_uart_have_rx_data() 96 static int hi16xx_uart_getchar(struct serial_chip *chip) in hi16xx_uart_getchar() argument 98 vaddr_t base = chip_to_base(chip); in hi16xx_uart_getchar() [all …]
|
| H A D | ls_gpio.c | 29 static enum gpio_level ls_gpio_get_value(struct gpio_chip *chip, in ls_gpio_get_value() argument 34 struct ls_gpio_chip_data *gc_data = container_of(chip, in ls_gpio_get_value() 36 chip); in ls_gpio_get_value() 55 static void ls_gpio_set_value(struct gpio_chip *chip, unsigned int gpio_pin, in ls_gpio_set_value() argument 59 struct ls_gpio_chip_data *gc_data = container_of(chip, in ls_gpio_set_value() 61 chip); in ls_gpio_set_value() 80 static enum gpio_dir ls_gpio_get_direction(struct gpio_chip *chip, in ls_gpio_get_direction() argument 85 struct ls_gpio_chip_data *gc_data = container_of(chip, in ls_gpio_get_direction() 87 chip); in ls_gpio_get_direction() 106 static void ls_gpio_set_direction(struct gpio_chip *chip, unsigned int gpio_pin, in ls_gpio_set_direction() argument [all …]
|
| H A D | atmel_uart.c | 53 static vaddr_t chip_to_base(struct serial_chip *chip) in chip_to_base() argument 56 container_of(chip, struct atmel_uart_data, chip); in chip_to_base() 61 static void atmel_uart_flush(struct serial_chip *chip) in atmel_uart_flush() argument 63 vaddr_t base = chip_to_base(chip); in atmel_uart_flush() 69 static int atmel_uart_getchar(struct serial_chip *chip) in atmel_uart_getchar() argument 71 vaddr_t base = chip_to_base(chip); in atmel_uart_getchar() 79 static void atmel_uart_putc(struct serial_chip *chip, int ch) in atmel_uart_putc() argument 81 vaddr_t base = chip_to_base(chip); in atmel_uart_putc() 98 pd->chip.ops = &atmel_uart_ops; in atmel_uart_init()
|
| H A D | amlogic_uart.c | 25 static vaddr_t chip_to_base(struct serial_chip *chip) in chip_to_base() argument 28 container_of(chip, struct amlogic_uart_data, chip); in chip_to_base() 33 static void amlogic_uart_flush(struct serial_chip *chip) in amlogic_uart_flush() argument 35 vaddr_t base = chip_to_base(chip); in amlogic_uart_flush() 41 static int amlogic_uart_getchar(struct serial_chip *chip) in amlogic_uart_getchar() argument 43 vaddr_t base = chip_to_base(chip); in amlogic_uart_getchar() 51 static void amlogic_uart_putc(struct serial_chip *chip, int ch) in amlogic_uart_putc() argument 53 vaddr_t base = chip_to_base(chip); in amlogic_uart_putc() 70 pd->chip.ops = &amlogic_uart_ops; in amlogic_uart_init()
|
| H A D | scif.c | 48 static vaddr_t chip_to_base(struct serial_chip *chip) in chip_to_base() argument 51 container_of(chip, struct scif_uart_data, chip); in chip_to_base() 56 static void scif_uart_flush(struct serial_chip *chip) in scif_uart_flush() argument 58 vaddr_t base = chip_to_base(chip); in scif_uart_flush() 64 static void scif_uart_putc(struct serial_chip *chip, int ch) in scif_uart_putc() argument 66 vaddr_t base = chip_to_base(chip); in scif_uart_putc() 87 pd->chip.ops = &scif_uart_ops; in scif_uart_init() 94 scif_uart_flush(&pd->chip); in scif_uart_init()
|
| H A D | stih_asc.c | 17 static vaddr_t chip_to_base(struct serial_chip *chip) in chip_to_base() argument 20 container_of(chip, struct stih_asc_pd, chip); in chip_to_base() 25 static void stih_asc_flush(struct serial_chip *chip) in stih_asc_flush() argument 27 vaddr_t base = chip_to_base(chip); in stih_asc_flush() 33 static void stih_asc_putc(struct serial_chip *chip, int ch) in stih_asc_putc() argument 35 vaddr_t base = chip_to_base(chip); in stih_asc_putc() 52 pd->chip.ops = &stih_asc_ops; in stih_asc_init()
|
| H A D | aplic_msi.c | 74 static void aplic_op_configure(struct itr_chip *chip, size_t it, uint32_t type, in aplic_op_configure() argument 77 struct aplic_data *aplic = container_of(chip, struct aplic_data, chip); in aplic_op_configure() 90 static void aplic_op_enable(struct itr_chip *chip, size_t it) in aplic_op_enable() argument 92 struct aplic_data *aplic = container_of(chip, struct aplic_data, chip); in aplic_op_enable() 100 static void aplic_op_disable(struct itr_chip *chip, size_t it) in aplic_op_disable() argument 102 struct aplic_data *aplic = container_of(chip, struct aplic_data, chip); in aplic_op_disable() 110 static void aplic_op_raise_pi(struct itr_chip *chip, size_t it) in aplic_op_raise_pi() argument 112 struct aplic_data *aplic = container_of(chip, struct aplic_data, chip); in aplic_op_raise_pi() 142 aplic->chip.ops = &aplic_ops; in aplic_init() 147 interrupt_main_init(&aplic_data.chip); in aplic_init()
|
| H A D | stm32_uart.c | 49 static vaddr_t loc_chip_to_base(struct serial_chip *chip) in loc_chip_to_base() argument 53 pd = container_of(chip, struct stm32_uart_pdata, chip); in loc_chip_to_base() 58 static void loc_flush(struct serial_chip *chip) in loc_flush() argument 60 vaddr_t base = loc_chip_to_base(chip); in loc_flush() 68 static void loc_putc(struct serial_chip *chip, int ch) in loc_putc() argument 70 vaddr_t base = loc_chip_to_base(chip); in loc_putc() 80 static bool loc_have_rx_data(struct serial_chip *chip) in loc_have_rx_data() argument 82 vaddr_t base = loc_chip_to_base(chip); in loc_have_rx_data() 87 static int loc_getchar(struct serial_chip *chip) in loc_getchar() argument 89 vaddr_t base = loc_chip_to_base(chip); in loc_getchar() [all …]
|
| /optee_os/core/kernel/ |
| H A D | interrupt.c | 25 static bool itr_chip_is_valid(struct itr_chip *chip) in itr_chip_is_valid() argument 27 return chip && is_unpaged(chip) && chip->ops && in itr_chip_is_valid() 28 is_unpaged((void *)chip->ops) && in itr_chip_is_valid() 29 chip->ops->mask && is_unpaged(chip->ops->mask) && in itr_chip_is_valid() 30 chip->ops->unmask && is_unpaged(chip->ops->unmask) && in itr_chip_is_valid() 31 chip->ops->enable && chip->ops->disable; in itr_chip_is_valid() 34 static void __itr_chip_init(struct itr_chip *chip) in __itr_chip_init() argument 36 SLIST_INIT(&chip->handlers); in __itr_chip_init() 39 TEE_Result itr_chip_init(struct itr_chip *chip) in itr_chip_init() argument 45 if (!itr_chip_is_valid(chip) || !chip->ops->configure) in itr_chip_init() [all …]
|
| /optee_os/core/arch/arm/plat-hikey/ |
| H A D | spi_test.c | 32 pd.chip.ops->set_interrupt(NULL, GPIO6_2, in spi_cs_callback() 34 pd.chip.ops->set_direction(NULL, GPIO6_2, GPIO_DIR_OUT); in spi_cs_callback() 44 pd.chip.ops->set_value(NULL, GPIO6_2, value); in spi_cs_callback() 93 pd.chip.ops->configure(&pd.chip); in spi_test_with_manual_cs_control() 94 pd.chip.ops->start(&pd.chip); in spi_test_with_manual_cs_control() 105 res = pd.chip.ops->txrx8(&pd.chip, tx, rx, len); in spi_test_with_manual_cs_control() 124 res = pd.chip.ops->txrx8(&pd.chip, tx, rx, len); in spi_test_with_manual_cs_control() 142 res = pd.chip.ops->txrx8(&pd.chip, tx, rx, len); in spi_test_with_manual_cs_control() 154 pd.chip.ops->end(&pd.chip); in spi_test_with_manual_cs_control() 183 pd.chip.ops->configure(&pd.chip); in spi_test_with_registered_cs_cb() [all …]
|
| /optee_os/core/include/drivers/ |
| H A D | gpio.h | 81 enum gpio_dir (*get_direction)(struct gpio_chip *chip, 84 void (*set_direction)(struct gpio_chip *chip, unsigned int gpio_pin, 87 enum gpio_level (*get_value)(struct gpio_chip *chip, 90 void (*set_value)(struct gpio_chip *chip, unsigned int gpio_pin, 93 enum gpio_interrupt (*get_interrupt)(struct gpio_chip *chip, 96 void (*set_interrupt)(struct gpio_chip *chip, unsigned int gpio_pin, 99 TEE_Result (*configure)(struct gpio_chip *chip, struct gpio *gpio); 101 void (*put)(struct gpio_chip *chip, struct gpio *gpio); 111 struct gpio_chip *chip; member 124 gpio->chip->ops->set_direction(gpio->chip, gpio->pin, dir); in gpio_set_direction() [all …]
|
| /optee_os/core/drivers/amd/ |
| H A D | ps_gpio_driver.c | 35 static enum gpio_level ps_gpio_get_value(struct gpio_chip *chip, in ps_gpio_get_value() argument 40 struct amd_gpio_info *ps = container_of(chip, struct amd_gpio_info, in ps_gpio_get_value() 41 chip); in ps_gpio_get_value() 51 static void ps_gpio_set_value(struct gpio_chip *chip, in ps_gpio_set_value() argument 59 struct amd_gpio_info *ps = container_of(chip, struct amd_gpio_info, in ps_gpio_set_value() 60 chip); in ps_gpio_set_value() 83 static enum gpio_dir ps_gpio_get_dir(struct gpio_chip *chip, in ps_gpio_get_dir() argument 88 struct amd_gpio_info *ps = container_of(chip, struct amd_gpio_info, in ps_gpio_get_dir() 89 chip); in ps_gpio_get_dir() 99 static void ps_gpio_set_dir(struct gpio_chip *chip, in ps_gpio_set_dir() argument [all …]
|