ARM: dts: at91: sama5d3: fix maximum peripheral clock rates
authorAlexandre Belloni <alexandre.belloni@bootlin.com>
Fri, 10 Jan 2020 17:20:06 +0000 (18:20 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 14 Feb 2020 21:32:22 +0000 (16:32 -0500)
commit ee0aa926ddb0bd8ba59e33e3803b3b5804e3f5da upstream.

Currently the maximum rate for peripheral clock is calculated based on a
typical 133MHz MCK. The maximum frequency is defined in the datasheet as a
ratio to MCK. Some sama5d3 platforms are using a 166MHz MCK. Update the
device trees to match the maximum rate based on 166MHz.

Reported-by: Karl Rudbæk Olsen <karl@micro-technic.com>
Fixes: d2e8190b7916 ("ARM: at91/dt: define sama5d3 clocks")
Link: https://lore.kernel.org/r/20200110172007.1253659-1-alexandre.belloni@bootlin.com
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/arm/boot/dts/sama5d3.dtsi
arch/arm/boot/dts/sama5d3_can.dtsi
arch/arm/boot/dts/sama5d3_uart.dtsi

index 554d0bdedc7a172c9bad3b8e84ac068cb388a412..f96b41ed5b96890996cd4f753a8e3b14f6d08719 100644 (file)
                                        usart0_clk: usart0_clk {
                                                #clock-cells = <0>;
                                                reg = <12>;
-                                               atmel,clk-output-range = <0 66000000>;
+                                               atmel,clk-output-range = <0 83000000>;
                                        };
 
                                        usart1_clk: usart1_clk {
                                                #clock-cells = <0>;
                                                reg = <13>;
-                                               atmel,clk-output-range = <0 66000000>;
+                                               atmel,clk-output-range = <0 83000000>;
                                        };
 
                                        usart2_clk: usart2_clk {
                                                #clock-cells = <0>;
                                                reg = <14>;
-                                               atmel,clk-output-range = <0 66000000>;
+                                               atmel,clk-output-range = <0 83000000>;
                                        };
 
                                        usart3_clk: usart3_clk {
                                                #clock-cells = <0>;
                                                reg = <15>;
-                                               atmel,clk-output-range = <0 66000000>;
+                                               atmel,clk-output-range = <0 83000000>;
                                        };
 
                                        uart0_clk: uart0_clk {
                                                #clock-cells = <0>;
                                                reg = <16>;
-                                               atmel,clk-output-range = <0 66000000>;
+                                               atmel,clk-output-range = <0 83000000>;
                                        };
 
                                        twi0_clk: twi0_clk {
                                                reg = <18>;
                                                #clock-cells = <0>;
-                                               atmel,clk-output-range = <0 16625000>;
+                                               atmel,clk-output-range = <0 41500000>;
                                        };
 
                                        twi1_clk: twi1_clk {
                                                #clock-cells = <0>;
                                                reg = <19>;
-                                               atmel,clk-output-range = <0 16625000>;
+                                               atmel,clk-output-range = <0 41500000>;
                                        };
 
                                        twi2_clk: twi2_clk {
                                                #clock-cells = <0>;
                                                reg = <20>;
-                                               atmel,clk-output-range = <0 16625000>;
+                                               atmel,clk-output-range = <0 41500000>;
                                        };
 
                                        mci0_clk: mci0_clk {
                                        spi0_clk: spi0_clk {
                                                #clock-cells = <0>;
                                                reg = <24>;
-                                               atmel,clk-output-range = <0 133000000>;
+                                               atmel,clk-output-range = <0 166000000>;
                                        };
 
                                        spi1_clk: spi1_clk {
                                                #clock-cells = <0>;
                                                reg = <25>;
-                                               atmel,clk-output-range = <0 133000000>;
+                                               atmel,clk-output-range = <0 166000000>;
                                        };
 
                                        tcb0_clk: tcb0_clk {
                                                #clock-cells = <0>;
                                                reg = <26>;
-                                               atmel,clk-output-range = <0 133000000>;
+                                               atmel,clk-output-range = <0 166000000>;
                                        };
 
                                        pwm_clk: pwm_clk {
                                        adc_clk: adc_clk {
                                                #clock-cells = <0>;
                                                reg = <29>;
-                                               atmel,clk-output-range = <0 66000000>;
+                                               atmel,clk-output-range = <0 83000000>;
                                        };
 
                                        dma0_clk: dma0_clk {
                                        ssc0_clk: ssc0_clk {
                                                #clock-cells = <0>;
                                                reg = <38>;
-                                               atmel,clk-output-range = <0 66000000>;
+                                               atmel,clk-output-range = <0 83000000>;
                                        };
 
                                        ssc1_clk: ssc1_clk {
                                                #clock-cells = <0>;
                                                reg = <39>;
-                                               atmel,clk-output-range = <0 66000000>;
+                                               atmel,clk-output-range = <0 83000000>;
                                        };
 
                                        sha_clk: sha_clk {
index c5a3772741bf610b300a10147e76bcc882b973fb..0fac79f75c06ccd3008673a0147a3692656f095f 100644 (file)
                                        can0_clk: can0_clk {
                                                #clock-cells = <0>;
                                                reg = <40>;
-                                               atmel,clk-output-range = <0 66000000>;
+                                               atmel,clk-output-range = <0 83000000>;
                                        };
 
                                        can1_clk: can1_clk {
                                                #clock-cells = <0>;
                                                reg = <41>;
-                                               atmel,clk-output-range = <0 66000000>;
+                                               atmel,clk-output-range = <0 83000000>;
                                        };
                                };
                        };
index 186377d41c917515523386827fae06ce19437a2a..48e23d18e5e37b7a53264c3fb57c5fee8e6b7ebf 100644 (file)
                                        uart0_clk: uart0_clk {
                                                #clock-cells = <0>;
                                                reg = <16>;
-                                               atmel,clk-output-range = <0 66000000>;
+                                               atmel,clk-output-range = <0 83000000>;
                                        };
 
                                        uart1_clk: uart1_clk {
                                                #clock-cells = <0>;
                                                reg = <17>;
-                                               atmel,clk-output-range = <0 66000000>;
+                                               atmel,clk-output-range = <0 83000000>;
                                        };
                                };
                        };