public inbox for devicetree@vger.kernel.org
 help / color / mirror / Atom feed
From: Mark Rutland <mark.rutland@arm.com>
To: Haojian Zhuang <haojian.zhuang@linaro.org>
Cc: "leo.yan@linaro.org" <leo.yan@linaro.org>,
	Leif Lindholm <leif.lindholm@linaro.org>,
	Rob Herring <robh+dt@kernel.org>, Pawel Moll <Pawel.Moll@arm.com>,
	Ian Campbell <ijc+devicetree@hellion.org.uk>,
	Kumar Gala <galak@codeaurora.org>,
	Catalin Marinas <Catalin.Marinas@arm.com>,
	Will Deacon <Will.Deacon@arm.com>,
	Jassi Brar <jassisinghbrar@gmail.com>,
	Bintian Wang <bintian.wang@huawei.com>,
	Yiping Xu <xuyiping@hisilicon.com>, Wei Xu <xuwei5@hisilicon.com>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>,
	"guodong.xu@linaro.org" <guodong.xu@linaro.org>,
	Jian Zhang <zhangjian001@hisilicon.com>,
	Zhenwei Wang <Zhenwei.wang@hisilicon.com>,
	Haoju Mo <mohaoju@hisilicon.com>,
	Dan Zhao <dan.zhao@hisilicon.com>,
	kongfei@hisil
Subject: Re: [PATCH v1 3/3] arm64: dts: add Hi6220 mailbox node
Date: Thu, 27 Aug 2015 17:46:17 +0100	[thread overview]
Message-ID: <20150827164617.GB31748@leverpostej> (raw)
In-Reply-To: <1440552341.10987.53.camel@linaro.org>

> > Option 2:
> > 
> > 	memory@0 {
> > 		device_type = "memory";
> > 		reg = <0x0 0x0 0x0 0x40000000>;
> > 	};
> > 
> > 	reserved-memory {
> > 		#address-cells = <2>;
> > 		#size-cells = <2>;
> > 		ranges;
> > 
> > 		mcu_reserved: mcu_reserved@06dff000 {
> > 			no-map;
> > 			reg = <0x0 0x06dff000 0x0 0x00001000>,	/* MCU mailbox buffer */
> > 			      <0x0 0x05e00000 0x0 0x00100000>,	/* MCU firmware buffer */
> > 			      <0x0 0x0740f000 0x0 0x00001000>;	/* MCU firmware section */
> > 		};
> > 	};
> > 
> >         [...]
> > 
> > 	mailbox: mailbox@f7510000 {
> > 		#mbox-cells = <1>;
> > 		compatible = "hisilicon,hi6220-mbox";
> > 		reg = <0x0 0xf7510000 0x0 0x1000>; /* IPC_S */
> > 		memory-region = <&mcu_reserved>;   /* Mailbox buffer */
> > 		interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;
> > 	};
> 
> I prefer the second one. From my view, memory node should only describe
> the hardware information of memory.

That doesn't align with the spec. Per ePAPR, in the description of a
memory node:

	The client program may access memory not covered by any memory
	reservations (see section 8.3) using any storage attributes it
	chooses. However, before changing the storage attributes used to
	access a real page, the client program is responsible for
	performing actions required by the architecture and
	implementation, possibly including flushing the real page from
	the caches.

Note that in this context, memory reservation applies to /memreserve/.
We can only expect other software to handle /memreserve/, and not
reserved-memory, as the latter was introduced by Linux and has not
existed for anywhere near as long.

Additionally, the OS is permitted to map reserved memory with cacheable
attributes.

So the memory nodes have never been about the raw hardware layout, but
rather the regions that the OS may map. If (outside of the driver
responsible for the region) the OS should not map a region of memory,
that region should not appear in any memory node.

As mentioned in my other reply, for a region that the OS could map but
cannot use, I don't see much point in listing that memory in any memory
node.

