Thursday, 2019-09-26

*** tpb has joined #tomu00:00
*** rohitksingh has joined #tomu00:05
*** xantoz has joined #tomu00:29
*** rohitksingh has quit IRC01:00
*** cedric has quit IRC01:14
*** cedric has joined #tomu01:16
*** cedric has joined #tomu01:16
*** rohitksingh has joined #tomu01:21
mithroxobs: ping?01:55
xobsmithro: afternoon01:55
mithroxobs: https://github.com/im-tomu/fomu-reference-manual/issues/1 - you are thinking like a hardware person - i you are not taking advantage of the configurability of it being an FPGA, you are much better off using an ARM ASIC.01:56
tpbTitle: Having addresses is bad style · Issue #1 · im-tomu/fomu-reference-manual · GitHub (at github.com)01:56
mithroThe solution is to ship the gateware with the firmware together rather than trying to ship them separately.01:56
mithroIE Ship the gateware which matches the svd file01:57
xobsThat makes it so much less flexible, though, because then you won't be able to load any code onto it.01:58
xobsI'm thinking like a hardware person because Fomu is a hardware product.01:59
mithroxobs: How full is your design currently?01:59
xobs96% full01:59
mithroSo, to add anything more you have to remove something02:00
xobsCorrect, at which point they're building their own bitstreams and generating their own reference manuals.02:00
mithroYes, but all the code they have written will stop working02:01
mithroBecause it is using hard coded addresses02:01
xobsRight, but at that point they're using a different SoC, so the documentation no longer applies.02:02
xobsThe reference manual is for "Fomu Bootloader"02:02
mithroxobs: we want it to be easy to move up and down the stack02:05
xobsmithro: I agree.  And if we don't guarantee things like memory offsets, then we can't do things like ship a micropython binary.  Or Rust crates.02:06
mithroxobs: So taking the Fomu bootloader and customizing it (and thus having your address change) without having everything break it a good idea02:06
mithroxobs: Sure we can, we just need to ship the gateware with the binary or rust crate02:07
mithroxobs: Can have the bootloader even just check that the gateware matches and not update it02:08
mithroIE The gateware should provide header files and other data that includes where things are found02:10
xobsI don't think it's a good idea that addresses can randomly change.  It's why I've pinned them in Foboot.  It's caused a lot of headache in the past, even with real hardware such as the i.MX6Q/DL which had different io pin mappings.02:11
mithroxobs: It causes more headaches the less you do it02:12
mithroxobs: It also makes you put in checks like "check that gateware you are running on matches the gateware you expected"02:13
xobsmithro: I don't see why having addresses move around is a good thing, and I see many reasons why it's bad.  It seems like a misfeature.02:17
xobsAnd if you remove a block, then the documentation is invalid anyway.02:18
xobsBy making it easy to generate documentation, people can understand how to use the thing they've created.02:18
mithroxobs: Does a person care about the address? Or do they care about what functionality is available?02:19
xobsDocumenting the SoC in its entirety, especially by giving memory addresses, helps to explain how the system is set up and how the thing they've created behaves.02:19
xobsBoth, usually.02:19
mithroxobs: Why do you care about the address?02:19
xobsThe first thing I do when I get access to a new system is find the addresses for everything and implement peek/poke so I can understand how it works.02:19
xobsThe address is super important because it gives you a direct handle to operate functionality at a very low level.02:20
xobsOnce you have that you can build up drivers and such.  But at a fundamental level you need to know the address and register mappings to be able to understand a thing.02:21
mithroxobs: Your still thinking of peripherals and hardware as separate from the software --  When I start using a new C library, I don't start by looking at where the linker puts the library in memory and the calling convention of my architecture02:24
xobsIt's why people have done things such as wrapping `wishbone-tool` to write raw addresses from Ruby: https://leap.tardate.com/fpga/fomu/buildnotifier/02:24
tpbTitle: LEAP#494 (at leap.tardate.com)02:24
xobsmithro: peripherals and hardware /are/ separate from software.  At least when you use Fomu as a SoC.02:25
mithroxobs: wishbone-tool would be much nicer if you could just use the CSR_RGB_DAT_ADDR names directly02:26
mithroxobs: That is what we should be promoting02:29
mithroxobs: FYI - I'm all for the auto-building of a nice manual02:35
*** ademski has quit IRC02:36
*** andi- has quit IRC02:46
mithroxobs: I think we should be promoting using dynamic names02:47
xobsmithro: Again, if we do that we can't ship things like micropython anymore.  Or if we do, we need to bundle it with a bitstream of its own, which will more than double the amount of time it takes to load.  And I don't see the upside to that complexity or increased wait time.02:49
*** andi- has joined #tomu02:56
xobsmithro: Having said that, https://github.com/xobs/wishbone-utils/commit/0eebc06430c14d648a9d09873f01a26d729c2c8e03:52
tpbTitle: csr-csv: support passing a csv file to use named variables · xobs/[email protected] · GitHub (at github.com)03:52
*** CarlFK has joined #tomu04:05
*** rohitksingh has quit IRC04:11
*** im-tomu has left #tomu06:30
*** im-tomu has joined #tomu06:30
*** im-tomu has left #tomu06:36
*** im-tomu has joined #tomu06:36
*** im-tomu has quit IRC06:46
*** im-tomu has joined #tomu06:47
*** im-tomu has left #tomu06:57
*** im-tomu has joined #tomu06:57
*** CarlFK has quit IRC06:57
*** CarlFK has joined #tomu06:57
*** cedric has quit IRC07:58
*** cedric has joined #tomu07:58
*** cedric has joined #tomu07:58
*** im-tomu has left #tomu08:18
*** im-tomu has joined #tomu08:18
*** im-tomu has left #tomu08:23
*** im-tomu has joined #tomu08:23
*** cedric has quit IRC10:16
*** cedric has joined #tomu10:16
*** cedric has joined #tomu10:16
*** ademski has joined #tomu12:43
*** emeb has joined #tomu13:45
*** CarlFK has quit IRC15:46
*** rohitksingh has joined #tomu16:10
*** rohitksingh has quit IRC16:35
*** rohitksingh has joined #tomu16:41
*** rohitksingh has quit IRC17:22
*** CarlFK has joined #tomu17:37
*** rohitksingh has joined #tomu17:45
*** rohitksingh has quit IRC17:54
*** rohitksingh has joined #tomu18:22
*** rohitksingh has quit IRC18:51
*** rohitksingh has joined #tomu19:04
*** alexhw has quit IRC19:35
*** alexhw has joined #tomu19:36
*** alexhw has quit IRC19:38
synaption[m]random question.  what fab was used for the fomu?  I'm looking into laser-drilled microvias.20:33
*** rohitksingh has quit IRC21:07
*** ademski has quit IRC21:11
*** ademski has joined #tomu21:13
*** ademski has quit IRC21:14
*** rohitksingh has joined #tomu21:14
*** alexhw has joined #tomu22:04
*** rohitksingh has quit IRC22:30
*** ademski has joined #tomu22:43

Generated by irclog2html.py 2.13.1 by Marius Gedminas - find it at mg.pov.lt!