From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id DE57A74003D for ; Tue, 20 Feb 2024 07:34:39 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=HYHG8a6T9FHD24sabJUqoEtQNYIVCQaCqQfBK6TkqF8=; c=relaxed/simple; d=groups.io; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding; s=20140610; t=1708414478; v=1; b=Rzj4V1j0MfL0DbaOBGAWsBW5htbiw1yJsB6z8qRr0Yy8+26q2kg5TfHy/P9zslURdOavCLn1 xuBj8DcjEFyDv8sKj26YPm+0bXL+nEdKD37j8gd3Ua9S1fe4Vj+JFUV/9PEujVv3TZAwrsf+ot1 v8pJ/H1JdSFSOg2iTcD9HjYo= X-Received: by 127.0.0.2 with SMTP id HalLYY7687511xykcWuPVvdE; Mon, 19 Feb 2024 23:34:38 -0800 X-Received: from zg8tmja5ljk3lje4ms43mwaa.icoremail.net (zg8tmja5ljk3lje4ms43mwaa.icoremail.net [209.97.181.73]) by mx.groups.io with SMTP id smtpd.web11.8576.1708414472385933619 for ; Mon, 19 Feb 2024 23:34:32 -0800 X-Received: from prodtpl.icoremail.net (unknown [10.12.1.20]) by hzbj-icmmx-7 (Coremail) with SMTP id AQAAfwBXXrYFVtRlzi8rCQ--.25181S2; Tue, 20 Feb 2024 15:34:29 +0800 (CST) X-Received: from phytium.com.cn (unknown [218.76.62.144]) by mail (Coremail) with SMTP id AQAAfwAHmYT9VdRlCj8AAA--.302S3; Tue, 20 Feb 2024 15:34:22 +0800 (CST) From: "Xiong Yining" To: devel@edk2.groups.io Cc: quic_llindhol@quicinc.com, ardb+tianocore@kernel.org, graeme@xora.org.uk, marcin.juszkiewicz@linaro.org, chenbaozi@phytium.com.cn, Xiong Yining Subject: [edk2-devel] [PATCH v3 0/1] support multi memory nodes Date: Tue, 20 Feb 2024 07:33:31 +0000 Message-Id: <20240220073332.3249289-1-xiongyining1480@phytium.com.cn> MIME-Version: 1.0 X-CM-TRANSID: AQAAfwAHmYT9VdRlCj8AAA--.302S3 X-CM-SenderInfo: x0lr0wp1lqx0bjrumio6sk53xlxphulrpou0/1tbiAQABBmW5T2UIngAFsj X-Coremail-Antispam: 1Uk129KBjvJXoW7ZFW5Ar4xuF43tr13Xr1xAFb_yoW8XFWfpF WxCFyruw4kK3s2kws7Jas5Zry3C3WfGr4UurZrZw1xuw43WFyUZr4Iqrn3Jr98GF1kXa1U GF48tw1UWw1vkaDanT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUj1kv1TuYvTs0mT0YCTnIWj DUYxn0WfASr-VFAU7a7-sFnT9fnUUIcSsGvfJ3UbIYCTnIWIevJa73UjIFyTuYvj4RJUUU UUUUU Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,xiongyining1480@phytium.com.cn List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: duAydjzEriW9l5YD2PSHJpjUx7686176AA= Content-Transfer-Encoding: 8bit X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20140610 header.b=Rzj4V1j0; dmarc=none; spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io When SaSbQemu platform is configured with multi memory nodes, like numa architecture, os will ignore any memory node in the device tree except the first one. The kernel reads UEFI memory map for memory information when booting via UEFI. However UEFI only allocates the first memory node memory space for SbsaQemu platform, in this scenario we can refer to the implement of "OvmfPkg/Fdt/HighMemDxe" and use the GCD services to add memory spaces for high memory node. Instead of using FdtClientDxe driver to get the informatin of memory, we get the hardware information of memory via SMC calls, which is proposed on get rid of DeviceTree from SbsaQemu: https://openfw.io/edk2-devel/20240131132400.3022662-1-xiongyining1480@phytium.com.cn/ Changes in v2: - get the information of memory via SMC rather than FdtClientDxe. - add a new driver rather than use HighMemDxe. Changes in v3: - when the memory node is the first one, there is no need to add it. Xiong Yining (1): SbsaQemu: add memory space for the high memory nodes Platform/Qemu/SbsaQemu/SbsaQemu.dsc | 3 +- Platform/Qemu/SbsaQemu/SbsaQemu.fdf | 1 + .../SbsaQemuHighMemDxe/SbsaQemuHighMemDxe.inf | 45 ++++++ .../SbsaQemuHighMemDxe/SbsaQemuHighMemDxe.c | 134 ++++++++++++++++++ 4 files changed, 182 insertions(+), 1 deletion(-) create mode 100644 Silicon/Qemu/SbsaQemu/Drivers/SbsaQemuHighMemDxe/SbsaQemuHighMemDxe.inf create mode 100644 Silicon/Qemu/SbsaQemu/Drivers/SbsaQemuHighMemDxe/SbsaQemuHighMemDxe.c -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#115637): https://edk2.groups.io/g/devel/message/115637 Mute This Topic: https://groups.io/mt/104463711/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=-