Jump to content

BeagleV-Ahead and Armbian Support


Seth N_

Recommended Posts

Hello,

 

There is a new BeagleV-Ahead I would like to see have Armbian support. 

* T-Head TH1520 (quad-core Xuantie C910 processor) and etc...

 

I was trying to get support and I wanted to reach out. So, here I am. I am making a .csc file now which hopefully one day will be a full-blown .conf file w/ xxx_defconfig support.

 

Seth

 

P.S. Please let me know what steps I need to take to get support. 

Link to comment
Share on other sites

I cloned a repo. and am currently trying to build for this board build: GitHub - silver2row/armbian-userpatches-example-BeagleV-Ahead: reference implementation of having a unique device completely configured via userpatches. 

 

I will be uploading some other files soon to update people that are interested in the build around armbian and updated/upgraded kernels and u-boot variables. 

 

Seth

 

P.S. If you have any words edgewise, please do consider to chat a bit on this forum in this post. 

Link to comment
Share on other sites

On 7/26/2023 at 4:43 AM, Seth N_ said:

Has some interesting info. from my development desktop which does not allow me to parse a random Makefile w/in the build from a github repo.


Are you changing kernel version with a patch?

Link to comment
Share on other sites

Hello,

 

No sir. I am not using a patch. I was just pushing 6.5.x thinking I could. I have soon realized that Armbian carries specific kernels for current and edge, respectively. 

 

Seth

 

Oh!

 

P.S. Yes sir, I was using a kernels from my repo. clone of the upmost edge kernels. I was also trying to learn how to implement my clone of u-boot... My older scripts failed (as usual) but I found a good way to build w/out the current offerings.

 

I can dig them up but it is nothing too fancy. At first, I used a xuantie-ubuntu repo clone, tied everything into a Makefile, and failed miserably. Then, I tried bash scripts one by one until I just made an image.

 

Sir, also, I have not gained too much knowledge so far in furthering my experience in the field for now. I wanted to make a quick post to support their endeavors since I use their boards and have some, if any, knowledge on their docs. pages and just wanted to be a community person w/ their org. Anyway, I will reinvest time soon. 

 

If you need any additional info. or data, please let me know. 

Link to comment
Share on other sites

@Igor

 

Seth here. I made a .conf file in /userpatches/source/families/My.conf to handle the build around this bunch of source: https://github.com/silver2row/xuantie-ubuntu-armbian . So, and yes, that is a clone of another build I found online.

 

I will post the build soon and reply once I see anyone replying.

 

Seth

 

P.S. The build used to work but the git pull pulled in some new ideas and other source. So, I have to remake the build for Armbian in the My.conf file in /userpatches/source/families/. Also, it actually patches the kernel like you asked from beagleboard.org Linux kernel(s) w/ some updates and removals. 

Link to comment
Share on other sites

Okay @KREYREN,

 

I can test but I do not have the SiPeed. I do have a board w/ the TH1520 on it, though. But sure, we can try this idea. I will go to the pull request soon and return service.

 

Seth

 

P.S. I have been trying a repo. online for the BeagleV-Ahead recently but it keeps changing and I have been unable to keep up w/ changes so far. It seems that bash works w/in the builds for Armbian. So, I have been trying to build around bash scripts w/in:

 

1. /build/userpatches/source/families/My_File.conf 

Link to comment
Share on other sites

@Seth N_Oke give it a try, i submitted stuff to https://github.com/Kreyren/armbian-build-kreyren/tree/canIPetDatDawg

 

$ git clone -b canIPetDatDawg https://github.com/Kreyren/armbian-build-kreyren # Clone the repository
$ cd armbian-build # change directory to it

$ ./compile.sh build BOARD=beaglev-ahead BRANCH=edge BUILD_DESKTOP=no BUILD_MINIMAL=yes EXPERT=yes KERNEL_CONFIGURE=no RELEASE=sid # Make it do vroom vroom

You are expecting a build to go like this https://paste.next.armbian.com/oxamexecoj

and end up with:

--> (1036) INFO: Done building [ Armbian_23.08.0-trunk_Sipeed-licheepi-4a_sid_legacy_5.10.113_minimal.img ]
--> (1036) INFO: SHA256 calculating [ Armbian_23.08.0-trunk_Sipeed-licheepi-4a_sid_legacy_5.10.113_minimal.img ]
--> (1047) INFO: Moving artefacts using rsync to final destination [ Armbian_23.08.0-trunk_Sipeed-licheepi-4a_sid_legacy_5.10.113_minimal ]
--> (1047) COMMAND: rsync -av --no-owner --no-group --remove-source-files /armbian/.tmp/image-292da042-51dd-41a8-907e-bb00588f2ad1/Armbian_23.08.0-trunk_Sipeed-licheepi-4a_sid_legacy_5.10.113_minimal.img /armbian/.tmp/image-292da042-51dd-41a8-907e-bb00588f2ad1/Armbian_23.08.0-trunk_Sipeed-licheepi-4a_sid_legacy_5.10.113_minimal.img.sha /armbian/.tmp/image-292da042-51dd-41a8-907e-bb00588f2ad1/Armbian_23.08.0-trunk_Sipeed-licheepi-4a_sid_legacy_5.10.113_minimal.img.txt /armbian/output/images
   sending incremental file list
   Armbian_23.08.0-trunk_Sipeed-licheepi-4a_sid_legacy_5.10.113_minimal.img
   Armbian_23.08.0-trunk_Sipeed-licheepi-4a_sid_legacy_5.10.113_minimal.img.sha
   Armbian_23.08.0-trunk_Sipeed-licheepi-4a_sid_legacy_5.10.113_minimal.img.txt
   
   sent 1,531,314,901 bytes  received 145 bytes  48,613,176.06 bytes/sec
   total size is 1,530,940,868  speedup is 1.00
--> (1078) COMMAND: rm -rfv --one-file-system /armbian/.tmp/image-292da042-51dd-41a8-907e-bb00588f2ad1
   removed directory '/armbian/.tmp/image-292da042-51dd-41a8-907e-bb00588f2ad1'
--> (1078) INFO: Unmounting recursively [ SDCARD rootfs finished - be patient ]
--> (1082) TARGET-REACHED: Done building image [ sipeed-licheepi-4a ]


Note the `Armbian_23.08.0-trunk_Sipeed-licheepi-4a_sid_legacy_5.10.113_minimal.img` (or what it prints on your end)

$ mkdir kreysmessings # Make a new directory

$ cp armbian-build/output/images/Armbian_23.08.0-trunk_Sipeed-licheepi-4a_sid_legacy_5.10.113_minimal.img kreysmessins # Copy that to a new directory

# losetup -P -f Armbian_23.08.0-trunk_Sipeed-licheepi-4a_sid_legacy_5.10.113_minimal.img # Mount the armbian image

# losetup -a # Outputs where it got mounted e.g. /dev/loop0

# sudo dd if=/dev/loop0p1 of=bootfs.ext4 status=progress # Get the boot filesystem

# sudo dd if=/dev/loop0p2 of=rootfs.ext4 status=progress # Get the root filesystem

Somewhere at the bottom of the build log you will have:
 

--> (1035) INFO: Sourcing u-boot install functions [ /armbian/output/debs/linux-u-boot-sipeed-licheepi-4a-legacy_23.08.0-trunk_riscv64__2020.01-Sd82d-Pd2e2-Hfaa0-V5349-Bb0e7-R448a.deb ]

$ cp armbian-build/output/debs/linux-u-boot-sipeed-licheepi-4a-legacy_23.08.0-trunk_riscv64__2020.01-Sd82d-Pd2e2-Hfaa0-V5349-Bb0e7-R448a.deb . # Copy the debian package of u-boot in directory

$ ar x linux-u-boot-sipeed-licheepi-4a-legacy_23.08.0-trunk_riscv64__2020.01-Sd82d-Pd2e2-Hfaa0-V5349-Bb0e7-R448a.deb # Extract it

$ tar xpf data.tar.something # Extract the data dir

It will have something like `usr/lib/.../u-boot-with-spl.bin` keep that and remove everything else from what the deb archive spit out


Get the device in fastboot mode on licheepi there is a BOOT button that you are supposed to press and then insert USB-C cable while the device is turned off, verify in `dmesg` and `fastboot devices` that the device is seen by the system


# fastboot flash ram u-boot-with-spl.bin # Flash the bootloader in temporary filesystem

# fastboot reboot # Reboot into it

# fastboot flash uboot u-boot-with-spl.bin # Flash the uboot to the board

Now you have two options:

a) Use the sdcard to test the thing (recommended)

# dd if=Armbian_23.08.0-trunk_Sipeed-licheepi-4a_sid_legacy_5.10.113_minimal.img of=/dev/sdX conv=sync status=progress # Put armbian on the sdcard

Put the sdcard in the thing and you should get armbian

b) On eMMC (pain, misery and suffering for testing)

# fastboot flash boot bootfs.ext4 # Flash boot to the board

# fastboot flash root rootfs.ext4 # Flash root to the board

Now try to boot the thing and you should be greeted with armbian armbianing stuff if no then tell meh

Link to comment
Share on other sites

Also you do this on your own danger and stuff, if you break up your board and or system, house, planet it's not my fault!~

Monitor the temperature of the chip, my licheepi gets uncomfortably hot atm during fastbooting so have a blower fan ready

Refer to https://github.com/armbian/build/pull/5689 for details, once in system you might need to invoke:

echo 1 > /sys/class/pwm/pwmchip0/export
echo 1000000 > /sys/class/pwm/pwmchip0/pwm1/period
echo 1000000 > /sys/class/pwm/pwmchip0/pwm1/duty_cycle
echo 1 > /sys/class/pwm/pwmchip0/pwm1/enable

To get the fan to spin

Link to comment
Share on other sites

Hello,

 

Okay. I will get on my Debian Bookworm Distro soon and test. Yes, this is at my own precaution. So, not a big deal on your side. I take full responsibility. 

 

Seth

 

P.S. I have gone over the pull request already. I will test soon. Thank you. I will update in the next week or so. Who knows? I may update you sooner. 

Link to comment
Share on other sites

Okay @KREYREN,

 

I have been unable to test. I tried. It seems I am getting errors quickly.

 

[🌱] -----------------Relaunching in Docker after 2s------------------ [ here comes the 🐳 ]
[🐳|🌿] Applying cmdline param [ 'PREFER_DOCKER': '(unset)' --> 'no' early ]
[🐳|🌿] Applying cmdline param [ 'BUILD_MINIMAL': '(unset)' --> 'yes' early ]
[🐳|🌿] Applying cmdline param [ 'BUILD_DESKTOP': '(unset)' --> 'no' early ]
[🐳|🌿] Applying cmdline param [ 'ARMBIAN_BUILD_UUID': '(unset)' --> '95690538-bdaa-4c73-948e-37ea0197d926' early ]
[🐳|🌿] Applying cmdline param [ 'EXPERT': '(unset)' --> 'yes' early ]
[🐳|🌱] Skip     cmdline param [ 'ARMBIAN_RELAUNCHED': already set to 'yes' early ]
[🐳|🌿] Applying cmdline param [ 'BRANCH': '(unset)' --> 'edge' early ]
[🐳|🌿] Applying cmdline param [ 'BOARD': '(unset)' --> 'beaglev-ahead' early ]
[🐳|🌿] Applying cmdline param [ 'SKIP_LOG_ARCHIVE': '(unset)' --> 'yes' early ]
[🐳|🌿] Applying cmdline param [ 'SET_OWNER_TO_UID': '(unset)' --> '1000' early ]
[🐳|🌿] Applying cmdline param [ 'RELEASE': '(unset)' --> 'sid' early ]
[🐳|🌿] Applying cmdline param [ 'KERNEL_CONFIGURE': '(unset)' --> 'no' early ]
[🐳|🌱] Starting single build process [ beaglev-ahead ]
[🐳|🌱] Checking [ basic host setup ]
[🐳|🌱] Build host OS release [ jammy ]
[🐳|🌱] Build host architecture [ amd64 ]
[🐳|💥] error! [ No such BOARD 'beaglev-ahead'; no board config file found.  ]
[🐳|💥] Exiting with error 43 [ at /armbian/lib/functions/logging/traps.sh:1
                exit_with_error() --> lib/functions/logging/traps.sh:1
       config_source_board_file() --> lib/functions/main/config-prepare.sh:127
                do_with_logging() --> lib/functions/logging/section-logging.sh:81
    do_with_conditional_logging() --> lib/functions/logging/section-logging.sh:111
    prep_conf_main_build_single() --> lib/functions/main/config-prepare.sh:23
         cli_standard_build_run() --> lib/functions/cli/cli-build.sh:22
        armbian_cli_run_command() --> lib/functions/cli/utils-cli.sh:136
                 cli_entrypoint() --> lib/functions/cli/entrypoint.sh:176
                           main() --> compile.sh:50
 ]
