pinctrl: renesas: Updates for v6.7 (take two)
- Add pin groups for the Local Bus State Controller (LBSC) on R-Car M1A, - Add support for the RZ/G3S (R9A08G045) SoC, - Miscellaneous fixes and improvements. -----BEGIN PGP SIGNATURE----- iHUEABYIAB0WIQQ9qaHoIs/1I4cXmEiKwlD9ZEnxcAUCZSk0XwAKCRCKwlD9ZEnx cCykAP9rDQKb83aBYHLBAmlyRKT1+e8Lm1r4QC7KeiC0v8WHQwEAyLILM38KFwyG vGaiXlp0MfGmA82a0orjdRBiUdyHqAE= =QFrw -----END PGP SIGNATURE----- Merge tag 'renesas-pinctrl-for-v6.7-tag2' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-drivers into devel pinctrl: renesas: Updates for v6.7 (take two) - Add pin groups for the Local Bus State Controller (LBSC) on R-Car M1A, - Add support for the RZ/G3S (R9A08G045) SoC, - Miscellaneous fixes and improvements. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
This commit is contained in:
commit
b4e10c3190
@ -25,6 +25,7 @@ properties:
|
||||
- enum:
|
||||
- renesas,r9a07g043-pinctrl # RZ/G2UL{Type-1,Type-2} and RZ/Five
|
||||
- renesas,r9a07g044-pinctrl # RZ/G2{L,LC}
|
||||
- renesas,r9a08g045-pinctrl # RZ/G3S
|
||||
|
||||
- items:
|
||||
- enum:
|
||||
@ -78,6 +79,21 @@ additionalProperties:
|
||||
- $ref: pincfg-node.yaml#
|
||||
- $ref: pinmux-node.yaml#
|
||||
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
enum:
|
||||
- renesas,r9a08g045-pinctrl
|
||||
then:
|
||||
properties:
|
||||
drive-strength: false
|
||||
output-impedance-ohms: false
|
||||
slew-rate: false
|
||||
else:
|
||||
properties:
|
||||
drive-strength-microamp: false
|
||||
|
||||
description:
|
||||
Pin controller client devices use pin configuration subnodes (children
|
||||
and grandchildren) for desired pin configuration.
|
||||
@ -92,6 +108,10 @@ additionalProperties:
|
||||
pins: true
|
||||
drive-strength:
|
||||
enum: [ 2, 4, 8, 12 ]
|
||||
drive-strength-microamp:
|
||||
enum: [ 1900, 2200, 4000, 4400, 4500, 4700, 5200, 5300, 5700,
|
||||
5800, 6000, 6050, 6100, 6550, 6800, 7000, 8000, 9000,
|
||||
10000 ]
|
||||
output-impedance-ohms:
|
||||
enum: [ 33, 50, 66, 100 ]
|
||||
power-source:
|
||||
|
@ -1424,6 +1424,24 @@ I2C_PFC_MUX(i2c3_b, SDA3_B, SCL3_B);
|
||||
I2C_PFC_PIN(i2c3_c, RCAR_GP_PIN(1, 22), RCAR_GP_PIN(1, 23));
|
||||
I2C_PFC_MUX(i2c3_c, SDA3_C, SCL3_C);
|
||||
|
||||
/* - LBSC ------------------------------------------------------------------- */
|
||||
SH_PFC_PINS(lbsc_cs0, PIN_CS0);
|
||||
SH_PFC_MUX1(lbsc_cs0, CS0);
|
||||
SH_PFC_PINS(lbsc_cs1, PIN_CS1_A26);
|
||||
SH_PFC_MUX1(lbsc_cs1, CS1_A26);
|
||||
SH_PFC_PINS(lbsc_ex_cs0, RCAR_GP_PIN(1, 3));
|
||||
SH_PFC_MUX1(lbsc_ex_cs0, EX_CS0);
|
||||
SH_PFC_PINS(lbsc_ex_cs1, RCAR_GP_PIN(1, 4));
|
||||
SH_PFC_MUX1(lbsc_ex_cs1, EX_CS1);
|
||||
SH_PFC_PINS(lbsc_ex_cs2, RCAR_GP_PIN(1, 5));
|
||||
SH_PFC_MUX1(lbsc_ex_cs2, EX_CS2);
|
||||
SH_PFC_PINS(lbsc_ex_cs3, RCAR_GP_PIN(1, 6));
|
||||
SH_PFC_MUX1(lbsc_ex_cs3, EX_CS3);
|
||||
SH_PFC_PINS(lbsc_ex_cs4, RCAR_GP_PIN(1, 7));
|
||||
SH_PFC_MUX1(lbsc_ex_cs4, EX_CS4);
|
||||
SH_PFC_PINS(lbsc_ex_cs5, RCAR_GP_PIN(1, 8));
|
||||
SH_PFC_MUX1(lbsc_ex_cs5, EX_CS5);
|
||||
|
||||
/* - MMC macro -------------------------------------------------------------- */
|
||||
#define MMC_PFC_PINS(name, args...) SH_PFC_PINS(name, args)
|
||||
#define MMC_PFC_CTRL(name, clk, cmd) SH_PFC_MUX2(name, clk, cmd)
|
||||
@ -1724,6 +1742,14 @@ static const struct sh_pfc_pin_group pinmux_groups[] = {
|
||||
SH_PFC_PIN_GROUP(i2c3_a),
|
||||
SH_PFC_PIN_GROUP(i2c3_b),
|
||||
SH_PFC_PIN_GROUP(i2c3_c),
|
||||
SH_PFC_PIN_GROUP(lbsc_cs0),
|
||||
SH_PFC_PIN_GROUP(lbsc_cs1),
|
||||
SH_PFC_PIN_GROUP(lbsc_ex_cs0),
|
||||
SH_PFC_PIN_GROUP(lbsc_ex_cs1),
|
||||
SH_PFC_PIN_GROUP(lbsc_ex_cs2),
|
||||
SH_PFC_PIN_GROUP(lbsc_ex_cs3),
|
||||
SH_PFC_PIN_GROUP(lbsc_ex_cs4),
|
||||
SH_PFC_PIN_GROUP(lbsc_ex_cs5),
|
||||
SH_PFC_PIN_GROUP(mmc_ctrl),
|
||||
BUS_DATA_PIN_GROUP(mmc_data, 1),
|
||||
BUS_DATA_PIN_GROUP(mmc_data, 4),
|
||||
@ -1897,6 +1923,17 @@ static const char * const i2c3_groups[] = {
|
||||
"i2c3_c",
|
||||
};
|
||||
|
||||
static const char * const lbsc_groups[] = {
|
||||
"lbsc_cs0",
|
||||
"lbsc_cs1",
|
||||
"lbsc_ex_cs0",
|
||||
"lbsc_ex_cs1",
|
||||
"lbsc_ex_cs2",
|
||||
"lbsc_ex_cs3",
|
||||
"lbsc_ex_cs4",
|
||||
"lbsc_ex_cs5",
|
||||
};
|
||||
|
||||
static const char * const mmc_groups[] = {
|
||||
"mmc_ctrl",
|
||||
"mmc_data1",
|
||||
@ -2049,6 +2086,7 @@ static const struct sh_pfc_function pinmux_functions[] = {
|
||||
SH_PFC_FUNCTION(i2c1),
|
||||
SH_PFC_FUNCTION(i2c2),
|
||||
SH_PFC_FUNCTION(i2c3),
|
||||
SH_PFC_FUNCTION(lbsc),
|
||||
SH_PFC_FUNCTION(mmc),
|
||||
SH_PFC_FUNCTION(scif_clk),
|
||||
SH_PFC_FUNCTION(scif0),
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -920,13 +920,11 @@ err_clk:
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int rzn1_pinctrl_remove(struct platform_device *pdev)
|
||||
static void rzn1_pinctrl_remove(struct platform_device *pdev)
|
||||
{
|
||||
struct rzn1_pinctrl *ipctl = platform_get_drvdata(pdev);
|
||||
|
||||
clk_disable_unprepare(ipctl->clk);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static const struct of_device_id rzn1_pinctrl_match[] = {
|
||||
@ -937,7 +935,7 @@ MODULE_DEVICE_TABLE(of, rzn1_pinctrl_match);
|
||||
|
||||
static struct platform_driver rzn1_pinctrl_driver = {
|
||||
.probe = rzn1_pinctrl_probe,
|
||||
.remove = rzn1_pinctrl_remove,
|
||||
.remove_new = rzn1_pinctrl_remove,
|
||||
.driver = {
|
||||
.name = "rzn1-pinctrl",
|
||||
.of_match_table = rzn1_pinctrl_match,
|
||||
|
Loading…
x
Reference in New Issue
Block a user