Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AArch64 projects: add 32-bit userspace support #2087

Merged
merged 1 commit into from Oct 12, 2017

Conversation

Ray-future
Copy link
Contributor

OK here I go trying to upstream this hacky monster.
I'm introducing a possibility to build aarch64 projects with 32bit userland.
All kernel packages are build using a static aarch64 linaro toolchain. Me and @kszaq are using "it" for almost a year now in our community builds. @kszaq, @Kwiboo and me have been improving the code and we upstreamed all but one missing compat ioctl patches to: https://github.com/LibreELEC/linux-amlogic

To make DVB work with 32bit userspace we need one additional patch and I've already created a PR for that:
LibreELEC/linux-amlogic#61

I've tested a clean Odroid_C2.arm build with NF and DAZN.

Odroid_C2|WeTek_Hub|WeTek_Play_2)
make platform=aarch64
WeTek_Play|WeTek_Core|Odroid_C2|WeTek_Hub|WeTek_Play_2)
if [ $TARGET_ARCH = 'aarch64' ];then
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[ "$TARGET_ARCH" = "aarch64" ] for consistency?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ahhh I see. Thanks I'm gonna fix it.

@@ -29,8 +29,12 @@ case $MESON_FAMILY in
PKG_SHA256="21a8376668c84bf1b9e64a917fcfa1cf74689035fed8e4630833c9cde28d40c1"
;;
gxbb)
PKG_VERSION="gxbb-r5p1-01rel0"
;;
if [ "$TARGET_ARCH" = "arm" ];then
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Extra space after "arm" can be removed.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks. I will fix that.

Copy link
Member

@lrusak lrusak left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me. The sooner this gets in the better.

@@ -21,6 +21,14 @@
TARGET_CPU="cortex-a53"
TARGET_CPU_FLAGS="+crc+fp+simd"
;;
arm)
TARGET_KERNEL_ARCH="arm64"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it's a nitpick, but indentation is off here :)

@Ray-future
Copy link
Contributor Author

Thanks @lrusak.
@chewitt Should be fixed now. Stupid "tab/spaces" mixup. I don't see it cause my vim fixes it for me visually.

Copy link
Member

@Kwiboo Kwiboo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice work!, just a few nit-picks to make it perfekt

Odroid_C2|WeTek_Hub|WeTek_Play_2)
make platform=aarch64
WeTek_Play|WeTek_Core|Odroid_C2|WeTek_Hub|WeTek_Play_2)
if [ $TARGET_ARCH = "aarch64" ];then
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nitpick: quote around $TARGET_ARCH to be consistent
nitpick: add space before then to be consistent (same goes for the rest of packages)

@@ -29,8 +29,12 @@ case $MESON_FAMILY in
PKG_SHA256="21a8376668c84bf1b9e64a917fcfa1cf74689035fed8e4630833c9cde28d40c1"
;;
gxbb)
PKG_VERSION="gxbb-r5p1-01rel0"
;;
if [ "$TARGET_ARCH" = "arm" ];then
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nitpick: double space in if [
nitpick: add space before then to be consistent

scripts/image Outdated
@@ -222,6 +222,9 @@ find $INSTALL/usr/lib/modules/$MODVER/ -name *.ko | \
$TOOLCHAIN/bin/depmod -b $INSTALL/usr -a -e -F "$BUILD/linux-$(kernel_version)/System.map" $MODVER

# strip kernel modules
if [ "$TARGET_KERNEL_ARCH" = "arm64" -a "$TARGET_ARCH" = "arm" ]; then
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nitpick: double space in " ];

@Ray-future
Copy link
Contributor Author

@Kwiboo Thanks. I fixed those and a couple more of those missing spaces before "then".

@chewitt chewitt merged commit 09d09d2 into LibreELEC:master Oct 12, 2017
@chewitt
Copy link
Member

chewitt commented Oct 12, 2017

Thanks @Raybuntu @kszaq @Kwiboo for all the testing and review 🥇

@Ray-future Ray-future deleted the 6432 branch October 12, 2017 17:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants