I got a few questions at the Linux Plumbers Conference about various BeagleV Ahead development resources so I thought it would be good type it in a forum post:
Official documentation
https://docs.beagleboard.org/latest/boards/beaglev/ahead/
Git repositories
All the repositories for hardware and software are under:
T-Head vendor kernel
T-Head only officially supports v5.10 (see below for community upstreaming efforts):
We use their kernel for our Yocto and Ubuntu images in order to have full hardware support.
T-Head Yocto-based SDK
Repo for building xuantie-yocto which is T-Head’s Yocto-based SDK:
Note: T-Head uses the term Xuantie as a “codename” for their RISC-V cores like the C910 in the BeagleV-Ahead’s TH1520 SoC. Thus the T-Head support for the C910 core and TH1520 SoC will often use the term ‘xuantie’. For those interested, the codename Xuantie refers to a ”heavy sword made from dark iron”.
Ubuntu
@RobertCNelson created the xuantie-ubuntu repo for building Ubuntu images using the toolchain and kernel from the T-Head SDK:
Images
Yocto image
BeagleV-Ahead Yocto 2023-06-10
Ubuntu image
BeagleV-Ahead Ubuntu 2023-07-05
CI builds
We also have CI builds of both Yocto and Ubuntu for users that want the latest (untested) images:
- Yocto: Artifacts · BeagleV-Ahead / xuantie-yocto · GitLab
- ubuntu: Artifacts · BeagleV-Ahead / xuantie-ubuntu · GitLab
Linux kernel mainline upstreaming
My mmc patch series has been applied by Ulf for 6.8:
This allows the BeagleV-Ahead to boot from the eMMC.
Jisheng Zheng is a very active upstream Linux developer that has been working a lot on the TH1520. Jisheng has patches in review for Ethernet, USB, PWM, and few more
I recently agreed with Jisheng to take on the clock driver because the previous person working on it stopped responding.
Mainline branch
If you want to see the various th1520 patches on top of mainline, then a developer who uses the nicks Revy and Rabenda keeps a branch here:
Communications
IRC
- There is a beaglev channel on libera.chat IRC but it is not very active. My nick is drewfustini. I use irccloud so I am always connected. I will eventually see any mentions and respond.
Discord
- We do have an active beaglev-ahead channel on the BeagleBoard.org Discord chat server
Forum
- BeagleV category on our Discourse-based forum (though I guess you already know that )
Hardware oddities
USB cable for flashing images
- One thing you may notice is that the board has a superspeed USB 3.0 micro B connector. If you don’t have a USB 3.0 superspeed micro B cable (like from an old USB 3.0 hard drive), then you can still use a normal USB 2.0 micro B cable.
- I found that USB 2.0 is still fast enough for me when flashing the eMMC and it did not feel painful. The slimmer USB 2.0 cable is also easier for my desk setup than the thicker and harder to wrangle USB 3.0 cable.
- You probably only need USB 3.0 superspeed for flashing if you are constantly flashing large images like Ubuntu for testing (like our wonderful @RobertCNelson does).
USB-to-UART converters for console
- The voltage translation circuitry for the console UART has some issues. This results in not all USB to UART adapters working. I successfully use an inexpensive CP2102-based adapter that works.
- If your converter does not work, then one idea from @royfranz is to try to shorten the length of the cabling. Of course, this would only work for USB-to-UART breakout boards where the user has to provide the wiring and not the molded USB to UART cables where the length is fixed.