Lines Matching refs:rdc321x_gpio_dev
121 struct rdc321x_gpio *rdc321x_gpio_dev;
130 rdc321x_gpio_dev = devm_kzalloc(&pdev->dev, sizeof(struct rdc321x_gpio),
132 if (!rdc321x_gpio_dev)
141 spin_lock_init(&rdc321x_gpio_dev->lock);
142 rdc321x_gpio_dev->sb_pdev = pdata->sb_pdev;
143 rdc321x_gpio_dev->reg1_ctrl_base = r->start;
144 rdc321x_gpio_dev->reg1_data_base = r->start + 0x4;
152 rdc321x_gpio_dev->reg2_ctrl_base = r->start;
153 rdc321x_gpio_dev->reg2_data_base = r->start + 0x4;
155 rdc321x_gpio_dev->chip.label = "rdc321x-gpio";
156 rdc321x_gpio_dev->chip.owner = THIS_MODULE;
157 rdc321x_gpio_dev->chip.direction_input = rdc_gpio_direction_input;
158 rdc321x_gpio_dev->chip.direction_output = rdc_gpio_config;
159 rdc321x_gpio_dev->chip.get = rdc_gpio_get_value;
160 rdc321x_gpio_dev->chip.set = rdc_gpio_set_value;
161 rdc321x_gpio_dev->chip.base = 0;
162 rdc321x_gpio_dev->chip.ngpio = pdata->max_gpios;
164 platform_set_drvdata(pdev, rdc321x_gpio_dev);
169 err = pci_read_config_dword(rdc321x_gpio_dev->sb_pdev,
170 rdc321x_gpio_dev->reg1_data_base,
171 &rdc321x_gpio_dev->data_reg[0]);
175 err = pci_read_config_dword(rdc321x_gpio_dev->sb_pdev,
176 rdc321x_gpio_dev->reg2_data_base,
177 &rdc321x_gpio_dev->data_reg[1]);
182 rdc321x_gpio_dev->chip.ngpio);
183 return devm_gpiochip_add_data(&pdev->dev, &rdc321x_gpio_dev->chip,
184 rdc321x_gpio_dev);