Message ID | 20201026155842.10196-2-zhouyanjie@wanyeetech.com |
---|---|
State | Not Applicable, archived |
Headers | show |
Series | Add macro definition for the upcoming new OST driver. | expand |
Context | Check | Description |
---|---|---|
robh/checkpatch | warning | total: 0 errors, 1 warnings, 19 lines checked |
On Mon, 26 Oct 2020 23:58:42 +0800, 周琰杰 (Zhou Yanjie) wrote: > The new OST has one global timer and two or four percpu timers, so there > will be three combinations in the upcoming new OST driver: the original > GLOBAL_TIMER + PERCPU_TIMER, the new GLOBAL_TIMER + PERCPU_TIMER0/1 and > GLOBAL_TIMER + PERCPU_TIMER0/1/2/3, For this, add the macro definition > about OST_CLK_PERCPU_TIMER0/1/2/3. And in order to ensure that all the > combinations work normally, the original ABI values of OST_CLK_PERCPU_TIMER > and OST_CLK_GLOBAL_TIMER need to be exchanged to ensure that in any > combinations, the clock can be registered (by calling clk_hw_register()) > from index 0. > > Before this patch, OST_CLK_PERCPU_TIMER and OST_CLK_GLOBAL_TIMER are only > used in two places, one is when using "assigned-clocks" to configure the > clocks in the DTS file; the other is when registering the clocks in the > sysost driver. When the values of these two ABIs are exchanged, the ABI > value used by sysost driver when registering the clock, and the ABI value > used by DTS when configuring the clock using "assigned-clocks" will also > change accordingly. Therefore, there is no situation that causes the wrong > clock to the configured. Therefore, exchanging ABI values will not cause > errors in the existing codes when registering and configuring the clocks. > > Currently, in the mainline, only X1000 and X1830 are using sysost driver, > and the upcoming X2000 will also use sysost driver. This patch has been > tested on all three SoCs and all works fine. > > Tested-by: 周正 (Zhou Zheng) <sernia.zhou@foxmail.com> > Signed-off-by: 周琰杰 (Zhou Yanjie) <zhouyanjie@wanyeetech.com> > --- > > Notes: > v1->v2: > Rewrite the commit message so that each line is less than 80 characters. > > v2->v3: > Add the description of why the exchange of ABI values will not affect > the existing driver into the commit message. > > include/dt-bindings/clock/ingenic,sysost.h | 10 +++++++--- > 1 file changed, 7 insertions(+), 3 deletions(-) > Reviewed-by: Rob Herring <robh@kernel.org>
diff --git a/include/dt-bindings/clock/ingenic,sysost.h b/include/dt-bindings/clock/ingenic,sysost.h index 9ac88e90babf..063791b01ab3 100644 --- a/include/dt-bindings/clock/ingenic,sysost.h +++ b/include/dt-bindings/clock/ingenic,sysost.h @@ -1,12 +1,16 @@ /* SPDX-License-Identifier: GPL-2.0 */ /* - * This header provides clock numbers for the ingenic,tcu DT binding. + * This header provides clock numbers for the Ingenic OST DT binding. */ #ifndef __DT_BINDINGS_CLOCK_INGENIC_OST_H__ #define __DT_BINDINGS_CLOCK_INGENIC_OST_H__ -#define OST_CLK_PERCPU_TIMER 0 -#define OST_CLK_GLOBAL_TIMER 1 +#define OST_CLK_PERCPU_TIMER 1 +#define OST_CLK_GLOBAL_TIMER 0 +#define OST_CLK_PERCPU_TIMER0 1 +#define OST_CLK_PERCPU_TIMER1 2 +#define OST_CLK_PERCPU_TIMER2 3 +#define OST_CLK_PERCPU_TIMER3 4 #endif /* __DT_BINDINGS_CLOCK_INGENIC_OST_H__ */