refactor: make arm_gicv2.c and arm_gicv3.c commonThese files were meant to be platform specific, but they are genericenough that a range of platforms find them useful. However, refactoringthem is
refactor: make arm_gicv2.c and arm_gicv3.c commonThese files were meant to be platform specific, but they are genericenough that a range of platforms find them useful. However, refactoringthem is difficult as their use is platform specific. So copy them to ageneric place and redirect platforms to them.The new copies will remain for compatibility for platforms that don'twant to or can't take up upcoming refactors and the old copies can bedrastically refactored to make them more widely applicable.Change-Id: I056c8710cdda4d8a81b324d392762c29e02cdae1Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
show more ...
chore: remove MULTI_CONSOLE_API referencesMULTI_CONSOLE_API have been removed long time ago by commit 5b6ebeec9c99("Remove MULTI_CONSOLE_API flag and references to it") that's why removereference
chore: remove MULTI_CONSOLE_API referencesMULTI_CONSOLE_API have been removed long time ago by commit 5b6ebeec9c99("Remove MULTI_CONSOLE_API flag and references to it") that's why removereferences in platform.mk files and also in one rst which is not validanymore.Change-Id: I45f8e7db0a14ce63de62509100d8159b7aca2657Signed-off-by: Michal Simek <michal.simek@amd.com>
fix(tree): correct some typosfound using codespell (https://github.com/codespell-project/codespell).Signed-off-by: Elyes Haouas <ehaouas@noos.fr>Change-Id: I1bfa797e3460adddeefa916bb68e22beddaf6
fix(tree): correct some typosfound using codespell (https://github.com/codespell-project/codespell).Signed-off-by: Elyes Haouas <ehaouas@noos.fr>Change-Id: I1bfa797e3460adddeefa916bb68e22beddaf6373
build: always prefix section names with `.`Some of our specialized sections are not prefixed with the conventionalperiod. The compiler uses input section names to derive certain othersection name
build: always prefix section names with `.`Some of our specialized sections are not prefixed with the conventionalperiod. The compiler uses input section names to derive certain othersection names (e.g. `.rela.text`, `.relacpu_ops`), and these can bedifficult to select in linker scripts when there is a lack of adelimiter.This change introduces the period prefix to all specialized sectionnames.BREAKING-CHANGE: All input and output linker section names have been prefixed with the period character, e.g. `cpu_ops` -> `.cpu_ops`.Change-Id: I51c13c5266d5975fbd944ef4961328e72f82fc1cSigned-off-by: Chris Kay <chris.kay@arm.com>
refator(mediatek): move drivers folder in common to plat/mediatekWe plan to put some soc related drivers in common/drivers. To reduceconfision, we move them to plat/mediatek.Signed-off-by: Bo-Ch
refator(mediatek): move drivers folder in common to plat/mediatekWe plan to put some soc related drivers in common/drivers. To reduceconfision, we move them to plat/mediatek.Signed-off-by: Bo-Chen Chen <rex-bc.chen@mediatek.com>Change-Id: I6b344e660f40a23b15151aab073d3045b28f52aa
refactor(mediatek): partition MTK SiP SMC IDManage MTK SiP SMC ID with macros for 32/64 bit andfunction declaration code generation.Partition SMC ID with different exception level sources.Signe
refactor(mediatek): partition MTK SiP SMC IDManage MTK SiP SMC ID with macros for 32/64 bit andfunction declaration code generation.Partition SMC ID with different exception level sources.Signed-off-by: Leon Chen <leon.chen@mediatek.com>Change-Id: I8966cd94f0d825e7ebae08833d2bd9fceedfd45e
mediatek: Add jedec infoAdd jedec info for mt8173, mt8183, and mt8192.[1] http://www.softnology.biz/pdf/JEP106AV.pdfSigned-off-by: Hsin-Yi Wang <hsinyi@chromium.org>Change-Id: Iab36fd580131f0b
mediatek: Add jedec infoAdd jedec info for mt8173, mt8183, and mt8192.[1] http://www.softnology.biz/pdf/JEP106AV.pdfSigned-off-by: Hsin-Yi Wang <hsinyi@chromium.org>Change-Id: Iab36fd580131f0b09b27223fba0e9d1e187d9196
Merge "mt8173: Add support for new watchdog SMC" into integration
16550: Use generic console_t data structureSince now the generic console_t structure holds the UART base address aswell, let's use that generic location and drop the UART driver specificdata stru
16550: Use generic console_t data structureSince now the generic console_t structure holds the UART base address aswell, let's use that generic location and drop the UART driver specificdata structure at all.Change-Id: I5c2fe3b6a667acf80c808cfec4a64059a2c9c25fSigned-off-by: Andre Przywara <andre.przywara@arm.com>
mt8173: Add support for new watchdog SMCThis patch adds support for a new SMC that can be used to control thewatchdog. This allows for a cleaner separation of responsibilities whereall watchdog o
mt8173: Add support for new watchdog SMCThis patch adds support for a new SMC that can be used to control thewatchdog. This allows for a cleaner separation of responsibilities whereall watchdog operations have to go through Trusted Firmware and we couldno longer have kernel and firmware poking concurrently at the sameregister block.Signed-off-by: Julius Werner <jwerner@chromium.org>Signed-off-by: Evan Benn <evanbenn@chromium.org>Change-Id: I4844a3559d5c956a53a74a61dd5bc2956f0cce7b
Use correct type when reading SCR registerThe Secure Configuration Register is 64-bits in AArch64 and 32-bits inAArch32. Use u_register_t instead of unsigned int to reflect this.Change-Id: I51b6
Use correct type when reading SCR registerThe Secure Configuration Register is 64-bits in AArch64 and 32-bits inAArch32. Use u_register_t instead of unsigned int to reflect this.Change-Id: I51b69467baba36bf0cfaec2595dc8837b1566934Signed-off-by: Louis Mayencourt <louis.mayencourt@arm.com>
mediatek: Unify Platform specific defines for PSCI modulePLATFORM_CORE_COUNT - Unsigned intPLATFORM_CLUSTER_COUNT - Unsigned intPLATFORM_MAX_CPUS_PER_CLUSTER - Unsigned intPLATFORM_CORE_COUNT_PE
mediatek: Unify Platform specific defines for PSCI modulePLATFORM_CORE_COUNT - Unsigned intPLATFORM_CLUSTER_COUNT - Unsigned intPLATFORM_MAX_CPUS_PER_CLUSTER - Unsigned intPLATFORM_CORE_COUNT_PER_CLUSTER - Unsigned intSigned-off-by: Deepika Bhavnani <deepika.bhavnani@arm.com>Change-Id: Iee98ded027c049d9f12d4bb5888c0496b3251b4e
Remove redundant declarations.In further patches, we wish to enable -wredundant-decls check aspart of warning flags by default.Change-Id: I43410d6dbf40361a503c16d94ccf0f4cf29615b7Signed-off-by:
Remove redundant declarations.In further patches, we wish to enable -wredundant-decls check aspart of warning flags by default.Change-Id: I43410d6dbf40361a503c16d94ccf0f4cf29615b7Signed-off-by: Madhukar Pappireddy <madhukar.pappireddy@arm.com>
Enable -Wshadow alwaysVariable shadowing is, according to the C standard, permitted and validbehaviour. However, allowing a local variable to take the same name as aglobal one can cause confusion
Enable -Wshadow alwaysVariable shadowing is, according to the C standard, permitted and validbehaviour. However, allowing a local variable to take the same name as aglobal one can cause confusion and can make refactoring and bug huntingmore difficult.This patch moves -Wshadow from WARNING2 into the general warning groupso it is always used. It also fixes all warnings that this introducesby simply renaming the local variable to a new nameChange-Id: I6b71bdce6580c6e58b5e0b41e4704ab0aa38576eSigned-off-by: Justin Chadwell <justin.chadwell@arm.com>
mediatek: mt8173: refactor RTC and PMIC driversRefactor RTC and PMIC drivers.Signed-off-by: kenny liang <kenny.liang@mediatek.com>Change-Id: I74fca536cd61e00c962f080f1ba3759287682ecf
mediatek: mt8173: apply MULTI_CONSOLE framework- Switch uart driver from Mediatek 8250 to TI 16550- Enable MULTI_CONSOLESigned-off-by: kenny liang <kenny.liang@mediatek.com>Change-Id: Ie3948d9e
mediatek: mt8173: apply MULTI_CONSOLE framework- Switch uart driver from Mediatek 8250 to TI 16550- Enable MULTI_CONSOLESigned-off-by: kenny liang <kenny.liang@mediatek.com>Change-Id: Ie3948d9e64d05d29a1f69592792e277b680c4ed4
plat/mediatek/mt81*: Use new bl31_params_parse() helperThe Mediatek MT8173/MT8183 SoCs are prime candidates for switching tothe new bl31_params_parse() helper, so switch them over. This will allow
plat/mediatek/mt81*: Use new bl31_params_parse() helperThe Mediatek MT8173/MT8183 SoCs are prime candidates for switching tothe new bl31_params_parse() helper, so switch them over. This will allowBL2 implementations on these platforms to transparently switch over tothe version 2 parameter structure.Change-Id: I0d17ba6c455102d325a06503d2078a76d12b5debSigned-off-by: Julius Werner <jwerner@chromium.org>
Remove deprecated plat_crash_console_*The default implementations are defined in crash_console_helpers.S. Theplatforms have to define plat_crash_console_*.Implemented placeholders for platforms
Remove deprecated plat_crash_console_*The default implementations are defined in crash_console_helpers.S. Theplatforms have to define plat_crash_console_*.Implemented placeholders for platforms that were missing helpers.Change-Id: Iea60b6f851956916e421dfd8c34a62d96eb9148eSigned-off-by: Ambroise Vincent <ambroise.vincent@arm.com>
plat/arm: Sanitise includesUse full include paths like it is done for common includes.This cleanup was started in commit d40e0e08283a ("Sanitise includesacross codebase"), but it only cleaned co
plat/arm: Sanitise includesUse full include paths like it is done for common includes.This cleanup was started in commit d40e0e08283a ("Sanitise includesacross codebase"), but it only cleaned common files and drivers. Thispatch does the same to Arm platforms.Change-Id: If982e6450bbe84dceb56d464e282bcf5d6d9ab9bSigned-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
Sanitise includes across codebaseEnforce full include path for includes. Deprecate old paths.The following folders inside include/lib have been left unchanged:- include/lib/cpus/${ARCH}- inclu
Sanitise includes across codebaseEnforce full include path for includes. Deprecate old paths.The following folders inside include/lib have been left unchanged:- include/lib/cpus/${ARCH}- include/lib/el3_runtime/${ARCH}The reason for this change is that having a global namespace forincludes isn't a good idea. It defeats one of the advantages of havingfolders and it introduces problems that are sometimes subtle (becauseyou may not know the header you are actually including if there are twoof them).For example, this patch had to be created because two headers werecalled the same way: e0ea0928d5b7 ("Fix gpio includes of mt8173 platformto avoid collision."). More recently, this patch has had similarproblems: 46f9b2c3a282 ("drivers: add tzc380 support").This problem was introduced in commit 4ecca33988b9 ("Move include andsource files to logical locations"). At that time, there weren't toomany headers so it wasn't a real issue. However, time has shown thatthis creates problems.Platforms that want to preserve the way they include headers may add theremoved paths to PLAT_INCLUDES, but this is discouraged.Change-Id: I39dc53ed98f9e297a5966e723d1936d6ccf2fc8fSigned-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
Standardise header guards across codebaseAll identifiers, regardless of use, that start with two underscores arereserved. This means they can't be used in header guards.The style that this proje
Standardise header guards across codebaseAll identifiers, regardless of use, that start with two underscores arereserved. This means they can't be used in header guards.The style that this project is now to use the full name of the file incapital letters followed by 'H'. For example, for a file called"uart_example.h", the header guard is UART_EXAMPLE_H.The exceptions are files that are imported from other projects:- CryptoCell driver- dt-bindings folders- zlib headersChange-Id: I50561bf6c88b491ec440d0c8385c74650f3c106eSigned-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
Replace S-EL3 references by EL3The "Secure" prefix (S-ELx) is valid only for S-EL0 and S-EL1 but ismeaningless for EL3, since EL3 is always secure. Hence, the "S" prefixhas been removed from wher
Replace S-EL3 references by EL3The "Secure" prefix (S-ELx) is valid only for S-EL0 and S-EL1 but ismeaningless for EL3, since EL3 is always secure. Hence, the "S" prefixhas been removed from wherever it was used as "S-EL3".Change-Id: Icdeac9506d763f9f83d7297c7113aec7b85e9dbeSigned-off-by: John Tsichritzis <john.tsichritzis@arm.com>
mediatek: Migrate to new interfaces- mt6795: Migrate to new GIC interfaces.- Remove support for PSCI platform compatibility layer.- Migrate to bl31_early_platform_setup2().- Migrate from cm_init
mediatek: Migrate to new interfaces- mt6795: Migrate to new GIC interfaces.- Remove support for PSCI platform compatibility layer.- Migrate to bl31_early_platform_setup2().- Migrate from cm_init_context() to cm_init_my_context().- Use PLAT_VIRT_ADDR_SPACE_SIZE and PLAT_PHY_ADDR_SPACE_SIZE.- Update Makefile paths.- Use private definition of bl31_params_t.This is an incomplete migration, mt6795 doesn't currently compile.Change-Id: Icf9307637066cd6f2166524715e4f117f5ce2350Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
PSCI: Fix types of definitionsAlso change header guards to fix defects of MISRA C-2012 Rule 21.1.Change-Id: Ied0d4b0e557ef6119ab669d106d2ac5d99620c57Acked-by: Sumit Garg <sumit.garg@linaro.org>
PSCI: Fix types of definitionsAlso change header guards to fix defects of MISRA C-2012 Rule 21.1.Change-Id: Ied0d4b0e557ef6119ab669d106d2ac5d99620c57Acked-by: Sumit Garg <sumit.garg@linaro.org>Acked-by: Anson Huang <Anson.Huang@nxp.com>Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
Fix types of arch.h definitionsDefine the values as unsigned int or unsigned long long based on theactual size of the register. This prevents subtle issues caused byhaving a type that is too smal
Fix types of arch.h definitionsDefine the values as unsigned int or unsigned long long based on theactual size of the register. This prevents subtle issues caused byhaving a type that is too small. For example: #define OPTION_ENABLE 0x3 #define OPTION_SHIFT 32 uint64_t mask = OPTION_ENABLE << OPTION_SHIFT;Because OPTION_ENABLE fits in an int, the value is considered an int.This means that, after shifting it 32 places to the left, the finalresult is 0. The correct way to define the values is: #define OPTION_ENABLE ULL(0x3) #define OPTION_SHIFT U(32)In this case, the compiler is forced to use a 64 bit value from thestart, so shifting it 32 places to the left results in the expectedvalue.Change-Id: Ieaf2ffc2d8caa48c622db011f2aef549e713e019Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
1234