2022-12-19 13:07:05

by Andy Shevchenko

[permalink] [raw]
Subject: [PATCH v1 1/4] pinctrl: intel: Add default case to intel_config_set_pull()

For the sake of symmetry with intel_config_get_pull(), add
a default case to the outer switch.

Signed-off-by: Andy Shevchenko <[email protected]>
---
drivers/pinctrl/intel/pinctrl-intel.c | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/drivers/pinctrl/intel/pinctrl-intel.c b/drivers/pinctrl/intel/pinctrl-intel.c
index 8181a65fb815..4b1d5a21aa68 100644
--- a/drivers/pinctrl/intel/pinctrl-intel.c
+++ b/drivers/pinctrl/intel/pinctrl-intel.c
@@ -758,6 +758,10 @@ static int intel_config_set_pull(struct intel_pinctrl *pctrl, unsigned int pin,
}

break;
+
+ default:
+ ret = -EINVAL;
+ break;
}

if (!ret)
--
2.35.1


2022-12-19 13:25:55

by Andy Shevchenko

[permalink] [raw]
Subject: [PATCH v1 4/4] pinctrl: intel: Add ~4k bias support

All versions that have 20k and 5k resistance, i.e. all that
the driver supports, may support ~4k when the above mentioned
are connected in parallel. Add such a support.

Signed-off-by: Andy Shevchenko <[email protected]>
---
drivers/pinctrl/intel/pinctrl-intel.c | 12 ++++++++++++
1 file changed, 12 insertions(+)

diff --git a/drivers/pinctrl/intel/pinctrl-intel.c b/drivers/pinctrl/intel/pinctrl-intel.c
index 8ecb7ca7fbac..5e21b0a96efe 100644
--- a/drivers/pinctrl/intel/pinctrl-intel.c
+++ b/drivers/pinctrl/intel/pinctrl-intel.c
@@ -577,6 +577,9 @@ static int intel_config_get_pull(struct intel_pinctrl *pctrl, unsigned int pin,
case PADCFG1_TERM_1K:
*arg = 1000;
break;
+ case PADCFG1_TERM_4K:
+ *arg = 4000;
+ break;
case PADCFG1_TERM_5K:
*arg = 5000;
break;
@@ -602,6 +605,9 @@ static int intel_config_get_pull(struct intel_pinctrl *pctrl, unsigned int pin,
return -EINVAL;
*arg = 1000;
break;
+ case PADCFG1_TERM_4K:
+ *arg = 4000;
+ break;
case PADCFG1_TERM_5K:
*arg = 5000;
break;
@@ -709,6 +715,9 @@ static int intel_config_set_pull(struct intel_pinctrl *pctrl, unsigned int pin,
case 5000:
value |= PADCFG1_TERM_5K << PADCFG1_TERM_SHIFT;
break;
+ case 4000:
+ value |= PADCFG1_TERM_4K << PADCFG1_TERM_SHIFT;
+ break;
case 1000:
value |= PADCFG1_TERM_1K << PADCFG1_TERM_SHIFT;
break;
@@ -731,6 +740,9 @@ static int intel_config_set_pull(struct intel_pinctrl *pctrl, unsigned int pin,
case 5000:
value |= PADCFG1_TERM_5K << PADCFG1_TERM_SHIFT;
break;
+ case 4000:
+ value |= PADCFG1_TERM_4K << PADCFG1_TERM_SHIFT;
+ break;
case 1000:
if (!(community->features & PINCTRL_FEATURE_1K_PD)) {
ret = -EINVAL;
--
2.35.1

2022-12-19 13:27:21

by Andy Shevchenko

[permalink] [raw]
Subject: [PATCH v1 3/4] pinctrl: intel: Add definitions to all possible biases

Add definitions to all possible biases, i.e. add ~800 Ohms,
~952 Ohms, ~4 kOhms.

Signed-off-by: Andy Shevchenko <[email protected]>
---
drivers/pinctrl/intel/pinctrl-intel.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/drivers/pinctrl/intel/pinctrl-intel.c b/drivers/pinctrl/intel/pinctrl-intel.c
index 6926f64b68d4..8ecb7ca7fbac 100644
--- a/drivers/pinctrl/intel/pinctrl-intel.c
+++ b/drivers/pinctrl/intel/pinctrl-intel.c
@@ -81,8 +81,11 @@
#define PADCFG1_TERM_MASK GENMASK(12, 10)
#define PADCFG1_TERM_20K BIT(2)
#define PADCFG1_TERM_5K BIT(1)
+#define PADCFG1_TERM_4K (BIT(2) | BIT(1))
#define PADCFG1_TERM_1K BIT(0)
+#define PADCFG1_TERM_952 (BIT(2) | BIT(0))
#define PADCFG1_TERM_833 (BIT(1) | BIT(0))
+#define PADCFG1_TERM_800 (BIT(2) | BIT(1) | BIT(0))

#define PADCFG2 0x008
#define PADCFG2_DEBEN BIT(0)
--
2.35.1

2022-12-19 15:05:40

by Andy Shevchenko

[permalink] [raw]
Subject: Re: [PATCH v1 1/4] pinctrl: intel: Add default case to intel_config_set_pull()

On Mon, Dec 19, 2022 at 02:32:05PM +0200, Andy Shevchenko wrote:
> For the sake of symmetry with intel_config_get_pull(), add
> a default case to the outer switch.

The stats for the entire series:

drivers/pinctrl/intel/pinctrl-intel.c | 45 +++++++++++++++++++++++++++------------------
1 file changed, 27 insertions(+), 18 deletions(-)

--
With Best Regards,
Andy Shevchenko


2022-12-20 06:49:23

by Mika Westerberg

[permalink] [raw]
Subject: Re: [PATCH v1 1/4] pinctrl: intel: Add default case to intel_config_set_pull()

On Mon, Dec 19, 2022 at 04:41:34PM +0200, Andy Shevchenko wrote:
> On Mon, Dec 19, 2022 at 02:32:05PM +0200, Andy Shevchenko wrote:
> > For the sake of symmetry with intel_config_get_pull(), add
> > a default case to the outer switch.
>
> The stats for the entire series:
>
> drivers/pinctrl/intel/pinctrl-intel.c | 45 +++++++++++++++++++++++++++------------------
> 1 file changed, 27 insertions(+), 18 deletions(-)

Thanks!

For the series,

Acked-by: Mika Westerberg <[email protected]>

2022-12-27 19:30:52

by Andy Shevchenko

[permalink] [raw]
Subject: Re: [PATCH v1 1/4] pinctrl: intel: Add default case to intel_config_set_pull()

On Tue, Dec 20, 2022 at 08:18:42AM +0200, Mika Westerberg wrote:
> On Mon, Dec 19, 2022 at 04:41:34PM +0200, Andy Shevchenko wrote:
> > On Mon, Dec 19, 2022 at 02:32:05PM +0200, Andy Shevchenko wrote:
> > > For the sake of symmetry with intel_config_get_pull(), add
> > > a default case to the outer switch.
> >
> > The stats for the entire series:
> >
> > drivers/pinctrl/intel/pinctrl-intel.c | 45 +++++++++++++++++++++++++++------------------
> > 1 file changed, 27 insertions(+), 18 deletions(-)
>
> Thanks!
>
> For the series,
>
> Acked-by: Mika Westerberg <[email protected]>

Pushed to my review and testing queue, thanks!

--
With Best Regards,
Andy Shevchenko