| #
bce2f88a |
| 19-Nov-2023 |
Vincent Mailhol <mailhol.vincent@wanadoo.fr> |
tree-wide: remove useless newline character in *MSG() messages
The *MSG() macros take care of printing a newline. Adding a newline character ('\n') is useless. Remove it.
Signed-off-by: Vincent Mai
tree-wide: remove useless newline character in *MSG() messages
The *MSG() macros take care of printing a newline. Adding a newline character ('\n') is useless. Remove it.
Signed-off-by: Vincent Mailhol <mailhol.vincent@wanadoo.fr> Acked-by: Etienne Carriere <etienne.carriere@foss.st.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
f354a5d8 |
| 05-Apr-2023 |
Gatien Chevallier <gatien.chevallier@foss.st.com> |
core: replace _fdt_ prefix with fdt_ for device tree API
As per upstream discussion, there is no reason to keep _fdt_ prefix. Replaces it with fdt_ for all occurrences.
Signed-off-by: Gatien Cheval
core: replace _fdt_ prefix with fdt_ for device tree API
As per upstream discussion, there is no reason to keep _fdt_ prefix. Replaces it with fdt_ for all occurrences.
Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| #
a5d5bbc8 |
| 25-Mar-2022 |
Vesa Jääskeläinen <vesa.jaaskelainen@vaisala.com> |
core: dt: Make it possible to alter device mapping
In case where IP core device is TrustZone aware and is used by both REE and TEE dt_map_dev() would normally cause non-secure mapping for the device
core: dt: Make it possible to alter device mapping
In case where IP core device is TrustZone aware and is used by both REE and TEE dt_map_dev() would normally cause non-secure mapping for the device.
When selected registers in IP core are only accessible by TrustZone device needs to be mapped with MEM_AREA_IO_SEC to cause actual AXI memory access be made with AWPROT[1] and ARPROT[1] bits configured properly.
This adds new argument for dt_map_dev() to enable forcing mapping to be secure or non-secure.
Signed-off-by: Vesa Jääskeläinen <vesa.jaaskelainen@vaisala.com> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| #
9567aeeb |
| 14-Jan-2022 |
Clement Faure <clement.faure@nxp.com> |
drivers: imx_wdog: fix compilation warning on watchdog driver
$ make PLATFORM=imx-mx7ulpevk CFG_DT=n core/drivers/imx_wdog.c:42:13: warning: ext_reset_output defined but not used [-Wunused-variable]
drivers: imx_wdog: fix compilation warning on watchdog driver
$ make PLATFORM=imx-mx7ulpevk CFG_DT=n core/drivers/imx_wdog.c:42:13: warning: ext_reset_output defined but not used [-Wunused-variable] 42 | static bool ext_reset_output; | ^~~~~~~~~~~~~~~~
Signed-off-by: Clement Faure <clement.faure@nxp.com> Acked-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| #
e3db86ba |
| 02-Dec-2021 |
Ricardo Salveti <ricardo@foundries.io> |
drivers: imx_wdog: fix defined but not used with CFG_DT=n
Fix a defined but not used error when building with CFG_DT by moving dt_wdog_match_table under the same ifdef block used by the device-tree
drivers: imx_wdog: fix defined but not used with CFG_DT=n
Fix a defined but not used error when building with CFG_DT by moving dt_wdog_match_table under the same ifdef block used by the device-tree block.
Acked-by: Clement Faure <clement.faure@nxp.com> Reviewed-by: Rouven Czerwinski <r.czerwinski@pengutronix.de> Signed-off-by: Ricardo Salveti <ricardo@foundries.io>
show more ...
|
| #
c2e4eb43 |
| 23-May-2021 |
Anton Rybakov <a.rybakov@omp.ru> |
core_mmu: fix phys_to_virt() to check length
phys_to_virt() function without length parameter doesn`t always have ability to find the correct mapping for requested physical address. This is because
core_mmu: fix phys_to_virt() to check length
phys_to_virt() function without length parameter doesn`t always have ability to find the correct mapping for requested physical address. This is because physical address can be mapped in the same time in different virtual regions with different length. So the first found region which contains the requested physical address possibly doesn`t have enough mapped data. This is fixed by adding the length parameter to phys_to_virt() function. Length parameter can be set to 1 if caller knows that requested (pa + len) doesn`t cross mapping granule boundary.
core_mmu_get_va() and io_pa_or_va() functions now are take length parameter too as they based on phys_to_virt() in case of MMU enabled.
Signed-off-by: Anton Rybakov <a.rybakov@omp.ru> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by: Etienne Carriere <etienne.carriere@linaro.org> Tested-by: Etienne Carriere <etienne.carriere@linaro.org> (stm32mp1-157C_DK2) Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx6dlsabreauto) Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx6dlsabresd) Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx6qpsabreauto) Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx6sllevk) Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx6ulevk) Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx6ullevk) Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx6ulzevk) Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx7dsabresd) Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx7ulpevk) Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx8mmevk) Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx8mnevk) Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx8mqevk) Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx8mpevk) Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx8qmmek) Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx8qxpmek)
show more ...
|
| #
f85678c1 |
| 26-Apr-2021 |
Igor Opaniuk <igor.opaniuk@foundries.io> |
imx: pm: add support for reset2 function
Add support for SYSTEM_RESET2, which asserts WDOG-generated reset signal WDOG_RESET_B_DEB (internal reset).
For additional details check WDOGx_WCR fields de
imx: pm: add support for reset2 function
Add support for SYSTEM_RESET2, which asserts WDOG-generated reset signal WDOG_RESET_B_DEB (internal reset).
For additional details check WDOGx_WCR fields description in iMX Applications Processor Reference Manual.
Acked-by: Clement Faure <clement.faure@nxp.com> Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io>
show more ...
|
| #
b6ca39d5 |
| 11-Oct-2020 |
Rouven Czerwinski <r.czerwinski@pengutronix.de> |
driver: imx_wdog: search node by compatible
Instead of searching the node by hard-coded paths, search the node by the compatible, which should be more robust against upstream device tree changes. Up
driver: imx_wdog: search node by compatible
Instead of searching the node by hard-coded paths, search the node by the compatible, which should be more robust against upstream device tree changes. Upstream recently changed the naming of "aips-bus" to "bus", breaking the OP-TEE i.MX Watchdog driver in the process, since the path can no longer be found within the tree.
Signed-off-by: Rouven Czerwinski <r.czerwinski@pengutronix.de> Tested-by: Ricardo Salveti <ricardo@foundries.io> (imx6ull evk, imx6q apalis-imx6, imx8mm evk, imx8mq evk) Acked-by: Clement Faure <clement.faure@nxp.com>
show more ...
|
| #
223f9e05 |
| 11-Oct-2020 |
Rouven Czerwinski <r.czerwinski@pengutronix.de> |
drivers: imx_wdog: default initialize variables
Set all function variables to sensible defaults.
Signed-off-by: Rouven Czerwinski <r.czerwinski@pengutronix.de>
|
| #
65401337 |
| 07-Jun-2020 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: remove generic_ from generic_boot
Now that the CFG_GENERIC_BOOT configuration flag has been removed also remove "generic_" prefix from and in the related files.
Acked-by: Etienne Carriere <et
core: remove generic_ from generic_boot
Now that the CFG_GENERIC_BOOT configuration flag has been removed also remove "generic_" prefix from and in the related files.
Acked-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jerome Forissier <jerome@forissier.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
a2fc83d1 |
| 11-May-2020 |
Jerome Forissier <jerome@forissier.org> |
core: always build libfdt
libfdt is built only when CFG_DT=y. As a result, the libfdt header files are only available when CFG_DT=y and any source file that makes optional use of the library has to
core: always build libfdt
libfdt is built only when CFG_DT=y. As a result, the libfdt header files are only available when CFG_DT=y and any source file that makes optional use of the library has to guard the #include <libfdt.h> with a #ifdef CFG_DT ... #endif block. This contrasts with other features which don't require such guards.
This patch builds libfdt unconditionally and removes the include guards. No change is expected in the binaries.
Signed-off-by: Jerome Forissier <jerome@forissier.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| #
3639b55f |
| 04-May-2020 |
Jerome Forissier <jerome@forissier.org> |
core: rename KEEP_INIT() and KEEP_PAGER()
The KEEP_INIT() and KEEP_PAGER() macros are quite often used in C files immediately after the definition of a function or a structure without a blank line i
core: rename KEEP_INIT() and KEEP_PAGER()
The KEEP_INIT() and KEEP_PAGER() macros are quite often used in C files immediately after the definition of a function or a structure without a blank line in between. This style mimics what the Linux kernel does for a similar use cases: EXPORT_SYMBOL().
Unfortunately, the checkpatch.pl tool expects a blank line after structure and function definitions, except for a few special cases such as EXPORT_SYMBOL(). As a result we often get unwanted warnings when we use KEEP_INIT() and KEEP_PAGER(). Among the exceptions are all words starting with DECLARE_ or DEFINE_, so by renaming our macros we could avoid the checkpatch warnings.
This commit renames KEEP_INIT() and KEEP_PAGER() to DECLARE_KEEP_INIT() and DECLARE_KEEP_PAGER(), respectively. The assembler macros are also renamed for consistency. No functional change is expected.
Signed-off-by: Jerome Forissier <jerome@forissier.org> Acked-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
922308b3 |
| 11-Dec-2017 |
Peng Fan <peng.fan@nxp.com> |
drivers: imx_wdog: update wdog support for mx7ulp
Update watchdog for imx7ulp SoC support.
Signed-off-by: Peng Fan <peng.fan@nxp.com> Acked-by: Etienne Carriere <etienne.carriere@linaro.org>
|
| #
918bb3a5 |
| 12-Feb-2019 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: upgrade from write32() to io_write32() and friends
Replace use of readX() and writeX() with io_readX() and io_writeX(). The former function are about to be deprecated in favor to the later.
T
core: upgrade from write32() to io_write32() and friends
Replace use of readX() and writeX() with io_readX() and io_writeX(). The former function are about to be deprecated in favor to the later.
This change upgrades core generic code and drivers. At some place, io_clrbitsX(), io_setbitsX() and io_clrsetbitsX() replace the writeX(readX() ...) operations when obvious.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
a5e82dc7 |
| 11-Feb-2019 |
Jerome Forissier <jerome.forissier@linaro.org> |
core_mmu: do not restrict device memory mapping to PGDIR_SIZE granularity
Device memory registered via register_phys_mem() is currently rounded up/down to CORE_MMU_PGDIR_SIZE (1 MiB, or 2 MiB for LP
core_mmu: do not restrict device memory mapping to PGDIR_SIZE granularity
Device memory registered via register_phys_mem() is currently rounded up/down to CORE_MMU_PGDIR_SIZE (1 MiB, or 2 MiB for LPAE). This is not needed and possibly incorrect for SoCs that define I/O memory maps with regions aligned on a small page (4 KiB), because using a larger granularity could result in overlaps between secure and non-secure mappings. This could cause issues depending on the type of memory firewall used by the SoC and its configuration. In any case, memory types other than MEM_AREA_IO_{SEC,NSEC} *can* be mapped with small page granularity using register_phys_mem(), so the situation is a bit inconsistent.
This commit removes the rounding by default and provides a new macro: register_phys_mem_pgdir(). Platforms that still need to use PGDIR_SIZE granularity (typically because it consumes less page table space) need to replace register_phys_mem() by register_phys_mem_pgdir().
In order to avoid any functional change in platform code, all calls to register_phys_mem() with device memory are replaced with register_phys_mem_pgdir(). In addition, CORE_MMU_DEVICE_SIZE is removed and replaced with CORE_MMU_PGDIR_SIZE since there is no unique mapping size for device memory anymore.
Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org> Reported-by: Zeng Tao <prime.zeng@hisilicon.com> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
7c1ee6aa |
| 21-Nov-2018 |
Bryan O'Donoghue <bryan.odonoghue@linaro.org> |
imx: wdog: Introduce CFG_IMX_WDOG_EXT_RESET for non-DTB mode
When resetting a system that has not booted up with a full DTB in memory the value ext_reset will always be false.
This patch introduces
imx: wdog: Introduce CFG_IMX_WDOG_EXT_RESET for non-DTB mode
When resetting a system that has not booted up with a full DTB in memory the value ext_reset will always be false.
This patch introduces a platform define to tell the watchdog driver to drive ext_reset.
Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> Reviewed-by: Peng Fan <peng.fan@nxp.com>
show more ...
|
| #
beae1b94 |
| 21-Nov-2018 |
Bryan O'Donoghue <bryan.odonoghue@linaro.org> |
imx: wdog: Skip DTB wdog init on DTB overlay
When OPTEE is providing a DTB overlay to a subsequent boot stage CFG_DT will be true as will CFG_EXTERNAL_DTB_OVERLAY.
In this case there will be no DTB
imx: wdog: Skip DTB wdog init on DTB overlay
When OPTEE is providing a DTB overlay to a subsequent boot stage CFG_DT will be true as will CFG_EXTERNAL_DTB_OVERLAY.
In this case there will be no DTB for the imx watchdog driver to consume so do not try to do so.
Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> Reviewed-by: Peng Fan <peng.fan@nxp.com>
show more ...
|
| #
6179ebfa |
| 30-Nov-2018 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: rename get_dt_blob() into get_dt()
Rename get_dt_blob() into get_dt() to get some consistency in `dt`, `dtb`, `fdt` labelling in generic_boot.c
Signed-off-by: Etienne Carriere <etienne.carrie
core: rename get_dt_blob() into get_dt()
Rename get_dt_blob() into get_dt() to get some consistency in `dt`, `dtb`, `fdt` labelling in generic_boot.c
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| #
4e10cbd5 |
| 25-Sep-2018 |
Jordan Rhee <jordanrh@microsoft.com> |
plat-imx: add mx7dclsom platform flavor
Tested-by: Jordan Rhee <jordanrh@microsoft.com> Signed-off-by: Jordan Rhee <jordanrh@microsoft.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
|
| #
bed5dcff |
| 25-Jul-2018 |
Peng Fan <peng.fan@nxp.com> |
imx: wdog: correct wdog_path
The prefix `0` is removed in Linux Kernel upstream code, so let's drop it to let wdog work.
Linux Kernel commit 67b8d5c7081221efa252("Linux 4.17-rc5")
Signed-off-by: P
imx: wdog: correct wdog_path
The prefix `0` is removed in Linux Kernel upstream code, so let's drop it to let wdog work.
Linux Kernel commit 67b8d5c7081221efa252("Linux 4.17-rc5")
Signed-off-by: Peng Fan <peng.fan@nxp.com> Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| #
645718ee |
| 23-Mar-2018 |
Silvano di Ninno <silvano.dininno@nxp.com> |
drivers: imx_wdog driver cleanup
use WDT_WCR defined in watchdog specific imx_wdog.h instead of WCR_OFF defined in the platform imx-regs.h
Signed-off-by: Silvano di Ninno <silvano.dininno@nxp.com>
drivers: imx_wdog driver cleanup
use WDT_WCR defined in watchdog specific imx_wdog.h instead of WCR_OFF defined in the platform imx-regs.h
Signed-off-by: Silvano di Ninno <silvano.dininno@nxp.com> Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| #
bcf6d6c9 |
| 02-May-2018 |
Jordan Rhee <jordanrh@microsoft.com> |
plat-imx: remove dependency on CFG_DT=y
Enable IMX to run without a device tree (CFG_DT=n). The only use of the device tree is for the WDOG driver to get it's base address.
Tested on Sabre IMX6 and
plat-imx: remove dependency on CFG_DT=y
Enable IMX to run without a device tree (CFG_DT=n). The only use of the device tree is for the WDOG driver to get it's base address.
Tested on Sabre IMX6 and Sabre IMX7.
Reviewed-by: Peng Fan <peng.fan@nxp.com> Tested-by: Jordan Rhee <jordanrh@microsoft.com> Signed-off-by: Jordan Rhee <jordanrh@microsoft.com>
show more ...
|
| #
1bb92983 |
| 15-Dec-2017 |
Jerome Forissier <jerome.forissier@linaro.org> |
Add SPDX license identifiers
Adds one SPDX-License-Identifier line [1] to each source files that contains license text.
Generated by [2]: spdxify.py --add-spdx optee_os/
The scancode tool [3] wa
Add SPDX license identifiers
Adds one SPDX-License-Identifier line [1] to each source files that contains license text.
Generated by [2]: spdxify.py --add-spdx optee_os/
The scancode tool [3] was used to double check the license matching code in the Python script. All the licenses detected by scancode are either detected by spdxify.py, or have no SPDX identifier, or are false matches.
Link: [1] https://spdx.org/licenses/ Link: [2] https://github.com/jforissier/misc/blob/f7b56c8/spdxify.py Link: [3] https://github.com/nexB/scancode-toolkit Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org> Acked-by: Joakim Bech <joakim.bech@linaro.org>
show more ...
|
| #
5da57aeb |
| 23-Nov-2017 |
Peng Fan <peng.fan@nxp.com> |
core: drivers: imx_wdog: fix register access
The registers's base address are 16bits aligned, so read32/write32 should be replaced with read16/write16.
Signed-off-by: Peng Fan <peng.fan@nxp.com> Ac
core: drivers: imx_wdog: fix register access
The registers's base address are 16bits aligned, so read32/write32 should be replaced with read16/write16.
Signed-off-by: Peng Fan <peng.fan@nxp.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
d1ee5145 |
| 03-Oct-2017 |
Peng Fan <peng.fan@nxp.com> |
core: drivers: add imx wdog support
Introducing the wdog support is for psci reset usage. To i.MX6/7, when `reboot`, need wdog to trigger soc reset or send out signal to pmic through wdog pin to tri
core: drivers: add imx wdog support
Introducing the wdog support is for psci reset usage. To i.MX6/7, when `reboot`, need wdog to trigger soc reset or send out signal to pmic through wdog pin to trigger pmic reset.
In linux device tree, there is a "fsl,ext-reset-output" property, this driver is to check whether the wdog node contains the property or not, then decide how to trigger reset.
We still rely on normal world to initialize wdog and configure pinmux when need to trigger pmic reset.
Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|