[video member=miotatsu stream_platform=twitch project=riscy title="Understanding the Rest of the PLIC Driver & RTC_FREQUENCY" vod_platform=youtube id=m_NKQhXxh2Y annotator=Miblo] [0:20][Recap yesterday's confusion with a few words on things stewing in our minds] [1:23][First realisation: Shifting right is dividing by a power of 2][:blackboard] [4:07][Second realisation: The smallest addressable unit is a byte, not a bit][:blackboard] [5:55][Third realisation: n & 0x7 == n % 8][:blackboard :math] [8:13][What PLIC_enable_interrupt() is doing][:blackboard :research] [13:49][Performing PLIC_enable_interrupt() for gpio0 at 0x8][:blackboard :research] [18:07][Read and understand PLIC_disable_interrupt()][:research] [20:12][Begin to understand PLIC_set_priority() in conjunction with the Freedom E310-G000 Manual[ref site="SiFive Developers" page="Freedom E310-G000 Manual" url=https://www.sifive.com/documentation/chips/freedom-e310-g000-manual/] and the Draft Privileged ISA Specification[ref site="RISC-V" page="Draft Privileged ISA Specification v1.9.1" url=https://riscv.org/specifications/privileged-isa/]][:research] [28:54][Continue reading PLIC_set_priority()][:research] [33:49][Begin to understand PLIC_claim_interrupt()][:research] [36:11][:Research what we use PLIC_claim_interrupt() for in the Draft Privileged ISA Specification] [40:17][Summarise what PLIC_claim_interrupt() is for][:research] [41:17][Read and understand PLIC_complete_interrupt() in conjunction with the Draft Privileged ISA Specification and the E3 Coreplex Manual[ref site="SiFive Developers" page="E3 Coreplex Manual" url=https://static.dev.sifive.com/pdfjs/web/viewer.html?file=https://static.dev.sifive.com/SiFive-E3-Coreplex-v1.2.pdf]][:research] [47:55][Summarise both PLIC_complete_interrupt() and PLIC_claim_interrupt()][:research] [48:49][Read demo.gpio.c from the top down, starting with the RTC Frequency][:research] [50:06][:Research the Real-Time Clock in the Platform Reference Manual[ref site="SiFive Developers" page="Platform Reference Manual" url=https://www.sifive.com/documentation/freedom-soc/freedom-e300-platform-reference-manual/]] [56:17][Begin to understand reset_demo() in conjunction with the Draft Privileged ISA Specification][:research] [58:58][Determine to understand clear_csr() with reference to documentation on the GNU Inline Assembly syntax][:research] [1:02:37][We are out of time for today, with a mention of the poll[ref site=Twitter page="Poll: Should I hire an artist to make better thumbnails for my content?" url=https://twitter.com/hmn_riscy/status/833911733752385536]] [/video]