diff mbox series

ath79: drop cs-gpios property

Message ID 20210415203947.32422-1-mail@david-bauer.net
State Accepted
Delegated to: David Bauer
Headers show
Series ath79: drop cs-gpios property | expand

Commit Message

David Bauer April 15, 2021, 8:39 p.m. UTC
The spi-ath79 driver performs the chipselect by writing to dedicated
register in the SPI register block. So the GPIO numbers were not used.

Tested-on: Enterasys WS-AP3705i

Signed-off-by: David Bauer <mail@david-bauer.net>
---
 target/linux/ath79/dts/ar7161_buffalo_wzr-hp-ag300h.dtsi    | 1 -
 target/linux/ath79/dts/ar7242_buffalo_wzr-bhr.dtsi          | 2 --
 target/linux/ath79/dts/ar7242_buffalo_wzr-hp-g302h-a1a0.dts | 2 --
 target/linux/ath79/dts/ar9344_enterasys_ws-ap3705i.dts      | 2 --
 4 files changed, 7 deletions(-)

Comments

Chuanhong Guo April 16, 2021, 2:12 a.m. UTC | #1
Hi!

On Fri, Apr 16, 2021 at 4:43 AM David Bauer <mail@david-bauer.net> wrote:
>
> The spi-ath79 driver performs the chipselect by writing to dedicated
> register in the SPI register block. So the GPIO numbers were not used.

This is cs-gpios is a hack to override incorrect num_chipselects in spi-ath79
driver (which is set to fixed 1). spi-ath79 should be patched to fix
this problem
before cs-gpios for ar7161/ar7242 devices can be dropped.
It's not needed on ar9344 because the new spi-ar934x driver doesn't have
this problem.
David Bauer April 16, 2021, 10:23 a.m. UTC | #2
Hi,

On 4/16/21 4:12 AM, Chuanhong Guo wrote:
> Hi!
> 
> On Fri, Apr 16, 2021 at 4:43 AM David Bauer <mail@david-bauer.net> wrote:
>>
>> The spi-ath79 driver performs the chipselect by writing to dedicated
>> register in the SPI register block. So the GPIO numbers were not used.
> 
> This is cs-gpios is a hack to override incorrect num_chipselects in spi-ath79
> driver (which is set to fixed 1). spi-ath79 should be patched to fix
> this problem
> before cs-gpios for ar7161/ar7242 devices can be dropped.

Thanks for the hint, i missed ar93xx uses the newer SPI driver.

Looking at spi-ath79, the number of CS lines can be modified using platform
data, however all datasheets from ar71xx up to qca956x i could get my hand on
list 3 chipselect lines available - so a patch which sets the CS count to 3
should be sufficient?

I have some other SPI patches waiting to be sent upstream, so I can take care
of that.

Best wishes
David

> It's not needed on ar9344 because the new spi-ar934x driver doesn't have
> this problem.
>
Chuanhong Guo April 19, 2021, 3:21 a.m. UTC | #3
Hi!

On Fri, Apr 16, 2021 at 6:23 PM David Bauer <mail@david-bauer.net> wrote:
>
> Hi,
>
> On 4/16/21 4:12 AM, Chuanhong Guo wrote:
> > Hi!
> >
> > On Fri, Apr 16, 2021 at 4:43 AM David Bauer <mail@david-bauer.net> wrote:
> >>
> >> The spi-ath79 driver performs the chipselect by writing to dedicated
> >> register in the SPI register block. So the GPIO numbers were not used.
> >
> > This is cs-gpios is a hack to override incorrect num_chipselects in spi-ath79
> > driver (which is set to fixed 1). spi-ath79 should be patched to fix
> > this problem
> > before cs-gpios for ar7161/ar7242 devices can be dropped.
>
> Thanks for the hint, i missed ar93xx uses the newer SPI driver.
>
> Looking at spi-ath79, the number of CS lines can be modified using platform
> data, however all datasheets from ar71xx up to qca956x i could get my hand on
> list 3 chipselect lines available - so a patch which sets the CS count to 3
> should be sufficient?

Correct.
diff mbox series

Patch

diff --git a/target/linux/ath79/dts/ar7161_buffalo_wzr-hp-ag300h.dtsi b/target/linux/ath79/dts/ar7161_buffalo_wzr-hp-ag300h.dtsi
index 109ed0caf3..b8176dc059 100644
--- a/target/linux/ath79/dts/ar7161_buffalo_wzr-hp-ag300h.dtsi
+++ b/target/linux/ath79/dts/ar7161_buffalo_wzr-hp-ag300h.dtsi
@@ -219,7 +219,6 @@ 
 &spi {
 	status = "okay";
 
-	cs-gpios = <0>, <0>;
 
 	flash0: flash@0 {
 		compatible = "jedec,spi-nor";
diff --git a/target/linux/ath79/dts/ar7242_buffalo_wzr-bhr.dtsi b/target/linux/ath79/dts/ar7242_buffalo_wzr-bhr.dtsi
index 98f6759eac..df28111598 100644
--- a/target/linux/ath79/dts/ar7242_buffalo_wzr-bhr.dtsi
+++ b/target/linux/ath79/dts/ar7242_buffalo_wzr-bhr.dtsi
@@ -107,8 +107,6 @@ 
 &spi {
 	status = "okay";
 
-	cs-gpios = <0>, <0>;
-
 	flash0: flash@0 {
 		compatible = "jedec,spi-nor";
 		reg = <0>;
diff --git a/target/linux/ath79/dts/ar7242_buffalo_wzr-hp-g302h-a1a0.dts b/target/linux/ath79/dts/ar7242_buffalo_wzr-hp-g302h-a1a0.dts
index 7cb051a475..111d06491e 100644
--- a/target/linux/ath79/dts/ar7242_buffalo_wzr-hp-g302h-a1a0.dts
+++ b/target/linux/ath79/dts/ar7242_buffalo_wzr-hp-g302h-a1a0.dts
@@ -163,8 +163,6 @@ 
 &spi {
 	status = "okay";
 
-	cs-gpios = <0>, <0>;
-
 	flash0: flash@0 {
 		compatible = "jedec,spi-nor";
 		reg = <0>;
diff --git a/target/linux/ath79/dts/ar9344_enterasys_ws-ap3705i.dts b/target/linux/ath79/dts/ar9344_enterasys_ws-ap3705i.dts
index 52becec18b..8f8276255a 100644
--- a/target/linux/ath79/dts/ar9344_enterasys_ws-ap3705i.dts
+++ b/target/linux/ath79/dts/ar9344_enterasys_ws-ap3705i.dts
@@ -114,8 +114,6 @@ 
 &spi {
 	status = "okay";
 
-	cs-gpios = <0>, <0>;
-
 	flash@0 {
 		compatible = "jedec,spi-nor";
 		reg = <0>;