Lines Matching refs:ddata

29 	struct gpio_siox_ddata *ddata = dev_get_drvdata(&sdevice->dev);
31 mutex_lock(&ddata->lock);
32 buf[0] = ddata->setdata[0];
33 mutex_unlock(&ddata->lock);
40 struct gpio_siox_ddata *ddata = dev_get_drvdata(&sdevice->dev);
44 mutex_lock(&ddata->lock);
46 raw_spin_lock_irq(&ddata->irqlock);
52 ddata->getdata[bitpos / 8] & (1 << (bitpos % 8));
53 u32 irq_type = ddata->irq_type[offset];
58 ddata->irq_status |= 1 << offset;
62 ddata->irq_status |= 1 << offset;
66 trigger = ddata->irq_status & ddata->irq_enable;
68 raw_spin_unlock_irq(&ddata->irqlock);
70 ddata->getdata[0] = buf[0];
71 ddata->getdata[1] = buf[1];
72 ddata->getdata[2] = buf[2];
74 mutex_unlock(&ddata->lock);
78 struct irq_domain *irqdomain = ddata->gchip.irq.domain;
86 raw_spin_lock_irq(&ddata->irqlock);
87 ddata->irq_status &= ~(1 << offset);
88 raw_spin_unlock_irq(&ddata->irqlock);
100 struct gpio_siox_ddata *ddata = gpiochip_get_data(gc);
102 raw_spin_lock(&ddata->irqlock);
103 ddata->irq_status &= ~(1 << d->hwirq);
104 raw_spin_unlock(&ddata->irqlock);
110 struct gpio_siox_ddata *ddata = gpiochip_get_data(gc);
112 raw_spin_lock(&ddata->irqlock);
113 ddata->irq_enable &= ~(1 << d->hwirq);
114 raw_spin_unlock(&ddata->irqlock);
121 struct gpio_siox_ddata *ddata = gpiochip_get_data(gc);
124 raw_spin_lock(&ddata->irqlock);
125 ddata->irq_enable |= 1 << d->hwirq;
126 raw_spin_unlock(&ddata->irqlock);
132 struct gpio_siox_ddata *ddata = gpiochip_get_data(gc);
134 raw_spin_lock(&ddata->irqlock);
135 ddata->irq_type[d->hwirq] = type;
136 raw_spin_unlock(&ddata->irqlock);
143 struct gpio_siox_ddata *ddata = gpiochip_get_data(chip);
146 mutex_lock(&ddata->lock);
151 ret = ddata->setdata[0] & (1 << bitpos);
155 ret = ddata->getdata[bitpos / 8] & (1 << (bitpos % 8));
158 mutex_unlock(&ddata->lock);
166 struct gpio_siox_ddata *ddata = gpiochip_get_data(chip);
169 mutex_lock(&ddata->lock);
172 ddata->setdata[0] |= mask;
174 ddata->setdata[0] &= ~mask;
176 mutex_unlock(&ddata->lock);
218 struct gpio_siox_ddata *ddata;
224 ddata = devm_kzalloc(dev, sizeof(*ddata), GFP_KERNEL);
225 if (!ddata)
228 dev_set_drvdata(dev, ddata);
230 mutex_init(&ddata->lock);
231 raw_spin_lock_init(&ddata->irqlock);
233 gc = &ddata->gchip;
251 ret = devm_gpiochip_add_data(dev, gc, ddata);