[J-core] Misc questions (about musl support and ghdlsynth)

Rob Landley rob at landley.net
Wed Jun 3 13:55:31 UTC 2020


On 6/2/20 5:55 AM, 蔡傳資 wrote:
> Hi all,
> 
> I'm planning to buy a Numato Mimas v2, build the toolchain and cook Linux image
> from scratch.

We REALLY need to get the Turtle boards up on crowd supply.

(Jeff G. hates the name Turtle and wants to call them something else, so we're
probably going with "the Core Semiconductor 1v1 board" or 1v1 for short. There
are people holding out for "1v2" although personally I think that's a worse
name. But technically it's a schematic revision version number, and they ARE
fixing 3 things Martin had to patch by hand in the current round of prototypes,
but still...)

Of course the REAL problem is that the electronics manufacturing supply chain
we'd worked out went through Hong Kong, which has recently become logistically
unpredictable. (And _this_ week the USA's nominal president announced plans to
deploy the military against peaceful protestors, which is also kind of distracting.)

> Yet I'm not quite sure about several things - -
> 
> If memories serves me right,
> I remember that Rich Felker once talked about the musl porting for J2 core in a
> conference.

It's supported it for a while. I have a toolchain build script in toybox (see
part 2 under https://landley.net/toybox/faq.html#cross ) that builds a sh2eb
targeted toolchain that's actually --with-cpu=mj2 and should probably be
renamed. (But the toolchain names come from the gcc --target tuple and to build
the right toolchain it wants --target=sh2eb-unknown-linux-muslfdpic because gnu.)

> (Sadly I cannot find any slides nor the video I had watched/read before .......)

Unfortunately the Linux Foundation accidentally deleted a couple years worth of
ELC videos off of youtube. The thread about it starts here:

  https://www.spinics.net/lists/linux-embedded/msg04240.html

That said, a nice user sent me a copy he'd downloaded:

  http://landley.net/talks/jcore-2015.mp4

We should really start our own youtube channel and upload it there. (And make
the 8 gazillion other instructional videos that have been on our todo list forever.)

Oh, the slides are on https://j-core.org/talks/ as are links to various other
talk videos that DIDN'T get deleted.

> And that's the day I learned SuperH is still alive in the field nicely and sound.
> Yet it's been a while since the landing of support.
> So I'm wondering whether the musl upstream still works for J2 ?

Yup, we regression test it regularly and coresemi has a contract with Rich
paying him to keep it maintained.

> Besides, I'm curious about the status of J1 with ghdl-synth (lately renamed to
> ghdl-yosys-plugin).

Jeff's built https://github.com/j-core/j-core-ice40 with the open source
toolchain using roughly the
https://lists.j-core.org/pipermail/j-core/2019-November/000868.html instructions
(see also the reply message) and it booted and ran fine. (On and off, there have
been regressions but he keeps sending them bug reports which they fix.)

Oh, and you need
https://lists.j-core.org/pipermail/j-core/2019-October/000867.html to build the
bootloader if you're redoing that part from source. (It's the only thing I've
seen using an "ELF" toolchain instead of an fdpic toolchain. The main difference
is the symbol prefixes. We happily build vmlinux with the fdpic toolchain so I
know we COULD write the bootloader to use the real toolchain, but Jeff D.
insists this is how hardware people do bare metal programs.)

Alas we can't build for xilinx with it yet because place and route is missing,
although there are rumblings of getting that to work (possibly upgrading from
Spartan 6 to Kintex or Altix or Twix or Trix or some such).

Lattice has also recently started producing bigger chips, which would could fit
a J2 on... running somewhere around 20 mhz. (They're larger, but not faster than
Lattice's other offerings. Still, it'd let us prototype bigger stuff with fully
open tools. Not really worth sticking in a turtle though, I doubt we could get
HDMI to go 1024x768x16bit on that.)

> I saw issue#69 [1] on the repo being resolved and no new issue being raised
> since then.
> 
> Does it mean that we now have a working end-2-end FOSS flow for J1 core on ice40 ?

We did at one point, sometime in April I believe. You'd have to ask Jeff for
updates, I don't have the ice40 hardware you run it on. (I left my upduino
boards on the desk in the Tokyo office, which I can't get back to until Japan
ends its coronavirus lockdown. I can order more, but the stock ones have no I/O,
just gpio pins, so if I loaded a bitstream onto them I couldn't tell what it was
doing.)

Jeff has a lovely calculator board (keys and LCD display, I/O devices!) and some
other prototypes which are in the same boat as the turtle boards: we have
prototypes we need to manufacture a production run of and put up on crowd
supply, and we need the planet to be slightly less on fire in order to pull that
off. (Or more money to throw at the problem.)

> Looking forward to the future of J-core,
> Ruinland

Me too.

> [1] https://github.com/ghdl/ghdl-yosys-plugin/issues/69

FYI: "Donnie-j" is D. Jeff Dionne, aka Donald Jeffery Dionne, the architect of
j-core. Hence the jeff@ in the shell prompts.

Rob


More information about the J-core mailing list