<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/coreboot/arm-trusted-firmware.git/fdts/fvp-base-gicv2-psci.dts, branch topics/clang-format</title>
<subtitle>review.coreboot.org: arm-trusted-firmware.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/coreboot/arm-trusted-firmware.git/'/>
<entry>
<title>refactor(fvp): fdts: consolidate GICv2 base FVP DT files</title>
<updated>2022-10-11T15:11:44+00:00</updated>
<author>
<name>Andre Przywara</name>
<email>andre.przywara@arm.com</email>
</author>
<published>2022-08-19T10:01:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/coreboot/arm-trusted-firmware.git/commit/?id=a885a7d290d49bd94c86776f9053df8a8bef9d50'/>
<id>a885a7d290d49bd94c86776f9053df8a8bef9d50</id>
<content type='text'>
The GICv2 and GICv3 version of the FVP DT files are unnecessarily split,
as the common part of the peripherals is the same: it's literally just
the interrupt controller node that is different.
Since the GICv3 versions now use a generic DT include file (without any
GIC node), let's reuse that for the GICv2 versions of the FVP as well.
We just add a separate fvp-base-gicv2.dtsi file which describes the
GICv2 interrupt controller. Also shorten the compatible string, since
the GICv2 binding documentation does not allow the current combination.

This allows to remove the mostly redundant nodes from the GICv2 .dts
file.

Change-Id: I9018031bb611fb00ca7dbefc1bff7d40c3f05819
Signed-off-by: Andre Przywara &lt;andre.przywara@arm.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The GICv2 and GICv3 version of the FVP DT files are unnecessarily split,
as the common part of the peripherals is the same: it's literally just
the interrupt controller node that is different.
Since the GICv3 versions now use a generic DT include file (without any
GIC node), let's reuse that for the GICv2 versions of the FVP as well.
We just add a separate fvp-base-gicv2.dtsi file which describes the
GICv2 interrupt controller. Also shorten the compatible string, since
the GICv2 binding documentation does not allow the current combination.

This allows to remove the mostly redundant nodes from the GICv2 .dts
file.

Change-Id: I9018031bb611fb00ca7dbefc1bff7d40c3f05819
Signed-off-by: Andre Przywara &lt;andre.przywara@arm.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor(fvp): fdts: merge motherboard .dtsi files</title>
<updated>2022-10-11T15:09:34+00:00</updated>
<author>
<name>Andre Przywara</name>
<email>andre.przywara@arm.com</email>
</author>
<published>2022-08-19T09:45:17+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/coreboot/arm-trusted-firmware.git/commit/?id=08f3c2bcdd452b6ea9e0415f91679d5aa124a4a3'/>
<id>08f3c2bcdd452b6ea9e0415f91679d5aa124a4a3</id>
<content type='text'>
For no real reason we were shipping two separate DT include files for the
base FVP motherboard peripherals, one for aarch32, one for aarch64.
There is no difference in the hardware description when using a
different instruction set, and the diff between the two files was about
a missing interrupt map for the 64-bit DT files.

Consolidate the situation by just using a single motherboard .dtsi file,
which relies on an interrupt map by the including files.
Provide that map in the two files where it was missing before, and
change the filenames to let all users include the same file now.

Signed-off-by: Andre Przywara &lt;andre.przywara@arm.com&gt;
Change-Id: I19b77ecc8da9b4bfbd61d02f910b9ab05dbf92e9
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
For no real reason we were shipping two separate DT include files for the
base FVP motherboard peripherals, one for aarch32, one for aarch64.
There is no difference in the hardware description when using a
different instruction set, and the diff between the two files was about
a missing interrupt map for the 64-bit DT files.

Consolidate the situation by just using a single motherboard .dtsi file,
which relies on an interrupt map by the including files.
Provide that map in the two files where it was missing before, and
change the filenames to let all users include the same file now.

