Message ID | 20200317161022.11181-5-dinguyen@kernel.org (mailing list archive) |
---|---|
State | Changes Requested, archived |
Headers | show |
Series | clk: agilex: add clock driver | expand |
On Tue, 17 Mar 2020 11:10:21 -0500, Dinh Nguyen wrote: > Document the Agilex clock bindings, and add the clock header file. The > clock header is an enumeration of all the different clocks on the Agilex > platform. > > Signed-off-by: Dinh Nguyen <dinguyen@kernel.org> > --- > v3: address comments from Stephen Boyd > fix build error(tab removed in line 37) > renamed to intel,agilex.yaml > v2: convert original document to YAML > --- > .../bindings/clock/intel,agilex.yaml | 36 ++++++++++ > include/dt-bindings/clock/agilex-clock.h | 70 +++++++++++++++++++ > 2 files changed, 106 insertions(+) > create mode 100644 Documentation/devicetree/bindings/clock/intel,agilex.yaml > create mode 100644 include/dt-bindings/clock/agilex-clock.h > My bot found errors running 'make dt_binding_check' on your patch: Error: Documentation/devicetree/bindings/clock/intel,agilex.example.dts:17.3-4 syntax error FATAL ERROR: Unable to parse input tree scripts/Makefile.lib:311: recipe for target 'Documentation/devicetree/bindings/clock/intel,agilex.example.dt.yaml' failed make[1]: *** [Documentation/devicetree/bindings/clock/intel,agilex.example.dt.yaml] Error 1 Makefile:1262: recipe for target 'dt_binding_check' failed make: *** [dt_binding_check] Error 2 See https://patchwork.ozlabs.org/patch/1256630 Please check and re-submit.
Hi Rob, On 3/18/20 5:40 PM, Rob Herring wrote: > On Tue, 17 Mar 2020 11:10:21 -0500, Dinh Nguyen wrote: >> Document the Agilex clock bindings, and add the clock header file. The >> clock header is an enumeration of all the different clocks on the Agilex >> platform. >> >> Signed-off-by: Dinh Nguyen <dinguyen@kernel.org> >> --- >> v3: address comments from Stephen Boyd >> fix build error(tab removed in line 37) >> renamed to intel,agilex.yaml >> v2: convert original document to YAML >> --- >> .../bindings/clock/intel,agilex.yaml | 36 ++++++++++ >> include/dt-bindings/clock/agilex-clock.h | 70 +++++++++++++++++++ >> 2 files changed, 106 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/clock/intel,agilex.yaml >> create mode 100644 include/dt-bindings/clock/agilex-clock.h >> > > My bot found errors running 'make dt_binding_check' on your patch: > > Error: Documentation/devicetree/bindings/clock/intel,agilex.example.dts:17.3-4 syntax error > FATAL ERROR: Unable to parse input tree > scripts/Makefile.lib:311: recipe for target 'Documentation/devicetree/bindings/clock/intel,agilex.example.dt.yaml' failed > make[1]: *** [Documentation/devicetree/bindings/clock/intel,agilex.example.dt.yaml] Error 1 > Makefile:1262: recipe for target 'dt_binding_check' failed > make: *** [dt_binding_check] Error 2 > > See https://patchwork.ozlabs.org/patch/1256630 > Please check and re-submit. > I want to be able check these errors locally before sending the next version. But I keep getting various errors when I try to "make dt_binding_check": Traceback (most recent call last): File "/bin/dt-doc-validate", line 15, in <module> import ruamel.yaml ImportError: No module named 'ruamel' Documentation/devicetree/bindings/Makefile:12: recipe for target 'Documentation/devicetree/bindings/arm/l2c2x0.example.dts' failed Do you have a pointer on how to run the dt_binding_check? Thanks, Dinh
On Thu, Mar 19, 2020 at 10:16 AM Dinh Nguyen <dinguyen@kernel.org> wrote: > > Hi Rob, > > On 3/18/20 5:40 PM, Rob Herring wrote: > > On Tue, 17 Mar 2020 11:10:21 -0500, Dinh Nguyen wrote: > >> Document the Agilex clock bindings, and add the clock header file. The > >> clock header is an enumeration of all the different clocks on the Agilex > >> platform. > >> > >> Signed-off-by: Dinh Nguyen <dinguyen@kernel.org> > >> --- > >> v3: address comments from Stephen Boyd > >> fix build error(tab removed in line 37) > >> renamed to intel,agilex.yaml > >> v2: convert original document to YAML > >> --- > >> .../bindings/clock/intel,agilex.yaml | 36 ++++++++++ > >> include/dt-bindings/clock/agilex-clock.h | 70 +++++++++++++++++++ > >> 2 files changed, 106 insertions(+) > >> create mode 100644 Documentation/devicetree/bindings/clock/intel,agilex.yaml > >> create mode 100644 include/dt-bindings/clock/agilex-clock.h > >> > > > > My bot found errors running 'make dt_binding_check' on your patch: > > > > Error: Documentation/devicetree/bindings/clock/intel,agilex.example.dts:17.3-4 syntax error > > FATAL ERROR: Unable to parse input tree > > scripts/Makefile.lib:311: recipe for target 'Documentation/devicetree/bindings/clock/intel,agilex.example.dt.yaml' failed > > make[1]: *** [Documentation/devicetree/bindings/clock/intel,agilex.example.dt.yaml] Error 1 > > Makefile:1262: recipe for target 'dt_binding_check' failed > > make: *** [dt_binding_check] Error 2 > > > > See https://patchwork.ozlabs.org/patch/1256630 > > Please check and re-submit. > > > > I want to be able check these errors locally before sending the next > version. But I keep getting various errors when I try to "make > dt_binding_check": > > Traceback (most recent call last): > File "/bin/dt-doc-validate", line 15, in <module> > import ruamel.yaml > ImportError: No module named 'ruamel' > Documentation/devicetree/bindings/Makefile:12: recipe for target > 'Documentation/devicetree/bindings/arm/l2c2x0.example.dts' failed > > > Do you have a pointer on how to run the dt_binding_check? Documentation/devicetree/writing-schema.rst ruamel should get installed automatically when you run pip3. If you just cloned dt-schema, then you still need to run pip on the project directory. That's documented in the project readme. Rob
Hi Rob, On 3/19/20 11:56 AM, Rob Herring wrote: > On Thu, Mar 19, 2020 at 10:16 AM Dinh Nguyen <dinguyen@kernel.org> wrote: >> >> Hi Rob, >> >> On 3/18/20 5:40 PM, Rob Herring wrote: >>> On Tue, 17 Mar 2020 11:10:21 -0500, Dinh Nguyen wrote: >>>> Document the Agilex clock bindings, and add the clock header file. The >>>> clock header is an enumeration of all the different clocks on the Agilex >>>> platform. >>>> >>>> Signed-off-by: Dinh Nguyen <dinguyen@kernel.org> >>>> --- >>>> v3: address comments from Stephen Boyd >>>> fix build error(tab removed in line 37) >>>> renamed to intel,agilex.yaml >>>> v2: convert original document to YAML >>>> --- >>>> .../bindings/clock/intel,agilex.yaml | 36 ++++++++++ >>>> include/dt-bindings/clock/agilex-clock.h | 70 +++++++++++++++++++ >>>> 2 files changed, 106 insertions(+) >>>> create mode 100644 Documentation/devicetree/bindings/clock/intel,agilex.yaml >>>> create mode 100644 include/dt-bindings/clock/agilex-clock.h >>>> >>> >>> My bot found errors running 'make dt_binding_check' on your patch: >>> >>> Error: Documentation/devicetree/bindings/clock/intel,agilex.example.dts:17.3-4 syntax error >>> FATAL ERROR: Unable to parse input tree >>> scripts/Makefile.lib:311: recipe for target 'Documentation/devicetree/bindings/clock/intel,agilex.example.dt.yaml' failed >>> make[1]: *** [Documentation/devicetree/bindings/clock/intel,agilex.example.dt.yaml] Error 1 >>> Makefile:1262: recipe for target 'dt_binding_check' failed >>> make: *** [dt_binding_check] Error 2 >>> >>> See https://patchwork.ozlabs.org/patch/1256630 >>> Please check and re-submit. >>> >> >> I want to be able check these errors locally before sending the next >> version. But I keep getting various errors when I try to "make >> dt_binding_check": >> >> Traceback (most recent call last): >> File "/bin/dt-doc-validate", line 15, in <module> >> import ruamel.yaml >> ImportError: No module named 'ruamel' >> Documentation/devicetree/bindings/Makefile:12: recipe for target >> 'Documentation/devicetree/bindings/arm/l2c2x0.example.dts' failed >> >> >> Do you have a pointer on how to run the dt_binding_check? > > Documentation/devicetree/writing-schema.rst > > ruamel should get installed automatically when you run pip3. If you > just cloned dt-schema, then you still need to run pip on the project > directory. That's documented in the project readme. > Thanks alot for the pointers. Fixed it. Dinh
diff --git a/Documentation/devicetree/bindings/clock/intel,agilex.yaml b/Documentation/devicetree/bindings/clock/intel,agilex.yaml new file mode 100644 index 000000000000..c0025afb2d73 --- /dev/null +++ b/Documentation/devicetree/bindings/clock/intel,agilex.yaml @@ -0,0 +1,36 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/clock/intel,agilex.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Intel SoCFPGA Agilex platform clock controller binding + +maintainers: + - Dinh Nguyen <dinguyen@kernel.org> + +description: + The Intel Agilex Clock controller is an integrated clock controller, which + generates and supplies to all modules. + +properties: + compatible: + const: intel,agilex-clkmgr + + '#clock-cells': + const: 1 + +required: + - compatible + - reg + - '#clock-cells' + +examples: + - | + # Clock controller node + clkmgr: clock-controller@ffd10000 { + compatible = "intel,agilex-clkmgr"; + reg = <0xffd10000 0x1000>; + #clock-cells = <1>; + }; +... diff --git a/include/dt-bindings/clock/agilex-clock.h b/include/dt-bindings/clock/agilex-clock.h new file mode 100644 index 000000000000..f19cf8ccbdd2 --- /dev/null +++ b/include/dt-bindings/clock/agilex-clock.h @@ -0,0 +1,70 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2019, Intel Corporation + */ + +#ifndef __AGILEX_CLOCK_H +#define __AGILEX_CLOCK_H + +/* fixed rate clocks */ +#define AGILEX_OSC1 0 +#define AGILEX_CB_INTOSC_HS_DIV2_CLK 1 +#define AGILEX_CB_INTOSC_LS_CLK 2 +#define AGILEX_L4_SYS_FREE_CLK 3 +#define AGILEX_F2S_FREE_CLK 4 + +/* PLL clocks */ +#define AGILEX_MAIN_PLL_CLK 5 +#define AGILEX_MAIN_PLL_C0_CLK 6 +#define AGILEX_MAIN_PLL_C1_CLK 7 +#define AGILEX_MAIN_PLL_C2_CLK 8 +#define AGILEX_MAIN_PLL_C3_CLK 9 +#define AGILEX_PERIPH_PLL_CLK 10 +#define AGILEX_PERIPH_PLL_C0_CLK 11 +#define AGILEX_PERIPH_PLL_C1_CLK 12 +#define AGILEX_PERIPH_PLL_C2_CLK 13 +#define AGILEX_PERIPH_PLL_C3_CLK 14 +#define AGILEX_MPU_FREE_CLK 15 +#define AGILEX_MPU_CCU_CLK 16 +#define AGILEX_BOOT_CLK 17 + +/* fixed factor clocks */ +#define AGILEX_L3_MAIN_FREE_CLK 18 +#define AGILEX_NOC_FREE_CLK 19 +#define AGILEX_S2F_USR0_CLK 20 +#define AGILEX_NOC_CLK 21 +#define AGILEX_EMAC_A_FREE_CLK 22 +#define AGILEX_EMAC_B_FREE_CLK 23 +#define AGILEX_EMAC_PTP_FREE_CLK 24 +#define AGILEX_GPIO_DB_FREE_CLK 25 +#define AGILEX_SDMMC_FREE_CLK 26 +#define AGILEX_S2F_USER0_FREE_CLK 27 +#define AGILEX_S2F_USER1_FREE_CLK 28 +#define AGILEX_PSI_REF_FREE_CLK 29 + +/* Gate clocks */ +#define AGILEX_MPU_CLK 30 +#define AGILEX_MPU_L2RAM_CLK 31 +#define AGILEX_MPU_PERIPH_CLK 32 +#define AGILEX_L4_MAIN_CLK 33 +#define AGILEX_L4_MP_CLK 34 +#define AGILEX_L4_SP_CLK 35 +#define AGILEX_CS_AT_CLK 36 +#define AGILEX_CS_TRACE_CLK 37 +#define AGILEX_CS_PDBG_CLK 38 +#define AGILEX_CS_TIMER_CLK 39 +#define AGILEX_S2F_USER0_CLK 40 +#define AGILEX_EMAC0_CLK 41 +#define AGILEX_EMAC1_CLK 43 +#define AGILEX_EMAC2_CLK 44 +#define AGILEX_EMAC_PTP_CLK 45 +#define AGILEX_GPIO_DB_CLK 46 +#define AGILEX_NAND_CLK 47 +#define AGILEX_PSI_REF_CLK 48 +#define AGILEX_S2F_USER1_CLK 49 +#define AGILEX_SDMMC_CLK 50 +#define AGILEX_SPI_M_CLK 51 +#define AGILEX_USB_CLK 52 +#define AGILEX_NUM_CLKS 53 + +#endif /* __AGILEX_CLOCK_H */
Document the Agilex clock bindings, and add the clock header file. The clock header is an enumeration of all the different clocks on the Agilex platform. Signed-off-by: Dinh Nguyen <dinguyen@kernel.org> --- v3: address comments from Stephen Boyd fix build error(tab removed in line 37) renamed to intel,agilex.yaml v2: convert original document to YAML --- .../bindings/clock/intel,agilex.yaml | 36 ++++++++++ include/dt-bindings/clock/agilex-clock.h | 70 +++++++++++++++++++ 2 files changed, 106 insertions(+) create mode 100644 Documentation/devicetree/bindings/clock/intel,agilex.yaml create mode 100644 include/dt-bindings/clock/agilex-clock.h