2019-11-11 13:36:14

by Anup Patel

[permalink] [raw]
Subject: [PATCH] RISC-V: Enable SYSCON reboot and poweroff drivers

We can use SYSCON reboot and poweroff drivers for the
SiFive test device found on QEMU virt machine and SiFive
SOCs.

This patch enables SYSCON reboot and poweroff drivers
in RV64 and RV32 defconfigs.

Signed-off-by: Anup Patel <[email protected]>
---
arch/riscv/configs/defconfig | 4 ++++
arch/riscv/configs/rv32_defconfig | 4 ++++
2 files changed, 8 insertions(+)

diff --git a/arch/riscv/configs/defconfig b/arch/riscv/configs/defconfig
index 420a0dbef386..73a6ee31a7d2 100644
--- a/arch/riscv/configs/defconfig
+++ b/arch/riscv/configs/defconfig
@@ -63,6 +63,10 @@ CONFIG_HW_RANDOM_VIRTIO=y
CONFIG_SPI=y
CONFIG_SPI_SIFIVE=y
# CONFIG_PTP_1588_CLOCK is not set
+CONFIG_POWER_RESET=y
+CONFIG_POWER_RESET_SYSCON=y
+CONFIG_POWER_RESET_SYSCON_POWEROFF=y
+CONFIG_SYSCON_REBOOT_MODE=y
CONFIG_DRM=y
CONFIG_DRM_RADEON=y
CONFIG_DRM_VIRTIO_GPU=y
diff --git a/arch/riscv/configs/rv32_defconfig b/arch/riscv/configs/rv32_defconfig
index 87ee6e62b64b..1429e1254295 100644
--- a/arch/riscv/configs/rv32_defconfig
+++ b/arch/riscv/configs/rv32_defconfig
@@ -61,6 +61,10 @@ CONFIG_VIRTIO_CONSOLE=y
CONFIG_HW_RANDOM=y
CONFIG_HW_RANDOM_VIRTIO=y
# CONFIG_PTP_1588_CLOCK is not set
+CONFIG_POWER_RESET=y
+CONFIG_POWER_RESET_SYSCON=y
+CONFIG_POWER_RESET_SYSCON_POWEROFF=y
+CONFIG_SYSCON_REBOOT_MODE=y
CONFIG_DRM=y
CONFIG_DRM_RADEON=y
CONFIG_DRM_VIRTIO_GPU=y
--
2.17.1


2019-11-11 13:45:23

by Anup Patel

[permalink] [raw]
Subject: RE: [PATCH] RISC-V: Enable SYSCON reboot and poweroff drivers

Correct Palmer's email address

> -----Original Message-----
> From: Anup Patel
> Sent: Monday, November 11, 2019 7:05 PM
> To: Palmer Dabbelt <[email protected]>; Paul Walmsley
> <[email protected]>
> Cc: Atish Patra <[email protected]>; Alistair Francis
> <[email protected]>; Christoph Hellwig <[email protected]>; Anup Patel
> <[email protected]>; [email protected]; linux-
> [email protected]; Anup Patel <[email protected]>
> Subject: [PATCH] RISC-V: Enable SYSCON reboot and poweroff drivers
>
> We can use SYSCON reboot and poweroff drivers for the SiFive test device
> found on QEMU virt machine and SiFive SOCs.
>
> This patch enables SYSCON reboot and poweroff drivers in RV64 and RV32
> defconfigs.
>
> Signed-off-by: Anup Patel <[email protected]>
> ---
> arch/riscv/configs/defconfig | 4 ++++
> arch/riscv/configs/rv32_defconfig | 4 ++++
> 2 files changed, 8 insertions(+)
>
> diff --git a/arch/riscv/configs/defconfig b/arch/riscv/configs/defconfig
> index 420a0dbef386..73a6ee31a7d2 100644
> --- a/arch/riscv/configs/defconfig
> +++ b/arch/riscv/configs/defconfig
> @@ -63,6 +63,10 @@ CONFIG_HW_RANDOM_VIRTIO=y CONFIG_SPI=y
> CONFIG_SPI_SIFIVE=y # CONFIG_PTP_1588_CLOCK is not set
> +CONFIG_POWER_RESET=y
> +CONFIG_POWER_RESET_SYSCON=y
> +CONFIG_POWER_RESET_SYSCON_POWEROFF=y
> +CONFIG_SYSCON_REBOOT_MODE=y
> CONFIG_DRM=y
> CONFIG_DRM_RADEON=y
> CONFIG_DRM_VIRTIO_GPU=y
> diff --git a/arch/riscv/configs/rv32_defconfig
> b/arch/riscv/configs/rv32_defconfig
> index 87ee6e62b64b..1429e1254295 100644
> --- a/arch/riscv/configs/rv32_defconfig
> +++ b/arch/riscv/configs/rv32_defconfig
> @@ -61,6 +61,10 @@ CONFIG_VIRTIO_CONSOLE=y
> CONFIG_HW_RANDOM=y CONFIG_HW_RANDOM_VIRTIO=y #
> CONFIG_PTP_1588_CLOCK is not set
> +CONFIG_POWER_RESET=y
> +CONFIG_POWER_RESET_SYSCON=y
> +CONFIG_POWER_RESET_SYSCON_POWEROFF=y
> +CONFIG_SYSCON_REBOOT_MODE=y
> CONFIG_DRM=y
> CONFIG_DRM_RADEON=y
> CONFIG_DRM_VIRTIO_GPU=y
> --
> 2.17.1

