1
#define GPIO_CHIP(_bank) { \
.irq_base = IRQ_GPIO_BASE_ ## _bank, \
.gpio_chip = { \
.label = "Bank " # _bank, \
.owner = THIS_MODULE, \
.set = gpio_set_value, \
.get = gpio_get_value, \
.direction_output =gpio_direction_output, \
.direction_input = gpio_direction_input, \
.base = GPIO_BASE_ ## _bank, \
.ngpio =GPIO_NUM_ ## _bank, \
}, \
}
這是用.label和.set和其他定義什麼?這是什麼linux結構
static void gpio_set_value(struct gpio_chip *chip, unsigned gpio, int value)
{
uint32_t __iomem *reg = CHIP_TO_REG(chip, REG_GPIO_DATA_SET);
reg += !value;
writel(BIT(gpio), reg);
}
這個函數帶有writel,__iomen,BIT(),他們在哪裏引用Linux?