mirror of
https://github.com/torvalds/linux.git
synced 2026-05-24 07:03:03 +02:00
ieee802154: at86rf230: drop support for platform data
There are no users of platform data in the mainline tree, and new boards should use either ACPI or device tree, so let's stop supporting it. This will help with converting the driver to gpiod API. Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Link: https://lore.kernel.org/r/20230201053447.4098486-1-dmitry.torokhov@gmail.com Signed-off-by: Stefan Schmidt <stefan@datenfreihafen.org>
This commit is contained in:
parent
9f2ad955f9
commit
9b26ed1854
|
|
@ -17,8 +17,8 @@
|
|||
#include <linux/irq.h>
|
||||
#include <linux/gpio.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/property.h>
|
||||
#include <linux/spi/spi.h>
|
||||
#include <linux/spi/at86rf230.h>
|
||||
#include <linux/regmap.h>
|
||||
#include <linux/skbuff.h>
|
||||
#include <linux/of_gpio.h>
|
||||
|
|
@ -1415,32 +1415,6 @@ static int at86rf230_hw_init(struct at86rf230_local *lp, u8 xtal_trim)
|
|||
return at86rf230_write_subreg(lp, SR_SLOTTED_OPERATION, 0);
|
||||
}
|
||||
|
||||
static int
|
||||
at86rf230_get_pdata(struct spi_device *spi, int *rstn, int *slp_tr,
|
||||
u8 *xtal_trim)
|
||||
{
|
||||
struct at86rf230_platform_data *pdata = spi->dev.platform_data;
|
||||
int ret;
|
||||
|
||||
if (!IS_ENABLED(CONFIG_OF) || !spi->dev.of_node) {
|
||||
if (!pdata)
|
||||
return -ENOENT;
|
||||
|
||||
*rstn = pdata->rstn;
|
||||
*slp_tr = pdata->slp_tr;
|
||||
*xtal_trim = pdata->xtal_trim;
|
||||
return 0;
|
||||
}
|
||||
|
||||
*rstn = of_get_named_gpio(spi->dev.of_node, "reset-gpio", 0);
|
||||
*slp_tr = of_get_named_gpio(spi->dev.of_node, "sleep-gpio", 0);
|
||||
ret = of_property_read_u8(spi->dev.of_node, "xtal-trim", xtal_trim);
|
||||
if (ret < 0 && ret != -EINVAL)
|
||||
return ret;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int
|
||||
at86rf230_detect_device(struct at86rf230_local *lp)
|
||||
{
|
||||
|
|
@ -1548,19 +1522,24 @@ static int at86rf230_probe(struct spi_device *spi)
|
|||
struct at86rf230_local *lp;
|
||||
unsigned int status;
|
||||
int rc, irq_type, rstn, slp_tr;
|
||||
u8 xtal_trim = 0;
|
||||
u8 xtal_trim;
|
||||
|
||||
if (!spi->irq) {
|
||||
dev_err(&spi->dev, "no IRQ specified\n");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
rc = at86rf230_get_pdata(spi, &rstn, &slp_tr, &xtal_trim);
|
||||
rc = device_property_read_u8(&spi->dev, "xtal-trim", &xtal_trim);
|
||||
if (rc < 0) {
|
||||
dev_err(&spi->dev, "failed to parse platform_data: %d\n", rc);
|
||||
return rc;
|
||||
if (rc != -EINVAL) {
|
||||
dev_err(&spi->dev,
|
||||
"failed to parse xtal-trim: %d\n", rc);
|
||||
return rc;
|
||||
}
|
||||
xtal_trim = 0;
|
||||
}
|
||||
|
||||
rstn = of_get_named_gpio(spi->dev.of_node, "reset-gpio", 0);
|
||||
if (gpio_is_valid(rstn)) {
|
||||
rc = devm_gpio_request_one(&spi->dev, rstn,
|
||||
GPIOF_OUT_INIT_HIGH, "rstn");
|
||||
|
|
@ -1568,6 +1547,7 @@ static int at86rf230_probe(struct spi_device *spi)
|
|||
return rc;
|
||||
}
|
||||
|
||||
slp_tr = of_get_named_gpio(spi->dev.of_node, "sleep-gpio", 0);
|
||||
if (gpio_is_valid(slp_tr)) {
|
||||
rc = devm_gpio_request_one(&spi->dev, slp_tr,
|
||||
GPIOF_OUT_INIT_LOW, "slp_tr");
|
||||
|
|
|
|||
|
|
@ -1,20 +0,0 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
/*
|
||||
* AT86RF230/RF231 driver
|
||||
*
|
||||
* Copyright (C) 2009-2012 Siemens AG
|
||||
*
|
||||
* Written by:
|
||||
* Dmitry Eremin-Solenikov <dmitry.baryshkov@siemens.com>
|
||||
*/
|
||||
#ifndef AT86RF230_H
|
||||
#define AT86RF230_H
|
||||
|
||||
struct at86rf230_platform_data {
|
||||
int rstn;
|
||||
int slp_tr;
|
||||
int dig2;
|
||||
u8 xtal_trim;
|
||||
};
|
||||
|
||||
#endif
|
||||
Loading…
Reference in New Issue
Block a user