My progress on real RISC-V hardware

having spent some time writing rtos machine control code, this is definitely a problem. it’s a problem at the os level too. the API in most cases sucks for concurrency.

with Linux cnc if you call a while loop or a sleep etc the machine stops cold. why the hell can’t those be separately threaded subroutines with a time stamp ?? bizzarr indeed

2 Likes

On sale now on aliexpress.com:

  • Sipeed: Lichee Pi 4A - Powerful RISC-V SBC ever!

Coming soon:

  • Lichee Pad/Phone 4A: 10.1 inch Pad; 6 inch phone
3 Likes

The Haiku logo should definitely be on this page https://landscape.riscv.org/

6 Likes

OT: lychee is a berry from Asia. So a lichee pi sounds delicious!

2 Likes

@rjzak Maybe open a pull request for RISC-V Ecosystem Interactive Landscape to have the logo added? Details on the page you linked.

1 Like

7 posts were split to a new topic: Promotional Haiku logos

A post was merged into an existing topic: Promotional Haiku logos

Ahoy,

The mebtioned Risc-V board unboxed/reviewed HERE - below - on YT by Chris Barnatt :

Explaining Computer presents – Lichee Pi 4A - Serious RISC-V Desktop Computing

Kind regards,

3 Likes

I am currently working on Device Manager v2 and implementing some VisionFive2 peripheral drivers for new device manager architecture.

Managed to implement SD/MMC host driver and boot Haiku installed on SD card.

Source code: Commits · X547/haiku · GitHub

Device node tree:

Node("Devices Root"): no driver
  Node("Root subnode"): bus_managers/fdt/driver/v1
    Node("Root"): no driver
      Node("osc"): drivers/clock/fixed_clock/driver/v1
      Node("gmac1_rmii_refin"): drivers/clock/fixed_clock/driver/v1
      Node("gmac1_rgmii_rxin"): drivers/clock/fixed_clock/driver/v1
      Node("i2stx_bclk_ext"): drivers/clock/fixed_clock/driver/v1
      Node("i2stx_lrck_ext"): drivers/clock/fixed_clock/driver/v1
      Node("i2srx_bclk_ext"): drivers/clock/fixed_clock/driver/v1
      Node("i2srx_lrck_ext"): drivers/clock/fixed_clock/driver/v1
      Node("tdm_ext"): drivers/clock/fixed_clock/driver/v1
      Node("mclk_ext"): drivers/clock/fixed_clock/driver/v1
      Node("jtag_tck_inner"): drivers/clock/fixed_clock/driver/v1
      Node("bist_apb"): drivers/clock/fixed_clock/driver/v1
      Node("stg_apb"): drivers/clock/fixed_clock/driver/v1
      Node("gmac0_rmii_refin"): drivers/clock/fixed_clock/driver/v1
      Node("gmac0_rgmii_rxin"): drivers/clock/fixed_clock/driver/v1
      Node("clk_rtc"): drivers/clock/fixed_clock/driver/v1
      Node("hdmitx0_pixelclk"): drivers/clock/fixed_clock/driver/v1
      Node("mipitx_dphy_rxesc"): drivers/clock/fixed_clock/driver/v1
      Node("mipitx_dphy_txbytehs"): drivers/clock/fixed_clock/driver/v1
      Node("cpus"): no driver
        Node("cpu@0"): no driver
          Node("interrupt-controller"): no driver
        Node("cpu@1"): no driver
          Node("interrupt-controller"): no driver
        Node("cpu@2"): no driver
          Node("interrupt-controller"): no driver
        Node("cpu@3"): no driver
          Node("interrupt-controller"): no driver
        Node("cpu@4"): no driver
          Node("interrupt-controller"): no driver
      Node("soc"): no driver
        Node("pmu"): no driver
        Node("cache-controller@2010000"): no driver
        Node("aon_syscon@17010000"): drivers/misc/syscon/driver/v1
        Node("stg_syscon@10240000"): drivers/misc/syscon/driver/v1
        Node("sys_syscon@13030000"): drivers/misc/syscon/driver/v1
        Node("clint@2000000"): no driver
        Node("plic@c000000"): drivers/interrupt_controllers/plic/driver/v1
        Node("clock-controller"): drivers/clock/jh7110_clock/driver/v1
        Node("clock-controller@295C0000"): no driver
        Node("clock-controller@19810000"): no driver
        Node("spi@13010000"): no driver
          Node("nor-flash@0"): no driver
        Node("otp@17050000"): no driver
        Node("usbdrd"): no driver
          Node("usb@10100000"): no driver
        Node("timer@13050000"): no driver
        Node("wdog@13070000"): no driver
        Node("rtc@17040000"): no driver
        Node("pmu@17030000"): no driver
        Node("serial@10000000"): no driver
        Node("serial@10010000"): no driver
        Node("serial@10020000"): no driver
        Node("serial@12000000"): no driver
        Node("serial@12010000"): no driver
        Node("serial@12020000"): no driver
        Node("dma-controller@16050000"): no driver
        Node("gpio@13040000"): no driver
          Node("uart0-0"): no driver
            Node("tx-pins"): no driver
            Node("rx-pins"): no driver
          Node("mmc0-pins"): no driver
            Node("mmc0-pins-rest"): no driver
          Node("sdcard1-pins"): no driver
            Node("sdcard1-pins0"): no driver
            Node("sdcard1-pins1"): no driver
            Node("sdcard1-pins2"): no driver
            Node("sdcard1-pins3"): no driver
            Node("sdcard1-pins4"): no driver
            Node("sdcard1-pins5"): no driver
          Node("pcie0_perst_default"): no driver
            Node("perst-pins"): no driver
          Node("pcie0_perst_active"): no driver
            Node("perst-pins"): no driver
          Node("pcie0_wake_default"): no driver
            Node("wake-pins"): no driver
          Node("pcie0_clkreq_default"): no driver
            Node("clkreq-pins"): no driver
          Node("pcie1_perst_default"): no driver
            Node("perst-pins"): no driver
          Node("pcie1_perst_active"): no driver
            Node("perst-pins"): no driver
          Node("pcie1_wake_default"): no driver
            Node("wake-pins"): no driver
          Node("pcie1_clkreq_default"): no driver
            Node("clkreq-pins"): no driver
          Node("i2c2-0"): no driver
            Node("i2c-pins"): no driver
          Node("i2c5-0"): no driver
            Node("i2c-pins"): no driver
          Node("hdmi-0"): no driver
            Node("cec-pins"): no driver
            Node("hpd-pins"): no driver
        Node("gpio@17020000"): no driver
        Node("trng@1600C000"): no driver
        Node("sec_dma@16008000"): no driver
        Node("crypto@16000000"): no driver
        Node("i2c@12060000"): no driver
        Node("i2c@10030000"): no driver
        Node("i2c@10040000"): no driver
        Node("i2c@10050000"): no driver
          Node("rm68200_panel@45"): no driver
        Node("i2c5@12050000"): no driver
          Node("eeprom@50"): no driver
          Node("axp15060_reg@36"): no driver
        Node("sdio0@16010000"): busses/mmc/designware_mmc/driver/v1
          Node("MMC Bus Manager"): bus_managers/mmc/driver/v1
        Node("sdio1@16020000"): busses/mmc/designware_mmc/driver/v1
          Node("MMC Bus Manager"): bus_managers/mmc/driver/v1
            Node("MMC Device"): drivers/disk/mmc_disk/driver/v1
        Node("vin_sysctl@19800000"): no driver
        Node("jpu@11900000"): no driver
        Node("vpu_dec@130A0000"): no driver
        Node("vpu_enc@130B0000"): no driver
        Node("reset-controller"): drivers/reset/jh7110_reset/driver/v1
        Node("stmmac-axi-config"): no driver
        Node("ethernet@16030000"): drivers/network/dwmac/driver/v1
          Node("ethernet-phy@0"): no driver
        Node("ethernet@16040000"): drivers/network/dwmac/driver/v1
          Node("ethernet-phy@1"): no driver
        Node("gpu@18000000"): no driver
        Node("can@130d0000"): no driver
        Node("can@130e0000"): no driver
        Node("tdm@10090000"): no driver
        Node("spdif0@100a0000"): no driver
        Node("pwmdac@100b0000"): no driver
        Node("i2stx@100c0000"): no driver
        Node("pdm@100d0000"): no driver
        Node("i2srx_3ch@100e0000"): no driver
        Node("i2stx_4ch0@120b0000"): no driver
        Node("i2stx_4ch1@120c0000"): no driver
        Node("pwm@120d0000"): no driver
        Node("spdif_transmitter"): no driver
        Node("spdif_receiver"): no driver
        Node("pwmdac-transmitter"): no driver
        Node("dmic_codec"): no driver
        Node("spi@10060000"): no driver
        Node("pcie@2B000000"): no driver
        Node("pcie@2C000000"): no driver
        Node("mailbox@0"): no driver
        Node("mailbox_client@0"): no driver
        Node("dssctrl@295B0000"): drivers/misc/syscon/driver/v1
        Node("dc8200@29400000"): no driver
          Node("port"): no driver
            Node("endpoint@0"): no driver
            Node("endpoint@1"): no driver
        Node("hdmi@29590000"): no driver
          Node("ports"): no driver
            Node("port"): no driver
              Node("endpoint@0"): no driver
        Node("mipi@295d0000"): no driver
          Node("ports"): no driver
            Node("port"): no driver
              Node("endpoint@0"): no driver
          Node("display-timings"): no driver
            Node("timing0"): no driver
        Node("dsi-host"): no driver
        Node("hdmi-output"): no driver
        Node("mipi-dphy@295e0000"): no driver
        Node("snd-card"): no driver
          Node("simple-audio-card,dai-link@0"): no driver
            Node("cpu"): no driver
            Node("codec"): no driver
        Node("e24@0"): no driver
          Node("dsp@0"): no driver
        Node("dmc@100b0000"): no driver
      Node("aliases"): no driver
      Node("chosen"): no driver
      Node("memory@80000000"): no driver
      Node("reserved-memory"): no driver
        Node("opensbi"): no driver
      Node("gpio-restart"): no driver
      Node("firmware"): no driver
      Node("config"): no driver
      Node("__symbols__"): no driver
  Node("Root subnode"): drivers/null/driver/v1
  Node("Root subnode"): drivers/zero/driver/v1
33 Likes

Ported VisionFive 2 PLDA PCI host controller to device manager v2 and fixed multiple domain registration. Now instead of initializing all PCI domains in init_deferred(), busses of domain are initialized at moment of attaching each PCI host controller.

        Node("pcie@2B000000"): busses/pci/plda/driver/v1
          Node("PCI Bus Manager"): bus_managers/pci/driver/v1
            Node("PCI Device"): no driver
            Node("PCI Device"): busses/usb/xhci/driver/v1
              Node("USB Bus Manager"): bus_managers/usb/driver/v1
        Node("pcie@2C000000"): busses/pci/plda/driver/v1
          Node("PCI Bus Manager"): bus_managers/pci/driver/v1
            Node("PCI Device"): no driver
            Node("PCI Device"): drivers/disk/nvme_disk/driver/v1

19 Likes

The same chip, it would seem, as the just-released BeagleV®-Ahead.

BeagleV®-Ahead is an open-source RISC-V single board computer (SBC) in the form factor of BeagleBone Black with compatible P8 & P9 cape header pins allowing you to stack your favorite BeagleBone cape on top to expand it’s capability. Featuring a powerful quad-core RISC-V processor, BeagleV®-Ahead is designed as an affordable RISC-V enabled pocket-size computer for anybody who want’s to dive deep into the new RISC-V ISA.

2 Likes

The latest video of Chris Barnatt - Explaining Computers channel - is about a whole week (7 days) of using only Risc-V machines !..
As Chris also pinpoint it in final conclusion – even these systems only developer purposed SBCs only with engineer version of Debian OS - very usable and promising how far they are usable even in these form and status.
Over the week he had only failing with video editing softwares (KDEnlive and Blender failed to start) and some security related features (Ubikey HW key ) those had not worked for him on Debian – in case Risc-V :

  • once as softwares had not developed for the Risc-V architecture - Ubikey requirement,
  • second video stuff fails when apps started - KDEnlive and Blender
    … so these are SW issues – it is not the issues of the platform itself.
    Especially when it is compared to a status when he bought and tried first – many months ago - it had improved a lot what works and that does not yet…
    Hardware based security stuff using Debian built-in SW worked flawlessly, so he could partially replace the Ubikey solution - what he uses for authentication fo Google services as with a HW key - such way tha’s not satisfyingly … but enough to do the week done.
    So he stares into bright future by himself.
    As I’ve seen now Haiku and Linux in parallel actually on this way ahead altogether on this arch - related to status of readiness to wide public availability.
    He also used a software ( a linux game) what he compiled from source - not downloaded as a package - which is also an indicator - it is still under development …
    But on this level really reliable to work on it.

Have a blessed time all of yours further development - Haiku and apps on it !..

RISC-V Week - 7 days only using RISC-V computers

3 Likes

Even though its about a year out this board looks super interesting finally from a performance perspective.
Link

4 Likes

It’s also nice to see boards getting more ram at reasonable prices.

Ahoy Bruno ,

Of course … at that time, it was – latest available …

It was not a Hollywood movie title … :slight_smile:

I hadn’t thought you are such naughty by nature … you surprised me with your question. :wink:
The image about you (in me) - until now - was a grave, serious people :smiley:
quite surprise :smiley:

1 Like

Ahoy folks,

The latest available video about Risc-V system

-- of Chris Barnatt – is

the video editing capabilities …

RISC-V Video Editing & 500th Episode

1 Like

Considering picking up a RISC-V SBC and Haiku compatibility would be nice. Is there a list of risc-v hardware that works?

  • VisionFive 2 Single Board Computer - $72.95-$169.00 USD
  • HiFive Unmatched Rev B - $168.45 USD
  • Milk-V
    • Milk-V Mars - $69.00 USD (8 GB RAM, under review)
    • Milk-V Pioneer - $1499-$2499 USD (128 GB RAM, AMD RX 590, Intel X540-T2 - under review)
  • SIPEED Lichee Pi 4A - $3.46 USD (8-16 GB RAM, under review)
    • SiPEED Lichee Console 4A - $252.00 USD (16 GB RAM, dev laptop console, under review)
4 Likes

Are there ISOs for these boards anywhere?

USB flash drive/SD images (i.e. not ISO(CD/DVD)).

1 Like