projects
/
platform
/
kernel
/
u-boot.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge tag 'dm-pull-20jul20-take2a' of https://gitlab.denx.de/u-boot/custodians/u...
[platform/kernel/u-boot.git]
/
drivers
/
pinctrl
/
renesas
/
pfc.c
diff --git
a/drivers/pinctrl/renesas/pfc.c
b/drivers/pinctrl/renesas/pfc.c
index
d1271da
..
7183b11
100644
(file)
--- a/
drivers/pinctrl/renesas/pfc.c
+++ b/
drivers/pinctrl/renesas/pfc.c
@@
-14,7
+14,11
@@
#include <common.h>
#include <dm.h>
#include <errno.h>
#include <common.h>
#include <dm.h>
#include <errno.h>
+#include <dm/device_compat.h>
+#include <dm/devres.h>
#include <dm/pinctrl.h>
#include <dm/pinctrl.h>
+#include <linux/bitops.h>
+#include <linux/bug.h>
#include <linux/io.h>
#include <linux/sizes.h>
#include <linux/io.h>
#include <linux/sizes.h>
@@
-28,8
+32,10
@@
enum sh_pfc_model {
SH_PFC_R8A7794,
SH_PFC_R8A7795,
SH_PFC_R8A7796,
SH_PFC_R8A7794,
SH_PFC_R8A7795,
SH_PFC_R8A7796,
+ SH_PFC_R8A774A1,
SH_PFC_R8A77965,
SH_PFC_R8A77970,
SH_PFC_R8A77965,
SH_PFC_R8A77970,
+ SH_PFC_R8A77980,
SH_PFC_R8A77990,
SH_PFC_R8A77995,
};
SH_PFC_R8A77990,
SH_PFC_R8A77995,
};
@@
-469,7
+475,7
@@
static int sh_pfc_gpio_request_enable(struct udevice *dev,
const struct sh_pfc_pin *pin = NULL;
int i, ret, idx;
const struct sh_pfc_pin *pin = NULL;
int i, ret, idx;
- for (i =
1
; i < pfc->info->nr_pins; i++) {
+ for (i =
0
; i < pfc->info->nr_pins; i++) {
if (priv->pfc.info->pins[i].pin != pin_selector)
continue;
if (priv->pfc.info->pins[i].pin != pin_selector)
continue;
@@
-505,7
+511,7
@@
static int sh_pfc_gpio_disable_free(struct udevice *dev,
const struct sh_pfc_pin *pin = NULL;
int i, idx;
const struct sh_pfc_pin *pin = NULL;
int i, idx;
- for (i =
1
; i < pfc->info->nr_pins; i++) {
+ for (i =
0
; i < pfc->info->nr_pins; i++) {
if (priv->pfc.info->pins[i].pin != pin_selector)
continue;
if (priv->pfc.info->pins[i].pin != pin_selector)
continue;
@@
-812,7
+818,7
@@
static int sh_pfc_pinctrl_probe(struct udevice *dev)
enum sh_pfc_model model = dev_get_driver_data(dev);
fdt_addr_t base;
enum sh_pfc_model model = dev_get_driver_data(dev);
fdt_addr_t base;
- base = dev
fdt_get
_addr(dev);
+ base = dev
_read
_addr(dev);
if (base == FDT_ADDR_T_NONE)
return -EINVAL;
if (base == FDT_ADDR_T_NONE)
return -EINVAL;
@@
-848,6
+854,10
@@
static int sh_pfc_pinctrl_probe(struct udevice *dev)
if (model == SH_PFC_R8A7796)
priv->pfc.info = &r8a7796_pinmux_info;
#endif
if (model == SH_PFC_R8A7796)
priv->pfc.info = &r8a7796_pinmux_info;
#endif
+#ifdef CONFIG_PINCTRL_PFC_R8A774A1
+ if (model == SH_PFC_R8A774A1)
+ priv->pfc.info = &r8a774a1_pinmux_info;
+#endif
#ifdef CONFIG_PINCTRL_PFC_R8A77965
if (model == SH_PFC_R8A77965)
priv->pfc.info = &r8a77965_pinmux_info;
#ifdef CONFIG_PINCTRL_PFC_R8A77965
if (model == SH_PFC_R8A77965)
priv->pfc.info = &r8a77965_pinmux_info;
@@
-856,6
+866,10
@@
static int sh_pfc_pinctrl_probe(struct udevice *dev)
if (model == SH_PFC_R8A77970)
priv->pfc.info = &r8a77970_pinmux_info;
#endif
if (model == SH_PFC_R8A77970)
priv->pfc.info = &r8a77970_pinmux_info;
#endif
+#ifdef CONFIG_PINCTRL_PFC_R8A77980
+ if (model == SH_PFC_R8A77980)
+ priv->pfc.info = &r8a77980_pinmux_info;
+#endif
#ifdef CONFIG_PINCTRL_PFC_R8A77990
if (model == SH_PFC_R8A77990)
priv->pfc.info = &r8a77990_pinmux_info;
#ifdef CONFIG_PINCTRL_PFC_R8A77990
if (model == SH_PFC_R8A77990)
priv->pfc.info = &r8a77990_pinmux_info;
@@
-915,6
+929,12
@@
static const struct udevice_id sh_pfc_pinctrl_ids[] = {
.data = SH_PFC_R8A7796,
},
#endif
.data = SH_PFC_R8A7796,
},
#endif
+#ifdef CONFIG_PINCTRL_PFC_R8A774A1
+ {
+ .compatible = "renesas,pfc-r8a774a1",
+ .data = SH_PFC_R8A774A1,
+ },
+#endif
#ifdef CONFIG_PINCTRL_PFC_R8A77965
{
.compatible = "renesas,pfc-r8a77965",
#ifdef CONFIG_PINCTRL_PFC_R8A77965
{
.compatible = "renesas,pfc-r8a77965",
@@
-927,6
+947,12
@@
static const struct udevice_id sh_pfc_pinctrl_ids[] = {
.data = SH_PFC_R8A77970,
},
#endif
.data = SH_PFC_R8A77970,
},
#endif
+#ifdef CONFIG_PINCTRL_PFC_R8A77980
+ {
+ .compatible = "renesas,pfc-r8a77980",
+ .data = SH_PFC_R8A77980,
+ },
+#endif
#ifdef CONFIG_PINCTRL_PFC_R8A77990
{
.compatible = "renesas,pfc-r8a77990",
#ifdef CONFIG_PINCTRL_PFC_R8A77990
{
.compatible = "renesas,pfc-r8a77990",