Lines Matching refs:index

29 #define READ32_GPIO_REG(index, offset) \
30 readl((uint32_t*)gpio->mmios[index].vaddr + (offset))
31 #define WRITE32_GPIO_REG(index, offset, value) \
32 writel(value, (uint32_t*)gpio->mmios[index].vaddr + (offset))
103 // Note: The out_pin_index returned by this API is not the index of the pin
105 // It is the index of the bit corresponding to the GPIO in consideration in a
126 static zx_status_t aml_gpio_config_in(void* ctx, uint32_t index, uint32_t flags) {
132 if ((status = aml_pin_to_block(gpio, index, &block, &pin_index)) != ZX_OK) {
133 zxlogf(ERROR, "aml_gpio_config: pin not found %u\n", index);
169 static zx_status_t aml_gpio_config_out(void* ctx, uint32_t index, uint8_t initial_value) {
175 if ((status = aml_pin_to_block(gpio, index, &block, &pin_index)) != ZX_OK) {
176 zxlogf(ERROR, "aml_gpio_config: pin not found %u\n", index);
319 uint32_t index = aml_gpio_get_unsed_irq_index(interrupt->irq_status);
320 if (index > interrupt->irq_count) {
327 zxlogf(ERROR, "GPIO Interrupt already configured for this pin %u\n", (int)index);
332 zxlogf(INFO, "GPIO Interrupt index %d allocated\n", (int)index);
348 status = pdev_get_interrupt(&gpio->pdev, index, flags_,
356 uint32_t pin_select_offset = ((index>3)? interrupt->pin_4_7_select_offset: interrupt->pin_0_3_select_offset);
358 // Select GPIO IRQ(index) and program it to
361 regval |= (((pin % PINS_PER_BLOCK) + block->pin_start) << (index * BITS_PER_GPIO_INTERRUPT));
369 mode_reg_val = mode_reg_val | (1 << index);
370 mode_reg_val = mode_reg_val | ((1 << index) << GPIO_INTERRUPT_POLARITY_SHIFT);
373 mode_reg_val = mode_reg_val | (1 << index);
374 mode_reg_val = mode_reg_val & ~((1 << index) << GPIO_INTERRUPT_POLARITY_SHIFT);
377 mode_reg_val = mode_reg_val & ~(1 << index);
378 mode_reg_val = mode_reg_val | ((1 << index) << GPIO_INTERRUPT_POLARITY_SHIFT);
381 mode_reg_val = mode_reg_val & ~(1 << index);
382 mode_reg_val = mode_reg_val & ~((1 << index) << GPIO_INTERRUPT_POLARITY_SHIFT);
393 regval | (0x7 << (index * BITS_PER_FILTER_SELECT)));
394 interrupt->irq_status |= 1 << index;
395 interrupt->irq_info[index] = pin;