summaryrefslogtreecommitdiff
path: root/arch/microblaze/cpu
diff options
context:
space:
mode:
authorMichal Simek <michal.simek@xilinx.com>2018-07-13 09:26:28 +0300
committerMichal Simek <michal.simek@xilinx.com>2018-07-19 11:49:55 +0300
commit4a693669670fffd9a614c8c5c9f5ba027fd0185e (patch)
tree1196bc82934666aae328518b95cb508ba3ed2dba /arch/microblaze/cpu
parentc7e794892489316c035e6a0c9e3753306f79d4c0 (diff)
downloadu-boot-4a693669670fffd9a614c8c5c9f5ba027fd0185e.tar.xz
microblaze: Convert generic platform to DM gpio
Converting GPIO to DM requires to do changes in reset subsystem that's why support for Microblaze soft reset via sysreset and GPIO sysreset support was added. These two patches enables enabling GPIO DM. Microblaze soft reset is bind at last reset method. GPIO reset is handled via sysreset with adding this fragment to DT. gpio-restart { compatible = "gpio-restart"; gpios = <&reset_gpio 0 0 0>; /* 3rd cell ACTIVE_HIGH = 0, ACTIVE_LOW = 1 */ }; hard-reset-gpio property is not documented and also handled. Conversion is required. Unfortunately do_reset is required for SPL that's why use only soft microblaze reset for now. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Diffstat (limited to 'arch/microblaze/cpu')
-rw-r--r--arch/microblaze/cpu/spl.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/microblaze/cpu/spl.c b/arch/microblaze/cpu/spl.c
index d3c523d387..070c12cce9 100644
--- a/arch/microblaze/cpu/spl.c
+++ b/arch/microblaze/cpu/spl.c
@@ -47,3 +47,11 @@ int spl_start_uboot(void)
return 1;
}
+
+int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
+{
+ __asm__ __volatile__ ("mts rmsr, r0;" \
+ "bra r0");
+
+ return 0;
+}