Thanks,
Mark

  parent reply	other threads:[~2015-08-27 16:46 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-19  9:37 [PATCH v1 0/3] mailbox: hisilicon: add Hi6220 mailbox driver Leo Yan
2015-08-19  9:37 ` [PATCH v1 1/3] dt-bindings: mailbox: Document " Leo Yan
     [not found]   ` <1439977055-1747-2-git-send-email-leo.yan-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2015-08-25 11:17     ` Sudeep Holla
     [not found]       ` <55DC4EC0.4060301-5wv7dgnIgG8@public.gmane.org>
2015-08-25 13:01         ` Leo Yan
2015-08-19  9:37 ` [PATCH v1 2/3] mailbox: Hi6220: add " Leo Yan
2015-08-19  9:37 ` [PATCH v1 3/3] arm64: dts: add Hi6220 mailbox node Leo Yan
     [not found]   ` <1439977055-1747-4-git-send-email-leo.yan-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2015-08-21 18:40     ` Mark Rutland
2015-08-22 13:30       ` Leo Yan
2015-08-24  3:27         ` Leo Yan
2015-08-24  9:18       ` Leo Yan
2015-08-24  9:51         ` Mark Rutland
2015-08-24 10:19           ` Haojian Zhuang
2015-08-24 11:49             ` Leif Lindholm
2015-08-25  8:13               ` Haojian Zhuang
2015-08-25  9:46                 ` Leif Lindholm
     [not found]                   ` <20150825094630.GU10728-t77nlHhSwNqAroYi2ySoxKxOck334EZe@public.gmane.org>
2015-08-25 10:15                     ` Haojian Zhuang
2015-08-25 10:40                       ` Leif Lindholm
     [not found]                       ` <1440497710.10987.42.camel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2015-08-25 10:42                         ` Mark Rutland
2015-08-25 13:43                           ` Haojian Zhuang
2015-08-25 14:24                             ` Leif Lindholm
2015-08-25 14:51                               ` Ard Biesheuvel
2015-08-25 15:37                                 ` Leif Lindholm
2015-08-25 15:45                                   ` Ard Biesheuvel
     [not found]                                   ` <20150825153754.GY10728-t77nlHhSwNqAroYi2ySoxKxOck334EZe@public.gmane.org>
2015-08-26  2:41                                     ` Haojian Zhuang
     [not found]                             ` <1440510194.10987.52.camel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2015-08-25 16:00                               ` Leo Yan
2015-08-26  1:25                                 ` Haojian Zhuang
     [not found]                                   ` <1440552341.10987.53.camel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2015-08-26  6:59                                     ` Leo Yan
2015-08-27 16:31                                       ` Mark Rutland
2015-08-28  6:37                                         ` Leo Yan
2015-08-27 15:54                                   ` Daniel Thompson
2015-08-27 16:46                                   ` Mark Rutland [this message]
2015-08-24 12:48             ` Mark Rutland
2015-08-25  8:04               ` Haojian Zhuang
2015-08-25 11:09                 ` Mark Rutland
2015-08-25 11:36     ` Sudeep Holla
2015-08-25 14:04       ` Leo Yan
2015-08-25 14:13         ` Sudeep Holla

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=20150827164617.GB31748@leverpostej \
    --to=mark.rutland@arm.com \
    --cc=Catalin.Marinas@arm.com \
    --cc=Pawel.Moll@arm.com \
    --cc=Will.Deacon@arm.com \
    --cc=Zhenwei.wang@hisilicon.com \
    --cc=bintian.wang@huawei.com \
    --cc=dan.zhao@hisilicon.com \
    --cc=devicetree@vger.kernel.org \
    --cc=galak@codeaurora.org \
    --cc=guodong.xu@linaro.org \
    --cc=haojian.zhuang@linaro.org \
    --cc=ijc+devicetree@hellion.org.uk \
    --cc=jassisinghbrar@gmail.com \
    --cc=kongfei@hisil \
    --cc=leif.lindholm@linaro.org \
    --cc=leo.yan@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mohaoju@hisilicon.com \
    --cc=robh+dt@kernel.org \
    --cc=xuwei5@hisilicon.com \
    --cc=xuyiping@hisilicon.com \
    --cc=zhangjian001@hisilicon.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