spi: fsl-dspi: Convert to yaml format and use common SPI property
Subsystems (4)
Frank Li
maintainerv4 cover spi: fsl-dspi: Convert to yaml format and use common SPI property
Convert fsl-dspi binding to to yaml format.
Using common SPI property spi-cs-setup-delay-ns and spi-cs-hold-delay-ns. Update driver and ls1043 dts file.
To: Vladimir Oltean <[email protected]>
To: Mark Brown <[email protected]>
To: Rob Herring <[email protected]>
To: Krzysztof Kozlowski <[email protected]>
To: Conor Dooley <[email protected]>
To: Shawn Guo <[email protected]>
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
---
Changes in v4:
- See each patch
- Link to v3: https://lore.kernel.org/r/[email protected]
Changes in v3:
- using Vladimir Oltean's https://lore.kernel.org/imx/[email protected]/T/#t
for fsl periphal part to keep compatiblity.
- Add common property and depericated fsl private property.
- Link to v2: https://lore.kernel.org/r/[email protected]
---
Frank Li (3):
spi: fsl-dspi: use common proptery 'spi-cs-setup(hold)-delay-ns'
spi: dt-bindings: fsl-dspi: Convert to yaml format
arm64: dts: fsl-ls1043a-rdb: use common spi-cs-setup(hold)-delay-ns
.../bindings/spi/fsl,dspi-peripheral-props.yaml | 30 ++++++ .../devicetree/bindings/spi/fsl,dspi.yaml | 103 +++++++++++++++++++++ .../devicetree/bindings/spi/spi-fsl-dspi.txt | 65 ------------- .../bindings/spi/spi-peripheral-props.yaml | 1 + MAINTAINERS | 2 +- arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dts | 18 ++++ drivers/spi/spi-fsl-dspi.c | 19 +++- 7 files changed, 167 insertions(+), 71 deletions(-)
---
base-commit: 03d44168cbd7fc57d5de56a3730427db758fc7f6
change-id: 20240613-ls_qspi-bdced20e235e
Best regards,
---
Frank Li <[email protected]>
Frank Li
maintainerPATCH v4 1/3 spi: fsl-dspi: use common proptery 'spi-cs-setup(hold)-delay-ns'
Use SPI common DT binding properties 'spi-cs-setup-delay-ns' and 'spi-cs-hold-delay-ns'. If these properties do not exist, fall back to legacy 'fsl,spi-cs-sck-delay' and 'fsl,spi-sck-cs-delay'.
---
Change from v3 to v4
- check spi_delay_to_ns() return value, which may return negative value as error code. It will be very big value when cast to u32.
--- drivers/spi/spi-fsl-dspi.c | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-)
drivers/spi/spi-fsl-dspi.c +14 -5
@@ -1006,6 +1006,7 @@ static int dspi_setup(struct spi_device *spi)struct chip_data *chip;unsigned long clkrate;bool cs = true; +int val;/* Only alloc on first setup */ chip =spi_get_ctldata (spi);
@@ -1018,11 +1019,19 @@ static int dspi_setup(struct spi_device *spi) pdata =dev_get_platdata (&dspi->pdev->dev);if (!pdata) { -of_property_read_u32 (spi->dev.of_node,"fsl,spi-cs-sck-delay" , - &cs_sck_delay); - -of_property_read_u32 (spi->dev.of_node,"fsl,spi-sck-cs-delay" , - &sck_cs_delay); + val =spi_delay_to_ns (&spi->cs_setup,NULL ); + cs_sck_delay = val >=0 ? val :0 ; +if (!cs_sck_delay) +of_property_read_u32 (spi->dev.of_node, +"fsl,spi-cs-sck-delay" , + &cs_sck_delay); + + val =spi_delay_to_ns (&spi->cs_hold,NULL ); + sck_cs_delay = val >=0 ? val :0 ; +if (!sck_cs_delay) +of_property_read_u32 (spi->dev.of_node, +"fsl,spi-sck-cs-delay" , + &sck_cs_delay); }else { cs_sck_delay = pdata->cs_sck_delay; sck_cs_delay = pdata->sck_cs_delay;
Signature · 1 line
2.34.1
Re: [PATCH v4 1/3] spi: fsl-dspi: use common proptery 'spi-cs-setup(hold)-delay-ns'
Quoted 10 lines · Frank Li
Use SPI common DT binding properties 'spi-cs-setup-delay-ns' and 'spi-cs-hold-delay-ns'. If these properties do not exist, fall back to legacy 'fsl,spi-cs-sck-delay' and 'fsl,spi-sck-cs-delay'.
Signed-off-by Frank Li <[email protected]>---
Change from v3 to v4
- checkspi_delay_to_ns()return value, which may return negative value as error code. It will be very big value when cast to u32.
---
Frank Li
maintainerPATCH v4 2/3 spi: dt-bindings: fsl-dspi: Convert to yaml format
In reply to Frank LiConvert dt-binding spi-fsl-dspi.txt to yaml format. Use part Vladimir Oltean's work at of
https://lore.kernel.org/linux-spi/[email protected]/
Additional changes during convert:
- compatible string "fsl,ls1028a-dspi" can be followed by fsl,ls1021a-v1.0-dspi.
- Change "dspi0@4002c000" to "spi@4002c000" in example.
- Reorder properties in example.
- Use GIC include in example.
- Deprecated fsl,spi-cs-sck-delay and fsl,spi-sck-cs-delay by use common SPI property.
- Use compatible string 'jedec,spi-nor' in example.
- Split peripheral part to fsl,dspi-peripheral-props.yaml.
- Remove 'interrupts' and 'pinctrl' from required list.
- Update 'bus-num' description.
- Update 'spi-num-chipselects' description by add "cs-gpios don't count against this number".
- Remove 'big-endian' description.
---
Change from v3 to v4
- Add Co-developed-by and Signed-off-by from Kuldeep and Vladimir
- Remove 'interrupts' and 'pinctrl' from required list
- Update 'bus-num' descripton.
- Update 'spi-num-chipselects' description by add "cs-gpios don't count against this number".
- Remove 'big-endian' description.
--- .../bindings/spi/fsl,dspi-peripheral-props.yaml | 30 ++++++ .../devicetree/bindings/spi/fsl,dspi.yaml | 103 +++++++++++++++++++++ .../devicetree/bindings/spi/spi-fsl-dspi.txt | 65 ------------- .../bindings/spi/spi-peripheral-props.yaml | 1 + MAINTAINERS | 2 +- 5 files changed, 135 insertions(+), 66 deletions(-)
Documentation/devicetree/bindings/spi/fsl,dspi-peripheral-props.yaml new file +30 -0
@@ -0,0 +1,30 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/spi/fsl,dspi-peripheral-props.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Peripheral-specific properties for Freescale DSPI controller + +maintainers: + - Vladimir Oltean <[email protected]> + +description: + See spi-peripheral-props.yaml for more info. + +properties: + fsl,spi-cs-sck-delay: + deprecated: true + description: + Delay in nanoseconds between activating chip select and the start of + clock signal, at the start of a transfer. + $ref: /schemas/types.yaml#/definitions/uint32 + + fsl,spi-sck-cs-delay: + deprecated: true + description: + Delay in nanoseconds between stopping the clock signal and + deactivating chip select, at the end of a transfer. + $ref: /schemas/types.yaml#/definitions/uint32 + +additionalProperties: true
Documentation/devicetree/bindings/spi/fsl,dspi.yaml new file +103 -0
103 lines not on this page · raw message
Documentation/devicetree/bindings/spi/spi-fsl-dspi.txt deleted +0 -65
65 lines not on this page · raw message
Documentation/devicetree/bindings/spi/spi-peripheral-props.yaml +1 -0
@@ -122,6 +122,7 @@ properties: allOf: - $ref: arm,pl022-peripheral-props.yaml# - $ref: cdns,qspi-nor-peripheral-props.yaml# + - $ref: fsl,dspi-peripheral-props.yaml# - $ref: samsung,spi-peripheral-props.yaml# - $ref: nvidia,tegra210-quad-peripheral-props.yaml#
MAINTAINERS +1 -1
@@ -8748,7 +8748,7 @@ FREESCALE DSPI DRIVER M: Vladimir Oltean <[email protected]> L: [email protected] S: Maintained -F: Documentation/devicetree/bindings/spi/spi-fsl-dspi.txt +F: Documentation/devicetree/bindings/spi/fsl,dspi*.yaml F: drivers/spi/spi-fsl-dspi.c F: include/linux/spi/spi-fsl-dspi.h
Signature · 1 line
2.34.1
Re: [PATCH v4 2/3] spi: dt-bindings: fsl-dspi: Convert to yaml format
Quoted 34 lines · Frank Li
Convert dt-binding spi-fsl-dspi.txt to yaml format. Use part Vladimir Oltean's work at of
https://lore.kernel.org/linux-spi/[email protected]/Additional changes during convert:
- compatible string "fsl,ls1028a-dspi" can be followed by fsl,ls1021a-v1.0-dspi.
- Change "dspi0@4002c000" to "spi@4002c000" in example.
- Reorder properties in example.
- Use GIC include in example.
- Deprecated fsl,spi-cs-sck-delay and fsl,spi-sck-cs-delay by use common SPI property.
- Use compatible string 'jedec,spi-nor' in example.
- Split peripheral part to fsl,dspi-peripheral-props.yaml.
- Remove 'interrupts' and 'pinctrl' from required list.
- Update 'bus-num' description.
- Update 'spi-num-chipselects' description by add "cs-gpios don't count against this number".
- Remove 'big-endian' description.Co-developed-by Kuldeep Singh <[email protected]>Signed-off-by Kuldeep Singh <[email protected]>Co-developed-by Vladimir Oltean <[email protected]>Signed-off-by Vladimir Oltean <[email protected]>Signed-off-by Frank Li <[email protected]>---
Change from v3 to v4
- Add Co-developed-by and Signed-off-by from Kuldeep and Vladimir
- Remove 'interrupts' and 'pinctrl' from required list
- Update 'bus-num' descripton.
- Update 'spi-num-chipselects' description by add "cs-gpios don't count against this number".
- Remove 'big-endian' description.
Quoted 8 lines
--- .../bindings/spi/fsl,dspi-peripheral-props.yaml | 30 ++++++ .../devicetree/bindings/spi/fsl,dspi.yaml | 103 +++++++++++++++++++++ .../devicetree/bindings/spi/spi-fsl-dspi.txt | 65 ------------- .../bindings/spi/spi-peripheral-props.yaml | 1 + MAINTAINERS | 2 +- 5 files changed, 135 insertions(+), 66 deletions(-)
Re: [PATCH v4 2/3] spi: dt-bindings: fsl-dspi: Convert to yaml format
In reply to Frank LiQuoted 20 lines · Frank Li
Convert dt-binding spi-fsl-dspi.txt to yaml format. Use part Vladimir Oltean's work at of
https://lore.kernel.org/linux-spi/[email protected]/Additional changes during convert:
- compatible string "fsl,ls1028a-dspi" can be followed by fsl,ls1021a-v1.0-dspi.
- Change "dspi0@4002c000" to "spi@4002c000" in example.
- Reorder properties in example.
- Use GIC include in example.
- Deprecated fsl,spi-cs-sck-delay and fsl,spi-sck-cs-delay by use common SPI property.
- Use compatible string 'jedec,spi-nor' in example.
- Split peripheral part to fsl,dspi-peripheral-props.yaml.
- Remove 'interrupts' and 'pinctrl' from required list.
- Update 'bus-num' description.
- Update 'spi-num-chipselects' description by add "cs-gpios don't count against this number".
- Remove 'big-endian' description.
Quoted 7 lines
Co-developed-by Kuldeep Singh <[email protected]>Signed-off-by Kuldeep Singh <[email protected]>Co-developed-by Vladimir Oltean <[email protected]>Signed-off-by Vladimir Oltean <[email protected]>Signed-off-by Frank Li <[email protected]>---
Frank Li
maintainerPATCH v4 3/3 arm64: dts: fsl-ls1043a-rdb: use common spi-cs-setup(hold)-delay-ns
In reply to Frank LiUse SPI common properties 'spi-cs-setup-delay-ns' and 'spi-cs-hold-delay-ns', mark private properties 'fsl,spi-cs-sck-delay' and 'fsl,spi-sck-cs-delay' as deprecated.
---
Chang from v3 to v4
- fix typo at commit message
- use comments:
Standard CS timing
properties replace the deprecated vendor variants below
--- arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dts | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+)
arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dts +18 -0
@@ -104,6 +104,12 @@ flash@0 { compatible = "n25q128a13", "jedec,spi-nor"; /* 16MB */ reg = <0>; spi-max-frequency = <1000000>; /* input clock */ + /* + * Standard CS timing properties replace the deprecated vendor + * variants below. + */ + spi-cs-setup-delay-ns = <100>; + spi-cs-hold-delay-ns = <100>; fsl,spi-cs-sck-delay = <100>; fsl,spi-sck-cs-delay = <100>; };
@@ -112,6 +118,12 @@ slic@2 { compatible = "maxim,ds26522"; reg = <2>; spi-max-frequency = <2000000>; + /* + * Standard CS timing properties replace the deprecated vendor + * variants below. + */ + spi-cs-setup-delay-ns = <100>; + spi-cs-hold-delay-ns = <50>; fsl,spi-cs-sck-delay = <100>; fsl,spi-sck-cs-delay = <50>; };
@@ -120,6 +132,12 @@ slic@3 { compatible = "maxim,ds26522"; reg = <3>; spi-max-frequency = <2000000>; + /* + * Standard CS timing properties replace the deprecated vendor + * variants below. + */ + spi-cs-setup-delay-ns = <100>; + spi-cs-hold-delay-ns = <50>; fsl,spi-cs-sck-delay = <100>; fsl,spi-sck-cs-delay = <50>; };
Signature · 1 line
2.34.1
Re: [PATCH v4 3/3] arm64: dts: fsl-ls1043a-rdb: use common spi-cs-setup(hold)-delay-ns
Quoted 4 lines · Frank Li
Use SPI common properties 'spi-cs-setup-delay-ns' and 'spi-cs-hold-delay-ns', mark private properties 'fsl,spi-cs-sck-delay' and 'fsl,spi-sck-cs-delay' as deprecated.
Quoted 8 lines
Signed-off-by Frank Li <[email protected]>---
Chang from v3 to v4
- fix typo at commit message
- use comments:
Standard CS timing
properties replace the deprecated vendor variants below
---
Shawn Guo
AppliedRe: [PATCH v4 3/3] arm64: dts: fsl-ls1043a-rdb: use common spi-cs-setup(hold)-delay-ns
In reply to Frank LiQuoted 5 lines · Frank Li
Use SPI common properties 'spi-cs-setup-delay-ns' and 'spi-cs-hold-delay-ns', mark private properties 'fsl,spi-cs-sck-delay' and 'fsl,spi-sck-cs-delay' as deprecated.
Signed-off-by Frank Li <[email protected]>
Applied, thanks!
Mark Brown
maintainerRe: (subset) [PATCH v4 0/3] spi: fsl-dspi: Convert to yaml format and use common SPI property
In reply to Frank LiQuoted 17 lines · Frank Li
Convert fsl-dspi binding to to yaml format.
Using common SPI property spi-cs-setup-delay-ns and spi-cs-hold-delay-ns. Update driver and ls1043 dts file.To: Vladimir Oltean <[email protected]>
To: Mark Brown <[email protected]>
To: Rob Herring <[email protected]>
To: Krzysztof Kozlowski <[email protected]>
To: Conor Dooley <[email protected]>
To: Shawn Guo <[email protected]>
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Quoted 1 line
[...]
Applied to
https://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi.git for-next
Thanks!
[1/3] spi: fsl-dspi: use common proptery 'spi-cs-setup(hold)-delay-ns'
commit: 52e78777b6bfd4bc47448791a99d5f97c82ff81c
[2/3] spi: dt-bindings: fsl-dspi: Convert to yaml format
commit: 94f19d076218a193d170da6d5ab2a87c080cc69cAll being well this means that it will be integrated into the linux-next tree (usually sometime in the next 24 hours) and sent to Linus during the next merge window (or sooner if it is a bug fix), however if problems are discovered then the patch may be dropped or reverted.
You may get further e-mails resulting from automated or manual testing and review of the tree, please engage with people reporting problems and send followup patches addressing any issues that are reported if needed.
If any updates are required or you are submitting further changes they should be sent as incremental updates against current git, existing patches will not be replaced.
Please add any relevant lists and maintainers to the CCs when replying to this mail.
Thanks,
Mark
Frank Li
maintainerRe: (subset) [PATCH v4 0/3] spi: fsl-dspi: Convert to yaml format and use common SPI property
Quoted 40 lines · Mark Brown
Quoted 17 lines · Frank Li
Convert fsl-dspi binding to to yaml format.
Using common SPI property spi-cs-setup-delay-ns and spi-cs-hold-delay-ns. Update driver and ls1043 dts file.To: Vladimir Oltean <[email protected]>
To: Mark Brown <[email protected]>
To: Rob Herring <[email protected]>
To: Krzysztof Kozlowski <[email protected]>
To: Conor Dooley <[email protected]>
To: Shawn Guo <[email protected]>
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]Quoted 1 line
[...]
Applied to
https://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi.git for-next
Thanks!
[1/3] spi: fsl-dspi: use common proptery 'spi-cs-setup(hold)-delay-ns'
commit: 52e78777b6bfd4bc47448791a99d5f97c82ff81c [2/3] spi: dt-bindings: fsl-dspi: Convert to yaml format commit: 94f19d076218a193d170da6d5ab2a87c080cc69cAll being well this means that it will be integrated into the linux-next tree (usually sometime in the next 24 hours) and sent to Linus during the next merge window (or sooner if it is a bug fix), however if problems are discovered then the patch may be dropped or reverted.
You may get further e-mails resulting from automated or manual testing and review of the tree, please engage with people reporting problems and send followup patches addressing any issues that are reported if needed.
Quoted 6 lines
If any updates are required or you are submitting further changes they should be sent as incremental updates against current git, existing patches will not be replaced.
Please add any relevant lists and maintainers to the CCs when replying to this mail.
Thank you very much, I sent out incremental update before this patch applied since my one miss understand. Could you please check this?
https://lore.kernel.org/imx/[email protected]/
Frank
Quoted 4 lines
Thanks,
Mark
Mark Brown
maintainerRe: (subset) [PATCH v4 0/3] spi: fsl-dspi: Convert to yaml format and use common SPI property
Quoted 10 lines · Frank Li
Quoted 3 lines · Mark Brown
If any updates are required or you are submitting further changes they should be sent as incremental updates against current git, existing patches will not be replaced.
Thank you very much, I sent out incremental update before this patch applied since my one miss understand. Could you please check this?
As covered above please send an incremental patch with whatever changes were in the new version.