Lines Matching refs:data
33 struct reset_simple_data *data = to_reset_simple_data(rcdev);
40 spin_lock_irqsave(&data->lock, flags);
42 reg = readl(data->membase + (bank * reg_width));
43 if (assert ^ data->active_low)
47 writel(reg, data->membase + (bank * reg_width));
49 spin_unlock_irqrestore(&data->lock, flags);
69 struct reset_simple_data *data = to_reset_simple_data(rcdev);
72 if (!data->reset_us)
79 usleep_range(data->reset_us, data->reset_us * 2);
87 struct reset_simple_data *data = to_reset_simple_data(rcdev);
93 reg = readl(data->membase + (bank * reg_width));
95 return !(reg & BIT(offset)) ^ !data->status_active_low;
138 .data = &reset_simple_socfpga },
141 .data = &reset_simple_active_low },
143 .data = &reset_simple_active_low },
148 .data = &reset_simple_active_low },
150 .data = &reset_simple_active_low },
153 .data = &reset_simple_active_low },
161 struct reset_simple_data *data;
168 data = devm_kzalloc(dev, sizeof(*data), GFP_KERNEL);
169 if (!data)
177 spin_lock_init(&data->lock);
178 data->membase = membase;
179 data->rcdev.owner = THIS_MODULE;
180 data->rcdev.nr_resets = resource_size(res) * BITS_PER_BYTE;
181 data->rcdev.ops = &reset_simple_ops;
182 data->rcdev.of_node = dev->of_node;
187 data->rcdev.nr_resets = devdata->nr_resets;
188 data->active_low = devdata->active_low;
189 data->status_active_low = devdata->status_active_low;
192 data->membase += reg_offset;
194 return devm_reset_controller_register(dev, &data->rcdev);