lkcl | Ben: https://libre-soc.org/irclog/%23libre-soc.2021-09-22.log.html#t2021-09-22T17:00:00 | 00:00 |
---|---|---|
lkcl | someone ordered one a couple days ago and it arrived already | 00:00 |
lkcl | bear in mind with _that_ one... it's only a 45k ECP5 | 00:00 |
lkcl | again: it works (microwatt is only 20K LUT4s) | 00:01 |
lkcl | but if you want to try something more sophisticated (more peripherals) you'll be out of luck with the VERSA_ECP5 | 00:01 |
lkcl | Tim Pearson should have ModBMC available soon, check on libera #talos-workstation | 00:02 |
lkcl | here's an automated script for installing nextpnr-ecp5 | 00:02 |
lkcl | https://git.libre-soc.org/?p=dev-env-setup.git;a=blob;f=nextpnr-ecp5-install;hb=HEAD | 00:02 |
lkcl | assumes debian as a base (debian 10) | 00:03 |
lkcl | although it's likely to work on other variants | 00:03 |
lkcl | and here's the build script we use for VERSA_ECP5 and ULX3S with *either* microwatt *or* libre-soc: | 00:04 |
lkcl | https://git.libre-soc.org/?p=libresoc-litex.git;a=blob;f=versa_ecp5.py;hb=HEAD | 00:04 |
lkcl | it should be clear, you hack that to import microwatt as the "cpu_cls" | 00:04 |
lkcl | btw, you know Symbiflow works for the Digilent Arty A7-100t, right? | 00:06 |
lkcl | just checking | 00:06 |
lkcl | i don't believe it's been integrated yet into things (haven't fully investigated) | 00:07 |
openpowerbot | [slack] <Benjamin Herrenschmidt> @Paul Mackerras the boot time UART problem seems to be related to configuration via jtag | 03:47 |
openpowerbot | [slack] <Benjamin Herrenschmidt> works fine when booting from flash it seems | 03:47 |
openpowerbot | [slack] <Benjamin Herrenschmidt> I had similar oddities with litex where it wouldn't start until I pressed the cpu reset switch after xc3progs is done | 03:47 |
openpowerbot | [slack] <Benjamin Herrenschmidt> (could also be a problem with xc3progs ...) | 03:47 |
openpowerbot | [slack] <Benjamin Herrenschmidt> @Paul Mackerras also on that A100T with litedram,sdcard,eth and full core (fpu etc...) I do get timing violations at 100Mhz | 04:09 |
openpowerbot | [slack] <Benjamin Herrenschmidt> around LSU/dcache/decode | 04:10 |
openpowerbot | [slack] <Benjamin Herrenschmidt> ah the log... | 04:11 |
openpowerbot | [slack] <joel> @Benjamin Herrenschmidt If we were to have the machine restart itself, which reset register is the one to use? CORE_RESET or SOC_RESET? | 04:17 |
openpowerbot | [slack] <Benjamin Herrenschmidt> probably SOC, does it work though ? π | 04:17 |
openpowerbot | [slack] <Matt Johnston> soc isn't hooked up | 04:17 |
openpowerbot | [slack] <Matt Johnston> I had to jump to ff000000 to make it rerun dram memtest π | 04:17 |
openpowerbot | [slack] <Benjamin Herrenschmidt> well t here's a special hack for dram init yeah, the core reset won't rerun them | 04:18 |
openpowerbot | [slack] <Benjamin Herrenschmidt> ``` soc_reset => open -- XXX TODO``` | 04:19 |
openpowerbot | [slack] <Benjamin Herrenschmidt> π | 04:19 |
openpowerbot | [slack] <Benjamin Herrenschmidt> (in soc.vhdl) | 04:19 |
openpowerbot | [slack] <Benjamin Herrenschmidt> we probably want to drive it out to the toplevel so it also resets the memory controller and other litethings | 04:19 |
openpowerbot | [slack] <Benjamin Herrenschmidt> soc.vhdl is a bad name since all those peripherals end up in the toplevels | 04:19 |
openpowerbot | [slack] <Benjamin Herrenschmidt> since they are rather board specific | 04:20 |
openpowerbot | [slack] <Benjamin Herrenschmidt> if vhdl was OO (or is it ?) we could have "subclasses" of soc.vhdl π | 04:21 |
openpowerbot | [slack] <Benjamin Herrenschmidt> @Paul Mackerras you have a linux driver for litesdcard ? | 04:24 |
openpowerbot | [slack] <Paul Mackerras> it's just upstream litex-mmc | 04:24 |
openpowerbot | [slack] <Paul Mackerras> I contributed some fixes which are now upstream | 04:25 |
openpowerbot | [slack] <Paul Mackerras> @Benjamin Herrenschmidt how bad are the violations? Current microwatt master should be pretty good | 04:26 |
openpowerbot | [slack] <Benjamin Herrenschmidt> worst was about -0.1ns | 04:27 |
openpowerbot | [slack] <Paul Mackerras> peanuts π | 04:27 |
openpowerbot | [slack] <Benjamin Herrenschmidt> I added litesdcard and now it's -0.3ns | 04:28 |
openpowerbot | [slack] <Benjamin Herrenschmidt> (I didn't have it before) | 04:28 |
openpowerbot | [slack] <Jeremy Kerr> pico-eanuts? | 04:28 |
openpowerbot | [slack] <Paul Mackerras> that would make an eanut about 100 seconds π | 04:28 |
openpowerbot | [slack] <Benjamin Herrenschmidt> it' still disappointing π | 04:28 |
openpowerbot | [slack] <Paul Mackerras> it's hard to fix when vivado is so random | 04:29 |
openpowerbot | [slack] <Benjamin Herrenschmidt> yup | 04:30 |
openpowerbot | [slack] <Benjamin Herrenschmidt> any value in me adding some litesdcard loader to the sdram init ? | 04:30 |
openpowerbot | [slack] <Benjamin Herrenschmidt> I was thinking something uber-simple, either load kernel from a MBR partition or maybe a small FAT | 04:30 |
openpowerbot | [slack] <Benjamin Herrenschmidt> could probably fit in a handful of KB | 04:31 |
openpowerbot | [slack] <Paul Mackerras> probably better just to start using u-boot, which has filesystem code | 04:31 |
openpowerbot | [slack] <Benjamin Herrenschmidt> why ? it's a horror show | 04:31 |
openpowerbot | [slack] <Paul Mackerras> u-boot fits in the flash just fine | 04:31 |
openpowerbot | [slack] <Benjamin Herrenschmidt> mind you it can netboot etc... | 04:32 |
openpowerbot | [slack] <Benjamin Herrenschmidt> you have a u-boot pre-build somewhere ? | 04:32 |
openpowerbot | [slack] <Paul Mackerras> @joel has been improving it lately, he might have one | 04:33 |
openpowerbot | [slack] <joel> http://ozlabs.org/~joel/microwatt/u-boot | 04:34 |
openpowerbot | [slack] <Benjamin Herrenschmidt> ok... I still wonder how small i could make a little FAT sdcard loader π | 04:34 |
openpowerbot | [slack] <Benjamin Herrenschmidt> there are some rather tiny FAT implementations out htere | 04:34 |
openpowerbot | [slack] <joel> microwatt/openocd/flash-arty -f a100 u-boot -t bin -a 0x400000 | 04:34 |
openpowerbot | [slack] <Benjamin Herrenschmidt> yeah i know how to flash π I've been putting kernels there | 04:35 |
openpowerbot | [slack] <Benjamin Herrenschmidt> so for device-tree we also favor letting uboot do the job of reading syscon and fixing things up rather than the kernel boot/microwatt.c ? | 04:36 |
openpowerbot | [slack] <Paul Mackerras> @joel I was putting the environment at the end of the flash, does yours do that, and does it need to be initialized? | 04:36 |
openpowerbot | [slack] <Benjamin Herrenschmidt> another option would have been to have sdram init generate the dtb | 04:36 |
openpowerbot | [slack] <joel> @Paul Mackerras I think we need to remove the CONFIG_ENV_IS_NOWHERE=y option, and then that should work | 04:37 |
openpowerbot | [slack] <joel> @Paul Mackerras it will get init'd on the first time you do 'saveenv' | 04:37 |
openpowerbot | [slack] <Benjamin Herrenschmidt> should I write a linux driver for the SPI flash controller ? | 04:37 |
openpowerbot | [slack] <Benjamin Herrenschmidt> (I had one, lost it ...) | 04:38 |
openpowerbot | [slack] <Paul Mackerras> that's what I thought too, but it didn't seem to happen... | 04:38 |
openpowerbot | [slack] <joel> @Benjamin Herrenschmidt if you did hack in support for this stuff to the tiny loader, then it provides a good template someone to do in u-boot. | 04:38 |
openpowerbot | [slack] <joel> | 04:38 |
openpowerbot | [slack] <joel> It's probably less work to do it upfront in u-boot, but it depends how much you hate hacking on u-boot... | 04:38 |
openpowerbot | [slack] <Paul Mackerras> u-boot has a driver for the SPI flash already | 04:39 |
openpowerbot | [slack] <Benjamin Herrenschmidt> @Paul Mackerras taking out the log fixes the timing | 04:39 |
openpowerbot | [slack] <joel> Ok. You've succeeded in distracting me, I'll take a look now π | 04:39 |
openpowerbot | [slack] <Benjamin Herrenschmidt> @Paul Mackerras i know but it's handy to be able to flash in linux | 04:39 |
openpowerbot | [slack] <Paul Mackerras> sure | 04:39 |
openpowerbot | [slack] <Benjamin Herrenschmidt> @joel well, tiny loader could do a base dt I suppose.. things like flash partitions etc... should probably still be mostly under uboot control | 04:40 |
openpowerbot | [slack] <joel> Yeah a kernel driver will be handy. If nothing else it lets us update the u-boot env from Linux | 04:40 |
openpowerbot | [slack] <Benjamin Herrenschmidt> I don't want the tiny loader to grow beyond 32kB of block ram (it's about 24 now) | 04:40 |
openpowerbot | [slack] <Benjamin Herrenschmidt> that leaves room for basic dtb stuff and/or fat loader off sdcard or both... | 04:41 |
openpowerbot | [slack] <Paul Mackerras> don't you need some of that 32k for stack? | 04:42 |
openpowerbot | [slack] <Benjamin Herrenschmidt> @joel @Paul Mackerras I'm tempted to have at least arch/powerpc/boot/microwatt.c "disable" DT devices that aren't in the syscon | 04:42 |
openpowerbot | [slack] <Benjamin Herrenschmidt> so the same already flashed kernel + dtb works whether you have sdcard or not etc... | 04:42 |
openpowerbot | [slack] <Benjamin Herrenschmidt> @Paul Mackerras currently we have 24k including stack | 04:42 |
openpowerbot | [slack] <Benjamin Herrenschmidt> iirc | 04:43 |
openpowerbot | [slack] <Matt Johnston> could the loader ram be used as cache once it's booted? | 04:43 |
openpowerbot | [slack] <Benjamin Herrenschmidt> no | 04:43 |
openpowerbot | [slack] <Benjamin Herrenschmidt> it's a slow path | 04:43 |
openpowerbot | [slack] <Benjamin Herrenschmidt> off to the side, via the smaller IO bus | 04:43 |
openpowerbot | [slack] <Matt Johnston> ah | 04:43 |
openpowerbot | [slack] <Benjamin Herrenschmidt> in an ideal world, I should split it in a rom and a ram | 04:43 |
openpowerbot | [slack] <Benjamin Herrenschmidt> so the rom is protected, so SoC reboots without rebooting the FPGA are more ... reliable | 04:44 |
openpowerbot | [slack] <Benjamin Herrenschmidt> but that's for another day | 04:44 |
openpowerbot | [slack] <Benjamin Herrenschmidt> it's not really a "loader" today ... mostly it's the sdram inits | 04:44 |
openpowerbot | [slack] <Benjamin Herrenschmidt> it just happens to know to check for an ELF binary in flash and jump to it | 04:45 |
openpowerbot | [slack] <joel> Can we shut the sdram inits up? | 04:45 |
openpowerbot | [slack] <Benjamin Herrenschmidt> too verbose ? π | 04:45 |
openpowerbot | [slack] <joel> Yeah, I don't think they add anything | 04:45 |
openpowerbot | [slack] <Benjamin Herrenschmidt> that wouldn't be hard to make them less so | 04:45 |
openpowerbot | [slack] <Benjamin Herrenschmidt> via some #ifdef DEBUG | 04:46 |
openpowerbot | [slack] <joel> Yeah, lets do that for the read levelling output | 04:46 |
openpowerbot | [slack] <Benjamin Herrenschmidt> @Paul Mackerras you have an example dts entry for litesdcard ? | 04:47 |
openpowerbot | [slack] <joel> I assume we can't pack the dtb inside of the loader any more, as the firmware needs to know where it is so it can modify it? | 04:47 |
openpowerbot | [slack] <Benjamin Herrenschmidt> @joel -ENOPARSE ("firwmare" vs "loader" ? what is what ?) | 04:48 |
openpowerbot | [slack] <joel> the dtbImage we use at the moment has the device tree embedded inside of it | 04:49 |
openpowerbot | [slack] <Paul Mackerras> ``` litex-mmc@8040000 { | 04:50 |
openpowerbot | [slack] <Paul Mackerras> compatible = "litex,mmc"; | 04:50 |
openpowerbot | [slack] <Paul Mackerras> reg = <0x8042800 0x800 | 04:50 |
openpowerbot | [slack] <Paul Mackerras> 0x8041000 0x800 | 04:50 |
openpowerbot | [slack] <Paul Mackerras> 0x8040800 0x800 | 04:50 |
openpowerbot | [slack] <Paul Mackerras> 0x8042000 0x800 | 04:50 |
openpowerbot | [slack] <Paul Mackerras> 0x8041800 0x800>; | 04:50 |
openpowerbot | [slack] <Paul Mackerras> bus-width = <4>; | 04:50 |
openpowerbot | [slack] <Paul Mackerras> interrupts = <0x13 1>; | 04:50 |
openpowerbot | [slack] <Paul Mackerras> cap-sd-highspeed; | 04:50 |
openpowerbot | [slack] <Paul Mackerras> };``` | 04:50 |
openpowerbot | [slack] <Benjamin Herrenschmidt> I'll have a look, might have to get patches in litex for that | 04:52 |
openpowerbot | [slack] <Benjamin Herrenschmidt> Right, but the dtbimage has arch/powerpc/boot/microwatt.c in it, which could be made to at least adjust memory size, and turn devices on/off based on syscon | 04:53 |
openpowerbot | [slack] <Benjamin Herrenschmidt> if we are going to pass a DT from the sdram inits or from uboot, then we'd use a normal zImage, not a dtbImage | 04:53 |
openpowerbot | [slack] <Benjamin Herrenschmidt> thx | 04:54 |
openpowerbot | [slack] <joel> Yeah, that's what I was getting at. No biggie | 04:54 |
openpowerbot | [slack] <Benjamin Herrenschmidt> I might try litevideo for HDMI see if I can get a display up later π | 04:55 |
openpowerbot | [slack] <Benjamin Herrenschmidt> I don't see a driver upstream... | 04:57 |
openpowerbot | [slack] <Paul Mackerras> you don't have a drivers/mmc/host/litex_mmc.[ch]? | 04:57 |
openpowerbot | [slack] <Benjamin Herrenschmidt> nope | 04:58 |
openpowerbot | [slack] <Paul Mackerras> you might want to upgrade from 2.6.32 to something later π | 04:58 |
openpowerbot | [slack] <Benjamin Herrenschmidt> 5.15-rc2 | 04:58 |
openpowerbot | [slack] <Benjamin Herrenschmidt> ```[benh@klonk linux]$ ls -l drivers/mmc/host/ | grep lite | 04:59 |
openpowerbot | [slack] <Benjamin Herrenschmidt> [benh@klonk linux]$ ``` | 04:59 |
openpowerbot | [slack] <Paul Mackerras> OK, I must have merged in a branch from the litex repo | 04:59 |
openpowerbot | [slack] <Benjamin Herrenschmidt> litex-hub/linux ? | 04:59 |
openpowerbot | [slack] <Paul Mackerras> https://github.com/litex-hub/linux.git | 04:59 |
openpowerbot | [slack] <Benjamin Herrenschmidt> right | 04:59 |
openpowerbot | [slack] <Paul Mackerras> probably the litex-rebase branch? | 04:59 |
openpowerbot | [slack] <Paul Mackerras> I thought that stuff had got merged into Linus' tree though | 05:00 |
openpowerbot | [slack] <Benjamin Herrenschmidt> ``` FIXME1: not updated or tested for 32-bit CSR data width, 64-bit CPU (gls) | 05:00 |
openpowerbot | [slack] <Benjamin Herrenschmidt> FIXME2: if possible, replace calls to '_litex_[get|set]_reg()' with | 05:00 |
openpowerbot | [slack] <Benjamin Herrenschmidt> the appropriate 'litex_[read|write][8|16|32|64]()'. If the size of | 05:00 |
openpowerbot | [slack] <Benjamin Herrenschmidt> a LiteX CSR access can't be determined at compile time, we should | 05:00 |
openpowerbot | [slack] <Benjamin Herrenschmidt> make available a set of public 'litex_[get|set]_reg()' methods that | 05:00 |
openpowerbot | [slack] <Benjamin Herrenschmidt> add 'BUG_ON(reg_size > sizeof(u64) || reg_size < 1)' on top of the | 05:00 |
openpowerbot | [slack] <Benjamin Herrenschmidt> call to '_litex_[get|set]_reg()'.``` | 05:00 |
openpowerbot | [slack] <Benjamin Herrenschmidt> so it uses all the litex_get/set crappola | 05:01 |
openpowerbot | [slack] <Benjamin Herrenschmidt> which may or may not work in microwatt... | 05:01 |
openpowerbot | [slack] <Benjamin Herrenschmidt> I had a "conversation" with these guys last year about how bad that whole thing was ... | 05:01 |
openpowerbot | [slack] <Benjamin Herrenschmidt> an insane macro system to adapt to various CSR sizes, strides and endianness | 05:01 |
openpowerbot | [slack] <Paul Mackerras> it does seem to work on microwatt | 05:02 |
openpowerbot | [slack] <Paul Mackerras> I don't have any local patches | 05:02 |
openpowerbot | [slack] <Paul Mackerras> (other than adding the DTS entry) | 05:02 |
openpowerbot | [slack] <Paul Mackerras> I last merged the litex-rebase branch on June 18 according to git log | 05:02 |
openpowerbot | [slack] <Benjamin Herrenschmidt> it hasn't been updated since dec last year anyway | 05:03 |
openpowerbot | [slack] <Paul Mackerras> anyway time for a ride before it starts raining | 05:03 |
openpowerbot | [slack] <Benjamin Herrenschmidt> @Paul Mackerras can you merge "Make wishbone addresses be in units of doublewords or words" ? | 05:07 |
openpowerbot | [slack] <Benjamin Herrenschmidt> I'll base the Wuong board on top of it since it affects all the toplevels | 05:07 |
openpowerbot | [slack] <Benjamin Herrenschmidt> i wonder if vivado fixes the issues with generic records, I think ghdl did ... if yes we could revive the wishbone types taking a generic for sizing | 05:08 |
openpowerbot | [slack] <Benjamin Herrenschmidt> @Anton Blanchard ^^^ | 05:11 |
openpowerbot | [slack] <Anton Blanchard> @Benjamin Herrenschmidt Sounds good, I was just asking about it yesterday. We've tested on Arty, Nexys Video and Orange Crab so why not | 05:17 |
openpowerbot | [slack] <Benjamin Herrenschmidt> btw ignore my PR, for misc stuffs, I need to fixup the commiter email π | 05:17 |
openpowerbot | [slack] <Benjamin Herrenschmidt> git is ignoring the repo local user.email ... | 05:18 |
openpowerbot | [slack] <Anton Blanchard> Ok π | 05:20 |
openpowerbot | [slack] <Benjamin Herrenschmidt> fixed | 05:24 |
openpowerbot | [slack] <Benjamin Herrenschmidt> @Anton Blanchard misc is good to go, wukong will wait until I rebase on that wishbone change | 05:25 |
openpowerbot | [slack] <Benjamin Herrenschmidt> also if anybody uses the olimex tiny-h, I have a fix for urjtag (I sent it upstream but they've been ignoring me) | 05:25 |
openpowerbot | [slack] <Benjamin Herrenschmidt> https://ozlabs.org/~benh/%5bPATCH%5d_Fix_detection_of_some_Olimex_cables.mbox | 05:28 |
openpowerbot | [slack] <Benjamin Herrenschmidt> has anybody rebuild a distro without vsx ? π | 05:35 |
openpowerbot | [slack] <Anton Blanchard> @Benjamin Herrenschmidt Not a full distro, but @joel has a buildroot tree and I'm going OpenEmbedded builds | 05:44 |
openpowerbot | [slack] <Benjamin Herrenschmidt> k | 05:44 |
openpowerbot | [slack] <joel> It works for me once I disabled CONFIG_ENV_IS_NOWHERE=y | 05:44 |
openpowerbot | [slack] <Benjamin Herrenschmidt> @Anton Blanchard the CI is taking its sweet time on "misc" π esp since that branch doesn't actually touch the vhdl at all ... π | 05:48 |
openpowerbot | [slack] <joel> @Paul Mackerras the top commit updatest the defconfig: https://github.com/shenki/u-boot/commits/microwatt | 05:50 |
openpowerbot | [slack] <joel> Do intend to send the microwatt patches to the u-boot mailing list? | 05:50 |
openpowerbot | [slack] <Benjamin Herrenschmidt> @joel is that u-boot supposed to work with litesdcard | 05:53 |
openpowerbot | [slack] <Benjamin Herrenschmidt> ```U-Boot 2021.04-00920-gffc4b6434218 (Sep 24 2021 - 13:04:02 +0930) | 05:53 |
openpowerbot | [slack] <Benjamin Herrenschmidt> | 05:53 |
openpowerbot | [slack] <Benjamin Herrenschmidt> CPU: Microwatt | 05:53 |
openpowerbot | [slack] <Benjamin Herrenschmidt> DRAM: 256 MiB | 05:53 |
openpowerbot | [slack] <Benjamin Herrenschmidt> MMC: ``` | 05:53 |
openpowerbot | [slack] <Benjamin Herrenschmidt> (it continues booting, but nothing displayed, and "help" doesn't show any mmc commands) | 05:54 |
openpowerbot | [slack] <joel> I havent tested; I don't have it built into my fpga image atm | 05:54 |
openpowerbot | [slack] <Benjamin Herrenschmidt> ```=> lsblk | 05:54 |
openpowerbot | [slack] <Benjamin Herrenschmidt> Block Driver Devices | 05:54 |
openpowerbot | [slack] <Benjamin Herrenschmidt> ----------------------------- | 05:54 |
openpowerbot | [slack] <Benjamin Herrenschmidt> mmc_blk : <none>``` | 05:54 |
openpowerbot | [slack] <Benjamin Herrenschmidt> ok, you have instructions/source to build that uboot ? | 05:54 |
openpowerbot | [slack] <joel> http://github.com:shenki/u-boot | 05:54 |
openpowerbot | [slack] <joel> make microwatt_arty_defconfig | 05:55 |
openpowerbot | [slack] <joel> make ARCH=powerpc CROSS_COMPILE=powerpc64le-linux-gnu- | 05:55 |
openpowerbot | [slack] <joel> I don't think the ARCH= is required, but it doesn't do any harm | 05:55 |
openpowerbot | [slack] <Benjamin Herrenschmidt> thx | 05:55 |
openpowerbot | [slack] <Benjamin Herrenschmidt> yeah wiring soc_reset to the core and the DMI interface would be nice wouldn't it ? π | 05:55 |
openpowerbot | [slack] <Benjamin Herrenschmidt> I'll look into it | 05:56 |
openpowerbot | [slack] <Benjamin Herrenschmidt> @joel that uboot doesn't spit out a device-tree at this point right ? | 06:01 |
openpowerbot | [slack] <joel> Spit out? | 06:01 |
openpowerbot | [slack] <Benjamin Herrenschmidt> well I don't know, I see nothing in microwatt/fdc.c π | 06:02 |
openpowerbot | [slack] <Benjamin Herrenschmidt> how do we want to proceed ? uboot supports all sort of methods here, including us building it from scratch | 06:02 |
openpowerbot | [slack] <Benjamin Herrenschmidt> or sdram init spitting out a stub and uboot consuming it & passing it along | 06:02 |
openpowerbot | [slack] <joel> I don't know. I've not used this side of u-boot | 06:02 |
openpowerbot | [slack] <Benjamin Herrenschmidt> ah we have dts inside uboot | 06:02 |
openpowerbot | [slack] <Paul Mackerras> slightly π | 06:03 |
openpowerbot | [slack] <Paul Mackerras> I emailed Tom Rini at one point but he didn't seem terrifically interested | 06:03 |
openpowerbot | [slack] <Benjamin Herrenschmidt> @joel should we have a board/generic_microwatt instead of arty ? π | 06:08 |
openpowerbot | [slack] <Benjamin Herrenschmidt> LiteX+microwatt doesn't have syscon, which is a concern... | 06:08 |
openpowerbot | [slack] <Anton Blanchard> It's not smart enough to realise π Finishing up now | 06:15 |
openpowerbot | [slack] <Benjamin Herrenschmidt> cool , mmc works fine once you build the kitchen sink in u-boot | 06:21 |
openpowerbot | [slack] <Benjamin Herrenschmidt> time to go back to real work π | 06:21 |
openpowerbot | [slack] <Anton Blanchard> ```urjtag/src/tap/cable/ft2232.c:URJ_DECLARE_FTDX_CABLE(0x0403, 0x6010, "-mpsse", "Flyswatter", flyswatter) | 07:27 |
openpowerbot | [slack] <Anton Blanchard> urjtag/src/tap/cable/ft2232.c:URJ_DECLARE_FTDX_CABLE(0x0403, 0x6010, "-mpsse", "DigilentHS1", digilenths1)``` | 07:27 |
openpowerbot | [slack] <Anton Blanchard> Seems to just use pid/vid unfortunately, so we now have a flyswatter. urjtag does have code to check manufacturer etc, might be able to fix it | 07:28 |
openpowerbot | [slack] <Benjamin Herrenschmidt> What a mess | 09:04 |
openpowerbot | [slack] <Anton Blanchard> I've got a few patches, but fighting the Digilent mess. Same PID/VID on Arty and Nexys Video, but Arty uses channel 0 and Nexys Video uses channel 1. Urgh | 09:06 |
openpowerbot | [slack] <Matt Johnston> where does the len=74 come from for USER2_REG in mw_debug? | 09:17 |
openpowerbot | [slack] <Matt Johnston> aah, dmi_dbm DBITS=64 set in soc.vhdl. right | 09:34 |
openpowerbot | [slack] <Matt Johnston> aah, dmi_dtm DBITS=64 set in soc.vhdl. right | 09:34 |
*** openpowerbot <openpowerbot!~openpower@94-226-186-169.access.telenet.be> has quit IRC | 09:41 | |
*** openpowerbot <openpowerbot!~openpower@94-226-186-169.access.telenet.be> has joined #microwatt | 09:59 | |
openpowerbot | [slack] <CΓ©dric Le Goater> @Benjamin Herrenschmidt I have started the SPI flash model under QEMU. I only have the sdram_init code for the moment and some driver would be better. I could do it I guess since I still own that stuff under u-boot/Linux for Aspeed. | 10:25 |
lkcl | Ben: there's also the possibility of Ground-Loops via the JTAG and UART cables | 10:31 |
lkcl | it is quite common to get spikes via the various connected cables, and UART "mysteriously not working" is a classic symptom | 10:32 |
openpowerbot | [slack] <Anton Blanchard> @Benjamin Herrenschmidt Not ideal, but https://github.com/antonblanchard/urjtag/commits/ftdi-probe | 10:32 |
lkcl | running a laptop purely from a battery-operated source, not connected to mains power, to which the UART and JTAG is connected, is a good way to test whether you have Electrical Ground Loops | 10:33 |
lkcl | put it this way: UART is considered "too basic" to have isolating transformers like you find in Ethernet. | 10:33 |
lkcl | Paul: nextpnr-ecp5 is supposed to be deterministic. that's what is claimed by its authors, i believe | 10:35 |
lkcl | Ben: have a look at Allwinner's 2nd stage bootloader, they put a FAT FS in it | 10:36 |
lkcl | Ben, Paul: there's a concept in u-boot called "SPL loader" for this kind of situation. | 10:38 |
lkcl | you compile u-boot *SPECIFICALLY* with the SPL option. | 10:38 |
lkcl | it very very deliberately compiles to absolute bare minimum | 10:38 |
lkcl | and is specifically designed for the purposes of initialising PLLs, initialising DRAM (to absolute bare minimum config), and chain-loading from a sequence of devices. | 10:39 |
lkcl | it's also very very deliberately designed to fit in under 16-32k | 10:40 |
lkcl | you can use it in place of the litex BIOS, that's what it's for. | 10:40 |
lkcl | and the nice thing about u-boot is, it uses the same device driver infrastructure as the linux kernel *including using dtb* | 10:41 |
Generated by irclog2html.py 2.17.1 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!