[🐳|💥] Cleaning up [ please wait for cleanups to finish ]
[🐳|🌿] ANSI log file built; inspect it by running: [ less -RS output/logs/log-build-95690538-bdaa-4c73-948e-37ea0197d926.log.ans ]
[🐳|🌿] Share log manually (or SHARE_LOG=yes): [ curl --data-binary @output/logs/log-build-95690538-bdaa-4c73-948e-37ea0197d926.log.ans https://paste.next.armbian.com/log ]
[💥] -------------Docker run failed after 3s-------------------------- [ 🐳 failed ]
[🌱] Cleaning up [ please wait for cleanups to finish ]

 

 

I will keep trying.

 

Seth

 

P.S. I found my error. Testing is underway.

Edited by Seth N_
error found
Link to comment
Share on other sites

21 minutes ago, Seth N_ said:

Okay. I will get on my Debian Bookworm Distro soon and test. Yes, this is at my own precaution. So, not a big deal on your side. I take full responsibility. 

 


Bookworm won't work, debian says that it will never support riscv64 and their process of making trixie support it didn't even start yet so sid is the only sane option

 

 

5 minutes ago, Seth N_ said:

P.S. I found my error. Testing is underway.


yep seems like you are running that on a wrong branch it doesn't look like the changes proposed

Link to comment
Share on other sites

'/armbian/cache/sources/linux-kernel-worktree/6.5__thead__riscv64/.config' -> '/armbian/.tmp/work-2074307d-fc24-46bf-858e-4419a1d10628/deb-k-linux-headers-edge-thead-reOFS/usr/src/linux-headers-6.5.0-rc1-edge-thead/.config'
find: ‘Module.symvers’: No such file or directory

 

That is the error w/ me updating to the branch you have for beaglev-ahead.csc listed after using:

 

git checkout canIPetDatDawg

 

Link to comment
Share on other sites

5 hours ago, Seth N_ said:

can build for beaglev.csc but not for beaglev-ahead.csc for some reason.

Oh didn't notice that someone already defined that :D ... 9 months ago even!

> BOOT_FDT_FILE="starfive/jh7100-beaglev-starlight-a1.dtb"

Is interesting 

 

5 hours ago, Seth N_ said:

That is the error w/ me updating to the branch you have for beaglev-ahead.csc listed after using:

 


I get that error too when i try to checkout on an armbian branch, you seem to be using using wrong repository :p

Clone the repository in a new directory with:

$ git clone -b canIPetDatDawg https://github.com/Kreyren/armbian-build-kreyren # Clone the repository

Notice the https://github.com/Kreyren/armbian-build-kreyren !

As the changes are in my fork, instead of in official armbian repo

Link to comment
Share on other sites

Oh the `beagle.csc` is for the old version of BeagleV that had the jh7100 chip, afaik they got mad at starfive for trying to restrict what they can release as they are an OSHW developer (OLIMEX had the same issue, hug you starfive!) and went with TH1520 instead and are calling it BeagleV-Ahead.. So `beagle.csc` is different chip and the config is not compatible with the board

Edited by KREYREN
Link to comment
Share on other sites

[🐳|🔨]   fatal: couldn't find remote ref th1520-v1.3.1
[🐳|🚸] improved_git try 3 failed, retrying in 10 seconds [ git fetch --recurse-submodules=no --no-tags https://github.com/riscv-software-src/opensbi th1520-v1.3.1 ]

 

That is the error so far.

 

I will look through the files now.

 

Seth

 

P.S. Also...see below:

 

[🐳|🔨]   dpkg-deb: building package 'linux-dtb-edge-thead' in '/armbian/output/packages-hashed/global/linux-dtb-edge-thead_6.5-rc1-Sa3ce-D85a2-P0000-Caf2fHfe66-HK01ba-Vc222-Bc698-R448a_riscv64.deb'.
[🐳|🌱] Packaging linux-headers [ thead linux-thead-edge ]
[🐳|🔨]   '/armbian/.tmp/work-2b6f854c-1cc8-4ecd-9d31-fad769d55101/deb-k-linux-headers-edge-thead-AtuSw/lib/modules/6.5.0-rc1-edge-thead/build' -> '/usr/src/linux-headers-6.5.0-rc1-edge-thead'
[🐳|🔨]   '/armbian/cache/sources/linux-kernel-worktree/6.5__thead__riscv64/.config' -> '/armbian/.tmp/work-2b6f854c-1cc8-4ecd-9d31-fad769d55101/deb-k-linux-headers-edge-thead-AtuSw/usr/src/linux-headers-6.5.0-rc1-edge-thead/.config'
find: ‘Module.symvers’: No such file or directory
[🐳|💥] Error  1 occurred in SUBSHELL [ SUBSHELL at /armbian/lib/functions/compilation/kernel-debs.sh:402 ]
[🐳|💥] Error 1 occurred in main shell [ at /armbian/lib/functions/compilation/kernel-debs.sh:413

 

Edited by Seth N_
more data
Link to comment
Share on other sites

image.thumb.png.88fb15070e784ee63854e917a22330f0.png

 

 

10 hours ago, Seth N_ said:

Sure...I will. I am going to test your latest and get back to you. Once it passes, okay. If it fails, okay. I will use a paste service and link for the output.

 

The framework provides way to share the output that makes it use the colors and stuff, so prefer to use that `curl --data-binary @output..` thing

Link to comment
Share on other sites

@KREYREN

 

Seth here. I changed names and email addresses. Anyway, I fell off and I am going to retry.

 

Seth

 

P.S. I am way underdeveloped to handle it right now, e.g. still building to bring upon good times on my end. Anyway, I will update you shortly in the next few weeks or so.

Edited by For Ward
Link to comment
Share on other sites

```

[🐳|🔨]
[🐳|🔨]   The following packages have unmet dependencies:
[🐳|🔨]    mtd-utils : Depends: libssl3 (>= 3.0.0) but it is not installable
[🐳|🔨]   E: Unable to correct problems, you have held broken packages.

```

 

This seems to be an issue of mine so far... I can build up to this point and it errors out?

 

Seth

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines