seL4 / website

The seL4.systems website
https://seL4.systems
3 stars 14 forks source link

Docsite content: update Supported Platforms page #311

Open june-andronick opened 11 months ago

june-andronick commented 11 months ago

Update the https://docs.sel4.systems/Hardware/ page to make sure it's consistent, up to date, and with an easy high-level take-away for a wider audience.

lsf37 commented 11 months ago
  • IOMMU vs SMMU vs System MMU

We should make SMMU/System MMU consistent, but IOMMU is the name for the x86 mechanism, and SMMU is the name for the Arm mechanism, so those should stay separate, i.e. the table header for Arm should become SMMU, but the one for x86 should stay IOMMU, I think.

  • "status" in the table should be "verification status" to be clearer

Could be too long for the table header, at least I remember playing around with that and not changing it.

  • for verification status: do we ignore SysInit? BV?

Yes, I think that's too much detail for this table. We should think a bit more about how to represent the verification status here, because that is going to get more complex as more verified platforms are being added with various differing feature sets.

  • what is the "pending" Ariane RISC-V?

We should remove that. It was going to be the eventual verification target for RISC-V MCS. Ariane is the ETH implementation of RISC-V and the chip HC was going to use (or still is, unclear to me). There is an Ariane config for seL4, but no physical board that the foundation has.

june-andronick commented 10 months ago

This made some progress. Still on my list to do (most in discussion w @lsf37):

june-andronick commented 10 months ago

Also needed:

Indanz commented 10 months ago

Comparing the machine queue systems with the webpage, I notice the following differences:

I think it's worth making it clearer when some platforms are softcores implemented on an FPGA.

Ivan-Velickovic commented 10 months ago

mq has a star64 | riscv | riscv64 | StarFive JH7110 | SiFive U74-MC, which is not on the website.

There's a PR for it https://github.com/seL4/docs/pull/181 but it shouldn't be merged until https://github.com/seL4/seL4_tools/pull/174 and https://github.com/seL4/util_libs/pull/167 are merged.

  • xavier_1 | arm | armv8-a | Xavier NX | Nvidia Carmel is missing from the website.

It's not supported by seL4 currently.

june-andronick commented 9 months ago

Thanks @Indanz and @Ivan-Velickovic. I've been comparing (1) the hardware listed on https://docs.sel4.systems/Hardware/ and (2) hardware listed on https://github.com/seL4/ci-actions/blob/master/seL4-platforms/platforms.yml (which I thought would be equivalent to the machine queue, but I'm missing some of the ones mentioned by @Indanz). The aim (discussed with @lsf37) is to find a way to generate another column in the table in (1) to tag boards that are not under CI/test (plus fix any discrepancies between (1) and (2)).

june-andronick commented 9 months ago

@Indanz @lsf37 @Ivan-Velickovic Can you please let me know about my questions in bold above? Thanks :)

Ivan-Velickovic commented 9 months ago

We should maybe list unmaintained boards in a separate table, or really highlight in some way that they are unmaintained . Yes?

Yes, I think a separate unmaintained list would be better.

For the Foundation ones: why aren't they in (2)? is it equivalent to being listed in (2) as disabled (see below) and should therefore be tagged as not under CI/test?

Not being listed in the platforms.yml is equivalent to being listed in platforms.yml and having the no_hw_build option being true. So yes, they should be tagged as not tested in CI.

For the others, should we also just tag them as not under CI/test?

Yes

I understand that TQMA is meant to be added. What about the others? Should they be added to (1) too, and flagged as not under CI/test?

To my knowledge we do not own any of the other boards and so they cannot be placed under (2).

Should we add all 3 above to the list in (1) as simulators?

Yes.

Why aren't these in (2)? Any other differences between (2) and mq?

Star64 has PRs that need to be merged first before we can put it in (2). xavier_1 is not supported at all by seL4 and so should not be in (1) or (2).

Hope this helps.

Ivan-Velickovic commented 9 months ago

(regarding the xavier_1, what I meant is that TS bought the platform and put it in machine queue but we never finished porting it to seL4 and so that's why there's no support in seL4 for it but it's in machine queue)

june-andronick commented 9 months ago

Many thanks @Ivan-Velickovic , that is very helpful.

Ivan-Velickovic commented 9 months ago

how should I add them? manually adding lines or creating a new page under the 'hardware' folder with the info in the headers so it could be extracted?

I think the 'hardware' folder should instead be called platforms probably and we should probably have a page for each simulator. While the simulators might be more self-explanatory than hardware platforms, I think it's still worth it to have a dedicated page for each perhaps including things such as: