mirror of https://github.com/OpenIPC/firmware.git
				
				
				
			Add patches to fix msc316dm (#345)
							parent
							
								
									0c97132900
								
							
						
					
					
						commit
						5524eafac5
					
				|  | @ -0,0 +1 @@ | |||
| ../../../../../patches/linux/3.10.x/gcc8_err_encountered.patch | ||||
|  | @ -0,0 +1 @@ | |||
| ../../../../../patches/linux/3.18.x/ARM-vfp-force-non-conditional-encoding-for-external-Thumb2-tail-call.patch | ||||
|  | @ -0,0 +1,149 @@ | |||
| From patchwork Thu Sep 17 06:19:48 2020 | ||||
| Content-Type: text/plain; charset="utf-8" | ||||
| MIME-Version: 1.0 | ||||
| Content-Transfer-Encoding: 7bit | ||||
| X-Patchwork-Submitter: Ard Biesheuvel <ardb@kernel.org> | ||||
| X-Patchwork-Id: 11781619 | ||||
| Return-Path:  | ||||
|  <SRS0=6281=C2=lists.infradead.org=linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@kernel.org> | ||||
| Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org | ||||
|  [172.30.200.123]) | ||||
| 	by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id E7EA96CA | ||||
| 	for <patchwork-linux-arm@patchwork.kernel.org>; | ||||
|  Thu, 17 Sep 2020 06:20:24 +0000 (UTC) | ||||
| Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) | ||||
| 	(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) | ||||
| 	(No client certificate requested) | ||||
| 	by mail.kernel.org (Postfix) with ESMTPS id 758BF208E4 | ||||
| 	for <patchwork-linux-arm@patchwork.kernel.org>; | ||||
|  Thu, 17 Sep 2020 06:20:24 +0000 (UTC) | ||||
| Authentication-Results: mail.kernel.org; | ||||
| 	dkim=pass (2048-bit key) header.d=lists.infradead.org | ||||
|  header.i=@lists.infradead.org header.b="asIIUop8"; | ||||
| 	dkim=fail reason="signature verification failed" (1024-bit key) | ||||
|  header.d=kernel.org header.i=@kernel.org header.b="Dfh0zH+Q" | ||||
| DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 758BF208E4 | ||||
| Authentication-Results: mail.kernel.org; | ||||
|  dmarc=fail (p=none dis=none) header.from=kernel.org | ||||
| Authentication-Results: mail.kernel.org; | ||||
|  spf=none | ||||
|  smtp.mailfrom=linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org | ||||
| DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; | ||||
| 	d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: | ||||
| 	Content-Type:MIME-Version:Cc:List-Subscribe:List-Help:List-Post:List-Archive: | ||||
| 	List-Unsubscribe:List-Id:Message-Id:Date:Subject:To:From:Reply-To:Content-ID: | ||||
| 	Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc | ||||
| 	:Resent-Message-ID:In-Reply-To:References:List-Owner; | ||||
| 	bh=Lo1QvkycLV/7qa6tRuaKU+043GrCtYRFDvZNpiyIHFs=; b=asIIUop8zx9VLyP8RxH3FSnpIB | ||||
| 	goa+Fn9zbDfPdm1XBArYJdBUQkptX0eK5ggte4+RtYnD6jtYPnDQ1atbG+LXFXdCGBPPGD7Ec0NCz | ||||
| 	2rf7GocaLxeNTnfrTrLiyeLitFTbrFsfog6LNatG/wbNnekF7ykhcZ7bzwvfMVNbAYwx0vMjCBUDv | ||||
| 	yaOUflwQYiTda6AkoJnj1IISdIYLgkCEIzyDVq3rIFW3BA+m5EhmhXKI2gcksipSVuIsbux+px9ZV | ||||
| 	v42wJcIXgnVA+qJct1MFfxvPN1vQBL9aLZclNOcXNmKZD8Q09LA4yNxvFkRoNLlBOPKYSN6XHmtJn | ||||
| 	mAF9oPSw==; | ||||
| Received: from localhost ([::1] helo=merlin.infradead.org) | ||||
| 	by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) | ||||
| 	id 1kInGx-0003LG-UJ; Thu, 17 Sep 2020 06:20:00 +0000 | ||||
| Received: from mail.kernel.org ([198.145.29.99]) | ||||
|  by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) | ||||
|  id 1kInGv-0003Kq-Ma | ||||
|  for linux-arm-kernel@lists.infradead.org; Thu, 17 Sep 2020 06:19:58 +0000 | ||||
| Received: from e123331-lin.nice.arm.com (unknown [91.140.120.15]) | ||||
|  (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) | ||||
|  (No client certificate requested) | ||||
|  by mail.kernel.org (Postfix) with ESMTPSA id 9D4CD20707; | ||||
|  Thu, 17 Sep 2020 06:19:54 +0000 (UTC) | ||||
| DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; | ||||
|  s=default; t=1600323596; | ||||
|  bh=ziD1S262d4AhvP0HlkLo4WCfu8gkBuZJo+18GfJki9c=; | ||||
|  h=From:To:Cc:Subject:Date:From; | ||||
|  b=Dfh0zH+QgFdYO0gLoboRtZhySJAl+bjUHgIo8kCQVGjvzCWF7i2BSPEKZiFbSIEGm | ||||
|  fFSTDES62ApoJHYwFnIAtXQMpjV7DYbIoeuFScbKPT4lMxCYpo/X7ffl/+OEWMkRAK | ||||
|  4Unu4CMR1SVL+8a4DZhSoF74nrvGspRqV5Nh1iTI= | ||||
| From: Ard Biesheuvel <ardb@kernel.org> | ||||
| To: linux-arm-kernel@lists.infradead.org | ||||
| Subject: [PATCH] ARM: vfp: force non-conditional encoding for external Thumb2 | ||||
|  tail call | ||||
| Date: Thu, 17 Sep 2020 09:19:48 +0300 | ||||
| Message-Id: <20200917061948.12403-1-ardb@kernel.org> | ||||
| X-Mailer: git-send-email 2.17.1 | ||||
| X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3  | ||||
| X-CRM114-CacheID: sfid-20200917_021957_811961_126E0A54  | ||||
| X-CRM114-Status: GOOD (  13.51  ) | ||||
| X-Spam-Score: -8.2 (--------) | ||||
| X-Spam-Report: SpamAssassin version 3.4.4 on merlin.infradead.org summary: | ||||
|  Content analysis details:   (-8.2 points) | ||||
|  pts rule name              description | ||||
|  ---- ---------------------- | ||||
|  -------------------------------------------------- | ||||
|  -5.0 RCVD_IN_DNSWL_HI       RBL: Sender listed at https://www.dnswl.org/, | ||||
|  high trust [198.145.29.99 listed in list.dnswl.org] | ||||
|  0.0 SPF_HELO_NONE          SPF: HELO does not publish an SPF Record | ||||
|  -0.0 SPF_PASS               SPF: sender matches SPF record | ||||
|  0.1 DKIM_SIGNED            Message has a DKIM or DK signature, | ||||
|  not necessarily | ||||
|  valid | ||||
|  -0.1 DKIM_VALID_EF          Message has a valid DKIM or DK signature from | ||||
|  envelope-from domain | ||||
|  -0.1 DKIM_VALID_AU          Message has a valid DKIM or DK signature from | ||||
|  author's domain | ||||
|  -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature | ||||
|  -3.0 DKIMWL_WL_HIGH         DKIMwl.org - Whitelisted High sender | ||||
| X-BeenThere: linux-arm-kernel@lists.infradead.org | ||||
| X-Mailman-Version: 2.1.29 | ||||
| Precedence: list | ||||
| List-Id: <linux-arm-kernel.lists.infradead.org> | ||||
| List-Unsubscribe:  | ||||
|  <http://lists.infradead.org/mailman/options/linux-arm-kernel>, | ||||
|  <mailto:linux-arm-kernel-request@lists.infradead.org?subject=unsubscribe> | ||||
| List-Archive: <http://lists.infradead.org/pipermail/linux-arm-kernel/> | ||||
| List-Post: <mailto:linux-arm-kernel@lists.infradead.org> | ||||
| List-Help: <mailto:linux-arm-kernel-request@lists.infradead.org?subject=help> | ||||
| List-Subscribe:  | ||||
|  <http://lists.infradead.org/mailman/listinfo/linux-arm-kernel>, | ||||
|  <mailto:linux-arm-kernel-request@lists.infradead.org?subject=subscribe> | ||||
| Cc: ndesaulniers@google.com, linux@armlinux.org.uk, stable@vger.kernel.org, | ||||
|  Ard Biesheuvel <ardb@kernel.org> | ||||
| MIME-Version: 1.0 | ||||
| Sender: "linux-arm-kernel" <linux-arm-kernel-bounces@lists.infradead.org> | ||||
| Errors-To:  | ||||
|  linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org | ||||
| 
 | ||||
| Nick reports that the following error is produced in some cases when | ||||
| using GCC+ld.bfd to build the ARM defconfig with Thumb2 enabled: | ||||
| 
 | ||||
|   arch/arm/vfp/vfphw.o: in function `vfp_support_entry': | ||||
|   (.text+0xa): relocation truncated to fit: R_ARM_THM_JUMP19 against | ||||
|   symbol `vfp_kmode_exception' defined in .text.unlikely section in | ||||
|   arch/arm/vfp/vfpmodule.o | ||||
| 
 | ||||
|   $ arm-linux-gnueabihf-ld --version | ||||
|   GNU ld (GNU Binutils for Debian) 2.34 | ||||
| 
 | ||||
| Generally, the linker should be able to fix up out of range branches by | ||||
| emitting veneers, but apparently, it fails to do so in this particular | ||||
| case, i.e., a conditional 'tail call' to vfp_kmode_exception(), which | ||||
| is not defined in the same object file. | ||||
| 
 | ||||
| So let's force the use of a non-conditional encoding of the B instruction, | ||||
| which has more space for an immediate offset. | ||||
| 
 | ||||
| Cc: <stable@vger.kernel.org> | ||||
| Reported-by: Nick Desaulniers <ndesaulniers@google.com> | ||||
| Tested-by: Nick Desaulniers <ndesaulniers@google.com> | ||||
| Signed-off-by: Ard Biesheuvel <ardb@kernel.org> | ||||
| ---
 | ||||
|  arch/arm/vfp/vfphw.S | 1 + | ||||
|  1 file changed, 1 insertion(+) | ||||
| 
 | ||||
| diff --git a/arch/arm/vfp/vfphw.S b/arch/arm/vfp/vfphw.S
 | ||||
| index 4fcff9f59947..f1468702fbc9 100644
 | ||||
| --- a/arch/arm/vfp/vfphw.S
 | ||||
| +++ b/arch/arm/vfp/vfphw.S
 | ||||
| @@ -82,6 +82,7 @@ ENTRY(vfp_support_entry)
 | ||||
|  	ldr	r3, [sp, #S_PSR]	@ Neither lazy restore nor FP exceptions | ||||
|  	and	r3, r3, #MODE_MASK	@ are supported in kernel mode | ||||
|  	teq	r3, #USR_MODE | ||||
| +THUMB(	it	ne			)
 | ||||
|  	bne	vfp_kmode_exception	@ Returns through lr | ||||
|   | ||||
|  	VFPFMRX	r1, FPEXC		@ Is the VFP enabled? | ||||
		Loading…
	
		Reference in New Issue