Lines Matching defs:spi
14 #include <linux/spi/spi.h>
63 struct spi_device *spi = to_spi_device(dev);
64 struct sprd_pmic *ddata = spi_get_drvdata(spi);
75 dev_err(&spi->dev, "failed to detect charger type\n");
101 struct spi_device *spi = to_spi_device(dev);
103 return spi_write(spi, data, count);
111 struct spi_device *spi = to_spi_device(dev);
121 ret = spi_read(spi, rx_buf, 1);
143 static int sprd_pmic_probe(struct spi_device *spi)
149 pdata = of_device_get_match_data(&spi->dev);
151 dev_err(&spi->dev, "No matching driver data found\n");
155 ddata = devm_kzalloc(&spi->dev, sizeof(*ddata), GFP_KERNEL);
159 ddata->regmap = devm_regmap_init(&spi->dev, &sprd_pmic_regmap,
160 &spi->dev, &sprd_pmic_config);
163 dev_err(&spi->dev, "Failed to allocate register map %d\n", ret);
167 spi_set_drvdata(spi, ddata);
168 ddata->dev = &spi->dev;
169 ddata->irq = spi->irq;
172 ddata->irq_chip.name = dev_name(&spi->dev);
181 ddata->irqs = devm_kcalloc(&spi->dev,
191 ret = devm_regmap_add_irq_chip(&spi->dev, ddata->regmap, ddata->irq,
195 dev_err(&spi->dev, "Failed to add PMIC irq chip %d\n", ret);
199 ret = devm_of_platform_populate(&spi->dev);
201 dev_err(&spi->dev, "Failed to populate sub-devices %d\n", ret);
205 device_init_wakeup(&spi->dev, true);