Lines Matching refs:gpio
14 #include <linux/gpio/driver.h>
30 static int rdc_gpio_get_value(struct gpio_chip *chip, unsigned gpio)
37 reg = gpio < 32 ? gpch->reg1_data_base : gpch->reg2_data_base;
41 gpch->data_reg[gpio < 32 ? 0 : 1]);
45 return (1 << (gpio & 0x1f)) & value ? 1 : 0;
49 unsigned gpio, int value)
52 int reg = (gpio < 32) ? 0 : 1;
57 gpch->data_reg[reg] |= 1 << (gpio & 0x1f);
59 gpch->data_reg[reg] &= ~(1 << (gpio & 0x1f));
68 unsigned gpio, int value)
74 rdc_gpio_set_value_impl(chip, gpio, value);
79 unsigned gpio, int value)
88 err = pci_read_config_dword(gpch->sb_pdev, gpio < 32 ?
93 reg |= 1 << (gpio & 0x1f);
95 err = pci_write_config_dword(gpch->sb_pdev, gpio < 32 ?
100 rdc_gpio_set_value_impl(chip, gpio, value);
109 static int rdc_gpio_direction_input(struct gpio_chip *chip, unsigned gpio)
111 return rdc_gpio_config(chip, gpio, 1);
135 r = platform_get_resource_byname(pdev, IORESOURCE_IO, "gpio-reg1");
137 dev_err(&pdev->dev, "failed to get gpio-reg1 resource\n");
146 r = platform_get_resource_byname(pdev, IORESOURCE_IO, "gpio-reg2");
148 dev_err(&pdev->dev, "failed to get gpio-reg2 resource\n");
155 rdc321x_gpio_dev->chip.label = "rdc321x-gpio";
188 .driver.name = "rdc321x-gpio",
197 MODULE_ALIAS("platform:rdc321x-gpio");