WEBVTT

00:00.000 --> 00:15.600
Welcome to my talk, upstream and plynx on risk 5SBCs, the past present and future.

00:15.600 --> 00:27.000
I'm Marcel, I joined Coat Think in 2024 and I'm a senior software engineer there.

00:27.800 --> 00:39.480
Let's dive in. Last year I talked about the banana pie F3 and that's this port. I'm not going to go through

00:39.480 --> 00:46.280
all the details here. Maybe one note, I added there on the right. There are no many more.

00:47.080 --> 00:59.480
Pass them it K1 or KYX1. It's kind of a derivative of this chip and for example the orange pie

01:00.280 --> 01:08.920
ports use that chip and Michael is going to talk about that later. So I'm not going to cover that here.

01:08.920 --> 01:32.360
So yeah, let's wait couple seconds at this. I know, okay. So the downstream option on the

01:32.360 --> 01:43.800
spot semi, it's there a yanbu. The latest version they have is 301 and that is Ubuntu 2504 based.

01:44.760 --> 01:56.760
It got upgraded to the 6x kernel, Ubuntu 2022 10 and kind of an ancient open SBI 13. You get

01:57.720 --> 02:06.920
the sources on GITT or GIT Hub that is the latest version from August 15.

02:09.720 --> 02:17.480
Then I also tried Betora V4s. That's why I asked earlier. I wasn't aware that this is kind of

02:17.480 --> 02:25.000
not the official Betora risk 5 stuff but somehow googling around I just stumbled over this and

02:25.000 --> 02:31.960
like if it tried actually works but it uses of course the same downstream Chinese stuff not.

02:34.840 --> 02:42.760
Then we're waiting on the guy to tell us how he actually tested it if he ever did. Who knows?

02:44.120 --> 02:48.280
But that's the status on the Ubuntu prompt. Then on the Linux kernel.

02:49.240 --> 02:54.360
Like I also talked about last year. I mean last year I kind of got a booting with any

02:54.360 --> 03:00.680
tardy not and I kind of poked a little bit with iSquarec which was still on the mailing list.

03:01.320 --> 03:10.600
All of that stuff now got merged. Later also the milk 5 tube bitter which is another port using

03:10.680 --> 03:20.520
that chip got added. So not only the PPS3 and yeah like I said iSquarec, GPIO and all that stuff

03:21.560 --> 03:34.840
all working and then also further pieces all got merged. For example also SDI but unfortunately

03:34.920 --> 03:44.440
that is EMMC only because the control that this useful SD card has quite the different configuration.

03:45.320 --> 03:57.000
So that is still up in the air. That actually just on January 22 the DT changes for 620 got pulled.

03:57.080 --> 04:04.920
You can see here the list. There are some Ethernet fixes, some more pin control power stuff.

04:05.800 --> 04:13.480
Then of course I will talk about later also the first K3 stuff appearing and of course they kind of

04:13.480 --> 04:23.000
refactor some pieces that it can be reused. USB support and stuff like that reset support.

04:23.000 --> 04:31.800
And also PCI Express actually is now on there and the PEMIC which was already on the for the F3

04:31.800 --> 04:38.440
PPS3 now also for the tube bitter port. And further pieces on the mailing list.

04:42.840 --> 04:52.040
And here you can see further stuff like also further pieces for the on the orange python.

04:53.240 --> 05:03.800
Then on the yoktove project it's basically metal risk 5. What are we talking about here?

05:05.000 --> 05:10.840
I had a kind of a functional patch that lasts here but it was for the downstream stuff only.

05:11.480 --> 05:18.520
And on January 6th Michael's stuff got now merged so it's support in there.

05:18.920 --> 05:26.600
Yeah when I played with it I found an issue and I compiled it that is also fixed now.

05:28.600 --> 05:38.120
And in his read me is a chest to use NFS root FS because like I mentioned before the SD card doesn't work yet.

05:38.120 --> 05:46.600
So that works great of course especially you know for development it's anyway great to have NFS root FS.

