diff options
| author | Mieczyslaw Nalewaj | 2024-03-15 08:08:09 +0000 |
|---|---|---|
| committer | Nick Hainke | 2024-04-05 05:58:15 +0000 |
| commit | 359a9295f2e3385afa867a6c350252d46dd39f6c (patch) | |
| tree | 54f1be65aa7c75726452de0f8e7f842cbdcaf2e1 | |
| parent | fddadcae431b082f1735949739b6421c44e2b9c0 (diff) | |
| download | openwrt-359a9295f2e3385afa867a6c350252d46dd39f6c.tar.gz | |
ramips: adjusted pinctrl-aw9523 for kernel 6.6
Compatiblity with kernel 6.6 for Awinic AW9523B i2c pin controller driver.
It follows the kernel patch: i2c: Drop legacy callback .probe_new() (https://github.com/torvalds/linux/commit/5eb1e6e459cfa025f79c43014f66ff62a55542f1)
and kernel patch: gpiolib: Get rid of not used of_node member (https://github.com/torvalds/linux/commit/70d0fc4288dabd65025fde7774b4f9262afa9034)
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
| -rw-r--r-- | target/linux/ramips/files/drivers/pinctrl/pinctrl-aw9523.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/target/linux/ramips/files/drivers/pinctrl/pinctrl-aw9523.c b/target/linux/ramips/files/drivers/pinctrl/pinctrl-aw9523.c index 65babf9946..a429bb82a3 100644 --- a/target/linux/ramips/files/drivers/pinctrl/pinctrl-aw9523.c +++ b/target/linux/ramips/files/drivers/pinctrl/pinctrl-aw9523.c @@ -810,7 +810,11 @@ static int aw9523_init_gpiochip(struct aw9523 *awi, unsigned int npins) gpiochip->set_multiple = aw9523_gpio_set_multiple; gpiochip->set_config = gpiochip_generic_config; gpiochip->parent = dev; +#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 6, 0) + gpiochip->fwnode = dev->fwnode; +#else gpiochip->of_node = dev->of_node; +#endif gpiochip->owner = THIS_MODULE; gpiochip->can_sleep = true; @@ -984,8 +988,12 @@ static int aw9523_hw_init(struct aw9523 *awi) return regmap_reinit_cache(awi->regmap, &aw9523_regmap); } +#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 6, 0) +static int aw9523_probe(struct i2c_client *client) +#else static int aw9523_probe(struct i2c_client *client, const struct i2c_device_id *id) +#endif { struct device *dev = &client->dev; struct pinctrl_desc *pdesc; |