diff --git a/arch/sparcv8leon3/reboot.c b/arch/sparcv8leon3/reboot.c index eaa6804d..2d3e2c40 100644 --- a/arch/sparcv8leon3/reboot.c +++ b/arch/sparcv8leon3/reboot.c @@ -16,16 +16,27 @@ #include #include +#include -/* TODO */ int reboot(int magic) { - return 0; + platformctl_t pctl = { + .action = pctl_set, + .type = pctl_reboot, + /* clang-format off */ + .reboot = { + .magic = magic + } + /* clang-format on */ + }; + + return platformctl(&pctl); } int reboot_reason(uint32_t *val) { + *val = 0u; return 0; }