2019-11-11 14:08:36

by David Abdurachmanov

[permalink] [raw]
Subject: Re: [PATCH] RISC-V: Enable SYSCON reboot and poweroff drivers

On Mon, Nov 11, 2019 at 3:43 PM Anup Patel <[email protected]> wrote:
>
> Correct Palmer's email address
>
> > -----Original Message-----
> > From: Anup Patel
> > Sent: Monday, November 11, 2019 7:05 PM
> > To: Palmer Dabbelt <[email protected]>; Paul Walmsley
> > <[email protected]>
> > Cc: Atish Patra <[email protected]>; Alistair Francis
> > <[email protected]>; Christoph Hellwig <[email protected]>; Anup Patel
> > <[email protected]>; [email protected]; linux-
> > [email protected]; Anup Patel <[email protected]>
> > Subject: [PATCH] RISC-V: Enable SYSCON reboot and poweroff drivers
> >
> > We can use SYSCON reboot and poweroff drivers for the SiFive test device
> > found on QEMU virt machine and SiFive SOCs.
> >
> > This patch enables SYSCON reboot and poweroff drivers in RV64 and RV32
> > defconfigs.
> >
> > Signed-off-by: Anup Patel <[email protected]>
> > ---
> > arch/riscv/configs/defconfig | 4 ++++
> > arch/riscv/configs/rv32_defconfig | 4 ++++
> > 2 files changed, 8 insertions(+)
> >
> > diff --git a/arch/riscv/configs/defconfig b/arch/riscv/configs/defconfig
> > index 420a0dbef386..73a6ee31a7d2 100644
> > --- a/arch/riscv/configs/defconfig
> > +++ b/arch/riscv/configs/defconfig
> > @@ -63,6 +63,10 @@ CONFIG_HW_RANDOM_VIRTIO=y CONFIG_SPI=y
> > CONFIG_SPI_SIFIVE=y # CONFIG_PTP_1588_CLOCK is not set
> > +CONFIG_POWER_RESET=y

Why not to add

select POWER_RESET

to arch/riscv/Kconfig ?

This seems to be a popular choice (?). I went this path recently while
enabling gpio-restart on SiFive Unleashed on a private branch.

[..]
arch/arm/mach-exynos/Kconfig: select POWER_RESET
arch/arm/mach-exynos/Kconfig: select POWER_RESET_SYSCON
arch/arm/mach-exynos/Kconfig: select POWER_RESET_SYSCON_POWEROFF
arch/arm/mach-gemini/Kconfig: select POWER_RESET
arch/arm/mach-gemini/Kconfig: select POWER_RESET_GEMINI_POWEROFF
arch/arm/mach-gemini/Kconfig: select POWER_RESET_SYSCON
arch/arm/mach-hisi/Kconfig: select POWER_RESET
arch/arm/mach-hisi/Kconfig: select POWER_RESET_HISI
arch/arm/mach-integrator/Kconfig: select POWER_RESET
arch/arm/mach-integrator/Kconfig: select POWER_RESET_VERSATILE
arch/arm/mach-realview/Kconfig: select POWER_RESET
arch/arm/mach-realview/Kconfig: select POWER_RESET_VERSATILE
arch/arm/mach-versatile/Kconfig: select POWER_RESET
arch/arm/mach-versatile/Kconfig: select POWER_RESET_VERSATILE
arch/arm/mach-vexpress/Kconfig: select POWER_RESET
arch/arm/mach-vexpress/Kconfig: select POWER_RESET_VEXPRESS
arch/arm64/Kconfig: select POWER_RESET
[..]

