Commit graph

16153 commits

Author SHA1 Message Date
Chris Kay
7260474f05 chore(deps): update pytest for cot-dt2c
This resolves Dependabot vulnerability alert #19, resolving a DoS issue
in a dependency of pytest.

Change-Id: I2959da88d3d0422e15d25df5820dfd91f474d6ca
Signed-off-by: Chris Kay <chris.kay@arm.com>
2025-01-06 15:36:00 +00:00
Raymond Mao
4d8b4ca0f5 feat(handoff): common API for TPM event log handoff
Create a common BL2 API to add a TE for TPM event log.

Change-Id: I459e70f40069aa9ea0625977e0bad8ec316439e6
Signed-off-by: Raymond Mao <raymond.mao@linaro.org>
2025-01-06 07:20:37 -08:00
Raymond Mao
9821775657 feat(handoff): transfer entry ID for TPM event log
Add TE ID for TPM event log handoff.

Change-Id: Idbaaeeee59aaee99d6ec75066562702985ef8204
Signed-off-by: Raymond Mao <raymond.mao@linaro.org>
2025-01-06 07:18:39 -08:00
Raymond Mao
7ad6775bde fix(qemu): fix register convention in BL31 for qemu
The commit with Change-Id:Ie417e054a7a4c192024a2679419e99efeded1705
updated the register convention r1/x1 values but missing necessary
changes in BL31.
As a result, a system panic observed during setup for BL32 when
TRANSFER_LIST is enabled due to unexpected arguments.
This patch is to fix this issue for qemu.

Change-Id: I42e581c5026f0f66d3b114204b4dff167a9bc6ae
Signed-off-by: Raymond Mao <raymond.mao@linaro.org>
2025-01-06 07:10:53 -08:00
Raymond Mao
c0688c55bb fix(handoff): fix register convention in opteed
The commit with Change-Id:Ie417e054a7a4c192024a2679419e99efeded1705
updated the register convention r1/x1 values but missing necessary
changes in BL31.
As a result, a system panic observed during setup for BL32 when
TRANSFER_LIST is enabled due to unexpected arguments.
This patch is to fix this issue for optee.

Change-Id: I13e116e7cb5a7d89fafc11d20295cffbf24793ab
Signed-off-by: Raymond Mao <raymond.mao@linaro.org>
2025-01-06 07:08:03 -08:00
Boyan Karatotev
fc7dca72ba refactor(cm): change owning security state when a feature is disabled
SPE and TRBE don't have an outright EL3 disable, there are only
constraints on what's allowed. Since we only enable them for NS at the
moment, we want NS to own the buffers even when the feature should be
"disabled" for a world. This means that when we're running in NS
everything is as normal but when running in S/RL then tracing is
prohibited (since the buffers are owned by NS). This allows us to fiddle
with context a bit more without having to context switch registers.

Change-Id: Ie1dc7c00e4cf9bcc746f02ae43633acca32d3758
Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
2025-01-06 07:38:23 +00:00
Levi Yun
ddf72e6a36 feat(ff-a): add FFA_MEM_PERM_GET/SET_SMC64
FF-A memory management protocol v1.1 specifies not only
FFA_MEM_PERM_GET_SMC32/FFA_MEM_PERM_SET_SMC32 but also
FFA_MEM_PERM_GET_SMC64/FFA_MEM_PERM_SET_SMC64.

Change former FFA_MEM_PERM_GET/SET definitions to separate operations
and add handler for FFA_MEM_PERM_GET/SET_SMC64 in spmc_smc_handler().

Signed-off-by: Levi Yun <yeoreum.yun@arm.com>
Change-Id: I175063654703db26c1ffc3cfd7fa428b94d2bfc9
2025-01-03 14:48:32 +00:00
Levi Yun
4053a647f6 feat(el3-spmc): support Hob list to boot S-EL0 SP
The EDKII/StandaloneMm module runs as a S-EL0 partition
on top of the EL3 FF-A SPMC.

In the past the StandaloneMm partition received its boot information through
the use of a device tree (DT) passed through the FF-A boot protocol.
The StandaloneMm itself converted the DT into a HOB.

To better match the UEFI PI spec,
the EL3 SPMC must now produce the HOB including the PHIT
(Phase Handoff Information Table) as first item in the HOB list.
The SPMC then passes the HOB through the FF-A boot protocol for
the StandaloneMm consumption.

