mbox series

[0/7] clk: spacemit: add K1 reset support

Message ID 20250320194449.510569-1-elder@riscstar.com (mailing list archive)
Headers show
Series clk: spacemit: add K1 reset support | expand

Message

Alex Elder March 20, 2025, 7:44 p.m. UTC
This series adds reset controller support for the SpacemiT K1 SoC.
It is based on Linux v6.14-rc1.

It is built upon the clock controller driver that Haylen Chu
currently has out for review (currently at v5):
  https://lore.kernel.org/lkml/20250306175750.22480-2-heylenay@4d2.org/

It also depends on two commits that will land in v6.15: 5728c92ae1123
("mfd: syscon: Restore device_node_to_regmap() for non-syscon nodes")
and 7ff4faba63571 ("pinctrl: spacemit: enable config option").

The first patch adds three more system controller CCU nodes to those
implemented by the SpacemiT K1.  The second updates the existing clock
driver with a structure used for OF match data, allowing both clocks
and resets to be specified.  The third provides code that implements
reset functionality.  The fourth defines groups of reset controls
implemented by the CCUs that have alraady been defined.  The fifth
makes it possible for a CCU to be defined with resets but no clocks.
The sixth defines three new CCUs which define only resets.  And the
last patch defines these additional syscon nodes in "k1.dtsi".

All of these patches are available here:
  https://github.com/riscstar/linux/tree/outgoing/reset-v1

					-Alex

Alex Elder (7):
  dt-bindings: soc: spacemit: define spacemit,k1-ccu resets
  clk: spacemit: define struct k1_ccu_data
  clk: spacemit: add reset controller support
  clk: spacemit: define existing syscon resets
  clk: spacemit: make clocks optional
  clk: spacemit: define new syscons with only resets
  riscv: dts: spacemit: add reset support for the K1 SoC

 .../soc/spacemit/spacemit,k1-syscon.yaml      |  13 +-
 arch/riscv/boot/dts/spacemit/k1.dtsi          |  18 +
 drivers/clk/spacemit/ccu-k1.c                 | 393 +++++++++++++++++-
 include/dt-bindings/clock/spacemit,k1-ccu.h   | 134 ++++++
 4 files changed, 539 insertions(+), 19 deletions(-)

Comments

Yixun Lan March 20, 2025, 11:21 p.m. UTC | #1
Hi Alex:

Thanks for sending this patch series

Can you also CC spacemit mailing list: spacemit@lists.linux.dev
it should be handled automaticlly in next 6.15-rc1 version as the
MAINTAINERS file updated
https://web.git.kernel.org/pub/scm/linux/kernel/git/soc/soc.git/commit/?id=4a0c4e723c94

On 14:44 Thu 20 Mar     , Alex Elder wrote:
> This series adds reset controller support for the SpacemiT K1 SoC.
> It is based on Linux v6.14-rc1.
> 
> It is built upon the clock controller driver that Haylen Chu
> currently has out for review (currently at v5):
>   https://lore.kernel.org/lkml/20250306175750.22480-2-heylenay@4d2.org/
> 
> It also depends on two commits that will land in v6.15: 5728c92ae1123
> ("mfd: syscon: Restore device_node_to_regmap() for non-syscon nodes")
> and 7ff4faba63571 ("pinctrl: spacemit: enable config option").
> 
you can use b4 to handle patch dependency, and currently you may got 
linux.riscv.bot complaint, but may fix later
https://github.com/linux-riscv/github-ci/issues/24

> The first patch adds three more system controller CCU nodes to those
> implemented by the SpacemiT K1.  The second updates the existing clock
> driver with a structure used for OF match data, allowing both clocks
> and resets to be specified.  The third provides code that implements
> reset functionality.  The fourth defines groups of reset controls
> implemented by the CCUs that have alraady been defined.  The fifth
> makes it possible for a CCU to be defined with resets but no clocks.
> The sixth defines three new CCUs which define only resets.  And the
> last patch defines these additional syscon nodes in "k1.dtsi".
> 
> All of these patches are available here:
>   https://github.com/riscstar/linux/tree/outgoing/reset-v1
> 
> 					-Alex
> 
> Alex Elder (7):
>   dt-bindings: soc: spacemit: define spacemit,k1-ccu resets
>   clk: spacemit: define struct k1_ccu_data
>   clk: spacemit: add reset controller support
>   clk: spacemit: define existing syscon resets
>   clk: spacemit: make clocks optional
>   clk: spacemit: define new syscons with only resets
>   riscv: dts: spacemit: add reset support for the K1 SoC
> 
>  .../soc/spacemit/spacemit,k1-syscon.yaml      |  13 +-
>  arch/riscv/boot/dts/spacemit/k1.dtsi          |  18 +
>  drivers/clk/spacemit/ccu-k1.c                 | 393 +++++++++++++++++-
>  include/dt-bindings/clock/spacemit,k1-ccu.h   | 134 ++++++
>  4 files changed, 539 insertions(+), 19 deletions(-)
> 
> -- 
> 2.43.0
>
Alex Elder March 21, 2025, 12:05 a.m. UTC | #2
On 3/20/25 6:21 PM, Yixun Lan wrote:
> Hi Alex:
> 
> Thanks for sending this patch series
> 
> Can you also CC spacemit mailing list: spacemit@lists.linux.dev
> it should be handled automaticlly in next 6.15-rc1 version as the
> MAINTAINERS file updated
> https://web.git.kernel.org/pub/scm/linux/kernel/git/soc/soc.git/commit/?id=4a0c4e723c94

Sorry about that.  I will copy it on my next version.

Are you asking me to RESEND this series with that addition?

					-Alex

> On 14:44 Thu 20 Mar     , Alex Elder wrote:
>> This series adds reset controller support for the SpacemiT K1 SoC.
>> It is based on Linux v6.14-rc1.
>>
>> It is built upon the clock controller driver that Haylen Chu
>> currently has out for review (currently at v5):
>>    https://lore.kernel.org/lkml/20250306175750.22480-2-heylenay@4d2.org/
>>
>> It also depends on two commits that will land in v6.15: 5728c92ae1123
>> ("mfd: syscon: Restore device_node_to_regmap() for non-syscon nodes")
>> and 7ff4faba63571 ("pinctrl: spacemit: enable config option").
>>
> you can use b4 to handle patch dependency, and currently you may got
> linux.riscv.bot complaint, but may fix later
> https://github.com/linux-riscv/github-ci/issues/24
> 
>> The first patch adds three more system controller CCU nodes to those
>> implemented by the SpacemiT K1.  The second updates the existing clock
>> driver with a structure used for OF match data, allowing both clocks
>> and resets to be specified.  The third provides code that implements
>> reset functionality.  The fourth defines groups of reset controls
>> implemented by the CCUs that have alraady been defined.  The fifth
>> makes it possible for a CCU to be defined with resets but no clocks.
>> The sixth defines three new CCUs which define only resets.  And the
>> last patch defines these additional syscon nodes in "k1.dtsi".
>>
>> All of these patches are available here:
>>    https://github.com/riscstar/linux/tree/outgoing/reset-v1
>>
>> 					-Alex
>>
>> Alex Elder (7):
>>    dt-bindings: soc: spacemit: define spacemit,k1-ccu resets
>>    clk: spacemit: define struct k1_ccu_data
>>    clk: spacemit: add reset controller support
>>    clk: spacemit: define existing syscon resets
>>    clk: spacemit: make clocks optional
>>    clk: spacemit: define new syscons with only resets
>>    riscv: dts: spacemit: add reset support for the K1 SoC
>>
>>   .../soc/spacemit/spacemit,k1-syscon.yaml      |  13 +-
>>   arch/riscv/boot/dts/spacemit/k1.dtsi          |  18 +
>>   drivers/clk/spacemit/ccu-k1.c                 | 393 +++++++++++++++++-
>>   include/dt-bindings/clock/spacemit,k1-ccu.h   | 134 ++++++
>>   4 files changed, 539 insertions(+), 19 deletions(-)
>>
>> -- 
>> 2.43.0
>>
>
Yixun Lan March 21, 2025, 12:16 a.m. UTC | #3
Hi Alex:

On 19:05 Thu 20 Mar     , Alex Elder wrote:
> On 3/20/25 6:21 PM, Yixun Lan wrote:
> > Hi Alex:
> > 
> > Thanks for sending this patch series
> > 
> > Can you also CC spacemit mailing list: spacemit@lists.linux.dev
> > it should be handled automaticlly in next 6.15-rc1 version as the
> > MAINTAINERS file updated
> > https://web.git.kernel.org/pub/scm/linux/kernel/git/soc/soc.git/commit/?id=4a0c4e723c94
> 
> Sorry about that.  I will copy it on my next version.
> 
> Are you asking me to RESEND this series with that addition?
> 
A resend would be great, so people subscrited to that list will
receive the emails.. in this case, I will wait to add more comments.