05:47.560 --> 05:54.840
I also tried EMM-C because I have a port that has EMM-C I think not all do not not fully sure.

05:55.880 --> 06:03.720
That also works great of course you have to somehow first boot something else to actually kind of write it in there.

06:03.720 --> 06:14.120
But the on boot works fine for that even so some Chinese characters somewhere in between which kind of strange but whatever.

06:15.080 --> 06:22.360
So the yeah if you're interested on the micro card support front there is a

06:24.280 --> 06:33.880
Yeah he initiated the discussion there is this patch set that adds a few things but that doesn't work like I said because the controller configuration is completely different.

06:34.680 --> 06:36.680
Patches welcome.

06:36.680 --> 06:39.640
Maybe after first time if I find here by the way.

06:39.960 --> 06:46.120
We will get to that later in the live demo you could choose which one.

06:48.280 --> 06:53.240
So that are we two is a very low cost so we get it for less than like 40 bucks.

06:53.960 --> 07:01.880
It uses some Chinese C-flower chip with 20 C908 cores.

07:03.080 --> 07:07.080
It's actually still fairly powerful one or two five gigahertz.

07:07.720 --> 07:20.040
And yeah it is a more for network devices not it has an integrated network processor NPU.

07:20.840 --> 07:29.640
So NPU can also stand for network not that's where some of us old guys start that off with not before.

07:30.360 --> 07:37.400
Yeah anyway it can do 20 gigabit per second switching so kind of a nice chip.

07:37.400 --> 07:41.240
Unfortunately the documentation is a little bit scarce.

07:44.280 --> 07:55.080
Yeah that is this part how about software for it they use a downstream open WRT they recently upgraded it to

07:55.080 --> 08:09.880
2410 which yeah uses 66 kernel you boot 2022 and yeah I mean that part maybe one thing I've

08:09.880 --> 08:20.280
got to mention here it has a both 128 megabytes spin-end and the 16 megabytes by-nor and it has

08:20.280 --> 08:26.200
jumpers so you could jump it to boot from either that or the other even with a right protect

08:26.200 --> 08:32.760
jumper for the norm I guess the norm would be some kind of like a safe haven not like that kind of

08:32.760 --> 08:41.320
would make sense unfortunately stuff only boots would stay and nobody knows yet how to boot and

08:41.320 --> 08:48.440
there are people asking about it there is zero documentation I mean I also couldn't find out anything there is

08:48.440 --> 09:00.120
really nobody knows unfortunately which also makes it hard then for upstream because well yeah anyway

09:01.080 --> 09:08.600
nothing on open SPI or you good yet that I could find on the Linux kernel side somebody added

09:09.560 --> 09:18.360
the vendor prefix very helpful and then they try to push some pieces but yeah not much

09:18.360 --> 09:30.520
progress since like plus generally. Meanwhile actually upstream open WRT support got merged and that

09:30.520 --> 09:37.240
also they then you know upgraded that from the six six to the six 12 kernel which is what we now

09:37.240 --> 09:46.120
there is use in open WRT and that actually works great but also of course it only boots from

09:46.120 --> 09:53.640
spin-end nobody else figured yet out how to do anything else and somehow I thought well

09:53.640 --> 10:00.920
would be kind of cool to also have that as a yokster machine not so I took those pieces I could

10:00.920 --> 10:08.200
even compile it nicely but then I found out well even though the port has a nice USB port

10:08.920 --> 10:16.120
it doesn't have an SD card that the thing here is an Anosim it's not an SD card not but I my plan

10:16.120 --> 10:24.760
was to kind of plug in the U chain load something that's true yeah good idea so I could validate

10:24.920 --> 10:31.320
the whole chain make sense if you want to know how it actually boots you can do the following

10:31.320 --> 10:36.920
so you place the like fsp all the first code right you save the stack pointer you set up

10:36.920 --> 10:41.400
you are to print out the stack pointer so you roughly know where the mask from his friend

10:41.400 --> 10:48.280
or maybe as for him and then you jump the mask from noted and he dropped and that just

10:48.440 --> 10:55.640
what it's like yeah no I mean I have some ideas as well that's true but but on the other hand

10:55.640 --> 11:14.840
it's all very time consuming so yeah that's true but I mean for booting you basically need to

11:14.840 --> 11:22.120
probably know some kind of head or format stuff that you would need I mean I'm not talking about

11:22.120 --> 11:27.960
if you would try to boot from from from the norm of that really I mean it's zero document so it's

11:27.960 --> 11:40.680
kind of hard to find that out but yeah let's see then the next one that appeared this is this

11:41.000 --> 11:49.560
EBC 77 really nice small board it comes with the high five premier p5 50 cores

11:51.160 --> 11:59.560
so basically they're the gigantic board that the photographer I showed earlier it's basically

11:59.560 --> 12:13.720
this smaller version not yeah this one has nice kind of really fast 16 gigabytes of ram

12:13.720 --> 12:23.720
nice not it for the bootloader I use a spy so you can basically have some kind of save way to boot it

12:24.680 --> 12:33.960
and also for to experiment with with other operating system stuff it's kind of nice if it's

12:33.960 --> 12:43.400
separated not so you just have like an SD card that just has like an EVFI petition and

12:43.400 --> 12:50.680
the rootFS and the bootloader stuff is just in the spinole I think it kind of makes more sense not

12:54.200 --> 13:02.440
then despite actually this is kind of an old RVA 20 board not or the course

13:04.040 --> 13:12.360
and despite the fact that to boot to ditch the older RVA is they actually kind of

13:12.360 --> 13:21.960
joint forces with SVN computing and they even kind of advertised that as official OS for this board

13:22.680 --> 13:29.560
but it's it's the old flavor the 2404 not which is LTS so it will be supported for a while

13:30.120 --> 13:40.760
the last updated version is from December 12 and it uses 66 92 kernel and the ubo thing that is

13:42.360 --> 13:50.680
yeah course use is this physical memory LIS stuff and that I'm actually not fully sure

13:50.760 --> 13:58.440
I found out that it got kind of partially merged like I think four five patches of that patch set

13:58.440 --> 14:08.760
are now next but the rest I don't know where it went I kind of hand yeah figured out which is

14:08.760 --> 14:16.600
missing and and rebased it and whatever not and that is then what I used in this patch set that

14:16.840 --> 14:21.640
I used for the Meta risk five stuff that got merged from January 17

14:23.640 --> 14:30.280
actually I have two machines one even with the downstream one with the main line the light

14:30.280 --> 14:41.960
ladder is based on 619 or C5 and 22 patches straight from the mailing list I mean more or less straight

14:42.520 --> 14:50.920
to replace it a little bit like I said where it was partially merged and yeah that boots

14:50.920 --> 14:59.000
fine from SD card and the boot loader is just a downstream window stuff in the spine or still

14:59.800 --> 15:09.240
I also have a pull request now updating that to RC7 and also I fixed on I have to admit I had some

15:09.240 --> 15:17.880
other layers in my configuration and the BB config and somebody else tried to build it with with what

15:19.800 --> 15:26.680
in in yoke the layers you usually have in the read me what you depend on and that basically that

15:26.680 --> 15:34.360
machine didn't have here to that fix that now I experimented with some Wi-Fi Bluetooth stuff which

15:34.440 --> 15:49.400
is in the minimal kind of yoke to stuff then on the free desktop SDK front I have a match request there

15:49.400 --> 15:59.320
I used the same 24 patches I mentioned before and it builds fine well it takes like five hours

15:59.640 --> 16:12.760
even with the pioneers we have not but that is more because the I mean 3 desktop SDK that is

16:12.760 --> 16:20.600
basically used for for the flat pack stuff not so of course it the way the CIA is set up there it

16:20.600 --> 16:26.200
basically builds the world and then cashes everything which is really nice so when you then build an

