mbox series

[RESEND,v8,0/5] fix the meson NFC clock

Message ID 20220905075027.19114-1-liang.yang@amlogic.com (mailing list archive)
Headers show
Series fix the meson NFC clock | expand

Message

Liang Yang Sept. 5, 2022, 7:50 a.m. UTC
EMMC and NAND have the same clock control register named 'SD_EMMC_CLOCK'
which is defined in EMMC port internally. bit0~5 of 'SD_EMMC_CLOCK' is
the divider and bit6~7 is the mux for fix pll and xtal. At the beginning,
a common MMC and NAND sub-clock was discussed and planed to be implemented
as NFC clock provider, but now this series of patches of a common MMC and
NAND sub-clock are never being accepted and the current binding was never
valid. the reasons are:
1. EMMC and NAND, which are mutually exclusive anyway
2. coupling the EMMC and NAND.
3. it seems that a common MMC and NAND sub-clock is over engineered.
and let us see the link for more information:
https://lore.kernel.org/all/20220121074508.42168-5-liang.yang@amlogic.com
so The meson nfc can't work now, let us rework the clock.

Changes since v7 [8]
 - use COMMON_CLK && (ARCH_MESON || COMPILE_TEST) instead of
   ARCH_MESON || COMPILE_TEST || COMMON_CLK.
 - collect the review and ack

Changes since v6 [7]
 - use COMMON_CLK instead of !HAVE_LEGACY_CLK

Changes since v5 [6]
 - add change log for patch 3/5
 - add patch 5/5 to fix the reporting error of test robot

Changes since v4 [5]
 - split the dt binding patch into two patches, one for fixing, 
   clock, the other for coverting to yaml
 - split the nfc driver patch into two patches, one for fixing 
   clock, the other for refining the get nfc resource.

Changes since v3 [4]
 - use devm_platform_ioremap_resource_byname
 - dt_binding_check for mtd/amlogic,meson-nand.yaml

Changes since v2 [3]
 - use fw_name from dts, instead the wrong way using __clk_get_name
 - reg resource size change to 0x800
 - use reg-names

Changes since v1 [2]
 - use clk_parent_data instead of parent_names
 - define a reg resource instead of sd_emmc_c_clkc 

[1] https://lore.kernel.org/r/20220106033130.37623-1-liang.yang@amlogic.com
    https://lore.kernel.org/r/20220106032504.23310-1-liang.yang@amlogic.com
[2] https://lore.kernel.org/all/20220217063346.21691-1-liang.yang@amlogic.com
[3] https://lore.kernel.org/all/20220318124121.26117-1-liang.yang@amlogic.com
[4] https://lore.kernel.org/all/20220402074921.13316-1-liang.yang@amlogic.com/
[5] https://lore.kernel.org/all/20220513123404.48513-1-liang.yang@amlogic.com/
[6] https://lore.kernel.org/all/20220607064731.13367-1-liang.yang@amlogic.com/
[7] https://lore.kernel.org/all/20220624131257.29906-1-liang.yang@amlogic.com/

Liang Yang (5):
  dt-bindings: nand: meson: fix meson nfc clock
  mtd: rawnand: meson: fix the clock
  mtd: rawnand: meson: refine resource getting in probe
  dt-bindings: nand: meson: convert txt to yaml
  mtd: rawnand: meson: not support legacy clock

 .../bindings/mtd/amlogic,meson-nand.txt       | 60 -------------
 .../bindings/mtd/amlogic,meson-nand.yaml      | 88 +++++++++++++++++++
 drivers/mtd/nand/raw/Kconfig                  |  2 +-
 drivers/mtd/nand/raw/meson_nand.c             | 86 +++++++++---------
 4 files changed, 131 insertions(+), 105 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/mtd/amlogic,meson-nand.txt
 create mode 100644 Documentation/devicetree/bindings/mtd/amlogic,meson-nand.yaml

Comments

Neil Armstrong Sept. 5, 2022, 12:37 p.m. UTC | #1
Hi,

On 05/09/2022 09:50, Liang Yang wrote:
> EMMC and NAND have the same clock control register named 'SD_EMMC_CLOCK'
> which is defined in EMMC port internally. bit0~5 of 'SD_EMMC_CLOCK' is
> the divider and bit6~7 is the mux for fix pll and xtal. At the beginning,
> a common MMC and NAND sub-clock was discussed and planed to be implemented
> as NFC clock provider, but now this series of patches of a common MMC and
> NAND sub-clock are never being accepted and the current binding was never
> valid. the reasons are:
> 1. EMMC and NAND, which are mutually exclusive anyway
> 2. coupling the EMMC and NAND.
> 3. it seems that a common MMC and NAND sub-clock is over engineered.
> and let us see the link for more information:
> https://lore.kernel.org/all/20220121074508.42168-5-liang.yang@amlogic.com
> so The meson nfc can't work now, let us rework the clock.
>
> Changes since v7 [8]
>   - use COMMON_CLK && (ARCH_MESON || COMPILE_TEST) instead of
>     ARCH_MESON || COMPILE_TEST || COMMON_CLK.
>   - collect the review and ack
>
> Changes since v6 [7]
>   - use COMMON_CLK instead of !HAVE_LEGACY_CLK
>
> Changes since v5 [6]
>   - add change log for patch 3/5
>   - add patch 5/5 to fix the reporting error of test robot
>
> Changes since v4 [5]
>   - split the dt binding patch into two patches, one for fixing,
>     clock, the other for coverting to yaml
>   - split the nfc driver patch into two patches, one for fixing
>     clock, the other for refining the get nfc resource.
>
> Changes since v3 [4]
>   - use devm_platform_ioremap_resource_byname
>   - dt_binding_check for mtd/amlogic,meson-nand.yaml
>
> Changes since v2 [3]
>   - use fw_name from dts, instead the wrong way using __clk_get_name
>   - reg resource size change to 0x800
>   - use reg-names
>
> Changes since v1 [2]
>   - use clk_parent_data instead of parent_names
>   - define a reg resource instead of sd_emmc_c_clkc
>
> [1] https://lore.kernel.org/r/20220106033130.37623-1-liang.yang@amlogic.com
>      https://lore.kernel.org/r/20220106032504.23310-1-liang.yang@amlogic.com
> [2] https://lore.kernel.org/all/20220217063346.21691-1-liang.yang@amlogic.com
> [3] https://lore.kernel.org/all/20220318124121.26117-1-liang.yang@amlogic.com
> [4] https://lore.kernel.org/all/20220402074921.13316-1-liang.yang@amlogic.com/
> [5] https://lore.kernel.org/all/20220513123404.48513-1-liang.yang@amlogic.com/
> [6] https://lore.kernel.org/all/20220607064731.13367-1-liang.yang@amlogic.com/
> [7] https://lore.kernel.org/all/20220624131257.29906-1-liang.yang@amlogic.com/
>
> Liang Yang (5):
>    dt-bindings: nand: meson: fix meson nfc clock
>    mtd: rawnand: meson: fix the clock
>    mtd: rawnand: meson: refine resource getting in probe
>    dt-bindings: nand: meson: convert txt to yaml
>    mtd: rawnand: meson: not support legacy clock
>
>   .../bindings/mtd/amlogic,meson-nand.txt       | 60 -------------
>   .../bindings/mtd/amlogic,meson-nand.yaml      | 88 +++++++++++++++++++
>   drivers/mtd/nand/raw/Kconfig                  |  2 +-
>   drivers/mtd/nand/raw/meson_nand.c             | 86 +++++++++---------
>   4 files changed, 131 insertions(+), 105 deletions(-)
>   delete mode 100644 Documentation/devicetree/bindings/mtd/amlogic,meson-nand.txt
>   create mode 100644 Documentation/devicetree/bindings/mtd/amlogic,meson-nand.yaml
>
It seems you sent only patch 4

Neil
Liang Yang Sept. 6, 2022, 2:20 a.m. UTC | #2
Hi Neil,

On 2022/9/5 20:37, Neil Armstrong wrote:
> [ EXTERNAL EMAIL ]
> 
> Hi,
> 
> On 05/09/2022 09:50, Liang Yang wrote:
>> EMMC and NAND have the same clock control register named 'SD_EMMC_CLOCK'
>> which is defined in EMMC port internally. bit0~5 of 'SD_EMMC_CLOCK' is
>> the divider and bit6~7 is the mux for fix pll and xtal. At the beginning,
>> a common MMC and NAND sub-clock was discussed and planed to be 
>> implemented
>> as NFC clock provider, but now this series of patches of a common MMC and
>> NAND sub-clock are never being accepted and the current binding was never
>> valid. the reasons are:
>> 1. EMMC and NAND, which are mutually exclusive anyway
>> 2. coupling the EMMC and NAND.
>> 3. it seems that a common MMC and NAND sub-clock is over engineered.
>> and let us see the link for more information:
>> https://lore.kernel.org/all/20220121074508.42168-5-liang.yang@amlogic.com
>> so The meson nfc can't work now, let us rework the clock.
>>
>> Changes since v7 [8]
>>   - use COMMON_CLK && (ARCH_MESON || COMPILE_TEST) instead of
>>     ARCH_MESON || COMPILE_TEST || COMMON_CLK.
>>   - collect the review and ack
>>
>> Changes since v6 [7]
>>   - use COMMON_CLK instead of !HAVE_LEGACY_CLK
>>
>> Changes since v5 [6]
>>   - add change log for patch 3/5
>>   - add patch 5/5 to fix the reporting error of test robot
>>
>> Changes since v4 [5]
>>   - split the dt binding patch into two patches, one for fixing,
>>     clock, the other for coverting to yaml
>>   - split the nfc driver patch into two patches, one for fixing
>>     clock, the other for refining the get nfc resource.
>>
>> Changes since v3 [4]
>>   - use devm_platform_ioremap_resource_byname
>>   - dt_binding_check for mtd/amlogic,meson-nand.yaml
>>
>> Changes since v2 [3]
>>   - use fw_name from dts, instead the wrong way using __clk_get_name
>>   - reg resource size change to 0x800
>>   - use reg-names
>>
>> Changes since v1 [2]
>>   - use clk_parent_data instead of parent_names
>>   - define a reg resource instead of sd_emmc_c_clkc
>>
>> [1] 
>> https://lore.kernel.org/r/20220106033130.37623-1-liang.yang@amlogic.com
>>      
>> https://lore.kernel.org/r/20220106032504.23310-1-liang.yang@amlogic.com
>> [2] 
>> https://lore.kernel.org/all/20220217063346.21691-1-liang.yang@amlogic.com
>> [3] 
>> https://lore.kernel.org/all/20220318124121.26117-1-liang.yang@amlogic.com
>> [4] 
>> https://lore.kernel.org/all/20220402074921.13316-1-liang.yang@amlogic.com/ 
>>
>> [5] 
>> https://lore.kernel.org/all/20220513123404.48513-1-liang.yang@amlogic.com/ 
>>
>> [6] 
>> https://lore.kernel.org/all/20220607064731.13367-1-liang.yang@amlogic.com/ 
>>
>> [7] 
>> https://lore.kernel.org/all/20220624131257.29906-1-liang.yang@amlogic.com/ 
>>
>>
>> Liang Yang (5):
>>    dt-bindings: nand: meson: fix meson nfc clock
>>    mtd: rawnand: meson: fix the clock
>>    mtd: rawnand: meson: refine resource getting in probe
>>    dt-bindings: nand: meson: convert txt to yaml
>>    mtd: rawnand: meson: not support legacy clock
>>
>>   .../bindings/mtd/amlogic,meson-nand.txt       | 60 -------------
>>   .../bindings/mtd/amlogic,meson-nand.yaml      | 88 +++++++++++++++++++
>>   drivers/mtd/nand/raw/Kconfig                  |  2 +-
>>   drivers/mtd/nand/raw/meson_nand.c             | 86 +++++++++---------
>>   4 files changed, 131 insertions(+), 105 deletions(-)
>>   delete mode 100644 
>> Documentation/devicetree/bindings/mtd/amlogic,meson-nand.txt
>>   create mode 100644 
>> Documentation/devicetree/bindings/mtd/amlogic,meson-nand.yaml
>>
> It seems you sent only patch 4
yes, i only sent patch 4 and this cover letter.
i will send this series of patches again.
thanks.
> 
> Neil
> 
> .