This discards the use of a DT between the SPMC and
the StandaloneMm partition.

Signed-off-by: Levi Yun <yeoreum.yun@arm.com>
Change-Id: I22fb02c710169bd5a5ba1d1f60dce977a5a59ab6
2025-01-03 14:48:27 +00:00
Levi Yun
357f28db6b feat(synquacer): add support Hob creation
When StandaloneMm used with SPM_MM, TF-A should create
PHIT Hob to boot it.
This patch supports Hob creation for StandaloneMm in synquacer platform.

Signed-off-by: Levi Yun <yeoreum.yun@arm.com>
Change-Id: Ifa3ae1f0aa37f389aabb14f48be307502ae6fc2c
2025-01-03 14:45:00 +00:00
Levi Yun
06cec933de fix(fvp): exclude extend memory map TZC regions
The commit
  1922875233 ("fix(spm-mm): carve out NS buffer TZC400 region")
removes overlaps of ns shared buffer in secure memory region.
Unfortunately, this separation increases 1 region and over maximum
number of TZC programmable regions when they include
extended memory map regions (DRAM3 to DRAM6).

This causes boot failure of StandaloneMm with spmc_el3 && sp_el0 with

    ASSERT: drivers/arm/tzc/tzc400.c:256.

To fix this, like SPM_MM, exclude setting extended memory map regions when
it uses SPMC_AT_EL3 && SPC_AT_EL3_SEL0_SP.

Signed-off-by: Levi Yun <yeoreum.yun@arm.com>
Change-Id: I2d40bea066ca030050dfe951218cd17171010676
2025-01-03 14:45:00 +00:00
Levi Yun
8416e7917f feat(fvp): add StandaloneMm manifest in fvp
Support StandaloneMm running with FF-A as S-EL0 SP
when TF-A is built with EL3 SPMC partition manager.

For this
    1. add manifest file describing StandaloneMm partition.
    2. add number of page mapping area.
    3. StandaloneMm should use SRAM with 512K.