16:26.200 --> 16:32.840
image it builds in like five minutes but building the world takes five hours not configuration who knows

16:33.400 --> 16:42.920
kind of been a while when I last played with crop match but yeah one can get it to manually boot

16:42.920 --> 16:49.880
and when entering this stuff and with that it actually works so I have free desktop SDK running on that

16:50.840 --> 17:03.400
now to the future are we age 23 we heard some these tools already changed that which seems kind

17:03.400 --> 17:09.320
of a little bit stupid to do that before there is some hardware actually available but on the other hand

17:11.080 --> 17:17.400
well there are choices not that's an open free world at least on this side of the pond we still

17:17.880 --> 17:27.880
have free world so and hardware is now slowly also appearing there is milk-fifetime and actually

17:28.920 --> 17:36.520
very new I heard and I edited the slides and uploaded the new deck by the way just like half an hour ago

17:37.160 --> 17:44.760
because last I checked the day ago I don't think the UPD2 was too pitot2 was there yet on the

17:44.840 --> 17:55.320
milk-fifetime but it is now but let's first look at the Titan it's this ultra-risk URDP000 based

17:55.320 --> 18:03.640
board it's technically not fully RVA20's actually because it's kind of stupidly missing the V

18:03.640 --> 18:11.800
vector extension but they claim that it's the most most powerful mini IT export

18:12.280 --> 18:19.880
yeah it's also kind of reasonably priced you can even get some kind of pre-order discount

18:19.880 --> 18:28.520
at least I got however that got used up for the shipping cost of course I think it ships from home

18:28.520 --> 18:37.800
corners something supposedly ships within 45 days let's see that will be soon for mine don't know

18:37.960 --> 18:46.360
actually I did stuff I heard on the kind of the Chinese matrix channel they seem to have some

18:46.360 --> 18:54.600
reliability issues with version revisions three of the board and supposedly now produce further patches

18:54.600 --> 19:01.640
of it with different manufacturers so something is at least going on and I already got my 64

19:02.600 --> 19:12.760
ram for it which by the way thank you ii companies wasn't any cheap anymore it's fucking ram anyway

19:13.720 --> 19:22.040
upstream status of this one and also started upstreaming with the interrupt stuff at least

19:22.440 --> 19:33.640
then all new shiny Jupiter 2 so that one uses the basically predecessor of what the

19:33.640 --> 19:42.680
banana use not the K1 and here it's the K3 and this one is fully RVA USB ports and the USB

19:42.680 --> 19:53.960
also support supposedly dp alt mode now with 4k 60 hertz and also dp support so yeah it looks

19:53.960 --> 20:02.760
like a nice hardware for us to play with so supposedly shipping in April is what they claim

20:03.640 --> 20:11.480
pricing I haven't really heard anything mentioned yet upstream status so it looks like the K3

20:11.480 --> 20:20.360
might be the first that that is completely supported so a lot of patches are on the mailing list so yeah

20:23.400 --> 20:30.280
then also of course Smin has some newer ones in the pipeline there is supposedly 2 and as

20:30.280 --> 20:39.960
500 for general purpose in the S5 16 more for AI acceleration both supposedly full RVA 23

20:41.240 --> 20:50.680
then there is a nucleic system technology with their UX 10 30 edge which should be fully RVA 23

20:51.880 --> 20:58.360
there is the C5 the performance P800 series should be ready for RVA 23

20:59.240 --> 21:07.800
actually whether that is related to Smin which remember they kind of used C5 performance course before

21:07.800 --> 21:15.560
where whether any of the S500 or S5 16 also does that I couldn't find any information so we don't know

21:18.040 --> 21:28.200
then basically the specimen they have the V100 is like a service CPU then that also uses the X100

21:28.200 --> 21:36.120
course and of course the case VSOC also uses those then there is the 10 storent TT ascolon

21:37.320 --> 21:44.120
and another really interesting thing I stumbled on is the Chiang-Chang it's supposedly an open source