> > +CONFIG_POWER_RESET_SYSCON=y
> > +CONFIG_POWER_RESET_SYSCON_POWEROFF=y
> > +CONFIG_SYSCON_REBOOT_MODE=y
> > CONFIG_DRM=y
> > CONFIG_DRM_RADEON=y
> > CONFIG_DRM_VIRTIO_GPU=y
> > diff --git a/arch/riscv/configs/rv32_defconfig
> > b/arch/riscv/configs/rv32_defconfig
> > index 87ee6e62b64b..1429e1254295 100644
> > --- a/arch/riscv/configs/rv32_defconfig
> > +++ b/arch/riscv/configs/rv32_defconfig
> > @@ -61,6 +61,10 @@ CONFIG_VIRTIO_CONSOLE=y
> > CONFIG_HW_RANDOM=y CONFIG_HW_RANDOM_VIRTIO=y #
> > CONFIG_PTP_1588_CLOCK is not set
> > +CONFIG_POWER_RESET=y
> > +CONFIG_POWER_RESET_SYSCON=y
> > +CONFIG_POWER_RESET_SYSCON_POWEROFF=y
> > +CONFIG_SYSCON_REBOOT_MODE=y
> > CONFIG_DRM=y
> > CONFIG_DRM_RADEON=y
> > CONFIG_DRM_VIRTIO_GPU=y
> > --
> > 2.17.1
>
>
> _______________________________________________
> linux-riscv mailing list
> [email protected]
> http://lists.infradead.org/mailman/listinfo/linux-riscv

2019-11-11 14:11:08

by Andreas Schwab

[permalink] [raw]
Subject: Re: [PATCH] RISC-V: Enable SYSCON reboot and poweroff drivers

On Nov 11 2019, Anup Patel wrote:

> We can use SYSCON reboot and poweroff drivers for the
> SiFive test device found on QEMU virt machine and SiFive
> SOCs.

I don't see any syscon-reboot compatible in the device tree.

Andreas.

--
Andreas Schwab, SUSE Labs, [email protected]
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."

2019-11-11 14:22:26

by Anup Patel

[permalink] [raw]
Subject: RE: [PATCH] RISC-V: Enable SYSCON reboot and poweroff drivers



> -----Original Message-----
> From: Andreas Schwab <[email protected]>
> Sent: Monday, November 11, 2019 7:38 PM
> To: Anup Patel <[email protected]>
> Cc: Palmer Dabbelt <[email protected]>; Paul Walmsley
> <[email protected]>; Atish Patra <[email protected]>; Alistair
> Francis <[email protected]>; Christoph Hellwig <[email protected]>; Anup
> Patel <[email protected]>; [email protected]; linux-
> [email protected]
> Subject: Re: [PATCH] RISC-V: Enable SYSCON reboot and poweroff drivers
>
> On Nov 11 2019, Anup Patel wrote:
>
> > We can use SYSCON reboot and poweroff drivers for the SiFive test
> > device found on QEMU virt machine and SiFive SOCs.
>
> I don't see any syscon-reboot compatible in the device tree.

I have sent patch to QEMU as well for generating SYSCON DT nodes.

Regards,
Anup

>
> Andreas.
>
> --
> Andreas Schwab, SUSE Labs, [email protected] GPG Key fingerprint = 0196
> BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something
> completely different."

2019-11-11 14:34:56

by Andreas Schwab

[permalink] [raw]
Subject: Re: [PATCH] RISC-V: Enable SYSCON reboot and poweroff drivers

On Nov 11 2019, Anup Patel wrote:

>> -----Original Message-----
>> From: Andreas Schwab <[email protected]>
>> Sent: Monday, November 11, 2019 7:38 PM
>> To: Anup Patel <[email protected]>
>> Cc: Palmer Dabbelt <[email protected]>; Paul Walmsley
>> <[email protected]>; Atish Patra <[email protected]>; Alistair
>> Francis <[email protected]>; Christoph Hellwig <[email protected]>; Anup
>> Patel <[email protected]>; [email protected]; linux-
>> [email protected]
>> Subject: Re: [PATCH] RISC-V: Enable SYSCON reboot and poweroff drivers
>>
>> On Nov 11 2019, Anup Patel wrote:
>>
>> > We can use SYSCON reboot and poweroff drivers for the SiFive test
>> > device found on QEMU virt machine and SiFive SOCs.
>>
>> I don't see any syscon-reboot compatible in the device tree.
>
> I have sent patch to QEMU as well for generating SYSCON DT nodes.