Signed-off-by: Andre Przywara &lt;andre.przywara@arm.com&gt;
Change-Id: I19b77ecc8da9b4bfbd61d02f910b9ab05dbf92e9
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(fvp): fdts: unify and fix PSCI nodes</title>
<updated>2022-10-11T13:27:06+00:00</updated>
<author>
<name>Andre Przywara</name>
<email>andre.przywara@arm.com</email>
</author>
<published>2021-12-10T18:22:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/coreboot/arm-trusted-firmware.git/commit/?id=6b2721c01691743a65475e82944e2f8868bf0159'/>
<id>6b2721c01691743a65475e82944e2f8868bf0159</id>
<content type='text'>
The PSCI DT nodes used for the various fvp-base model variants provide
explicit function IDs, as required for the pre-v0.2 PSCI specification.
This prevents them from being used from both AArch32 and AArch64 DT
clients, and using this version of the PSCI spec is long deprecated
anyway.

Remove the old compatible string and the function properties, to
force clients to use the standard function IDs as described in the PSCI
spec. sys_poweroff and sys_reset were never standardised or used anyway.

There should be no client software around that cannot deal with PSCI
v0.2.

Signed-off-by: Andre Przywara &lt;andre.przywara@arm.com&gt;
Change-Id: Ie87deb9898eae79b7307c15bcefcd4b311d4dc22
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The PSCI DT nodes used for the various fvp-base model variants provide
explicit function IDs, as required for the pre-v0.2 PSCI specification.
This prevents them from being used from both AArch32 and AArch64 DT
clients, and using this version of the PSCI spec is long deprecated
anyway.

Remove the old compatible string and the function properties, to
force clients to use the standard function IDs as described in the PSCI
spec. sys_poweroff and sys_reset were never standardised or used anyway.

There should be no client software around that cannot deal with PSCI
v0.2.

Signed-off-by: Andre Przywara &lt;andre.przywara@arm.com&gt;
Change-Id: Ie87deb9898eae79b7307c15bcefcd4b311d4dc22
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(dt-bindings): fix static checks</title>
<updated>2021-04-27T12:16:56+00:00</updated>
<author>
<name>Alexei Fedorov</name>
<email>Alexei.Fedorov@arm.com</email>
</author>
<published>2021-04-23T15:12:11+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/coreboot/arm-trusted-firmware.git/commit/?id=0861fcdd3e3f2625e133de3dae9c548de7c1ee48'/>
<id>0861fcdd3e3f2625e133de3dae9c548de7c1ee48</id>
<content type='text'>
This patch fixes static checks errors reported for missing copyright in
`include/dt-bindings/interrupt-controller/arm-gic.h` and the include
order of header files in `.dts` and `.dtsi` files.

Change-Id: I2baaf2719fd2c84cbcc08a8f0c4440a17a9f24f6
Signed-off-by: Alexei Fedorov &lt;Alexei.Fedorov@arm.com&gt;
Signed-off-by: Chris Kay &lt;chris.kay@arm.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch fixes static checks errors reported for missing copyright in
`include/dt-bindings/interrupt-controller/arm-gic.h` and the include
order of header files in `.dts` and `.dtsi` files.

Change-Id: I2baaf2719fd2c84cbcc08a8f0c4440a17a9f24f6
Signed-off-by: Alexei Fedorov &lt;Alexei.Fedorov@arm.com&gt;
Signed-off-by: Chris Kay &lt;chris.kay@arm.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Plat FVP: Fix Generic Timer interrupt types</title>
<updated>2021-04-21T12:38:15+00:00</updated>
<author>
<name>Alexei Fedorov</name>
<email>Alexei.Fedorov@arm.com</email>
</author>
<published>2021-04-12T11:49:54+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/coreboot/arm-trusted-firmware.git/commit/?id=dfa6c540713ba546da65fe179ec1ef0fc1b1f7f5'/>
<id>dfa6c540713ba546da65fe179ec1ef0fc1b1f7f5</id>
<content type='text'>
The Arm Generic Timer specification mandates that the
interrupt associated with each timer is low level triggered,
see:

Arm Cortex-A76 Core:
"Each timer provides an active-LOW interrupt output to the SoC."

