From bd5e4bafba29b30b9cf8058740a1486d651b3c55 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dan=20Hor=C3=A1k?= Date: Tue, 1 Sep 2020 22:43:50 +0200 Subject: [PATCH] hello_world: Debug print the gitinfo syscon register MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit .oOOo. ." ". ; .mw. ; Microwatt, it works. . ' ' . \ || / HDL Git SHA1: 211d23c4ad4fb5-dirty ;..; ;..; `ww' Signed-off-by: Dan HorĂ¡k Signed-off-by: Michael Neuling --- hello_world/Makefile | 3 +- hello_world/hello_world.bin | Bin 6280 -> 6300 bytes hello_world/hello_world.c | 32 +++- hello_world/hello_world.elf | Bin 83688 -> 85120 bytes hello_world/hello_world.hex | 301 ++++++++++++++++++------------------ 5 files changed, 181 insertions(+), 155 deletions(-) diff --git a/hello_world/Makefile b/hello_world/Makefile index dd51bd3..159cb86 100644 --- a/hello_world/Makefile +++ b/hello_world/Makefile @@ -25,7 +25,8 @@ hello_world.bin: hello_world.elf $(OBJCOPY) -O binary $^ $@ hello_world.hex: hello_world.bin - ../scripts/bin2hex.py $^ > $@ + ../scripts/bin2hex.py $^ > hello_world.hex.tmp + mv -f hello_world.hex.tmp hello_world.hex clean: @rm -f *.o hello_world.elf hello_world.bin hello_world.hex diff --git a/hello_world/hello_world.bin b/hello_world/hello_world.bin index a4eb88c26f7c7742bc5d42c1d9c571302a03b69f..4c1a8007721d03fa15f5e54b9f0ea953151dfeb9 100755 GIT binary patch delta 846 zcmYLGUr1A76hGfK^=|0A*Sl(wtj`SF=!#nqUCrganzby4XrXSV(Bw+8+!= zdRTtG1f}*C(nFvR_BQDyh@jph7WN=f5cFa!{W{;hiw+#lIlptx?|1HZ=ORxduZm=C zk=!AVhg@q;r@JBB?t<7RZ`pxTxn~G?f&x!XIv@rBapB?Ixc-sY^-C9|zwMQ?UMQU| zH}0nB&8?IhoWV5YjZsMG>vf6r*EXIySe@tm^Qlj~U;sol9~4Z^$GgMngr2YVk>48! z6i8NqD=Z?bC*FfC*8qpLGOl|duD`BgA2`1lMyWZBxGs$3ob0w7AUabNm95C0{djqP zd|O<*8i=RQ)Fwv6Wo$zZsCG+22J2(6{g(Yu{A^cN*(2H4NFkK`&I=~;BFPcfp&YLf zSueY;^c)LlG8Bw3wCLE@DL#`20$M#{4OmCCe(Aa*d(SSW1I510^F0 zwV@da1`r>x@oPo~^Q6_IHf|svSo*!c0gO(OOZna>&4BwjvoIX8xct?5&O@D+#wbOu z+#r-7YJ@-6nCroJN&?gWx2qtI(TSPDJaeiwp>3io`@Vi*t d-&R8@^>`RRa6_iCvzO@k$tgMtp!D_Q|?jH4E-F*c7LJcvu^2Wgy!r9fz-ej-5bYt->fXhMp1Y}7?qH#q)*xJFl{ zVWQImsgK0zDb_Z}rV92d zD(kr}S$VipP4L@U5j5mllfO~(SZ^y(O!2w(-%My|S-1l8x&yN+;+~kruW?|{_t* yLT}~ak@6qLIN`xhyQnY7bnc14*&*uUFJteksjf>Ot&v(q5$J^SuA; #include "console.h" +#include "io.h" +#include "microwatt_soc.h" -static char mw_logo[] = - +static char mw_logo1[] = "\n" " .oOOo. \n" " .\" \". \n" " ; .mw. ; Microwatt, it works.\n" " . ' ' . \n" -" \\ || / \n" +" \\ || / HDL Git SHA1: "; + +static char mw_logo2[] = +"\n" " ;..; \n" " ;..; \n" -" `ww' \n"; +" `ww' \n\n"; int main(void) { + uint64_t gitinfo; + uint8_t c; + bool dirty; + console_init(); - puts(mw_logo); + puts(mw_logo1); + + gitinfo = readq(SYSCON_BASE + SYS_REG_GIT_INFO); + dirty = gitinfo >> 63; + for (int i = 0; i < 14; i++) { + c = (gitinfo >> 52) & 0xf; + if (c >= 10) + putchar(0x61 + c - 10); // a-f + else + putchar(0x30 + c); // 0-9 + gitinfo <<= 4; + } + if (dirty) + puts("-dirty"); + puts(mw_logo2); while (1) { unsigned char c = getchar(); diff --git a/hello_world/hello_world.elf b/hello_world/hello_world.elf index 3dc0cc1c1cb753a5fe02cfa05c9860ff01c29675..90747e606c1e5a37f6efd3b6f37a6a9a3cc78751 100755 GIT binary patch literal 85120 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 Ak^lez literal 83688 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 Z6)z@k!y&)NvL9ZlHUGgVhWB#&{|2${*E0YB diff --git a/hello_world/hello_world.hex b/hello_world/hello_world.hex index c0161ad..3bc5166 100644 --- a/hello_world/hello_world.hex +++ b/hello_world/hello_world.hex @@ -48,11 +48,11 @@ a64b5a7d14004a39 782107c660210000 6021398064210000 f801ffe138000000 -3d8000007c1243a6 -798c07c6618c0000 -618c1000658c0000 -4e8004217d8903a6 -4800000000000200 +618c00003d800000 +658c0000798c07c6 +7d8903a6618c1000 +000002004e800421 +0000000048000000 0000000000000000 0000000000000000 0000000000000000 @@ -511,172 +511,172 @@ f801ffe138000000 0000000000000000 0000000000000000 384298003c400001 -fbe1fff87c0802a6 -f821ffd1f8010010 -60000000480001ed +4800042d7c0802a6 +3fe0c000f821ffc1 +7bff002063ff0050 +6000000048000269 +3862803060000000 +60000000480001d1 +7fe0feea7c0004ac +7bfd0fe03bc0000e +280300097be36720 +386300574081007c +7bff26e47c6307b4 +6000000048000119 +4082ffdc37deffff +418200142c3d0000 +38637c303c62ffff +6000000048000181 3862800060000000 -6000000048000155 -6000000048000049 +6000000048000171 +6000000048000051 5463063e7c7f1b78 -480000b957ff063e +480000cd57ff063e 2c1f000d60000000 3860000a4082ffe0 -60000000480000a5 -000000004bffffd0 -0000018001000000 +60000000480000b9 +386300304bffffd0 +000000004bffff88 +0000038001000000 384298003c400001 8922810860000000 3942810060000000 -418200302c090000 +418200382c090000 39290014e92a0000 7d204eaa7c0004ac 4182ffec71290001 -7c0004ace86a0000 -5463063e7c601eaa +e862810060000000 +7c601eaa7c0004ac +7c6307b45463063e e92a00004e800020 7c0004ac39290010 712900017d204eea -e86a00004082ffec -7c0004ac38630008 -4bffffd07c601eea -0000000000000000 -3c40000100000000 -6000000038429800 -6000000089228108 -2c09000039428100 -e92a00004182002c -7c0004ac39290014 -712900207d204eaa -e92a00004182ffec +600000004082ffec +38630008e8628100 +7c601eea7c0004ac +000000004bffffc8 +0000000000000000 +384298003c400001 +8922810860000000 +3942810060000000 +418200302c090000 +39290014e92a0000 +7d204eaa7c0004ac +4182ffec71290020 +e922810060000000 7c604faa7c0004ac e92a00004e800020 7c0004ac39290010 712900087d204eea 5469063e4082ffec -7c0004ace94a0000 -4e8000207d2057ea -0000000000000000 -3c40000100000000 -7c0802a638429800 -fbc1fff0fbe1fff8 -f80100103be3ffff -8fdf0001f821ffd1 -408200102c3e0000 -3860000038210030 -281e000a480001e8 -3860000d4082000c -7fc3f3784bffff45 -4bffffd04bffff3d -0100000000000000 -7c691b7800000280 -7d4918ae38600000 -4d8200202c0a0000 -4bfffff038630001 -0000000000000000 -3c40000100000000 -3d40c00038429800 -794a0020614a0020 -7d4056ea7c0004ac -794a06003d20c000 -7929002061290008 -7d204eea7c0004ac -4182001871290020 -612900403d20c000 +e942810060000000 +7d2057ea7c0004ac +000000004e800020 +0000000000000000 +384298003c400001 +fbe1fff87c0802a6 +3be3fffffbc1fff0 +f821ffd1f8010010 +2c1e00008fdf0001 +3821003040820010 +4800022038600000 +4082000c2c1e000a +4bffff3d3860000d +4bffff357fc307b4 +000000004bffffd0 +0000028001000000 +386000007c691b78 +2c0a00007d4918ae +386300014d820020 +000000004bfffff0 +0000000000000000 +384298003c400001 +612900203d20c000 7c0004ac79290020 -7929f8047d204eea -79290fc33d00c000 -7908002061082000 -f902810060000000 -610820003d00001c -418200847d4a4392 -3920000160000000 -3d00c00099228108 -3920ff806108200c -7c0004ac79080020 -e92281007d2047aa -7d404faa7c0004ac -794ac202e9228100 -7c0004ac39290004 +3d40c0007d204eea +614a000879290600 +7c0004ac794a0020 +714a00207d4056ea +614a20003d40c000 +40820040794a0020 +f942810060000000 +6000000039400000 +3d40001c99428108 +7d295392614a2000 +614a20183d40c000 +3929ffff794a0020 +7d2057ea7c0004ac +3d00c0004e800020 +7908002061080040 +7d0046ea7c0004ac +60000000790807e3 +3d40001cf9428100 +7d495392614a2000 +600000004182ffa0 +9922810839200001 +6108200c3d00c000 +790800203920ff80 +7d2047aa7c0004ac +7c0004ace9228100 e92281007d404faa -3929000c39400003 +39290004794ac202 7d404faa7c0004ac -39290010e9228100 +39400003e9228100 +7c0004ac3929000c +e92281007d404faa +7c0004ac39290010 +e92281007d404faa +3929000839400007 7d404faa7c0004ac -39400007e9228100 -7c0004ac39290008 -4e8000207d404faa -394affff60000000 -3d20c00099228108 -7929002061292018 -7d404fea7c0004ac 000000004e800020 0000000000000000 384298003c400001 8922810860000000 600000002c090000 -41820024e9228100 -78840e282c230000 -6084000141820008 -7c0004ac39290004 -4e8000207c804faa -418200082c240000 -3929002060630002 -7c604fea7c0004ac -000000004e800020 -0000000000000000 -e8010010ebc1fff0 -7c0803a6ebe1fff8 -000000104e800020 -00527a0100000000 -00010c1b01417804 -0000001800000018 -00000070fffffc40 -9f7e4111300e4600 -0000001000000001 -00527a0100000000 -00010c1b01417804 -0000001800000010 -00000084fffffc80 -0000001000000000 -fffffcf00000002c -0000000000000080 -0000004000000028 -00000060fffffd5c -9e019f0041094500 -447e4111300e4302 -4106dedf42000e0a -000000100000000b -fffffd900000006c -0000000000000028 -0000008000000010 -0000012cfffffda4 +41820028e9228100 +5484083c2c230000 +418200087c8a2378 +39290004608a0001 +7d404faa7c0004ac +2c2400004e800020 +6063000241820008 +7c0004ac39290020 +4e8000207c604fea +0000000000000000 +6000000000000000 +000079747269642d +fbc1fff0fba1ffe8 +f8010010fbe1fff8 +ebc1fff04e800020 +ebe1fff8e8010010 +4e8000207c0803a6 +0000000000000010 +0141780400527a01 +0000002000010c1b +fffffb8400000018 +41094300000000e0 +019f029e039d4100 +0000400e417e4111 +0000000000000010 +0141780400527a01 +0000001000010c1b +fffffc2c00000018 +0000000000000090 +0000002c00000010 +00000088fffffca8 +0000002800000000 +fffffd1c00000040 +4109450000000060 +300e43029e019f00 +42000e0a447e4111 +0000000b4106dedf +0000006c00000010 +00000028fffffd50 0000001000000000 -fffffebc00000094 -0000000000000068 -0000000000000000 -0000000000000000 -0000000000000000 -0000000000000000 -0000000000000000 -0000000000000000 -0000000000000000 -0000000000000000 -0000000000000000 -0000000000000000 -0000000000000000 -0000000000000000 -0000000000000000 -0000000000000000 -0000000000000000 -0000000000000000 -0000000000000000 -0000000000000000 -0000000000000000 -0000000000000000 -0000000000000000 -0000000000000000 -0000000000000000 -0000000000000000 +fffffd6400000080 +0000000000000140 +0000009400000010 +0000006cfffffe90 0000000000000000 0000000000000000 0000000000000000 @@ -766,6 +766,12 @@ fffffebc00000094 0000000000000000 0000000000000000 0000000000000000 +2e2e3b202020200a +0a2020202020203b +3b2e2e3b20202020 +200a202020202020 +2027777760202020 +000a0a2020202020 4f4f6f2e2020200a 0a20202020202e6f 2020202020222e20 @@ -777,9 +783,6 @@ fffffebc00000094 27202027202e2020 200a202020202e20 2f207c7c205c2020 -2020200a20202020 -2020203b2e2e3b20 -202020200a202020 -202020203b2e2e3b -60202020200a2020 -000a202020277777 +4c44482020202020 +4148532074694720 +0000000000203a31