On Mon, Oct 12, 2026 at 09:45:41PM +0530, Pavan Kondeti wrote:
> On Mon, Sep 28, 2026 at 02:06:53PM -0400, Tyler Baker wrote:
> > Add a configuration fragment and memory map for the Arduino VENTUNO Q
> > (QCS8275), running U-Boot after TF-A and OP-TEE.
> > 
> > Boot on a Cortex-A55 and exclude memory reserved by the boot firmware
> > from the RAM map.
> > 
> > Assisted-by: Claude:claude-opus-5-5
> > Signed-off-by: Tyler Baker <[email protected]>
> > ---
> > Changes in v2:
> > - Renamed from "board: qualcomm: add Arduino VENTUNO Q config fragment".
> > - Reworded the commit message and comments.
> > ---
> >  arch/arm/dts/monaco-arduino-monza-u-boot.dtsi | 26 
> > ++++++++++++++++++++++++++
> >  board/qualcomm/arduino-ventuno-q.config       |  5 +++++
> >  2 files changed, 31 insertions(+)
> > 
> > diff --git a/arch/arm/dts/monaco-arduino-monza-u-boot.dtsi 
> > b/arch/arm/dts/monaco-arduino-monza-u-boot.dtsi
> > new file mode 100644
> > index 0000000000..e6ba8ba486
> > --- /dev/null
> > +++ b/arch/arm/dts/monaco-arduino-monza-u-boot.dtsi
> > @@ -0,0 +1,26 @@
> > +// SPDX-License-Identifier: BSD-3-Clause
> > +/*
> > + * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
> > + */
> > +
> > +/ {
> > +   /*
> > +    * Boot firmware regions left out:
> > +    *   0x80000000  SAIL
> > +    *   0x908c0000  DDR training
> > +    *   0x90c00000  SAIL mailbox and OTA
> > +    *   0xd0100000  TZ carveouts and DBI dump
> > +    *   0xdb100000  TZ statistics
> > +    *   0xdb200000  CPUCP
> > +    */
> > +   memory@80000000 {
> > +           device_type = "memory";
> > +           reg = <0x0 0x90000000 0x0 0x008c0000>,
> > +                 <0x0 0x908c1000 0x0 0x0033f000>,
> > +                 <0x0 0x91100000 0x0 0x3f000000>,
> > +                 <0x0 0xd4400000 0x0 0x06d00000>,
> > +                 <0x0 0xdb300000 0x0 0x24d00000>,
> > +                 <0xa 0x00000000 0x2 0x00000000>,
> > +                 <0xe 0x00000000 0x1 0x80000000>;
> > +   };
> > +};
> > diff --git a/board/qualcomm/arduino-ventuno-q.config 
> > b/board/qualcomm/arduino-ventuno-q.config
> > new file mode 100644
> > index 0000000000..a8041cbe9d
> > --- /dev/null
> > +++ b/board/qualcomm/arduino-ventuno-q.config
> > @@ -0,0 +1,5 @@
> > +# Arduino VENTUNO Q; use with qcom_defconfig and tfa-optee.config.
> > +CONFIG_DEFAULT_DEVICE_TREE="qcom/monaco-arduino-monza"
> > +CONFIG_ENABLE_ARM_SOC_BOOT0_HOOK=y
> > +CONFIG_BOOT0_QCOM_BOOT_CPU=y
> > +CONFIG_QCOM_BOOT_CPU_MPIDR=0x10000
> > 
> 
> IIUC, Linux makes CPU with MPIDR ~= 0x10000 as CPU#0. This is
> conflicting with the `reg` mentioned at
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/arm64/boot/dts/qcom/monaco.dtsi#n53
> 
> Do we see any issues with that? Also, what would be CPU#1 in Linux?
> of_parse_and_init_cpus() indicates that CPUs are enumerated in the order
> mentioned at cpus { } which means physical CPU#0 becomes logical CPU#1.
> 
> One immediate side effect of this is that `capacity-dmips-mhz` value
> will go wrong which can result in suboptimal scheduler / cpufreq
> decisions.
> 
Looked at Linux Kernel arch/arm64/kernel/topology.c closely, I don't
see `capacity-dmips-mhz` values getting messed up since
of_get_cpu_node() uses arch_match_cpu_phys_id().  Sorry about the
incorrect note in my previous email.

Thanks,
Pavan

Reply via email to