Revision tags: v00.04.15, v00.04.14, v00.04.13, v00.04.12, v00.04.11, v00.04.10, v00.04.09, v00.04.08, v00.04.07, v00.04.06, v00.04.05, v00.04.04, v00.04.03, v00.04.02, v00.04.01, v00.04.00, v2021.04, v00.03.03, v2021.01, v2020.10, v2020.07, v00.02.13, v2020.04, v2020.01, v2019.10, v00.02.05, v00.02.04, v00.02.03, v00.02.02, v00.02.01, v2019.07, v00.02.00, v2019.04, v2018.07 |
|
#
83d290c5 |
| 06-May-2018 |
Tom Rini <trini@konsulko.com> |
SPDX: Convert all of our single license tags to Linux Kernel style
When U-Boot started using SPDX tags we were among the early adopters and there weren't a lot of other examples to borrow from. So
SPDX: Convert all of our single license tags to Linux Kernel style
When U-Boot started using SPDX tags we were among the early adopters and there weren't a lot of other examples to borrow from. So we picked the area of the file that usually had a full license text and replaced it with an appropriate SPDX-License-Identifier: entry. Since then, the Linux Kernel has adopted SPDX tags and they place it as the very first line in a file (except where shebangs are used, then it's second line) and with slightly different comment styles than us.
In part due to community overlap, in part due to better tag visibility and in part for other minor reasons, switch over to that style.
This commit changes all instances where we have a single declared license in the tag as both the before and after are identical in tag contents. There's also a few places where I found we did not have a tag and have introduced one.
Signed-off-by: Tom Rini <trini@konsulko.com>
show more ...
|
Revision tags: v2018.03, v2018.01 |
|
#
90351547 |
| 27-Nov-2017 |
Peng Fan <peng.fan@nxp.com> |
armv8: mmu: fix page table mapping
To page mapping the lowest 2 bits needs to be 0x3. If not fix this, the final lowest 3 bits for page mapping is 0x1 which is marked as reserved.
Signed-off-by: Pe
armv8: mmu: fix page table mapping
To page mapping the lowest 2 bits needs to be 0x3. If not fix this, the final lowest 3 bits for page mapping is 0x1 which is marked as reserved.
Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: York Sun <york.sun@nxp.com>
show more ...
|
Revision tags: v2017.11 |
|
#
6775a820 |
| 05-Apr-2017 |
Simon Glass <sjg@chromium.org> |
arm: Support cache invalidate
At present there is not operation to invalidate a cache range. This seems to be needed to fill out the cache operations. Add an implementation based on the flush operat
arm: Support cache invalidate
At present there is not operation to invalidate a cache range. This seems to be needed to fill out the cache operations. Add an implementation based on the flush operation.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: York Sun <york.sun@nxp.com>
show more ...
|
#
ce38ebb6 |
| 16-Mar-2017 |
Tom Rini <trini@konsulko.com> |
Merge git://git.denx.de/u-boot-fsl-qoriq
|
#
7f9b9f31 |
| 06-Mar-2017 |
York Sun <york.sun@nxp.com> |
armv8: mmu: Add a function to change mapping attributes
Function mmu_change_region_attr() is added to change existing mapping with updated PXN, UXN and memory type. This is a break-before-make proce
armv8: mmu: Add a function to change mapping attributes
Function mmu_change_region_attr() is added to change existing mapping with updated PXN, UXN and memory type. This is a break-before-make process during which the mapping becomes fault (invalid) before final attributres are set.
Signed-off-by: York Sun <york.sun@nxp.com>
show more ...
|
#
38cacdab |
| 08-Nov-2016 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' of git://git.denx.de/u-boot-tegra
|
#
1ab557a0 |
| 19-Oct-2016 |
Stephen Warren <swarren@nvidia.com> |
armv8: add hooks for all cache-wide operations
SoC-specific logic may be required for all forms of cache-wide operations; invalidate and flush of both dcache and icache (note that only 3 of the 4 po
armv8: add hooks for all cache-wide operations
SoC-specific logic may be required for all forms of cache-wide operations; invalidate and flush of both dcache and icache (note that only 3 of the 4 possible combinations make sense, since the icache never contains dirty lines). This patch adds an optional hook for all implemented cache-wide operations, and renames the one existing hook to better represent exactly which operation it is implementing. A dummy no-op implementation of each hook is provided.
Signed-off-by: Stephen Warren <swarren@nvidia.com> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
show more ...
|
#
0e170947 |
| 30-Jul-2016 |
Alexander Graf <agraf@suse.de> |
armv8: mmu: Detect page table overflow in emergency pt creation
We create 2 sets of page tables: One for normal operation, one for emergency (used while modifying the former).
Because the page tabl
armv8: mmu: Detect page table overflow in emergency pt creation
We create 2 sets of page tables: One for normal operation, one for emergency (used while modifying the former).
Because the page tables grow dynamically, we have code that checks for overflow. Unfortunately we didn't adjust the available space variable while creating the emergency tables, so potentially someone might run into an overflow there (not seen in real world yet though!).
Fix it by properly adjusting the size as well as the base offset in emergency page table creation.
Reported-by: York Sun <york.sun@nxp.com> Signed-off-by: Alexander Graf <agraf@suse.de> Reviewed-by: York Sun <york.sun@nxp.com>
show more ...
|
#
66669fcf |
| 19-Jul-2016 |
Tom Rini <trini@konsulko.com> |
Merge git://git.denx.de/u-boot-fsl-qoriq
Signed-off-by: Tom Rini <trini@konsulko.com>
Conflicts: arch/arm/cpu/armv8/Makefile arch/arm/lib/bootm-fdt.c
|
Revision tags: v2016.07 |
|
#
cd4b0c5f |
| 24-Jun-2016 |
York Sun <york.sun@nxp.com> |
armv8: mmu: Add support of non-identical mapping
Introduce virtual and physical addresses in the mapping table. This change have no impact on existing boards because they all use idential mapping.
armv8: mmu: Add support of non-identical mapping
Introduce virtual and physical addresses in the mapping table. This change have no impact on existing boards because they all use idential mapping.
Signed-off-by: York Sun <york.sun@nxp.com>
show more ...
|
#
f733d466 |
| 24-Jun-2016 |
York Sun <york.sun@nxp.com> |
armv8: mmu: split block if necessary
When page tables are created, allow later table to be created on previous block entry. Splitting block feature is already working with current code. This patch o
armv8: mmu: split block if necessary
When page tables are created, allow later table to be created on previous block entry. Splitting block feature is already working with current code. This patch only rearranges the code order and adds one condition to call split_block().
Signed-off-by: York Sun <york.sun@nxp.com>
show more ...
|
#
252cdb46 |
| 24-Jun-2016 |
York Sun <york.sun@nxp.com> |
armv8: mmu: house cleaning
Make setup_pgtages() and get_tcr() available for platform code to customize MMU tables. Remove unintentional call of create_table().
Signed-off-by: York Sun <york.sun@nxp
armv8: mmu: house cleaning
Make setup_pgtages() and get_tcr() available for platform code to customize MMU tables. Remove unintentional call of create_table().
Signed-off-by: York Sun <york.sun@nxp.com>
show more ...
|
Revision tags: openbmc-20160624-1 |
|
#
55926ddd |
| 22-Mar-2016 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' of git://git.denx.de/u-boot-fsl-qoriq
|
#
c05016ab |
| 21-Mar-2016 |
Alexander Graf <agraf@suse.de> |
arm64: Fix layerscape mmu setup
With commit 7985cdf we converted all systems except for the Layerscape SoCs to the generic descriptor table based page table setup.
On the Layerscape SoCs however, w
arm64: Fix layerscape mmu setup
With commit 7985cdf we converted all systems except for the Layerscape SoCs to the generic descriptor table based page table setup.
On the Layerscape SoCs however, we just provide an empty table stub and do the setup ourselves. To reserve enough memory for the tables, we need to override the default counting mechanism which would end up with an empty table because we have no maps.
Fixes: 7985cdf Reported-by: York Sun <york.sun@nxp.com> CC: Alison Wang <alison.wang@nxp.com> CC: Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com> Signed-off-by: Alexander Graf <agraf@suse.de> Tested-by: York Sun <york.sun@nxp.com> Reviewed-by: York Sun <york.sun@nxp.com>
show more ...
|
#
19503c31 |
| 03-Mar-2016 |
Alexander Graf <agraf@suse.de> |
arm64: Only allow dcache disabled in SPL builds
Now that we have an easy way to describe memory regions and enable the MMU, there really shouldn't be anything holding people back from running with c
arm64: Only allow dcache disabled in SPL builds
Now that we have an easy way to describe memory regions and enable the MMU, there really shouldn't be anything holding people back from running with caches enabled on AArch64. To make sure people catch early if they're missing on the caching fun, give them a compile error.
Signed-off-by: Alexander Graf <agraf@suse.de>
show more ...
|
#
7985cdf7 |
| 03-Mar-2016 |
Alexander Graf <agraf@suse.de> |
arm64: Remove non-full-va map code
By now the code to only have a single page table level with 64k page size and 42 bit address space is no longer used by any board in tree, so we can safely remove
arm64: Remove non-full-va map code
By now the code to only have a single page table level with 64k page size and 42 bit address space is no longer used by any board in tree, so we can safely remove it.
To clean up code, move the layerscape mmu code to the new defines, removing redundant field definitions.
Signed-off-by: Alexander Graf <agraf@suse.de>
show more ...
|
#
d473f0c6 |
| 03-Mar-2016 |
Alexander Graf <agraf@suse.de> |
thunderx: Move mmu table into board file
The MMU range table can vary depending on things we may only find out at runtime. While the very simple ThunderX variant does not change, other boards will,
thunderx: Move mmu table into board file
The MMU range table can vary depending on things we may only find out at runtime. While the very simple ThunderX variant does not change, other boards will, so move the definition from a static entry in a header file to the board file.
Signed-off-by: Alexander Graf <agraf@suse.de>
show more ...
|
#
5e2ec773 |
| 03-Mar-2016 |
Alexander Graf <agraf@suse.de> |
arm64: Make full va map code more dynamic
The idea to generate our pages tables from an array of memory ranges is very sound. However, instead of hard coding the code to create up to 2 levels of 64k
arm64: Make full va map code more dynamic
The idea to generate our pages tables from an array of memory ranges is very sound. However, instead of hard coding the code to create up to 2 levels of 64k granule page tables, we really should just create normal 4k page tables that allow us to set caching attributes on 2M or 4k level later on.
So this patch moves the full_va mapping code to 4k page size and makes it fully flexible to dynamically create as many levels as necessary for a map (including dynamic 1G/2M pages). It also adds support to dynamically split a large map into smaller ones when some code wants to set dcache attributes.
With all this in place, there is very little reason to create your own page tables in board specific files.
Signed-off-by: Alexander Graf <agraf@suse.de>
show more ...
|
#
9bb367a5 |
| 03-Mar-2016 |
Alexander Graf <agraf@suse.de> |
arm64: Disable TTBR1 maps in EL1
When running in EL1, AArch64 knows two page table maps. One with addresses that start with all zeros (TTBR0) and one with addresses that start with all ones (TTBR1).
arm64: Disable TTBR1 maps in EL1
When running in EL1, AArch64 knows two page table maps. One with addresses that start with all zeros (TTBR0) and one with addresses that start with all ones (TTBR1).
In U-Boot we don't care about the high up maps, so just disable them to ensure we don't walk an invalid page table by accident.
Reported-by: Mark Rutland <mark.rutland@arm.com> Signed-off-by: Alexander Graf <agraf@suse.de>
show more ...
|
#
0691484a |
| 03-Mar-2016 |
Alexander Graf <agraf@suse.de> |
thunderx: Calculate TCR dynamically
Based on the memory map we can determine a lot of hard coded fields of TCR, like the maximum VA and max PA we want to support. Calculate those dynamically to redu
thunderx: Calculate TCR dynamically
Based on the memory map we can determine a lot of hard coded fields of TCR, like the maximum VA and max PA we want to support. Calculate those dynamically to reduce the chance for pit falls.
Signed-off-by: Alexander Graf <agraf@suse.de>
show more ...
|
Revision tags: v2016.01-rc1, v2015.10 |
|
#
94f7ff36 |
| 14-Oct-2015 |
Sergey Temerkhanov <s.temerkhanov@gmail.com> |
armv8: New MMU setup code allowing to use 48+ bits PA/VA
This patch adds code which sets up 2-level page tables on ARM64 thus extending available VA space. CPUs implementing 64k translation granule
armv8: New MMU setup code allowing to use 48+ bits PA/VA
This patch adds code which sets up 2-level page tables on ARM64 thus extending available VA space. CPUs implementing 64k translation granule are able to use direct PA-VA mapping of the whole 48 bit address space. It also adds the ability to reset the SCTRL register at the very beginning of execution to avoid interference from stale mappings set up by early firmware/loaders/etc.
Signed-off-by: Sergey Temerkhanov <s.temerkhanov@gmail.com> Signed-off-by: Radha Mohan Chintakuntla <rchintakuntla@cavium.com>
show more ...
|
#
1670c8c2 |
| 30-Nov-2015 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' of git://git.denx.de/u-boot-fsl-qoriq
|
#
d764129d |
| 04-Nov-2015 |
Alison Wang <b18965@freescale.com> |
armv8/layerscape: Update MMU table with execute-never bits
For most device addresses excution shouldn't be allowed. Revise the MMU table to enforce execute-never bits. OCRAM, DDR and IFC are allowed
armv8/layerscape: Update MMU table with execute-never bits
For most device addresses excution shouldn't be allowed. Revise the MMU table to enforce execute-never bits. OCRAM, DDR and IFC are allowed for excution.
Signed-off-by: York Sun <yorksun@freescale.com> Signed-off-by: Alison Wang <alison.wang@freescale.com> Reported-by: Zhichun Hua <zhichun.hua@freescale.com>
show more ...
|
#
5f5620ab |
| 12-Nov-2015 |
Stefano Babic <sbabic@denx.de> |
Merge git://git.denx.de/u-boot
|
#
cad04990 |
| 10-Nov-2015 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' of git://git.denx.de/u-boot-arm
|