public inbox for linux-mips@vger.kernel.org
 help / color / mirror / Atom feed
From: Gregory CLEMENT <gregory.clement@bootlin.com>
To: Paul Burton <paulburton@kernel.org>,
	Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
	linux-mips@vger.kernel.org, Jiaxun Yang <jiaxun.yang@flygoat.com>,
	Rob Herring <robh+dt@kernel.org>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
Cc: "Vladimir Kondratiev" <vladimir.kondratiev@mobileye.com>,
	"Tawfik Bayouk" <tawfik.bayouk@mobileye.com>,
	"Alexandre Belloni" <alexandre.belloni@bootlin.com>,
	"Théo Lebrun" <theo.lebrun@bootlin.com>,
	"Thomas Petazzoni" <thomas.petazzoni@bootlin.com>
Subject: [PATCH v2 11/21] MIPS: traps: Enhance memblock ebase allocation process
Date: Thu, 23 Nov 2023 16:26:28 +0100	[thread overview]
Message-ID: <20231123152639.561231-12-gregory.clement@bootlin.com> (raw)
In-Reply-To: <20231123152639.561231-1-gregory.clement@bootlin.com>

From: Jiaxun Yang <jiaxun.yang@flygoat.com>

We try to allocate from KSEG0 accessible space first, and
then if we really can't allocate any memory from KSEG0 and
we are sure that we support ebase in higher segment, give
it another go without restriction.

This can maximize the possibility of having ebase in KSEG0.

Signed-off-by: Jiaxun Yang <jiaxun.yang@flygoat.com>
---
 arch/mips/kernel/traps.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/arch/mips/kernel/traps.c b/arch/mips/kernel/traps.c
index b6e94654f6211..68f1dd54cde1c 100644
--- a/arch/mips/kernel/traps.c
+++ b/arch/mips/kernel/traps.c
@@ -2399,7 +2399,12 @@ void __init trap_init(void)
 		memblock_reserve(ebase_pa, vec_size);
 	} else {
 		vec_size = max(vec_size, PAGE_SIZE);
-		ebase_pa = memblock_phys_alloc(vec_size, 1 << fls(vec_size));
+		ebase_pa = memblock_phys_alloc_range(vec_size, 1 << fls(vec_size),
+						     0x0, KSEGX_SIZE - 1);
+
+		if (!ebase_pa && (IS_ENABLED(CONFIG_EVA) || cpu_has_ebase_wg))
+			ebase_pa = memblock_phys_alloc(vec_size, 1 << fls(vec_size));
+
 		if (!ebase_pa)
 			panic("%s: Failed to allocate %lu bytes align=0x%x\n",
 			      __func__, vec_size, 1 << fls(vec_size));
-- 
2.42.0


  parent reply	other threads:[~2023-11-23 15:27 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-11-23 15:26 [PATCH v2 00/21] Add support for the Mobileye EyeQ5 SoC Gregory CLEMENT
2023-11-23 15:26 ` [PATCH v2 01/21] MIPS: compressed: Use correct instruction for 64 bit code Gregory CLEMENT
2023-11-23 15:26 ` [PATCH v2 02/21] MIPS: Export higher/highest relocation functions in uasm Gregory CLEMENT
2023-11-23 15:26 ` [PATCH v2 03/21] MIPS: spaces: Define a couple of handy macros Gregory CLEMENT
2023-11-23 15:26 ` [PATCH v2 04/21] MIPS: genex: Fix except_vec_vi for kernel in XKPHYS Gregory CLEMENT
2023-11-23 15:26 ` [PATCH v2 05/21] MIPS: Fix set_uncached_handler for ebase " Gregory CLEMENT
2023-11-23 15:26 ` [PATCH v2 06/21] MIPS: Refactor mips_cps_core_entry implementation Gregory CLEMENT
2023-11-23 15:26 ` [PATCH v2 07/21] MIPS: Fix cache issue with mips_cps_core_entry Gregory CLEMENT
2023-11-23 15:26 ` [PATCH v2 08/21] MIPS: Allow kernel base to be set from Kconfig for all platforms Gregory CLEMENT
2023-11-23 15:26 ` [PATCH v2 09/21] MIPS: traps: Handle CPU with non standard vint offset Gregory CLEMENT
2023-11-23 15:26 ` [PATCH v2 10/21] MIPS: Avoid unnecessary reservation of exception space Gregory CLEMENT
2023-11-23 15:26 ` Gregory CLEMENT [this message]
2023-11-23 15:26 ` [PATCH v2 12/21] MIPS: Get rid of CONFIG_NO_EXCEPT_FILL Gregory CLEMENT
2023-11-23 15:26 ` [PATCH v2 13/21] MIPS: traps: Give more explanations if ebase doesn't belong to KSEG0 Gregory CLEMENT
2023-11-26 11:31   ` kernel test robot
2023-11-23 15:26 ` [PATCH v2 14/21] dt-bindings: Add vendor prefix for Mobileye Vision Technologies Ltd Gregory CLEMENT
2023-11-23 15:26 ` [PATCH v2 15/21] dt-bindings: mips: cpu: Add I-Class I6500 Multiprocessor Core Gregory CLEMENT
2023-11-24  8:25   ` Krzysztof Kozlowski
2023-11-30 10:51     ` Gregory CLEMENT
2023-11-30 12:00       ` Krzysztof Kozlowski
2023-11-24 11:37   ` Serge Semin
2023-11-23 15:26 ` [PATCH v2 16/21] dt-bindings: mips: Add bindings for Mobileye SoCs Gregory CLEMENT
2023-11-23 16:57   ` Rob Herring
2023-11-26 18:57   ` Rob Herring
2023-11-23 15:26 ` [PATCH v2 17/21] dt-bindings: mfd: syscon: Document EyeQ5 OLB Gregory CLEMENT
2023-11-24  8:25   ` Krzysztof Kozlowski
2023-11-23 15:26 ` [PATCH v2 18/21] MIPS: mobileye: Add EyeQ5 dtsi Gregory CLEMENT
2023-11-24  8:27   ` Krzysztof Kozlowski
2023-12-01 10:56     ` Gregory CLEMENT
2023-11-23 15:26 ` [PATCH v2 19/21] MIPS: mobileye: Add EPM5 device tree Gregory CLEMENT
2023-11-23 15:26 ` [PATCH v2 20/21] MIPS: generic: Add support for Mobileye EyeQ5 Gregory CLEMENT
2023-11-23 17:46   ` Jiaxun Yang
2023-12-01 10:34     ` Gregory CLEMENT
2023-12-01 10:49       ` Jiaxun Yang
2023-11-23 15:26 ` [PATCH v2 21/21] MAINTAINERS: Add entry for Mobileye MIPS SoCs Gregory CLEMENT
2023-11-23 17:31 ` [PATCH v2 00/21] Add support for the Mobileye EyeQ5 SoC Jiaxun Yang

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=20231123152639.561231-12-gregory.clement@bootlin.com \
    --to=gregory.clement@bootlin.com \
    --cc=alexandre.belloni@bootlin.com \
    --cc=devicetree@vger.kernel.org \
    --cc=jiaxun.yang@flygoat.com \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mips@vger.kernel.org \
    --cc=paulburton@kernel.org \
    --cc=robh+dt@kernel.org \
    --cc=tawfik.bayouk@mobileye.com \
    --cc=theo.lebrun@bootlin.com \
    --cc=thomas.petazzoni@bootlin.com \
    --cc=tsbogend@alpha.franken.de \
    --cc=vladimir.kondratiev@mobileye.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox