From: Kilian Zinnecker via buildroot <buildroot@buildroot.org>
To: Thomas Petazzoni via buildroot <buildroot@buildroot.org>
Cc: Kilian Zinnecker <kilian.zinnecker@mail.de>,
Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Subject: Re: [Buildroot] Interested in board support for BeagleV-Ahead
Date: Thu, 10 Aug 2023 17:25:00 +0200 [thread overview]
Message-ID: <2160318.Mh6RI2rZIc@kilian-aisec> (raw)
In-Reply-To: <13322713.uLZWGnKmhe@kilian-aisec>
Hello Thomas,
[--SNIP--]
> I still have some other problem with the build at the moment, where I have
> to look into (might be my very own fault - the errors about unknown vector
> instructions are back for some reason). But as soon as I have questions or
> news, I will send an update to the ML.
It actually was not my own fault regarding the errors about unknown vector
instructions. It seems that the core of the TH1520 SoC - the Xuantie C910 -
implements a now obsolete version of the RiscV vector extension, namely
version 0.7.1 (see [1]). However, only past gcc version seem to have supported
this vector extension version. Recent gcc versions seem to not support it.
Regarding the Xuantie C906 core, I found out that there now exists some -
mcpu=thead-c906 option (see [2]). However, I was not able to successfully
compile a dummy example with one of the v0.7.1 vector instructions myself,
using that option.
Then I also found a RiscV toolchain, which has some "rvv-0.7.1" branch
(https://github.com/brucehoult/riscv-gnu-toolchain). However, I was not able
to build it (may be my own fault). But anyway the branch seems very old and I
am afraid, if I try to use it, I may run into other issues.
So I decided to accept that I currently have a gcc which does not support the
old 0.7.1 version of the vector extension. Therefore, I disabled vector
extension support in the kernel config. This is part of my current
beaglev_ahead_defconfig:
BR2_GCC_VERSION_13_X=y
BR2_GLOBAL_PATCH_DIR="board/beaglev-ahead/patches"
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/beaglev-ahead/linux.fragment"
The linux.fragment file overwrites the vector extension settings:
CONFIG_VECTOR=n
CONFIG_VECTOR_0_7=n
Now, there was one more error in the custom kernel code: One function's
prototype and its implementation did not match, causing a -Werror=enum-int-
mismatch:
https://git.beagleboard.org/beaglev-ahead/beaglev-ahead-linux/-/blob/beaglev-v5.10.113-1.1.2/drivers/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_linux.h#L338
https://git.beagleboard.org/beaglev-ahead/beaglev-ahead-linux/-/blob/beaglev-v5.10.113-1.1.2/drivers/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c#L6144
I changed the prototype accordingly and put a patch for this in my board/
beaglev-ahead/patches/linux directory. After all this, it continued building
till the end.
Now I don't know, whether the compiled uboot, kernel and rootfs would
function. I would have to test this. But to do so, I guess I would have to
figure out how to assemble these parts into an image and how to flash it into
the eMMC of the board.
Best regards,
Kilian
[1] https://ftp.libre-soc.org/466100a052.pdf
[2] https://gcc.gnu.org/onlinedocs/gcc-13.2.0/gcc/RISC-V-Options.html
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
next prev parent reply other threads:[~2023-08-10 15:25 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-09 13:57 [Buildroot] Interested in board support for BeagleV-Ahead Kilian Zinnecker via buildroot
2023-08-09 17:38 ` Thomas Petazzoni via buildroot
2023-08-10 9:20 ` Kilian Zinnecker via buildroot
2023-08-10 11:02 ` Kilian Zinnecker via buildroot
2023-08-11 14:41 ` Thomas Petazzoni via buildroot
2023-08-11 21:30 ` Robert Nelson
2023-08-11 22:53 ` Robert Nelson
2023-08-12 9:51 ` Kilian Zinnecker via buildroot
2023-08-12 9:56 ` Thomas Petazzoni via buildroot
2023-08-18 17:18 ` Kilian Zinnecker via buildroot
2023-08-18 21:33 ` Robert Nelson
2023-08-18 21:35 ` Robert Nelson
2023-08-20 12:54 ` Kilian Zinnecker via buildroot
2023-08-21 21:43 ` Thomas Petazzoni via buildroot
2023-08-10 15:25 ` Kilian Zinnecker via buildroot [this message]
2023-08-11 14:48 ` Thomas Petazzoni via buildroot
2023-08-12 9:56 ` Kilian Zinnecker via buildroot
2023-08-12 10:19 ` Thomas Petazzoni via buildroot
2023-08-12 11:06 ` Kilian Zinnecker via buildroot
2023-08-11 14:40 ` Thomas Petazzoni via buildroot
2023-08-10 16:34 ` Robert Nelson
2023-08-10 17:03 ` Kilian Zinnecker via buildroot
2023-08-10 18:57 ` Robert Nelson
2023-08-10 19:05 ` Robert Nelson
2023-08-10 19:53 ` Kilian Zinnecker via buildroot
2023-08-10 20:45 ` Robert Nelson
2023-08-11 7:11 ` Kilian Zinnecker via buildroot
2023-08-10 20:38 ` Kilian Zinnecker via buildroot
2023-08-10 20:53 ` Robert Nelson
2023-08-11 7:07 ` Kilian Zinnecker via buildroot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=2160318.Mh6RI2rZIc@kilian-aisec \
--to=buildroot@buildroot.org \
--cc=kilian.zinnecker@mail.de \
--cc=thomas.petazzoni@bootlin.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.