Compare commits
1
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e480c4291b |
No files matched your search
@@ -0,0 +1,32 @@
|
||||
# Reference: <https://postmarketos.org/devicepkg>
|
||||
pkgname=device-xiaomi-mocha
|
||||
pkgdesc="Xiaomi Mi Pad"
|
||||
pkgver=0.1
|
||||
pkgrel=1
|
||||
url="https://postmarketos.org"
|
||||
license="MIT"
|
||||
arch="armv7"
|
||||
options="!check !archcheck"
|
||||
depends="
|
||||
linux-xiaomi-mocha
|
||||
mkbootimg
|
||||
postmarketos-base
|
||||
"
|
||||
makedepends="devicepkg-dev"
|
||||
source="
|
||||
deviceinfo
|
||||
modules-initfs
|
||||
"
|
||||
|
||||
build() {
|
||||
devicepkg_build $startdir $pkgname
|
||||
}
|
||||
|
||||
package() {
|
||||
devicepkg_package $startdir $pkgname
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
4b5c7b7aec1c09314e249756e3a49a7cb80fd041f815c203718a5e8badc366011dc0f4c1729e1fb506b2a164c351b9b63f8eb53613d60c03de3221fe9df18a22 deviceinfo
|
||||
e70bae17df23dcaaaea0e2d3616556f04baa23f8ee1357785c0f539bf97282d8ddff53953e155b72689bb73beb38c2da3d08de2a61e866684edfa10a6593885d modules-initfs
|
||||
"
|
||||
@@ -0,0 +1,31 @@
|
||||
# Reference: <https://postmarketos.org/deviceinfo>
|
||||
# Please use double quotes only. You can source this file in shell
|
||||
# scripts.
|
||||
|
||||
deviceinfo_format_version="0"
|
||||
deviceinfo_name="Xiaomi Mi Pad"
|
||||
deviceinfo_manufacturer="Xiaomi"
|
||||
deviceinfo_codename="xiaomi-mocha"
|
||||
deviceinfo_year="2014"
|
||||
deviceinfo_dtb="tegra124-mocha"
|
||||
deviceinfo_arch="armv7"
|
||||
|
||||
# Device related
|
||||
deviceinfo_chassis="tablet"
|
||||
deviceinfo_keyboard="false"
|
||||
deviceinfo_external_storage="true"
|
||||
deviceinfo_screen_height="2048"
|
||||
deviceinfo_screen_width="1536"
|
||||
|
||||
# Bootloader related
|
||||
deviceinfo_flash_method="fastboot"
|
||||
deviceinfo_kernel_cmdline="androidboot.selinux=permissive"
|
||||
deviceinfo_generate_bootimg="true"
|
||||
deviceinfo_bootimg_qcdt="true"
|
||||
deviceinfo_bootimg_dtb_second="false"
|
||||
deviceinfo_flash_pagesize="2048"
|
||||
deviceinfo_flash_offset_base="0x10000000"
|
||||
deviceinfo_flash_offset_kernel="0x00008000"
|
||||
deviceinfo_flash_offset_ramdisk="0x01000000"
|
||||
deviceinfo_flash_offset_second="0x00f00000"
|
||||
deviceinfo_flash_offset_tags="0x00000100"
|
||||
@@ -0,0 +1,9 @@
|
||||
# Remove this file if unnecessary (CHANGEME!)
|
||||
# This file shall contain a list of modules to be included in the initramfs,
|
||||
# so that they are available in early boot stages. In general, it should
|
||||
# include modules to support unlocking FDE (touchscreen, panel, etc),
|
||||
# USB networking, and telnet in the debug-shell.
|
||||
# The format is one module name per line. Lines starting with the character
|
||||
# '#', and empty lines are ignored. If there are multiple kernel variants
|
||||
# with different initramfs module requirements, one modules-initfs.$variant
|
||||
# file should be created for each of them.
|
||||
@@ -0,0 +1,74 @@
|
||||
# Reference: <https://postmarketos.org/vendorkernel>
|
||||
# Kernel config based on: arch/arm/configs/(CHANGEME!)
|
||||
|
||||
pkgname=linux-xiaomi-mocha
|
||||
pkgver=6.8.0_rc6
|
||||
pkgrel=1
|
||||
pkgdesc="Xiaomi Mi Pad Mainline kernel fork"
|
||||
arch="armv7"
|
||||
_carch="arm"
|
||||
_flavor="xiaomi-mocha"
|
||||
url="https://kernel.org"
|
||||
license="GPL-2.0-only"
|
||||
options="!strip !check !tracedeps pmb:cross-native"
|
||||
makedepends="bash bc bison devicepkg-dev flex openssl-dev perl gmp-dev mpc1-dev mpfr-dev findutils postmarketos-installkernel"
|
||||
|
||||
# Source
|
||||
_repository="linux-6"
|
||||
_commit="42f0773b5b230b5b1074d0c98e523972c11e099b"
|
||||
_config="config-$_flavor.$arch"
|
||||
source="
|
||||
$pkgname-$_commit.tar.gz::https://github.com/MiPadLinux/$_repository/archive/$_commit.tar.gz
|
||||
$_config
|
||||
"
|
||||
builddir="$srcdir/$_repository-$_commit"
|
||||
_outdir="."
|
||||
|
||||
prepare() {
|
||||
default_prepare
|
||||
cp "$srcdir/config-$_flavor.$arch" .config
|
||||
}
|
||||
|
||||
build() {
|
||||
unset LDFLAGS
|
||||
make ARCH="$_carch" CC="${CC:-gcc}" \
|
||||
KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-postmarketOS"
|
||||
|
||||
# Master DTB (deviceinfo_bootimg_qcdt)
|
||||
# dtbTool -o "$_outdir/arch/$_carch/boot"/dt.img \
|
||||
# "$_outdir/arch/$_carch/boot/"
|
||||
# Ignore dtbTool use install instead (deal with strange package)
|
||||
install -Dm644 "$_outdir/arch/$_carch/boot/dts/nvidia"/tegra124-mocha.dtb \
|
||||
"$_outdir/arch/$_carch/boot"/dt.img
|
||||
}
|
||||
|
||||
package() {
|
||||
mkdir -p "$pkgdir"/boot
|
||||
make zinstall modules_install dtbs_install \
|
||||
ARCH="$_carch" \
|
||||
INSTALL_MOD_STRIP=1 \
|
||||
INSTALL_PATH="$pkgdir"/boot \
|
||||
INSTALL_MOD_PATH="$pkgdir" \
|
||||
INSTALL_DTBS_PATH="$pkgdir/usr/share/dtb"
|
||||
|
||||
install -D "$builddir"/include/config/kernel.release \
|
||||
"$pkgdir/usr/share/kernel/$_flavor/kernel.release"
|
||||
# Master DTB
|
||||
install -Dm644 "$builddir/arch/arm/boot/dt.img" \
|
||||
"$pkgdir/boot/dt.img"
|
||||
|
||||
}
|
||||
|
||||
#package() {
|
||||
# downstreamkernel_package "$builddir" "$pkgdir" "$_carch" "$_flavor"
|
||||
#
|
||||
# # Master DTB
|
||||
# install -Dm644 "$builddir/arch/arm/boot/dt.img" \
|
||||
# "$pkgdir/boot/dt.img"
|
||||
#}
|
||||
|
||||
|
||||
sha512sums="
|
||||
95b43f8ac78647306e86dfa81affab5ef15f6367244f9b0fc53a3884db5be2a700ef54e816d38b698666bd2080225ea02b911410dd43f1c47aa826dc4079bc55 linux-xiaomi-mocha-42f0773b5b230b5b1074d0c98e523972c11e099b.tar.gz
|
||||
622509369503a8bf79e320c4865906eb0c9bc4fe94f72d85aa8dbfe541e5045908c2275ffb6b0b7ca9386947494ebcf81c06c76806abe42756fb241488d62dfe config-xiaomi-mocha.armv7
|
||||
"
|
||||
File diff suppressed because it is too large.
Load diff
@@ -0,0 +1,61 @@
|
||||
From 84f8a24ade96a8c1499823b160a0591199cf9d12 Mon Sep 17 00:00:00 2001
|
||||
From: Laura Abbott <labbott@redhat.com>
|
||||
Date: Fri, 8 Jul 2016 12:18:50 -0700
|
||||
Subject: [PATCH] ftrace/recordmcount: Work around for addition of metag magic
|
||||
but not relocations
|
||||
|
||||
commit b2e1c26f0b62531636509fbcb6dab65617ed8331 upstream.
|
||||
|
||||
glibc recently did a sync up (94e73c95d9b5 "elf.h: Sync with the gabi
|
||||
webpage") that added a #define for EM_METAG but did not add relocations
|
||||
|
||||
This triggers build errors:
|
||||
|
||||
scripts/recordmcount.c: In function 'do_file':
|
||||
scripts/recordmcount.c:466:28: error: 'R_METAG_ADDR32' undeclared (first use in this function)
|
||||
case EM_METAG: reltype = R_METAG_ADDR32;
|
||||
^~~~~~~~~~~~~~
|
||||
scripts/recordmcount.c:466:28: note: each undeclared identifier is reported only once for each function it appears in
|
||||
scripts/recordmcount.c:468:20: error: 'R_METAG_NONE' undeclared (first use in this function)
|
||||
rel_type_nop = R_METAG_NONE;
|
||||
^~~~~~~~~~~~
|
||||
|
||||
Work around this change with some more #ifdefery for the relocations.
|
||||
|
||||
Fedora Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1354034
|
||||
|
||||
Link: http://lkml.kernel.org/r/1468005530-14757-1-git-send-email-labbott@redhat.com
|
||||
|
||||
Cc: James Hogan <james.hogan@imgtec.com>
|
||||
Fixes: 00512bdd4573 ("metag: ftrace support")
|
||||
Reported-by: Ross Burton <ross.burton@intel.com>
|
||||
Signed-off-by: Laura Abbott <labbott@redhat.com>
|
||||
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
|
||||
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
---
|
||||
scripts/recordmcount.c | 9 ++++++++-
|
||||
1 file changed, 8 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/scripts/recordmcount.c b/scripts/recordmcount.c
|
||||
index e167592793a7..42396a74405d 100644
|
||||
--- a/scripts/recordmcount.c
|
||||
+++ b/scripts/recordmcount.c
|
||||
@@ -33,10 +33,17 @@
|
||||
#include <string.h>
|
||||
#include <unistd.h>
|
||||
|
||||
+/*
|
||||
+ * glibc synced up and added the metag number but didn't add the relocations.
|
||||
+ * Work around this in a crude manner for now.
|
||||
+ */
|
||||
#ifndef EM_METAG
|
||||
-/* Remove this when these make it to the standard system elf.h. */
|
||||
#define EM_METAG 174
|
||||
+#endif
|
||||
+#ifndef R_METAG_ADDR32
|
||||
#define R_METAG_ADDR32 2
|
||||
+#endif
|
||||
+#ifndef R_METAG_NONE
|
||||
#define R_METAG_NONE 3
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
Based on https://lkml.org/lkml/2020/4/1/1206. In original patch, YYLOC declaration was removed.
|
||||
However, using original patch, which removes yylloc declaration on 3.18.14 kernel version results in 'yylloc not declared' error.
|
||||
See part of the original description below:
|
||||
|
||||
gcc 10 will default to -fno-common, which causes this error at link
|
||||
time:
|
||||
|
||||
(.text+0x0): multiple definition of `yylloc'; dtc-lexer.lex.o (symbol from plugin):(.text+0x0): first defined here
|
||||
|
||||
This is because both dtc-lexer as well as dtc-parser define the same
|
||||
global symbol yyloc. Before with -fcommon those were merged into one
|
||||
defintion. The proper solution would be to to mark this as "extern",
|
||||
|
||||
diff --git a/scripts/dtc/dtc-lexer.l b/scripts/dtc/dtc-lexer.l
|
||||
index 3b41bfca636..9b9c29e6f31 100644
|
||||
--- a/scripts/dtc/dtc-lexer.l
|
||||
+++ b/scripts/dtc/dtc-lexer.l
|
||||
@@ -39,7 +39,7 @@ LINECOMMENT "//".*\n
|
||||
#include "srcpos.h"
|
||||
#include "dtc-parser.tab.h"
|
||||
|
||||
-YYLTYPE yylloc;
|
||||
+extern YYLTYPE yylloc;
|
||||
|
||||
/* CAUTION: this will stop working if we ever use yyless() or yyunput() */
|
||||
#define YY_USER_ACTION \
|
||||
diff --git a/scripts/dtc/dtc-lexer.lex.c_shipped b/scripts/dtc/dtc-lexer.lex.c_shipped
|
||||
index 2d30f41778b..d0eb405cb81 100644
|
||||
--- a/scripts/dtc/dtc-lexer.lex.c_shipped
|
||||
+++ b/scripts/dtc/dtc-lexer.lex.c_shipped
|
||||
@@ -637,7 +637,7 @@ char *yytext;
|
||||
#include "srcpos.h"
|
||||
#include "dtc-parser.tab.h"
|
||||
|
||||
-YYLTYPE yylloc;
|
||||
+extern YYLTYPE yylloc;
|
||||
|
||||
/* CAUTION: this will stop working if we ever use yyless() or yyunput() */
|
||||
#define YY_USER_ACTION \
|
||||
@@ -0,0 +1,90 @@
|
||||
From a7bfe0a2832e66f3d732e4210b5d53c81cc7a85f Mon Sep 17 00:00:00 2001
|
||||
From: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
Date: Thu, 27 Sep 2018 19:16:56 -0400
|
||||
Subject: [PATCH] give up on gcc ilog2() constant optimizations
|
||||
|
||||
commit 474c90156c8dcc2fa815e6716cc9394d7930cb9c upstream.
|
||||
|
||||
gcc-7 has an "optimization" pass that completely screws up, and
|
||||
generates the code expansion for the (impossible) case of calling
|
||||
ilog2() with a zero constant, even when the code gcc compiles does not
|
||||
actually have a zero constant.
|
||||
|
||||
And we try to generate a compile-time error for anybody doing ilog2() on
|
||||
a constant where that doesn't make sense (be it zero or negative). So
|
||||
now gcc7 will fail the build due to our sanity checking, because it
|
||||
created that constant-zero case that didn't actually exist in the source
|
||||
code.
|
||||
|
||||
There's a whole long discussion on the kernel mailing about how to work
|
||||
around this gcc bug. The gcc people themselevs have discussed their
|
||||
"feature" in
|
||||
|
||||
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=72785
|
||||
|
||||
but it's all water under the bridge, because while it looked at one
|
||||
point like it would be solved by the time gcc7 was released, that was
|
||||
not to be.
|
||||
|
||||
So now we have to deal with this compiler braindamage.
|
||||
|
||||
And the only simple approach seems to be to just delete the code that
|
||||
tries to warn about bad uses of ilog2().
|
||||
|
||||
So now "ilog2()" will just return 0 not just for the value 1, but for
|
||||
any non-positive value too.
|
||||
|
||||
It's not like I can recall anybody having ever actually tried to use
|
||||
this function on any invalid value, but maybe the sanity check just
|
||||
meant that such code never made it out in public.
|
||||
|
||||
[js] no tools/include/linux/log2.h copy of that yet
|
||||
|
||||
Reported-by: Laura Abbott <labbott@redhat.com>
|
||||
Cc: John Stultz <john.stultz@linaro.org>,
|
||||
Cc: Thomas Gleixner <tglx@linutronix.de>
|
||||
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
|
||||
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
|
||||
---
|
||||
include/linux/log2.h | 13 ++-----------
|
||||
1 file changed, 2 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/include/linux/log2.h b/include/linux/log2.h
|
||||
index fd7ff3d91..f38fae23b 100644
|
||||
--- a/include/linux/log2.h
|
||||
+++ b/include/linux/log2.h
|
||||
@@ -15,12 +15,6 @@
|
||||
#include <linux/types.h>
|
||||
#include <linux/bitops.h>
|
||||
|
||||
-/*
|
||||
- * deal with unrepresentable constant logarithms
|
||||
- */
|
||||
-extern __attribute__((const, noreturn))
|
||||
-int ____ilog2_NaN(void);
|
||||
-
|
||||
/*
|
||||
* non-constant log of base 2 calculators
|
||||
* - the arch may override these in asm/bitops.h if they can be implemented
|
||||
@@ -85,7 +79,7 @@ unsigned long __rounddown_pow_of_two(unsigned long n)
|
||||
#define ilog2(n) \
|
||||
( \
|
||||
__builtin_constant_p(n) ? ( \
|
||||
- (n) < 1 ? ____ilog2_NaN() : \
|
||||
+ (n) < 2 ? 0 : \
|
||||
(n) & (1ULL << 63) ? 63 : \
|
||||
(n) & (1ULL << 62) ? 62 : \
|
||||
(n) & (1ULL << 61) ? 61 : \
|
||||
@@ -148,10 +142,7 @@ unsigned long __rounddown_pow_of_two(unsigned long n)
|
||||
(n) & (1ULL << 4) ? 4 : \
|
||||
(n) & (1ULL << 3) ? 3 : \
|
||||
(n) & (1ULL << 2) ? 2 : \
|
||||
- (n) & (1ULL << 1) ? 1 : \
|
||||
- (n) & (1ULL << 0) ? 0 : \
|
||||
- ____ilog2_NaN() \
|
||||
- ) : \
|
||||
+ 1 ) : \
|
||||
(sizeof(n) <= 4) ? \
|
||||
__ilog2_u32(n) : \
|
||||
__ilog2_u64(n) \
|
||||
@@ -0,0 +1,39 @@
|
||||
From 8c8187d41b99acd4f2078d0fff6807e0eeb47407 Mon Sep 17 00:00:00 2001
|
||||
From: Arnd Bergmann <arnd@arndb.de>
|
||||
Date: Thu, 26 Jul 2018 10:13:23 +0200
|
||||
Subject: [PATCH] ARM: fix put_user() for gcc-8
|
||||
|
||||
Building kernels before linux-4.7 with gcc-8 results in many build failures
|
||||
when gcc triggers a check that was meant to catch broken compilers:
|
||||
|
||||
/tmp/ccCGMQmS.s:648: Error: .err encountered
|
||||
|
||||
According to the discussion in the gcc bugzilla, a local "register
|
||||
asm()" variable is still supposed to be the correct way to force an
|
||||
inline assembly to use a particular register, but marking it 'const'
|
||||
lets the compiler do optimizations that break that, i.e the compiler is
|
||||
free to treat the variable as either 'const' or 'register' in that case.
|
||||
|
||||
Upstream commit 9f73bd8bb445 ("ARM: uaccess: remove put_user() code
|
||||
duplication") fixed this problem in linux-4.8 as part of a larger change,
|
||||
but seems a little too big to be backported to 4.4.
|
||||
|
||||
Let's take the simplest fix and change only the one broken line in the
|
||||
same way as newer kernels.
|
||||
|
||||
Suggested-by: Bernd Edlinger <bernd.edlinger@hotmail.de>
|
||||
Link: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85745
|
||||
Link: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86673
|
||||
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
|
||||
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
---
|
||||
arch/arm/include/asm/uaccess.h | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/arch/arm/include/asm/uaccess.h b/arch/arm/include/asm/uaccess.h
|
||||
index b04850fdeb5..f8ad54b24ac 100644
|
||||
--- a/arch/arm/include/asm/uaccess.h
|
||||
+++ b/arch/arm/include/asm/uaccess.h
|
||||
@@ -162 +162 @@ extern int __put_user_8(void *, unsigned long long);
|
||||
- register const typeof(*(p)) __r2 asm("r2") = (x); \
|
||||
+ register typeof(*(p)) __r2 asm("r2") = (x); \
|
||||
@@ -0,0 +1,67 @@
|
||||
From 51b97e354ba9fce1890cf38ecc754aa49677fc89 Mon Sep 17 00:00:00 2001
|
||||
From: "Kirill A. Shutemov" <kirill@shutemov.name>
|
||||
Date: Mon, 20 Oct 2014 12:23:12 +0300
|
||||
Subject: kernel: use the gnu89 standard explicitly
|
||||
|
||||
From: "Kirill A. Shutemov" <kirill@shutemov.name>
|
||||
|
||||
commit 51b97e354ba9fce1890cf38ecc754aa49677fc89 upstream.
|
||||
|
||||
Sasha Levin reports:
|
||||
"gcc5 changes the default standard to c11, which makes kernel build
|
||||
unhappy
|
||||
|
||||
Explicitly define the kernel standard to be gnu89 which should keep
|
||||
everything working exactly like it was before gcc5"
|
||||
|
||||
There are multiple small issues with the new default, but the biggest
|
||||
issue seems to be that the old - and very useful - GNU extension to
|
||||
allow a cast in front of an initializer has gone away.
|
||||
|
||||
Patch updated by Kirill:
|
||||
"I'm pretty sure all gcc versions you can build kernel with supports
|
||||
-std=gnu89. cc-option is redunrant.
|
||||
|
||||
We also need to adjust HOSTCFLAGS otherwise allmodconfig fails for me"
|
||||
|
||||
Note by Andrew Pinski:
|
||||
"Yes it was reported and both problems relating to this extension has
|
||||
been added to gnu99 and gnu11. Though there are other issues with the
|
||||
kernel dealing with extern inline have different semantics between
|
||||
gnu89 and gnu99/11"
|
||||
|
||||
End result: we may be able to move up to a newer stdc model eventually,
|
||||
but right now the newer models have some annoying deficiencies, so the
|
||||
traditional "gnu89" model ends up being the preferred one.
|
||||
|
||||
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
|
||||
Singed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
|
||||
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
|
||||
---
|
||||
Makefile | 6 ++++--
|
||||
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -241,7 +241,7 @@ CONFIG_SHELL := $(shell if [ -x "$$BASH"
|
||||
|
||||
HOSTCC = gcc
|
||||
HOSTCXX = g++
|
||||
-HOSTCFLAGS = -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer
|
||||
+HOSTCFLAGS = -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer -std=gnu89
|
||||
HOSTCXXFLAGS = -O2
|
||||
|
||||
# Decide whether to build built-in, modular, or both.
|
||||
@@ -373,7 +373,9 @@ KBUILD_CFLAGS := -Wall -Wundef -Wstric
|
||||
-fno-strict-aliasing -fno-common \
|
||||
-Werror-implicit-function-declaration \
|
||||
-Wno-format-security \
|
||||
- -fno-delete-null-pointer-checks
|
||||
+ -fno-delete-null-pointer-checks \
|
||||
+ -std=gnu89
|
||||
+
|
||||
KBUILD_AFLAGS_KERNEL :=
|
||||
KBUILD_CFLAGS_KERNEL :=
|
||||
KBUILD_AFLAGS := -D__ASSEMBLY__
|
||||
@@ -0,0 +1,20 @@
|
||||
diff --git a/arch/arm/boot/compressed/piggy.gzip.S b/arch/arm/boot/compressed/piggy.gzip.S
|
||||
index a68adf91a16..175ed02a6ac 100644
|
||||
--- a/arch/arm/boot/compressed/piggy.gzip.S
|
||||
+++ b/arch/arm/boot/compressed/piggy.gzip.S
|
||||
@@ -1,4 +1,4 @@
|
||||
- .section .piggydata,#alloc
|
||||
+ .section .piggydata, "a"
|
||||
.globl input_data
|
||||
input_data:
|
||||
.incbin "arch/arm/boot/compressed/piggy.gzip"
|
||||
diff --git a/arch/arm/boot/compressed/piggy.lzo.S b/arch/arm/boot/compressed/piggy.lzo.S
|
||||
index a425ad95959..236976d8dc7 100644
|
||||
--- a/arch/arm/boot/compressed/piggy.lzo.S
|
||||
+++ b/arch/arm/boot/compressed/piggy.lzo.S
|
||||
@@ -1,4 +1,4 @@
|
||||
- .section .piggydata,#alloc
|
||||
+ .section .piggydata, "a"
|
||||
.globl input_data
|
||||
input_data:
|
||||
.incbin "arch/arm/boot/compressed/piggy.lzo"
|
||||
+111
@@ -0,0 +1,111 @@
|
||||
From 704dfdbbc7df036ed1d5d234dfc67d765804eb4d Mon Sep 17 00:00:00 2001
|
||||
From: Nick Desaulniers <ndesaulniers@google.com>
|
||||
Date: Mon, 4 Nov 2019 19:31:45 +0100
|
||||
Subject: [PATCH] ARM: 8933/1: replace Sun/Solaris style flag on section
|
||||
directive
|
||||
|
||||
It looks like a section directive was using "Solaris style" to declare
|
||||
the section flags. Replace this with the GNU style so that Clang's
|
||||
integrated assembler can assemble this directive.
|
||||
|
||||
The modified instances were identified via:
|
||||
$ ag \.section | grep #
|
||||
|
||||
Link: https://ftp.gnu.org/old-gnu/Manuals/gas-2.9.1/html_chapter/as_7.html#SEC119
|
||||
Link: https://github.com/ClangBuiltLinux/linux/issues/744
|
||||
Link: https://bugs.llvm.org/show_bug.cgi?id=43759
|
||||
Link: https://reviews.llvm.org/D69296
|
||||
|
||||
Acked-by: Nicolas Pitre <nico@fluxnic.net>
|
||||
Reviewed-by: Ard Biesheuvel <ardb@kernel.org>
|
||||
Reviewed-by: Stefan Agner <stefan@agner.ch>
|
||||
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
|
||||
Suggested-by: Fangrui Song <maskray@google.com>
|
||||
Suggested-by: Jian Cai <jiancai@google.com>
|
||||
Suggested-by: Peter Smith <peter.smith@linaro.org>
|
||||
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
|
||||
[ partial backport to 3.4 ]
|
||||
---
|
||||
arch/arm/boot/bootp/init.S | 2 +-
|
||||
arch/arm/boot/compressed/big-endian.S | 2 +-
|
||||
arch/arm/boot/compressed/head.S | 2 +-
|
||||
arch/arm/boot/compressed/piggy.lzma.S | 2 +-
|
||||
arch/arm/boot/compressed/piggy.xzkern.S | 2 +-
|
||||
arch/arm/mm/proc-v7.S | 2 +-
|
||||
6 files changed, 6 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/boot/bootp/init.S b/arch/arm/boot/bootp/init.S
|
||||
index 78b508075161..868eeeaaa46e 100644
|
||||
--- a/arch/arm/boot/bootp/init.S
|
||||
+++ b/arch/arm/boot/bootp/init.S
|
||||
@@ -16,7 +16,7 @@
|
||||
* size immediately following the kernel, we could build this into
|
||||
* a binary blob, and concatenate the zImage using the cat command.
|
||||
*/
|
||||
- .section .start,#alloc,#execinstr
|
||||
+ .section .start, "ax"
|
||||
.type _start, #function
|
||||
.globl _start
|
||||
|
||||
diff --git a/arch/arm/boot/compressed/big-endian.S b/arch/arm/boot/compressed/big-endian.S
|
||||
index 25ab26f1c6f0..f22428e275f8 100644
|
||||
--- a/arch/arm/boot/compressed/big-endian.S
|
||||
+++ b/arch/arm/boot/compressed/big-endian.S
|
||||
@@ -5,7 +5,7 @@
|
||||
* Author: Nicolas Pitre
|
||||
*/
|
||||
|
||||
- .section ".start", #alloc, #execinstr
|
||||
+ .section ".start", "ax"
|
||||
|
||||
mrc p15, 0, r0, c1, c0, 0 @ read control reg
|
||||
orr r0, r0, #(1 << 7) @ enable big endian mode
|
||||
diff --git a/arch/arm/boot/compressed/head.S b/arch/arm/boot/compressed/head.S
|
||||
index 77a716bdf4d3..b70606652d21 100644
|
||||
--- a/arch/arm/boot/compressed/head.S
|
||||
+++ b/arch/arm/boot/compressed/head.S
|
||||
@@ -113,7 +113,7 @@
|
||||
#endif
|
||||
.endm
|
||||
|
||||
- .section ".start", #alloc, #execinstr
|
||||
+ .section ".start", "ax"
|
||||
/*
|
||||
* sort out different calling conventions
|
||||
*/
|
||||
diff --git a/arch/arm/boot/compressed/piggy.lzma.S b/arch/arm/boot/compressed/piggy.lzma.S
|
||||
index d7e69cffbc0a..cfea81ae8f4b 100644
|
||||
--- a/arch/arm/boot/compressed/piggy.lzma.S
|
||||
+++ b/arch/arm/boot/compressed/piggy.lzma.S
|
||||
@@ -1,4 +1,4 @@
|
||||
- .section .piggydata,#alloc
|
||||
+ .section .piggydata, "a"
|
||||
.globl input_data
|
||||
input_data:
|
||||
.incbin "arch/arm/boot/compressed/piggy.lzma"
|
||||
diff --git a/arch/arm/boot/compressed/piggy.xzkern.S b/arch/arm/boot/compressed/piggy.xzkern.S
|
||||
index 5703f300d027..a135d3b549c5 100644
|
||||
--- a/arch/arm/boot/compressed/piggy.xzkern.S
|
||||
+++ b/arch/arm/boot/compressed/piggy.xzkern.S
|
||||
@@ -1,4 +1,4 @@
|
||||
- .section .piggydata,#alloc
|
||||
+ .section .piggydata, "a"
|
||||
.globl input_data
|
||||
input_data:
|
||||
.incbin "arch/arm/boot/compressed/piggy.xzkern"
|
||||
diff --git a/arch/arm/mm/proc-v7.S b/arch/arm/mm/proc-v7.S
|
||||
index 69363be2f241..321cb1c6a091 100644
|
||||
--- a/arch/arm/mm/proc-v7.S
|
||||
+++ b/arch/arm/mm/proc-v7.S
|
||||
@@ -422,7 +422,7 @@ __v7_setup_stack:
|
||||
string cpu_elf_name, "v7"
|
||||
.align
|
||||
|
||||
- .section ".proc.info.init", #alloc, #execinstr
|
||||
+ .section ".proc.info.init", "ax"
|
||||
|
||||
/*
|
||||
* Standard v7 proc info content
|
||||
--
|
||||
2.43.0
|
||||
|
||||
Reference in new issue
Block a user