... | @@ -12,7 +12,7 @@ More info about the boards and OS support can be found at [RVspace](https://rvsp |
... | @@ -12,7 +12,7 @@ More info about the boards and OS support can be found at [RVspace](https://rvsp |
|
### Processor
|
|
### Processor
|
|
The JH7100 chipset features a dual-core SiFive U74-MC RISC-V 64-bit processor supporting the RV64GC ABI.
|
|
The JH7100 chipset features a dual-core SiFive U74-MC RISC-V 64-bit processor supporting the RV64GC ABI.
|
|
|
|
|
|
There is no vector unit, and obviously no packed SIMD support (since the later is not even ratified). There is also no GPU, though this should change in future version of the chipset; it is not clear if the AI accelerator could be used as an alternative.
|
|
Note that there is no vector unit. There is obviously no packed SIMD support either since that extension was not ratified at the time.
|
|
|
|
|
|
### Codecs
|
|
### Codecs
|
|
|
|
|
... | @@ -22,15 +22,6 @@ The board includes a Wave511 decoder and Wave521 encoder for AVC and HEVC from C |
... | @@ -22,15 +22,6 @@ The board includes a Wave511 decoder and Wave521 encoder for AVC and HEVC from C |
|
|
|
|
|
The board has an TDA19988 display controller from NXP support HDMI 1.4, and its adjunct TDA9950 controller for HDMI CEC.
|
|
The board has an TDA19988 display controller from NXP support HDMI 1.4, and its adjunct TDA9950 controller for HDMI CEC.
|
|
|
|
|
|
The following pixel formats are supported, all with 8-bit depth:
|
|
|
|
* RV16: RGB565
|
|
|
|
* YCbCr 4:2:2: UYVY, VYUY, YUYV, YVYU
|
|
|
|
* YCbCr 4:2:0: YUV420, NV21, NV12
|
|
|
|
* RV32: XRGB8888
|
|
|
|
* RGBA: ARGB8888, ABGR8888
|
|
|
|
|
|
|
|
###
|
|
|
|
|
|
|
|
## Port status
|
|
## Port status
|
|
|
|
|
|
At this time, the port targets Linux RV64 exclusively.
|
|
At this time, the port targets Linux RV64 exclusively.
|
... | @@ -49,16 +40,14 @@ At this time, the port targets Linux RV64 exclusively. |
... | @@ -49,16 +40,14 @@ At this time, the port targets Linux RV64 exclusively. |
|
|
|
|
|
### Audio
|
|
### Audio
|
|
|
|
|
|
The port is currently tested with ALSA. It should also be possible to use SALSA, PulseAudio or JACK.
|
|
The port is currently tested with ALSA. It should also be possible to use SALSA, PulseAudio, PipeWire or JACK.
|
|
|
|
|
|
* Output
|
|
* Output
|
|
* [x] Analog 16 kHz
|
|
* [x] Analog
|
|
* [ ] Analog 44.1 kHz **waiting** for kernel support
|
|
|
|
* [ ] Analog 48 kHz **waiting** for kernel support
|
|
|
|
* [ ] HDMI linear **waiting** for kernel support
|
|
* [ ] HDMI linear **waiting** for kernel support
|
|
* [ ] HDMI pass-through not planned yet
|
|
* [ ] HDMI pass-through not planned yet
|
|
* [ ] S/PDIF **not** planned (add-on board required)
|
|
* [ ] S/PDIF **not** planned (add-on board required)
|
|
* [ ] USB potentially working, untested
|
|
* [x] USB
|
|
* Input
|
|
* Input
|
|
* [ ] Analog **not** planned (add-on board required)
|
|
* [ ] Analog **not** planned (add-on board required)
|
|
* [x] USB
|
|
* [x] USB
|
... | @@ -76,21 +65,19 @@ Given the lack of GPU on the JH7100, video should be output directly in full-scr |
... | @@ -76,21 +65,19 @@ Given the lack of GPU on the JH7100, video should be output directly in full-scr |
|
* [x] HDMI
|
|
* [x] HDMI
|
|
* [ ] MIPI DSI **not** planned
|
|
* [ ] MIPI DSI **not** planned
|
|
* [x] Direct Rendering Manager dumb buffers
|
|
* [x] Direct Rendering Manager dumb buffers
|
|
* [ ] I420 **work in progress**
|
|
* [x] YUV 4:2:0
|
|
* [ ] NV12 **work in progress**
|
|
* [x] Planar
|
|
* [ ] NV21
|
|
* [x] Semi-planar (NV12/NV21)
|
|
* [x] YUYV
|
|
* [x] YUV 4:2:2
|
|
* [x] UYVY
|
|
* [x] Packed
|
|
* [x] YVYU
|
|
* [ ] RGBRV32 **work in progress**
|
|
* [ ] VYUYV not planned (in VLC)
|
|
|
|
* [ ] RV32 **work in progress**
|
|
|
|
* [x] ARGB
|
|
* [x] ARGB
|
|
* [ ] BGRA
|
|
* [x] BGRA (affected by kernel bug)
|
|
* [ ] X11
|
|
* [x] X11
|
|
* [ ] DRM Leasing
|
|
* [ ] DRM Leasing
|
|
* [ ] GL (software rasteriser)
|
|
* [x] OpenGL software rasterisation (untested)
|
|
* [ ] RENDER (software rasteriser)
|
|
* [x] RENDER software rasterisation (untested)
|
|
* [ ] images
|
|
* [x] Raw images (untested)
|
|
* DSP
|
|
* DSP
|
|
* V4L2 M2M decoder
|
|
* V4L2 M2M decoder
|
|
* [ ] AVC
|
|
* [ ] AVC
|
... | @@ -103,10 +90,6 @@ Given the lack of GPU on the JH7100, video should be output directly in full-scr |
... | @@ -103,10 +90,6 @@ Given the lack of GPU on the JH7100, video should be output directly in full-scr |
|
* [x] USB
|
|
* [x] USB
|
|
* [ ] MIPI CSI **not** planned
|
|
* [ ] MIPI CSI **not** planned
|
|
|
|
|
|
Notes:
|
|
|
|
* The U74 processor does not support Vector or (as yet unratified) Packed SIMD extensions, so work on CPU-side optimisations is out of scope.
|
|
|
|
* There is no GPU so X11 rendering is with the software rasteriser (expect very limited performance). Consider using KMS instead.
|
|
|
|
|
|
|
|
### Misc
|
|
### Misc
|
|
|
|
|
|
* [ ] HDMI CEC
|
|
* [ ] HDMI CEC
|
... | @@ -186,7 +169,14 @@ For instance, with the Grub bootloader |
... | @@ -186,7 +169,14 @@ For instance, with the Grub bootloader |
|
(as provided in the StarFive Fedora disk image)
|
|
(as provided in the StarFive Fedora disk image)
|
|
append `cma=64M` to the `linux` lines in `/boot/grub/grub.cfg`.
|
|
append `cma=64M` to the `linux` lines in `/boot/grub/grub.cfg`.
|
|
|
|
|
|
### Video is slow
|
|
### DRM colours are shifted
|
|
|
|
|
|
|
|
This is a known bug in the Starfive DRM driver. Try to update your kernel to see if it has been fixed.
|
|
|
|
|
|
|
|
### Video output is slow
|
|
|
|
|
|
|
|
Make sure to use DRM, rather than X11 (or Wayland). Otherwise conversion from YUV to RGB is too heavy for the CPU to handle.
|
|
|
|
|
|
|
|
### Video decoding is slow
|
|
|
|
|
|
* For decoding, the Wave5xx VPU is not supported yet, so this is expected.
|
|
The Wave5xx VPU is not supported yet, so this is expected. There are no known workarounds. |
|
* For rendering, be sure to use DRM/KMS rather than X11. |
|
\ No newline at end of file |
|
\ No newline at end of file |
|
|