while enabling, StandaloneMm, BL1 image requires more size:
   aarch64-none-elf/bin/ld: BL31 image has exceeded its limit.
   aarch64-none-elf/bin/ld: region `RAM' overflowed by 16384 bytes

So, when using SRAM size with 512K configuration,
increase size limit of BL1 binary.

Signed-off-by: Levi Yun <yeoreum.yun@arm.com>
Change-Id: Idaa1db510340ebb812cfd13588610b2eea941918
2025-01-03 14:45:00 +00:00
Levi Yun
9ae5f67306 feat(spm): use xfer list with Hob list in SPM_MM
According to Platform Initialization (PI) Specification [1] and
Discussion on edk2 mailing list [2],
StandaloneMm shouldn't create Hob but it should be passed from TF-A.
IOW, TF-A should pass boot information via PHIT Hob to initialise
StandaloneMm properly.

This patch applies using transfer list with PHIT Hob list [3] for
delivering boot information to StandaloneMm.

Link: https://uefi.org/sites/default/files/resources/PI_Spec_1_6.pdf [1]
Link: https://edk2.groups.io/g/devel/topic/103675962#114283 [2]
Link: https://github.com/FirmwareHandoff/firmware_handoff [3]
Signed-off-by: Levi Yun <yeoreum.yun@arm.com>
Change-Id: I3df71a7679abf9859612afc8a5be7b2381007311
2025-01-03 14:45:00 +00:00
Olivier Deprez
e126ed1ae7 fix(rme): remove ENABLE_PIE restriction
The combination of ENABLE_RME=1 + ENABLE_PIE=1 build options is
prevented currently for no good reason. ENABLE_PIE in a 4 worlds
configuration is mostly for building BL31 with PIE support.
BL1 / BL2 (BL2_RUNS_AT_EL3=1) remain non-PIE. BL32 (TSP) is PIE capable
but typically unused in this configuration. TRP doesn't support PIE
but is loaded in place so isn't affected by this option.

Signed-off-by: Olivier Deprez <olivier.deprez@arm.com>
Change-Id: Ia60e295534a92cb1b4e3eb88b3e240aea4f4fe1d
2025-01-03 11:14:48 +01:00
Yann Gautier
08c3d26dc1 Merge "chore(deps): bump jinja2 in the pip group across 1 directory" into integration 2025-01-02 23:46:58 +01:00
Bhupesh Sharma
05533d9992 fix(morello): remove stray white-space in 'morello/platform.mk'
Stray white-space in 'morello/platform.mk' to fix the
following compilation error:

$ make PLAT=morello TARGET_PLATFORM=2 all
  plat/arm/board/morello/platform.mk:9: *** recipe commences
  before first target.  Stop.

Fix the same.

While at it also update the year range in the
'Copyright' field.

Change-Id: Id05e4968952049df5ffbe0d25dd17f3aa3a035f7
Signed-off-by: Bhupesh Sharma <Bhupesh.Sharma@arm.com>
2025-01-02 23:34:29 +01:00
dependabot[bot]
56bf3fd268 chore(deps): bump jinja2 in the pip group across 1 directory
Bumps the pip group with 1 update in the / directory: [jinja2](https://github.com/pallets/jinja).

Updates `jinja2` from 3.1.4 to 3.1.5
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/jinja/compare/3.1.4...3.1.5)

---
updated-dependencies:
- dependency-name: jinja2
  dependency-type: indirect
  dependency-group: pip
...

Change-Id: I4502ed17a6ce37f53ac64370a5d7fe756875fee6
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Chris Kay <chris.kay@arm.com>
2025-01-02 14:25:11 +00:00
Olivier Deprez
723c4c2d51 Merge "feat(aarch64): add DBGPRCR_EL1 register accessors" into integration 2025-01-02 11:47:20 +01:00
Chris Kay
bdcef87cf5 feat(aarch64): add DBGPRCR_EL1 register accessors
This is a small change adding accessor functions for the Debug Power
Control register (DBGPRCR_EL1) to the common architectural helpers.

Change-Id: I72261fbf0395d900347b46af320093ed946aa73d
Signed-off-by: Chris Kay <chris.kay@arm.com>
2025-01-02 11:23:55 +01:00
Manish V Badarkhe
9244331f35 Merge "fix(drtm): adjust Event Log size in DLME" into integration 2024-12-31 16:00:36 +01:00
Manish V Badarkhe
5d8c721836 Merge "fix(cert-create): add default keysize to Brainpool ECDSA" into integration 2024-12-31 13:44:30 +01:00
Manish Pandey
5808766210 Merge changes from topic "refactor-arm-key-files" into integration
* changes:
  feat(mbedtls): optimize SHA256 for reduced memory footprint
  refactor(arm): rename ARM_ROTPK_HEADER_LEN
  docs(arm): update docs to reflect rotpk key changes
  feat(arm): use provided algs for (swd/p)rotpk
  feat(arm): use the provided hash alg to hash rotpk
2024-12-31 13:43:33 +01:00
Maxime Méré
0da16fe32f fix(cert-create): add default keysize to Brainpool ECDSA
By default, the ECDSA Brainpool regular and ECDSA Brainpool twisted
algorithms support 256-bit sized keys. Not defining this leads to
an error indicating that '256' is not a valid key size for ECDSA
Brainpool. KEY_SIZES matrix must have a value in its table to avoid
problems when KEY_SIZE is defined.

Signed-off-by: Maxime Méré <maxime.mere@foss.st.com>
Change-Id: I34886659315f59a9582dcee1d92d0e24d4a4138e
2024-12-31 11:48:43 +01:00
Manish V Badarkhe
b57468b3d0 feat(mbedtls): optimize SHA256 for reduced memory footprint
Set MBEDTLS_SHA256_SMALLER as the default mbedTLS configuration
to minimize memory usage, trading off some processing speed for
a smaller footprint.

Change-Id: Ibfa6e115a0ed94096b9acdd9e237f3fb5457071d
Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
2024-12-30 14:35:15 +00:00
Ryan Everett
bd9b01c683 refactor(arm): rename ARM_ROTPK_HEADER_LEN
This variable had a misleading name, as it is the length
of the header only when the ROTPK is a hash.
Also rename arm_rotpk_header to match the new pattern.

Change-Id: I36c29998eebf50c356a6ca959ec9223c8837b540
Signed-off-by: Ryan Everett <ryan.everett@arm.com>
2024-12-30 12:32:34 +01:00
Ryan Everett
4639f8909b docs(arm): update docs to reflect rotpk key changes
The hashing algorithm for the rotpk is now HASH_ALG,
not always sha-256. The public development keys are
no longer in the repository and are now generated at
run-time, updates the documentation to reflect this.

Change-Id: Ic336f7aca858e9b6a1af6d6e6dc5f4aa428da179
Signed-off-by: Ryan Everett <ryan.everett@arm.com>
2024-12-30 12:32:22 +01:00
Ryan Everett
da57b6e3cf feat(arm): use provided algs for (swd/p)rotpk
No longer hard code SHA-256 hashed  rsa dev keys,
now the keys can use pair of key alg: rsa, p256, p384
and hash alg: sha256, sha384, sha512.

All public keys are now generated at build-time from the dev
keys.

Change-Id: I669438b7d1cd319962c4a135bb0e204e44d7447e
Signed-off-by: Ryan Everett <ryan.everett@arm.com>
2024-12-30 12:32:10 +01:00
Ryan Everett
d51981e15d feat(arm): use the provided hash alg to hash rotpk
No longer hard code SHA-256 hashed dev rotpks, instead
use the algorithm given by HASH_ALG. This means that
we no longer need the plat_arm_configs (once the protpk and
swd_rotpk are also updated to use HASH_ALG).

The rot public key is now generated at build time, as is
the header for the key.

Also support some default 3k and 4k RSA keys.

Change-Id: I33538124aeb4fa7d67918d878d17f2a84d3a6756
Signed-off-by: Ryan Everett <ryan.everett@arm.com>
2024-12-30 12:31:59 +01:00
Hsin-Hsiung Wang
79d1c68764 refactor(mediatek): refactor the data type of the return value
Change the data type regarding the return value of smc_handler_t

Change-Id: I208e7f131da8771ac2f41682ca0d97de468410ee
Signed-off-by: Hsin-Hsiung Wang <hsin-hsiung.wang@mediatek.com>
2024-12-26 01:27:06 +01:00
Manish Pandey
999503d285 Merge changes Ic746571b,I1926cab9,Id70162e9,I3a9b014e,Ic99adba1, ... into integration
* changes:
  feat(mt8196): enable APU on mt8196
  feat(mt8196): add APU SMMU hardware semaphore operations
  feat(mt8196): add smpu protection for APU secure memory
  feat(mt8196): add APU RCX DevAPC setting
  feat(mt8196): add APU kernel control operations
  feat(mt8196): add APU power on/off functions
  feat(mt8196): add APUMMU setting
  feat(mt8196): enable apusys mailbox mpu protection
  feat(mt8196): enable apusys security control
  feat(mt8196): add APUSYS AO DevAPC setting
  feat(mt8196): add APU power-on init flow
2024-12-24 14:41:31 +01:00
Bipin Ravi
9c9c94a6bc Merge "docs(maintainers): update marvell maintainer" into integration 2024-12-23 15:36:24 +01:00
Manish Pandey
f3bb4c0606 Merge "fix(neoverse-rd): initialize timer before use in smmuv3_poll" into integration 2024-12-23 13:07:53 +01:00
Sieu Mun Tang
bf3877e072 fix(intel): handle cold reset via physical reset switch
On the Agilex5 platform when cold reset is issued via CLI application
in the OS, it is received in the BL31 via a SMC call and handled
accordingly like flush/invalidate the caches. However, when the cold
reset is issued via an external switch these handlings are missed.
This patch addresses those missed cache operations.

Also, this patch is to restoring SCR_EL3 NS bit to its previous value
in order to avoid unintended behavior especially if subsequent code
expects the SCR_EL3 register to be in its original configuration.

Change-Id: I9737f2db649e483ba61fffa6eeb0b56a9d15074a
Signed-off-by: Girisha Dengi <girisha.dengi@intel.com>
Signed-off-by: Sieu Mun Tang <sieu.mun.tang@intel.com>
2024-12-23 17:52:41 +08:00
Jaiprakash Singh
508a2f1c87 docs(maintainers): update marvell maintainer
Add Jaiprakash Singh as marvell maintainer

Change-Id: Ica924c0502b0a271b0368255841ef413391de959
Signed-off-by: Jaiprakash Singh <jaiprakashs@marvell.com>
2024-12-23 01:48:05 -08:00
Maheedhar Bollapalli
baeeaddff4 fix(versal-net): add unsigned suffix to match data type
This corrects the MISRA violation C2012-7.2:
A “u” or “U” suffix shall be applied to all integer constants that
are represented in an unsigned type.
Appended "u" suffix to integer constant to represent it as
unsigned type.

Change-Id: I08b055134d6bd0380cca1e5b6ee527d6045a76c5
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-12-23 09:14:16 +00:00
Maheedhar Bollapalli
4b2324042a fix(versal): add unsigned suffix to match data type
This corrects the MISRA violation C2012-7.2:
A “u” or “U” suffix shall be applied to all integer constants that
are represented in an unsigned type.
Appended "U" suffix to integer constant to represent it as
unsigned type.

Change-Id: I76f3c5903ed21ecba4d600e879d93026fc744f6c
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-12-23 09:14:16 +00:00
Maheedhar Bollapalli
9f51da5e2e fix(versal2): add missing curly braces
This corrects the MISRA violation C2012-15.6:
The body of an iteration-statement or a selection-statement shall
be a compound-statement.
Enclosed statement body within the curly braces.

Change-Id: I546cf47edc6332ee193b4771c88ae30553687f19
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-12-23 09:14:10 +00:00
Maheedhar Bollapalli
9334fdf971 fix(versal-net): add missing curly braces
This corrects the MISRA violation C2012-15.6:
The body of an iteration-statement or a selection-statement shall
be a compound-statement.
Enclosed statement body within the curly braces.

Change-Id: I8de33e774178720411313021a7b157045d3cefa0
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-12-23 09:04:28 +00:00
Nithin G
e4a0c44f69 fix(zynqmp): add missing curly braces
This corrects the MISRA violation C2012-15.6:
The body of an iteration-statement or a selection-statement shall
be a compound-statement.
Enclosed statement body within the curly braces.

Change-Id: I8941f3c713586c36396e1f3731b99ffadc28c6e8
Signed-off-by: Nithin G <nithing@amd.com>
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-12-23 09:04:23 +00:00
Joanna Farley
9ef62bd88d Merge changes from topic "xlnx_fix_plat_data_types" into integration
* changes:
  fix(versal2): typecast operands to match data type
  fix(versal): typecast operands to match data type
  fix(versal-net): typecast operands to match data type
  fix(xilinx): typecast operands to match data type
  fix(zynqmp): typecast operands to match data type
  fix(versal-net): typecast operands to match data type
  fix(versal): typecast operands to match data type
  fix(xilinx): typecast operands to match data type
  fix(zynqmp): typecast operands to match data type
  fix(versal2): typecast expressions to match data type
  fix(versal-net): typecast expressions to match data type
  fix(versal): typecast expressions to match data type
  fix(xilinx): typecast expressions to match data type
  fix(zynqmp): typecast expressions to match data type
  fix(zynqmp): align essential type categories
  fix(zynqmp): typecast expression to match data type
  fix(xilinx): typecast expression to match data type
2024-12-23 09:52:49 +01:00
Sammit Joshi
64ff172abe fix(neoverse-rd): initialize timer before use in smmuv3_poll
Commit a6485b2 ("refactor(delay-timer): add timer callback
functions") introduced a requirement for timer-related APIs
to have a timer object initialized before use. This caused
assertion failures in SMMU routines on Neoverse platforms,
as they relied on timer APIs.

Resolve this issue by initializing the timer early during
platform boot to set up the timer_ops object properly.

Change-Id: I3d9ababdb7897185f23e9ccf982b9aab6c666b8c
Signed-off-by: Sammit Joshi <sammit.joshi@arm.com>
2024-12-23 13:06:26 +05:30
Maheedhar Bollapalli
07be78d500 fix(versal2): typecast operands to match data type
This corrects the MISRA violation C2012-10.3:
The value of an expression shall not be assigned to an object with a
narrower essential type or of a different essential type category.
The condition is explicitly checked against 0U, appending 'U' and
typecasting for unsigned comparison.

Change-Id: I37ec9f8d716347df9acea5eb084f5a423a32a058
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-12-20 11:01:50 +00:00
Maheedhar Bollapalli
8e4d5c6db0 fix(versal): typecast operands to match data type
This corrects the MISRA violation C2012-10.3:
The value of an expression shall not be assigned to an object with a
narrower essential type or of a different essential type category.
The condition is explicitly checked against 0U, appending 'U' and
typecasting for unsigned comparison.

Change-Id: Ie82297e7eb5faa5d45b1a613c59516052e0c5ecb
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-12-20 11:01:46 +00:00
Maheedhar Bollapalli
d51c8e4c65 fix(versal-net): typecast operands to match data type
This corrects the MISRA violation C2012-10.3:
The value of an expression shall not be assigned to an object with a
narrower essential type or of a different essential type category.
The condition is explicitly checked against 0U, appending 'U' and
typecasting for unsigned comparison.

Change-Id: Ie2d32d5554d251cde8a9c8b7c7a85666ea505a15
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-12-20 11:01:42 +00:00
Maheedhar Bollapalli
3a1a2dae10 fix(xilinx): typecast operands to match data type
This corrects the MISRA violation C2012-10.3:
The value of an expression shall not be assigned to an object with a
narrower essential type or of a different essential type category.
The condition is explicitly checked against 0U, appending 'U' and
typecasting for unsigned comparison.

Change-Id: I1606422aadfd64b283fd9948b6dadcddecdf61e0
Signed-off-by: Nithin G <nithing@amd.com>
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-12-20 11:01:37 +00:00
Maheedhar Bollapalli
6ae9562473 fix(zynqmp): typecast operands to match data type
This corrects the MISRA violation C2012-10.3:
The value of an expression shall not be assigned to an object with a
narrower essential type or of a different essential type category.
The condition is explicitly checked against 0U, appending 'U' and
typecasting for unsigned comparison.

Change-Id: I141fbc554265173df0ca90c2ddc7f28137c6b0f1
Signed-off-by: Nithin G <nithing@amd.com>
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-12-20 11:01:34 +00:00
Maheedhar Bollapalli
3dc93e5139 fix(versal-net): typecast operands to match data type
This corrects the MISRA violation C2012-10.1:
Operands shall not be of an inappropriate essential type.
The condition is explicitly checked against 0U, appending 'U' and
typecasting for unsigned comparison.

Change-Id: If0a6ffa84c4d1ce5ae08337a4eb20c9a221d7795
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-12-20 11:01:28 +00:00
Maheedhar Bollapalli
9b89de5fc4 fix(versal): typecast operands to match data type
This corrects the MISRA violation C2012-10.1:
Operands shall not be of an inappropriate essential type.
The condition is explicitly checked against 0U, appending 'U' and
typecasting for unsigned comparison.

Change-Id: I41b08349fc6023458ffc6e126f58293a9ef37422
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-12-20 11:01:23 +00:00
Maheedhar Bollapalli
7d15b94ba3 fix(xilinx): typecast operands to match data type
This corrects the MISRA violation C2012-10.1:
Operands shall not be of an inappropriate essential type.
The condition is explicitly checked against 0U, appending 'U' and
typecasting for unsigned comparison.

Change-Id: I675f1b2ac408b70a9ca307fb5161ebb8e597897c
Signed-off-by: Nithin G <nithing@amd.com>
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-12-20 11:01:18 +00:00
Maheedhar Bollapalli
2863b0c466 fix(zynqmp): typecast operands to match data type
This corrects the MISRA violation C2012-10.1:
Operands shall not be of an inappropriate essential type.
The condition is explicitly checked against 0U, appending 'U' and
typecasting for unsigned comparison.

Change-Id: I016f9df3811d80cd230257b5533d4d15a15fe14f
Signed-off-by: Nithin G <nithing@amd.com>
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-12-20 11:01:14 +00:00
Maheedhar Bollapalli
fbc415d204 fix(versal2): typecast expressions to match data type
This corrects the MISRA violation C2012-10.4:
Both operands of an operator in which the usual arithmetic
conversions are performed shall have the same essential type
category.
The condition is explicitly checked against 0U, appending 'U' and
typecasting for unsigned comparison.

Change-Id: Ia352e3cf261b52777c1c431701e1e6c3be9cd279
Signed-off-by: Maheedhar Bollapalli <maheedharsai.bollapalli@amd.com>
2024-12-20 11:01:09 +00:00