Arm Cortex-A53 MPCore Processor:
"It generates timer events as active-LOW interrupt outputs and
event streams."

The following files in fdts\

fvp-base-gicv3-psci-common.dtsi
fvp-base-gicv3-psci-aarch32-common.dtsi
fvp-base-gicv2-psci-aarch32.dts
fvp-base-gicv2-psci.dts
fvp-foundation-gicv2-psci.dts
fvp-foundation-gicv3-psci.dts

describe interrupt types as edge rising
IRQ_TYPE_EDGE_RISING = 0x01:

interrupts = &lt;1 13 0xff01&gt;,
             &lt;1 14 0xff01&gt;,
             &lt;1 11 0xff01&gt;,
             &lt;1 10 0xff01&gt;;

, see include\dt-bindings\interrupt-controller\arm-gic.h:

which causes Linux to generate the warnings below:
arch_timer: WARNING: Invalid trigger for IRQ5, assuming level low
arch_timer: WARNING: Please fix your firmware

This patch adds GIC_CPU_MASK_RAW macro definition to
include\dt-bindings\interrupt-controller\arm-gic.h,
modifies interrupt type to IRQ_TYPE_LEVEL_LOW and
makes use of type definitions in arm-gic.h.

Change-Id: Iafa2552a9db85a0559c73353f854e2e0066ab2b9
Signed-off-by: Alexei Fedorov &lt;Alexei.Fedorov@arm.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The Arm Generic Timer specification mandates that the
interrupt associated with each timer is low level triggered,
see:

Arm Cortex-A76 Core:
"Each timer provides an active-LOW interrupt output to the SoC."

Arm Cortex-A53 MPCore Processor:
"It generates timer events as active-LOW interrupt outputs and
event streams."

The following files in fdts\

fvp-base-gicv3-psci-common.dtsi
fvp-base-gicv3-psci-aarch32-common.dtsi
fvp-base-gicv2-psci-aarch32.dts
fvp-base-gicv2-psci.dts
fvp-foundation-gicv2-psci.dts
fvp-foundation-gicv3-psci.dts

describe interrupt types as edge rising
IRQ_TYPE_EDGE_RISING = 0x01:

interrupts = &lt;1 13 0xff01&gt;,
             &lt;1 14 0xff01&gt;,
             &lt;1 11 0xff01&gt;,
             &lt;1 10 0xff01&gt;;

, see include\dt-bindings\interrupt-controller\arm-gic.h:

which causes Linux to generate the warnings below:
arch_timer: WARNING: Invalid trigger for IRQ5, assuming level low
arch_timer: WARNING: Please fix your firmware

This patch adds GIC_CPU_MASK_RAW macro definition to
include\dt-bindings\interrupt-controller\arm-gic.h,
modifies interrupt type to IRQ_TYPE_LEVEL_LOW and
makes use of type definitions in arm-gic.h.

Change-Id: Iafa2552a9db85a0559c73353f854e2e0066ab2b9
Signed-off-by: Alexei Fedorov &lt;Alexei.Fedorov@arm.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>FVP: Add support for passing platform's topology to DTS</title>
<updated>2020-05-19T13:16:22+00:00</updated>
<author>
<name>Alexei Fedorov</name>
<email>Alexei.Fedorov@arm.com</email>
</author>
<published>2020-05-13T20:13:57+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/coreboot/arm-trusted-firmware.git/commit/?id=003faaa59f247ed81973f3262e968258824f677a'/>
<id>003faaa59f247ed81973f3262e968258824f677a</id>
<content type='text'>
This patch adds support for passing FVP platform's topology
configuration to DTS files for compilation, which allows to
build DTBs with correct number of clusters and CPUs.
This removes non-existing clusters/CPUs from the compiled
device tree blob and fixes reported Linux errors when trying
to power on absent CPUs/PEs.
If DTS file is passed using FVP_HW_CONFIG_DTS build option from
the platform's makefile, FVP_CLUSTER_COUNT, FVP_MAX_CPUS_PER_CLUSTER
and FVP_MAX_PE_PER_CPU parameters are used, otherwise CI script will
use the default values from the corresponding DTS file.

Change-Id: Idcb45dc6ad5e3eaea18573aff1a01c9344404ab3
Signed-off-by: Alexei Fedorov &lt;Alexei.Fedorov@arm.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch adds support for passing FVP platform's topology
configuration to DTS files for compilation, which allows to
build DTBs with correct number of clusters and CPUs.
This removes non-existing clusters/CPUs from the compiled
device tree blob and fixes reported Linux errors when trying
to power on absent CPUs/PEs.
If DTS file is passed using FVP_HW_CONFIG_DTS build option from
the platform's makefile, FVP_CLUSTER_COUNT, FVP_MAX_CPUS_PER_CLUSTER
and FVP_MAX_PE_PER_CPU parameters are used, otherwise CI script will
use the default values from the corresponding DTS file.

Change-Id: Idcb45dc6ad5e3eaea18573aff1a01c9344404ab3
Signed-off-by: Alexei Fedorov &lt;Alexei.Fedorov@arm.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>fconf: Extract topology node properties from HW_CONFIG dtb</title>
<updated>2020-03-11T16:25:10+00:00</updated>
<author>
<name>Madhukar Pappireddy</name>
<email>madhukar.pappireddy@arm.com</email>
</author>
<published>2019-12-27T18:02:34+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/coreboot/arm-trusted-firmware.git/commit/?id=4682461ded0ba15826022ca9e049e19602845e8a'/>
<id>4682461ded0ba15826022ca9e049e19602845e8a</id>
<content type='text'>
Create, register( and implicitly invoke) fconf_populate_topology()
function which extracts the topology related properties from dtb into
the newly created fconf based configuration structure 'soc_topology'.
Appropriate libfdt APIs are added to jmptbl.i file for use with USE_ROMLIB
build feature.

A new property which describes the power domain levels is added to the
HW_CONFIG device tree source files.

This patch also fixes a minor bug in the common device tree file
fvp-base-gicv3-psci-dynamiq-common.dtsi
As this file includes fvp-base-gicv3-psci-common.dtsi, it is necessary
to delete all previous cluster node definitons because DynamIQ based
models have upto 8 CPUs in each cluster. If not deleted, the final dts
would have an inaccurate description of SoC topology, i.e., cluster0
with 8 or more core nodes and cluster1 with 4 core nodes.

Change-Id: I9eb406da3ba4732008a66c01afec7c9fa8ef59bf
Signed-off-by: Madhukar Pappireddy &lt;madhukar.pappireddy@arm.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Create, register( and implicitly invoke) fconf_populate_topology()
function which extracts the topology related properties from dtb into
the newly created fconf based configuration structure 'soc_topology'.
Appropriate libfdt APIs are added to jmptbl.i file for use with USE_ROMLIB
build feature.

A new property which describes the power domain levels is added to the
HW_CONFIG device tree source files.

This patch also fixes a minor bug in the common device tree file
fvp-base-gicv3-psci-dynamiq-common.dtsi
As this file includes fvp-base-gicv3-psci-common.dtsi, it is necessary
to delete all previous cluster node definitons because DynamIQ based
models have upto 8 CPUs in each cluster. If not deleted, the final dts
would have an inaccurate description of SoC topology, i.e., cluster0
with 8 or more core nodes and cluster1 with 4 core nodes.

Change-Id: I9eb406da3ba4732008a66c01afec7c9fa8ef59bf
Signed-off-by: Madhukar Pappireddy &lt;madhukar.pappireddy@arm.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Replace dts includes with C preprocessor syntax</title>
<updated>2020-01-14T09:30:38+00:00</updated>
<author>
<name>Balint Dobszay</name>
<email>balint.dobszay@arm.com</email>
</author>
<published>2020-01-10T16:16:27+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/coreboot/arm-trusted-firmware.git/commit/?id=2d51b55ee5d2a30b4e9140d8f9b6ccc541301db5'/>
<id>2d51b55ee5d2a30b4e9140d8f9b6ccc541301db5</id>
<content type='text'>
Using the /include/ syntax, the include was evaluated by dtc, only after running
the preprocessor, therefore the .dtsi files were not preprocessed. This patch
adds the #include syntax instead. Evaluating this and preprocessing the files
now happens in a single step, done by the C preprocessor.

Change-Id: I6d0104b6274316fc736e84973502a4d6c2c9d6e0
Signed-off-by: Balint Dobszay &lt;balint.dobszay@arm.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Using the /include/ syntax, the include was evaluated by dtc, only after running
the preprocessor, therefore the .dtsi files were not preprocessed. This patch
adds the #include syntax instead. Evaluating this and preprocessing the files
now happens in a single step, done by the C preprocessor.

Change-Id: I6d0104b6274316fc736e84973502a4d6c2c9d6e0
Signed-off-by: Balint Dobszay &lt;balint.dobszay@arm.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Device tree changes to boot FreeBSD on FVPs</title>
<updated>2017-06-01T17:32:31+00:00</updated>
<author>
<name>Achin Gupta</name>
<email>achin.gupta@arm.com</email>
</author>
<published>2016-09-26T09:22:56+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/coreboot/arm-trusted-firmware.git/commit/?id=8d2c497715ca8bc60ab390c88fa69ddb4fae5993'/>
<id>8d2c497715ca8bc60ab390c88fa69ddb4fae5993</id>
<content type='text'>
FreeBSD does not understand #interrupt-map in a device tree. This prevents the
GIC from being set up correctly. This patch removes the #interrupt-map in the
device trees for the Base and Foundation FVPs. This enables correct boot of
FreeBSD on these platforms.

These changes have been tested with FreeBSD and an Ubuntu cloud image
(ubuntu-16.04-server-cloudimg-arm64-uefi1.img) to ensure compatibility with
Linux.

Change-Id: I1347acdcf994ec4b1dd843ba32af9951aa54db73
Signed-off-by: Achin Gupta &lt;achin.gupta@arm.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
FreeBSD does not understand #interrupt-map in a device tree. This prevents the
GIC from being set up correctly. This patch removes the #interrupt-map in the
device trees for the Base and Foundation FVPs. This enables correct boot of
FreeBSD on these platforms.

These changes have been tested with FreeBSD and an Ubuntu cloud image
(ubuntu-16.04-server-cloudimg-arm64-uefi1.img) to ensure compatibility with
Linux.

Change-Id: I1347acdcf994ec4b1dd843ba32af9951aa54db73
Signed-off-by: Achin Gupta &lt;achin.gupta@arm.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Add cache topology info to FVP DTBs</title>
<updated>2016-03-03T13:53:57+00:00</updated>
<author>
<name>Antonio Nino Diaz</name>
<email>antonio.ninodiaz@arm.com</email>
</author>
<published>2016-02-22T16:44:41+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/coreboot/arm-trusted-firmware.git/commit/?id=b1063d955bfed46de9e1bfdf58684f2da9837dcd'/>
<id>b1063d955bfed46de9e1bfdf58684f2da9837dcd</id>
<content type='text'>
From version 4.0 onwards, the ARM64 Linux kernel expects the device
tree to indicate the cache hierarchy. Failing to provide this
information results in the following warning message to be printed by
the kernel:

    `Unable to detect cache hierarchy from DT for CPU x`

All the FVP device trees provided in the TF source tree have been
modified to add this information.

Fixes ARM-software/tf-issues#325

Change-Id: I0ff888992e602b81a0fe1744a86151d625727511
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
From version 4.0 onwards, the ARM64 Linux kernel expects the device
tree to indicate the cache hierarchy. Failing to provide this
information results in the following warning message to be printed by
the kernel:

    `Unable to detect cache hierarchy from DT for CPU x`

All the FVP device trees provided in the TF source tree have been
modified to add this information.

Fixes ARM-software/tf-issues#325

Change-Id: I0ff888992e602b81a0fe1744a86151d625727511
</pre>
</div>
</content>
</entry>
</feed>