21:44.120 --> 21:51.960
high performance risk 5 processor infrastructure for architecture research so you basically it's all fully open

21:52.120 --> 22:03.960
you find that if you google for it there is also the C here stuff but the A210 sok I don't

22:03.960 --> 22:10.120
think it is fully RVA 23 yet but they have a follow up the A6 on which which then should be

22:11.400 --> 22:20.200
let's see okay now we get to the live demo this time I let you choose so we have we will do

22:21.160 --> 22:27.640
the vote I first tell you what we have we could have the banana pineapple we could have it

22:29.480 --> 22:40.200
with the yoptop basically from my tool note or we could have the banana pie RV2 running open

22:40.200 --> 22:51.560
WT upstream or we could have the my favorite board either with yoptop or with three

22:52.520 --> 23:04.920
so we we we vote who wants option one banana pie F3 who wants to see this one nobody

23:07.240 --> 23:19.080
okay we have five minutes left who wants to see banana pie RV2 okay few it is then who wants to see the

23:19.080 --> 23:27.800
S win with yoptop okay I guess that would be the concleter anybody wants to see it with three

23:27.800 --> 23:38.920
desktop SDK so I guess we do it with yoptop and okay let's see we have five minutes I have here

23:39.720 --> 23:45.800
two box I have a USB cable actually that's board is kind of sweet it has a console

23:46.520 --> 23:59.720
USB chip integrated you just plug it in still uses USB micro for that let's see that's this one

24:07.400 --> 24:13.320
well somehow I knew that you guys want that option

24:15.800 --> 24:21.960
because already the rest of the card is plugged in let's fire it up

24:22.920 --> 24:46.200
woohoo so it does its boot loader thing yeah they I mean they use u boot I think 24

24:46.840 --> 24:55.320
something I mean we can back scroll a little bit later not so it boots system the e rules to

24:55.320 --> 25:08.120
burn not if if drunk new that that is not ruling the world anyway let's see we can go up

25:08.760 --> 25:19.800
so of course we have some boot ROM stuff first then we have some ramming the allization open SPI

25:20.520 --> 25:28.360
mentioned version one three actually it would it's merge now but the guy that worked on it

25:28.920 --> 25:36.040
I think it's one of the major open SPI main things I forgot the name but he says you can use

25:36.040 --> 25:43.880
downstream u boot with it but of course they did some bad assumptions with this old

25:43.880 --> 25:49.480
hacked up when the stuff so he has a patch for the downstream u boot to actually use it to

25:49.480 --> 25:57.400
get it with upstream open SPI would be something perfect for me to drive but I admit I haven't yet

25:57.800 --> 26:06.920
but that for this then of course yeah it's u boot 20 24 or 1 I mean downstream one not

26:08.760 --> 26:21.480
and yeah it kind of supports eFI not but here actually I boot with x-link it's just I don't know

26:21.560 --> 26:30.120
eFI for me since combo loot it just every time I try eFI I just have trouble with it I mean

26:31.560 --> 26:43.480
even on the freaking notebook it's a pain not I don't know yeah so this is 619 rc7 okay

26:43.480 --> 26:54.200
anything else you want to see yeah the warning hard warning I I posted about it on the main list by the way

26:54.200 --> 27:07.800
it's the clock control it's missing a flag and I posted that and the guy said he will add it in the next

27:07.800 --> 27:15.000
revision so hopefully we will I on purpose didn't fix it because I pointed him to my stuff here

27:15.000 --> 27:21.800
where he can see that it gives the warning okay and the other questions I mean I can show you the

27:38.280 --> 27:45.800
okay yeah it's a C5 P if I 50's not well you can see that the ISA's drink still fits on the

27:45.800 --> 28:01.960
side and the other questions anybody go ahead mark now I think I mean not with the hypervisor

28:01.960 --> 28:11.800
extension at a virtualization is not supported no hypervisor extension from this one yeah time is up thank you very much

