From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julien Grall Subject: Re: [PATCH v02 3/3] xen/arm: add DRA7 platform definition Date: Wed, 02 Jul 2014 15:05:37 +0100 Message-ID: <53B411B1.2070807@linaro.org> References: <1404309000-27846-1-git-send-email-andrii.tseglytskyi@globallogic.com> <1404309000-27846-4-git-send-email-andrii.tseglytskyi@globallogic.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1404309000-27846-4-git-send-email-andrii.tseglytskyi@globallogic.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Andrii Tseglytskyi , xen-devel@lists.xen.org Cc: Stefano Stabellini , Chen Baozi , Tim Deegan , Ian Campbell List-Id: xen-devel@lists.xenproject.org Hi Andrii, (Adding Chen Baozi) On 07/02/2014 02:50 PM, Andrii Tseglytskyi wrote: > DRA7 platform definition is added to already existing > OMAP5 data. Data definitions, needed for DRA7 are > almost common for OMAP5 family. > > Signed-off-by: Andrii Tseglytskyi > --- > xen/arch/arm/platforms/omap5.c | 25 ++++++++++++++++++++++++- > 1 file changed, 24 insertions(+), 1 deletion(-) > > diff --git a/xen/arch/arm/platforms/omap5.c b/xen/arch/arm/platforms/omap5.c > index 76d4d9b..837e143 100644 > --- a/xen/arch/arm/platforms/omap5.c > +++ b/xen/arch/arm/platforms/omap5.c > @@ -144,12 +144,24 @@ static int __init omap5_smp_init(void) > return 0; > } > > -static const char const *omap5_dt_compat[] __initconst = > +static const char * const omap5_dt_compat[] __initconst = > { > "ti,omap5", > + "ti,dra7", > NULL > }; > > +static const struct dt_device_match omap5_blacklist_dev[] __initconst = > +{ > + /* OMAP Linux kernel handles devices with status "disabled" in a > + * weird manner - tries to reset them. While their memory ranges > + * are not mapped, this leads to data aborts, so skip these devices > + * from DT for dom0. > + */ > + DT_MATCH_NOT_AVAILABLE(), > + { /* sentinel */ }, > +}; > + > PLATFORM_START(omap5, "TI OMAP5") > .compatible = omap5_dt_compat, > .init_time = omap5_init_time, > @@ -161,6 +173,17 @@ PLATFORM_START(omap5, "TI OMAP5") > .dom0_gnttab_size = 0x20000, > PLATFORM_END > > +PLATFORM_START(dra7, "TI DRA7") > + .compatible = omap5_dt_compat, > + .init_time = omap5_init_time, > + .cpu_up = cpu_up_send_sgi, > + .smp_init = omap5_smp_init, > + > + .dom0_gnttab_start = 0x4b000000, > + .dom0_gnttab_size = 0x20000, > + .blacklist_dev = omap5_blacklist_dev, > +PLATFORM_END > + Hmmm... you are sharing the same compatible list with the "TI OMAP5" platform. You are very lucky that "TI DRA7" is always use otherwise the devices won't be blacklisted and, therefore, DOM0 will crash. I've looked to the wiki page created by Chen [1]. And I believe we also need to blacklist device for generic omap5. This will avoid the different changes in the device tree [2]. I would merge both platform definition in one. Regards, [1] http://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions/OMAP5432_uEVM [2] http://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions/OMAP5432_uEVM#2.3_Build_FDT -- Julien Grall