lkml.org 
[lkml]   [2020]   [Oct]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v4] dt-bindings: mtd: gpmi-nand: Fix matching of clocks on different SoCs
    Date
    Driver requires different amount of clocks for different SoCs.  Describe
    these requirements properly to fix dtbs_check warnings like:

    arch/arm64/boot/dts/freescale/imx8mm-beacon-kit.dt.yaml: nand-controller@33002000: clock-names:1: 'gpmi_apb' was expected

    Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>

    ---

    Changes since v3:
    1. Go back to fixed order of clocks, after explanation from Rob.

    Changes since v1:
    1. Do not require order of clocks (use pattern).
    ---
    .../devicetree/bindings/mtd/gpmi-nand.yaml | 76 +++++++++++++++----
    1 file changed, 61 insertions(+), 15 deletions(-)

    diff --git a/Documentation/devicetree/bindings/mtd/gpmi-nand.yaml b/Documentation/devicetree/bindings/mtd/gpmi-nand.yaml
    index 28ff8c581837..9d764e654e1d 100644
    --- a/Documentation/devicetree/bindings/mtd/gpmi-nand.yaml
    +++ b/Documentation/devicetree/bindings/mtd/gpmi-nand.yaml
    @@ -9,9 +9,6 @@ title: Freescale General-Purpose Media Interface (GPMI) binding
    maintainers:
    - Han Xu <han.xu@nxp.com>

    -allOf:
    - - $ref: "nand-controller.yaml"
    -
    description: |
    The GPMI nand controller provides an interface to control the NAND
    flash chips. The device tree may optionally contain sub-nodes
    @@ -58,22 +55,10 @@ properties:
    clocks:
    minItems: 1
    maxItems: 5
    - items:
    - - description: SoC gpmi io clock
    - - description: SoC gpmi apb clock
    - - description: SoC gpmi bch clock
    - - description: SoC gpmi bch apb clock
    - - description: SoC per1 bch clock

    clock-names:
    minItems: 1
    maxItems: 5
    - items:
    - - const: gpmi_io
    - - const: gpmi_apb
    - - const: gpmi_bch
    - - const: gpmi_bch_apb
    - - const: per1_bch

    fsl,use-minimum-ecc:
    type: boolean
    @@ -107,6 +92,67 @@ required:

    unevaluatedProperties: false

    +allOf:
    + - $ref: "nand-controller.yaml"
    +
    + - if:
    + properties:
    + compatible:
    + contains:
    + enum:
    + - fsl,imx23-gpmi-nand
    + - fsl,imx28-gpmi-nand
    + then:
    + properties:
    + clocks:
    + items:
    + - description: SoC gpmi io clock
    + clock-names:
    + items:
    + - const: gpmi_io
    +
    + - if:
    + properties:
    + compatible:
    + contains:
    + enum:
    + - fsl,imx6q-gpmi-nand
    + - fsl,imx6sx-gpmi-nand
    + then:
    + properties:
    + clocks:
    + items:
    + - description: SoC gpmi io clock
    + - description: SoC gpmi apb clock
    + - description: SoC gpmi bch clock
    + - description: SoC gpmi bch apb clock
    + - description: SoC per1 bch clock
    + clock-names:
    + items:
    + - const: gpmi_io
    + - const: gpmi_apb
    + - const: gpmi_bch
    + - const: gpmi_bch_apb
    + - const: per1_bch
    +
    + - if:
    + properties:
    + compatible:
    + contains:
    + const: fsl,imx7d-gpmi-nand
    + then:
    + properties:
    + clocks:
    + items:
    + - description: SoC gpmi io clock
    + - description: SoC gpmi bch apb clock
    + clock-names:
    + minItems: 2
    + maxItems: 2
    + items:
    + - const: gpmi_io
    + - const: gpmi_bch_apb
    +
    examples:
    - |
    nand-controller@8000c000 {
    --
    2.25.1
    \
     
     \ /
      Last update: 2020-10-29 17:21    [W:3.832 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site