What about the kernel DT?

Andreas.

--
Andreas Schwab, SUSE Labs, [email protected]
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."

2019-11-11 16:55:20

by Anup Patel

[permalink] [raw]
Subject: RE: [PATCH] RISC-V: Enable SYSCON reboot and poweroff drivers



> -----Original Message-----
> From: Andreas Schwab <[email protected]>
> Sent: Monday, November 11, 2019 8:02 PM
> To: Anup Patel <[email protected]>
> Cc: Palmer Dabbelt <[email protected]>; Paul Walmsley
> <[email protected]>; Atish Patra <[email protected]>; Alistair
> Francis <[email protected]>; Christoph Hellwig <[email protected]>; Anup
> Patel <[email protected]>; [email protected]; linux-
> [email protected]
> Subject: Re: [PATCH] RISC-V: Enable SYSCON reboot and poweroff drivers
>
> On Nov 11 2019, Anup Patel wrote:
>
> >> -----Original Message-----
> >> From: Andreas Schwab <[email protected]>
> >> Sent: Monday, November 11, 2019 7:38 PM
> >> To: Anup Patel <[email protected]>
> >> Cc: Palmer Dabbelt <[email protected]>; Paul Walmsley
> >> <[email protected]>; Atish Patra <[email protected]>;
> >> Alistair Francis <[email protected]>; Christoph Hellwig
> >> <[email protected]>; Anup Patel <[email protected]>;
> >> [email protected]; linux- [email protected]
> >> Subject: Re: [PATCH] RISC-V: Enable SYSCON reboot and poweroff
> >> drivers
> >>
> >> On Nov 11 2019, Anup Patel wrote:
> >>
> >> > We can use SYSCON reboot and poweroff drivers for the SiFive test
> >> > device found on QEMU virt machine and SiFive SOCs.
> >>
> >> I don't see any syscon-reboot compatible in the device tree.
> >
> > I have sent patch to QEMU as well for generating SYSCON DT nodes.
>
> What about the kernel DT?

For QEMU virt machine, the DT is generated by QEMU at runtime
so we don't need an explicit DT file in Linux sources.

Regards,
Anup

2019-11-11 16:56:41

by Andreas Schwab

[permalink] [raw]
Subject: Re: [PATCH] RISC-V: Enable SYSCON reboot and poweroff drivers

On Nov 11 2019, Anup Patel wrote:

>> -----Original Message-----
>> From: Andreas Schwab <[email protected]>
>> Sent: Monday, November 11, 2019 8:02 PM
>> To: Anup Patel <[email protected]>
>> Cc: Palmer Dabbelt <[email protected]>; Paul Walmsley
>> <[email protected]>; Atish Patra <[email protected]>; Alistair
>> Francis <[email protected]>; Christoph Hellwig <[email protected]>; Anup
>> Patel <[email protected]>; [email protected]; linux-
>> [email protected]
>> Subject: Re: [PATCH] RISC-V: Enable SYSCON reboot and poweroff drivers
>>
>> On Nov 11 2019, Anup Patel wrote:
>>
>> >> -----Original Message-----
>> >> From: Andreas Schwab <[email protected]>
>> >> Sent: Monday, November 11, 2019 7:38 PM
>> >> To: Anup Patel <[email protected]>
>> >> Cc: Palmer Dabbelt <[email protected]>; Paul Walmsley
>> >> <[email protected]>; Atish Patra <[email protected]>;
>> >> Alistair Francis <[email protected]>; Christoph Hellwig
>> >> <[email protected]>; Anup Patel <[email protected]>;
>> >> [email protected]; linux- [email protected]
>> >> Subject: Re: [PATCH] RISC-V: Enable SYSCON reboot and poweroff
>> >> drivers
>> >>
>> >> On Nov 11 2019, Anup Patel wrote:
>> >>
>> >> > We can use SYSCON reboot and poweroff drivers for the SiFive test
>> >> > device found on QEMU virt machine and SiFive SOCs.
>> >>
>> >> I don't see any syscon-reboot compatible in the device tree.
>> >
>> > I have sent patch to QEMU as well for generating SYSCON DT nodes.
>>
>> What about the kernel DT?
>
> For QEMU virt machine, the DT is generated by QEMU at runtime
> so we don't need an explicit DT file in Linux sources.

What about the HiFiveU?

Andreas.

--
Andreas Schwab, SUSE Labs, [email protected]
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."

2019-11-11 17:00:54

by Christoph Hellwig

[permalink] [raw]
Subject: Re: [PATCH] RISC-V: Enable SYSCON reboot and poweroff drivers

On Mon, Nov 11, 2019 at 05:55:36PM +0100, Andreas Schwab wrote:
> > For QEMU virt machine, the DT is generated by QEMU at runtime
> > so we don't need an explicit DT file in Linux sources.
>
> What about the HiFiveU?

According to Palmer the IP block exists there, but isn't actually
wired up to reset or reboot the board. So adding the DT entries
is rather pointless.

2019-11-11 17:03:11

by David Abdurachmanov

[permalink] [raw]
Subject: Re: [PATCH] RISC-V: Enable SYSCON reboot and poweroff drivers

On Mon, Nov 11, 2019 at 6:55 PM Andreas Schwab <[email protected]> wrote:
>
> On Nov 11 2019, Anup Patel wrote:
>
> >> -----Original Message-----
> >> From: Andreas Schwab <[email protected]>
> >> Sent: Monday, November 11, 2019 8:02 PM
> >> To: Anup Patel <[email protected]>
> >> Cc: Palmer Dabbelt <[email protected]>; Paul Walmsley
> >> <[email protected]>; Atish Patra <[email protected]>; Alistair
> >> Francis <[email protected]>; Christoph Hellwig <[email protected]>; Anup
> >> Patel <[email protected]>; [email protected]; linux-
> >> [email protected]
> >> Subject: Re: [PATCH] RISC-V: Enable SYSCON reboot and poweroff drivers
> >>
> >> On Nov 11 2019, Anup Patel wrote:
> >>
> >> >> -----Original Message-----
> >> >> From: Andreas Schwab <[email protected]>
> >> >> Sent: Monday, November 11, 2019 7:38 PM
> >> >> To: Anup Patel <[email protected]>
> >> >> Cc: Palmer Dabbelt <[email protected]>; Paul Walmsley
> >> >> <[email protected]>; Atish Patra <[email protected]>;
> >> >> Alistair Francis <[email protected]>; Christoph Hellwig
> >> >> <[email protected]>; Anup Patel <[email protected]>;
> >> >> [email protected]; linux- [email protected]
> >> >> Subject: Re: [PATCH] RISC-V: Enable SYSCON reboot and poweroff
> >> >> drivers
> >> >>
> >> >> On Nov 11 2019, Anup Patel wrote:
> >> >>
> >> >> > We can use SYSCON reboot and poweroff drivers for the SiFive test
> >> >> > device found on QEMU virt machine and SiFive SOCs.
> >> >>
> >> >> I don't see any syscon-reboot compatible in the device tree.
> >> >
> >> > I have sent patch to QEMU as well for generating SYSCON DT nodes.
> >>
> >> What about the kernel DT?
> >
> > For QEMU virt machine, the DT is generated by QEMU at runtime
> > so we don't need an explicit DT file in Linux sources.
>
> What about the HiFiveU?

Unleashed uses gpio-restart which depends on gpio driver (not upstreamed and
not posted for review on mailing list). I have that working on my build.

david

>
> Andreas.
>
> --
> Andreas Schwab, SUSE Labs, [email protected]
> GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7
> "And now for something completely different."
>
> _______________________________________________
> linux-riscv mailing list
> [email protected]
> http://lists.infradead.org/mailman/listinfo/linux-riscv

2019-11-11 17:06:39

by Andreas Schwab

[permalink] [raw]
Subject: Re: [PATCH] RISC-V: Enable SYSCON reboot and poweroff drivers

On Nov 11 2019, David Abdurachmanov wrote:

> On Mon, Nov 11, 2019 at 6:55 PM Andreas Schwab <[email protected]> wrote:
>>
>> On Nov 11 2019, Anup Patel wrote:
>>
>> >> -----Original Message-----
>> >> From: Andreas Schwab <[email protected]>
>> >> Sent: Monday, November 11, 2019 8:02 PM
>> >> To: Anup Patel <[email protected]>
>> >> Cc: Palmer Dabbelt <[email protected]>; Paul Walmsley
>> >> <[email protected]>; Atish Patra <[email protected]>; Alistair
>> >> Francis <[email protected]>; Christoph Hellwig <[email protected]>; Anup
>> >> Patel <[email protected]>; [email protected]; linux-
>> >> [email protected]
>> >> Subject: Re: [PATCH] RISC-V: Enable SYSCON reboot and poweroff drivers
>> >>
>> >> On Nov 11 2019, Anup Patel wrote:
>> >>
>> >> >> -----Original Message-----
>> >> >> From: Andreas Schwab <[email protected]>
>> >> >> Sent: Monday, November 11, 2019 7:38 PM
>> >> >> To: Anup Patel <[email protected]>
>> >> >> Cc: Palmer Dabbelt <[email protected]>; Paul Walmsley
>> >> >> <[email protected]>; Atish Patra <[email protected]>;
>> >> >> Alistair Francis <[email protected]>; Christoph Hellwig
>> >> >> <[email protected]>; Anup Patel <[email protected]>;
>> >> >> [email protected]; linux- [email protected]
>> >> >> Subject: Re: [PATCH] RISC-V: Enable SYSCON reboot and poweroff
>> >> >> drivers
>> >> >>
>> >> >> On Nov 11 2019, Anup Patel wrote:
>> >> >>
>> >> >> > We can use SYSCON reboot and poweroff drivers for the SiFive test
>> >> >> > device found on QEMU virt machine and SiFive SOCs.
>> >> >>
>> >> >> I don't see any syscon-reboot compatible in the device tree.
>> >> >
>> >> > I have sent patch to QEMU as well for generating SYSCON DT nodes.
>> >>
>> >> What about the kernel DT?
>> >
>> > For QEMU virt machine, the DT is generated by QEMU at runtime
>> > so we don't need an explicit DT file in Linux sources.
>>
>> What about the HiFiveU?
>
> Unleashed uses gpio-restart which depends on gpio driver (not upstreamed and
> not posted for review on mailing list). I have that working on my build.

I do have that, too. But I wonder about the "SiFive SOCs" reference
above.

Andreas.

--
Andreas Schwab, SUSE Labs, [email protected]
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."

2019-11-11 17:08:22

by Paul Walmsley

[permalink] [raw]
Subject: Re: [PATCH] RISC-V: Enable SYSCON reboot and poweroff drivers

On Mon, 11 Nov 2019, Anup Patel wrote:

> We can use SYSCON reboot and poweroff drivers for the
> SiFive test device found on QEMU virt machine and SiFive
> SOCs.
>
> This patch enables SYSCON reboot and poweroff drivers
> in RV64 and RV32 defconfigs.
>
> Signed-off-by: Anup Patel <[email protected]>

I'd much prefer Christoph's driver, once it's fixed up per my earlier
comments. This business with writing random registers based on what's in
the DT data has always been a bad idea.


- Paul

2019-11-12 04:23:58

by Anup Patel

[permalink] [raw]
Subject: Re: [PATCH] RISC-V: Enable SYSCON reboot and poweroff drivers

On Mon, Nov 11, 2019 at 10:36 PM Paul Walmsley <[email protected]> wrote:
>
> On Mon, 11 Nov 2019, Anup Patel wrote:
>
> > We can use SYSCON reboot and poweroff drivers for the
> > SiFive test device found on QEMU virt machine and SiFive
> > SOCs.
> >
> > This patch enables SYSCON reboot and poweroff drivers
> > in RV64 and RV32 defconfigs.
> >
> > Signed-off-by: Anup Patel <[email protected]>
>
> I'd much prefer Christoph's driver, once it's fixed up per my earlier
> comments. This business with writing random registers based on what's in
> the DT data has always been a bad idea.

Like mentioned in other email thread, we are not writing random
date to registers. In fact, we are describing Reboot and Poweroff
mechanism in DT using SYSCON Reboot and Poweroff DT nodes.

This is not a new approach. It has been used by a variety of SOCs
in past.

Regards,
Anup

2019-11-23 03:05:34

by Paul Walmsley

[permalink] [raw]
Subject: Re: [PATCH] RISC-V: Enable SYSCON reboot and poweroff drivers

On Mon, 11 Nov 2019, Anup Patel wrote:

> We can use SYSCON reboot and poweroff drivers for the
> SiFive test device found on QEMU virt machine and SiFive
> SOCs.
>
> This patch enables SYSCON reboot and poweroff drivers
> in RV64 and RV32 defconfigs.
>
> Signed-off-by: Anup Patel <[email protected]>

Sounds like Christoph isn't planning to follow up on his reset driver.
So this patch looks OK to me, as far as QEMU is concerned. Still it seems
best to avoid SYSCON for real hardware as much as possible, so, will plan
to apply this after CONFIG_SOC_VIRT support lands.

thanks,

- Paul