66 lines
3.5 KiB
Plaintext
66 lines
3.5 KiB
Plaintext
[video member=miotatsu stream_platform=twitch project=riscy title="Studying local-interrupts Demo" vod_platform=youtube id=oB4Ll_ZPPBY annotator=Miblo]
|
|
[0:14][@riskyfive][Do you have any init.h in your RISC-V SDKs?]
|
|
[0:59][@riskyfive][It's required by riscv-tests, but I can't find it anywhere]
|
|
[2:18][Shout-out to The RISC-V Reader: An Open Architecture Atlas[ref
|
|
site="The RISC-V Reader: An Open Architecture Atlas"
|
|
url=http://riscvbook.com/]]
|
|
[5:42][Plug RISC-V Books[ref
|
|
site=RISC-V
|
|
page="RISC-V Books"
|
|
url=https://riscv.org/risc-v-books/]]
|
|
[7:12][@riskyfive][By the way, you totally have to read these three blog posts[ref
|
|
site="SiFive Blog"
|
|
author="Palmer Dabbelt"
|
|
page="All Aboard, Part 1: The -march, -mabi, and -mtune arguments to RISC-V Compilers"
|
|
url=https://www.sifive.com/blog/2017/08/14/all-aboard-part-1-compiler-args/][ref
|
|
site="SiFive Blog"
|
|
author="Palmer Dabbelt"
|
|
page="All Aboard, Part 2: Relocations in ELF Toolchains"
|
|
url=https://www.sifive.com/blog/2017/08/21/all-aboard-part-2-relocations/][ref
|
|
site="SiFive Blog"
|
|
author="Palmer Dabbelt"
|
|
page="All Aboard, Part 3: Linker Relaxation in the RISC-V Toolchain"
|
|
url=https://www.sifive.com/blog/2017/08/28/all-aboard-part-3-linker-relaxation-in-riscv-toolchain/]]
|
|
[8:44][Plug SiFive's bi-monthly newsletter[ref
|
|
site=Twitter
|
|
page="Earlier this morning, we shipped the 2nd iteration of our bi-monthly newsletter, The SiFive Download! Take a look"
|
|
url=https://twitter.com/SiFiveInc/status/902606788310249472]]
|
|
[9:12][Plug the 100-subscriber milestone giveaway contest[ref
|
|
site=Twitter
|
|
page="[Announcement] Giveaway Contest (100 Subs)!"
|
|
url=https://twitter.com/hmn_riscy/status/908924885598113792]]
|
|
[10:05][Jump back into perusing the demos]
|
|
[10:45][@riskyfive][Be right back]
|
|
[10:49][Continue to peruse the demos]
|
|
[11:18][Mention the second webcam]
|
|
[13:45][@riskyfive][Back]
|
|
[13:49][Plan our studies]
|
|
[14:45][@riskyfive][So what's the plan, again? Sorry]
|
|
[15:10][Jump in to the local_interrupts.c demo][:research]
|
|
[22:35][Consult handle_trap() in the HiFive1's init.c][:research]
|
|
[23:36][Continue studying local_interrupts.c, on the Machine Software Interrupt Handler][:research]
|
|
[26:56][Check out SiFive's site for information on the E51 Coreplex[ref
|
|
site=SiFive
|
|
page=Products
|
|
url=https://www.sifive.com/products/coreplex-risc-v-ip/] and the Freedom platforms[ref
|
|
site=SiFive
|
|
page="Freedom Platforms"
|
|
url=https://www.sifive.com/products/freedom/]]
|
|
[29:13][@riskyfive][That's not new. But they don't sell it]
|
|
[29:41][Continue to check out the E51[ref
|
|
site=SiFive
|
|
page="Freedom Platforms"
|
|
url=https://www.sifive.com/products/freedom/]]
|
|
[32:36][Continue to study local_interrupts.c, on :"input handling" and :timing][:research]
|
|
[40:50][Hunt for MIP_MLIP][:research]
|
|
[44:50][Learn the definition of MIP_MLIP, and review set_csr()][:research]
|
|
[48:01][Learn the LOCAL_INT_* definitions][:research]
|
|
[48:38][@bananathemonkey][Probably the lower 16b are reserved for something else]
|
|
[48:53][Relate those LOCAL_INT* values to their usage in enable_local_interrupts()][:research]
|
|
[51:03][Shifting MIP_MLIP by local interrupt values][:blackboard :memory]
|
|
[52:34][@bananathemonkey][It's the amount you're left-shifting by, though, not the actual value]
|
|
[53:55][@bananathemonkeys][It looks like it's a single bit mask for a 32b field where the lower 16b are reserved for something (local interrupts, maybe?)]
|
|
[54:14][Address some texts]
|
|
[55:21][Wrap it up with a shout-out to new Patreon supporters]
|
|
[/video]
|