[siemens/jailhouse] 3a1f2b: arm: Move modules shared with arm64 into arch/arm-...
Branch: refs/heads/master Home: https://github.com/siemens/jailhouse Commit: 3a1f2b5bc9d24eb1b7cf3fb0c1c7c61cf5b108c7 https://github.com/siemens/jailhouse/commit/3a1f2b5bc9d24eb1b7cf3fb0c1c7c61cf5b108c7 Author: Jan Kiszka Date: 2016-10-04 (Tue, 04 Oct 2016) Changed paths: A hypervisor/arch/arm-common/dbg-write-pl011.c A hypervisor/arch/arm-common/dbg-write.c A hypervisor/arch/arm-common/gic-common.c A hypervisor/arch/arm-common/gic-v2.c A hypervisor/arch/arm-common/irqchip.c A hypervisor/arch/arm-common/lib.c A hypervisor/arch/arm-common/mmu_cell.c A hypervisor/arch/arm-common/paging.c A hypervisor/arch/arm-common/psci.c M hypervisor/arch/arm/Makefile R hypervisor/arch/arm/dbg-write-pl011.c R hypervisor/arch/arm/dbg-write.c R hypervisor/arch/arm/gic-common.c R hypervisor/arch/arm/gic-v2.c R hypervisor/arch/arm/irqchip.c R hypervisor/arch/arm/lib.c R hypervisor/arch/arm/mmu_cell.c R hypervisor/arch/arm/paging.c R hypervisor/arch/arm/psci.c Log Message: --- arm: Move modules shared with arm64 into arch/arm-common This helps understanding which source modules are shared between arm and the upcoming arm64 architecture. If leaving them in arch/arm, the risk is that changes to arm miss the interdependency with arm64. We may want to do the same for common asm headers in the future. Signed-off-by: Jan Kiszka Commit: 752e1ceb8240b0d48714b786d0c062227c050c12 https://github.com/siemens/jailhouse/commit/752e1ceb8240b0d48714b786d0c062227c050c12 Author: Jan Kiszka Date: 2016-10-04 (Tue, 04 Oct 2016) Changed paths: A hypervisor/arch/arm-common/control.c M hypervisor/arch/arm/Makefile M hypervisor/arch/arm/control.c M hypervisor/arch/arm/include/asm/control.h Log Message: --- arm: Factor out common control.c module Many functions will be shared with arm64. This creates one new inter-module interface: arm_cpu_reset. It now takes the desires PC after reset as parameter, instead of overwriting the related register if cpu_on_entry is not the final value. Signed-off-by: Jan Kiszka Commit: 659ce9b5ccad65520711f6c9db88f60743e53bf3 https://github.com/siemens/jailhouse/commit/659ce9b5ccad65520711f6c9db88f60743e53bf3 Author: Antonios Motakis Date: 2016-10-04 (Tue, 04 Oct 2016) Changed paths: A hypervisor/arch/arm64/include/asm/sysregs.h Log Message: --- arm64: add sysregs helper macros On the AArch32 port of Jailhouse, the arm_write_sysreg and arm_read_sysreg macros are used to access the system registers. Implementing these helpers on AArch64 allows to approach some low hanging fruit when looking for code to reuse from the AArch32 port. On AArch64 we always get a u64 value from a system register, while on AArch32 it might be either u32 or u64. We need to look at the users of this macro on a case by case basis and see if it makes sense to reuse code. Signed-off-by: Antonios Motakis Signed-off-by: Jan Kiszka Commit: 75d7ddc19005049f90d542b07b109ae5205ff722 https://github.com/siemens/jailhouse/commit/75d7ddc19005049f90d542b07b109ae5205ff722 Author: Antonios Motakis Date: 2016-10-04 (Tue, 04 Oct 2016) Changed paths: A hypervisor/arch/arm64/include/asm/processor.h Log Message: --- arm64: add asm/processor.h header for AArch64 Add an initial asm/processor.h header for AArch64. This header is similar to the version for AArch32, but e.g. processor modes and exception classes differ. Signed-off-by: Antonios Motakis Signed-off-by: Jan Kiszka Commit: e518f7fc8f0199a0c62fc0f2e76a0f7fd86cd9a9 https://github.com/siemens/jailhouse/commit/e518f7fc8f0199a0c62fc0f2e76a0f7fd86cd9a9 Author: Dmitry Voytik Date: 2016-10-05 (Wed, 05 Oct 2016) Changed paths: A hypervisor/arch/arm64/include/asm/control.h Log Message: --- arm64: add control.h header file Add the header file control.h to the AArch64 port of Jailhouse. Signed-off-by: Dmitry Voytik Signed-off-by: Antonios Motakis [antonios.mota...@huawei.com: split off as a separate patch] [Jan: remove obsolete parts, update arch_handle_* prototypes] Signed-off-by: Jan Kiszka Commit: d534d43b9b41463c1ee074fe6c61bb28096bc15c https://github.com/siemens/jailhouse/commit/d534d43b9b41463c1ee074fe6c61bb28096bc15c Author: Antonios Motakis Date: 2016-10-05 (Wed, 05 Oct 2016) Changed paths: A hypervisor/arch/arm64/include/asm/paging.h Log Message: --- arm64: add definitions for the AArch64 page table format The AArch64 page table format is very similar, almost identical to the AArch32 page table format. Add a header file for the AArch64 page table format, based on the AArch32 implementation. AArch64 introduces an extra level of page tables, for a total of four, and support for different translation granule sizes. Sticking to a granule size of 4Kb, we end up with an identic
[siemens/jailhouse] 3a1f2b: arm: Move modules shared with arm64 into arch/arm-...
Branch: refs/heads/coverity_scan Home: https://github.com/siemens/jailhouse Commit: 3a1f2b5bc9d24eb1b7cf3fb0c1c7c61cf5b108c7 https://github.com/siemens/jailhouse/commit/3a1f2b5bc9d24eb1b7cf3fb0c1c7c61cf5b108c7 Author: Jan Kiszka Date: 2016-10-04 (Tue, 04 Oct 2016) Changed paths: A hypervisor/arch/arm-common/dbg-write-pl011.c A hypervisor/arch/arm-common/dbg-write.c A hypervisor/arch/arm-common/gic-common.c A hypervisor/arch/arm-common/gic-v2.c A hypervisor/arch/arm-common/irqchip.c A hypervisor/arch/arm-common/lib.c A hypervisor/arch/arm-common/mmu_cell.c A hypervisor/arch/arm-common/paging.c A hypervisor/arch/arm-common/psci.c M hypervisor/arch/arm/Makefile R hypervisor/arch/arm/dbg-write-pl011.c R hypervisor/arch/arm/dbg-write.c R hypervisor/arch/arm/gic-common.c R hypervisor/arch/arm/gic-v2.c R hypervisor/arch/arm/irqchip.c R hypervisor/arch/arm/lib.c R hypervisor/arch/arm/mmu_cell.c R hypervisor/arch/arm/paging.c R hypervisor/arch/arm/psci.c Log Message: --- arm: Move modules shared with arm64 into arch/arm-common This helps understanding which source modules are shared between arm and the upcoming arm64 architecture. If leaving them in arch/arm, the risk is that changes to arm miss the interdependency with arm64. We may want to do the same for common asm headers in the future. Signed-off-by: Jan Kiszka Commit: 752e1ceb8240b0d48714b786d0c062227c050c12 https://github.com/siemens/jailhouse/commit/752e1ceb8240b0d48714b786d0c062227c050c12 Author: Jan Kiszka Date: 2016-10-04 (Tue, 04 Oct 2016) Changed paths: A hypervisor/arch/arm-common/control.c M hypervisor/arch/arm/Makefile M hypervisor/arch/arm/control.c M hypervisor/arch/arm/include/asm/control.h Log Message: --- arm: Factor out common control.c module Many functions will be shared with arm64. This creates one new inter-module interface: arm_cpu_reset. It now takes the desires PC after reset as parameter, instead of overwriting the related register if cpu_on_entry is not the final value. Signed-off-by: Jan Kiszka Commit: 659ce9b5ccad65520711f6c9db88f60743e53bf3 https://github.com/siemens/jailhouse/commit/659ce9b5ccad65520711f6c9db88f60743e53bf3 Author: Antonios Motakis Date: 2016-10-04 (Tue, 04 Oct 2016) Changed paths: A hypervisor/arch/arm64/include/asm/sysregs.h Log Message: --- arm64: add sysregs helper macros On the AArch32 port of Jailhouse, the arm_write_sysreg and arm_read_sysreg macros are used to access the system registers. Implementing these helpers on AArch64 allows to approach some low hanging fruit when looking for code to reuse from the AArch32 port. On AArch64 we always get a u64 value from a system register, while on AArch32 it might be either u32 or u64. We need to look at the users of this macro on a case by case basis and see if it makes sense to reuse code. Signed-off-by: Antonios Motakis Signed-off-by: Jan Kiszka Commit: 75d7ddc19005049f90d542b07b109ae5205ff722 https://github.com/siemens/jailhouse/commit/75d7ddc19005049f90d542b07b109ae5205ff722 Author: Antonios Motakis Date: 2016-10-04 (Tue, 04 Oct 2016) Changed paths: A hypervisor/arch/arm64/include/asm/processor.h Log Message: --- arm64: add asm/processor.h header for AArch64 Add an initial asm/processor.h header for AArch64. This header is similar to the version for AArch32, but e.g. processor modes and exception classes differ. Signed-off-by: Antonios Motakis Signed-off-by: Jan Kiszka Commit: e518f7fc8f0199a0c62fc0f2e76a0f7fd86cd9a9 https://github.com/siemens/jailhouse/commit/e518f7fc8f0199a0c62fc0f2e76a0f7fd86cd9a9 Author: Dmitry Voytik Date: 2016-10-05 (Wed, 05 Oct 2016) Changed paths: A hypervisor/arch/arm64/include/asm/control.h Log Message: --- arm64: add control.h header file Add the header file control.h to the AArch64 port of Jailhouse. Signed-off-by: Dmitry Voytik Signed-off-by: Antonios Motakis [antonios.mota...@huawei.com: split off as a separate patch] [Jan: remove obsolete parts, update arch_handle_* prototypes] Signed-off-by: Jan Kiszka Commit: d534d43b9b41463c1ee074fe6c61bb28096bc15c https://github.com/siemens/jailhouse/commit/d534d43b9b41463c1ee074fe6c61bb28096bc15c Author: Antonios Motakis Date: 2016-10-05 (Wed, 05 Oct 2016) Changed paths: A hypervisor/arch/arm64/include/asm/paging.h Log Message: --- arm64: add definitions for the AArch64 page table format The AArch64 page table format is very similar, almost identical to the AArch32 page table format. Add a header file for the AArch64 page table format, based on the AArch32 implementation. AArch64 introduces an extra level of page tables, for a total of four, and support for different translation granule sizes. Sticking to a granule size of 4Kb, we end up with an
[siemens/jailhouse] 3a1f2b: arm: Move modules shared with arm64 into arch/arm-...
Branch: refs/heads/next Home: https://github.com/siemens/jailhouse Commit: 3a1f2b5bc9d24eb1b7cf3fb0c1c7c61cf5b108c7 https://github.com/siemens/jailhouse/commit/3a1f2b5bc9d24eb1b7cf3fb0c1c7c61cf5b108c7 Author: Jan Kiszka Date: 2016-10-04 (Tue, 04 Oct 2016) Changed paths: A hypervisor/arch/arm-common/dbg-write-pl011.c A hypervisor/arch/arm-common/dbg-write.c A hypervisor/arch/arm-common/gic-common.c A hypervisor/arch/arm-common/gic-v2.c A hypervisor/arch/arm-common/irqchip.c A hypervisor/arch/arm-common/lib.c A hypervisor/arch/arm-common/mmu_cell.c A hypervisor/arch/arm-common/paging.c A hypervisor/arch/arm-common/psci.c M hypervisor/arch/arm/Makefile R hypervisor/arch/arm/dbg-write-pl011.c R hypervisor/arch/arm/dbg-write.c R hypervisor/arch/arm/gic-common.c R hypervisor/arch/arm/gic-v2.c R hypervisor/arch/arm/irqchip.c R hypervisor/arch/arm/lib.c R hypervisor/arch/arm/mmu_cell.c R hypervisor/arch/arm/paging.c R hypervisor/arch/arm/psci.c Log Message: --- arm: Move modules shared with arm64 into arch/arm-common This helps understanding which source modules are shared between arm and the upcoming arm64 architecture. If leaving them in arch/arm, the risk is that changes to arm miss the interdependency with arm64. We may want to do the same for common asm headers in the future. Signed-off-by: Jan Kiszka Commit: 752e1ceb8240b0d48714b786d0c062227c050c12 https://github.com/siemens/jailhouse/commit/752e1ceb8240b0d48714b786d0c062227c050c12 Author: Jan Kiszka Date: 2016-10-04 (Tue, 04 Oct 2016) Changed paths: A hypervisor/arch/arm-common/control.c M hypervisor/arch/arm/Makefile M hypervisor/arch/arm/control.c M hypervisor/arch/arm/include/asm/control.h Log Message: --- arm: Factor out common control.c module Many functions will be shared with arm64. This creates one new inter-module interface: arm_cpu_reset. It now takes the desires PC after reset as parameter, instead of overwriting the related register if cpu_on_entry is not the final value. Signed-off-by: Jan Kiszka Commit: 659ce9b5ccad65520711f6c9db88f60743e53bf3 https://github.com/siemens/jailhouse/commit/659ce9b5ccad65520711f6c9db88f60743e53bf3 Author: Antonios Motakis Date: 2016-10-04 (Tue, 04 Oct 2016) Changed paths: A hypervisor/arch/arm64/include/asm/sysregs.h Log Message: --- arm64: add sysregs helper macros On the AArch32 port of Jailhouse, the arm_write_sysreg and arm_read_sysreg macros are used to access the system registers. Implementing these helpers on AArch64 allows to approach some low hanging fruit when looking for code to reuse from the AArch32 port. On AArch64 we always get a u64 value from a system register, while on AArch32 it might be either u32 or u64. We need to look at the users of this macro on a case by case basis and see if it makes sense to reuse code. Signed-off-by: Antonios Motakis Signed-off-by: Jan Kiszka Commit: 75d7ddc19005049f90d542b07b109ae5205ff722 https://github.com/siemens/jailhouse/commit/75d7ddc19005049f90d542b07b109ae5205ff722 Author: Antonios Motakis Date: 2016-10-04 (Tue, 04 Oct 2016) Changed paths: A hypervisor/arch/arm64/include/asm/processor.h Log Message: --- arm64: add asm/processor.h header for AArch64 Add an initial asm/processor.h header for AArch64. This header is similar to the version for AArch32, but e.g. processor modes and exception classes differ. Signed-off-by: Antonios Motakis Signed-off-by: Jan Kiszka Commit: e518f7fc8f0199a0c62fc0f2e76a0f7fd86cd9a9 https://github.com/siemens/jailhouse/commit/e518f7fc8f0199a0c62fc0f2e76a0f7fd86cd9a9 Author: Dmitry Voytik Date: 2016-10-05 (Wed, 05 Oct 2016) Changed paths: A hypervisor/arch/arm64/include/asm/control.h Log Message: --- arm64: add control.h header file Add the header file control.h to the AArch64 port of Jailhouse. Signed-off-by: Dmitry Voytik Signed-off-by: Antonios Motakis [antonios.mota...@huawei.com: split off as a separate patch] [Jan: remove obsolete parts, update arch_handle_* prototypes] Signed-off-by: Jan Kiszka Commit: d534d43b9b41463c1ee074fe6c61bb28096bc15c https://github.com/siemens/jailhouse/commit/d534d43b9b41463c1ee074fe6c61bb28096bc15c Author: Antonios Motakis Date: 2016-10-05 (Wed, 05 Oct 2016) Changed paths: A hypervisor/arch/arm64/include/asm/paging.h Log Message: --- arm64: add definitions for the AArch64 page table format The AArch64 page table format is very similar, almost identical to the AArch32 page table format. Add a header file for the AArch64 page table format, based on the AArch32 implementation. AArch64 introduces an extra level of page tables, for a total of four, and support for different translation granule sizes. Sticking to a granule size of 4Kb, we end up with an identical
[siemens/jailhouse] 3a1f2b: arm: Move modules shared with arm64 into arch/arm-...
Branch: refs/heads/wip/arm64 Home: https://github.com/siemens/jailhouse Commit: 3a1f2b5bc9d24eb1b7cf3fb0c1c7c61cf5b108c7 https://github.com/siemens/jailhouse/commit/3a1f2b5bc9d24eb1b7cf3fb0c1c7c61cf5b108c7 Author: Jan Kiszka Date: 2016-10-04 (Tue, 04 Oct 2016) Changed paths: A hypervisor/arch/arm-common/dbg-write-pl011.c A hypervisor/arch/arm-common/dbg-write.c A hypervisor/arch/arm-common/gic-common.c A hypervisor/arch/arm-common/gic-v2.c A hypervisor/arch/arm-common/irqchip.c A hypervisor/arch/arm-common/lib.c A hypervisor/arch/arm-common/mmu_cell.c A hypervisor/arch/arm-common/paging.c A hypervisor/arch/arm-common/psci.c M hypervisor/arch/arm/Makefile R hypervisor/arch/arm/dbg-write-pl011.c R hypervisor/arch/arm/dbg-write.c R hypervisor/arch/arm/gic-common.c R hypervisor/arch/arm/gic-v2.c R hypervisor/arch/arm/irqchip.c R hypervisor/arch/arm/lib.c R hypervisor/arch/arm/mmu_cell.c R hypervisor/arch/arm/paging.c R hypervisor/arch/arm/psci.c Log Message: --- arm: Move modules shared with arm64 into arch/arm-common This helps understanding which source modules are shared between arm and the upcoming arm64 architecture. If leaving them in arch/arm, the risk is that changes to arm miss the interdependency with arm64. We may want to do the same for common asm headers in the future. Signed-off-by: Jan Kiszka Commit: 752e1ceb8240b0d48714b786d0c062227c050c12 https://github.com/siemens/jailhouse/commit/752e1ceb8240b0d48714b786d0c062227c050c12 Author: Jan Kiszka Date: 2016-10-04 (Tue, 04 Oct 2016) Changed paths: A hypervisor/arch/arm-common/control.c M hypervisor/arch/arm/Makefile M hypervisor/arch/arm/control.c M hypervisor/arch/arm/include/asm/control.h Log Message: --- arm: Factor out common control.c module Many functions will be shared with arm64. This creates one new inter-module interface: arm_cpu_reset. It now takes the desires PC after reset as parameter, instead of overwriting the related register if cpu_on_entry is not the final value. Signed-off-by: Jan Kiszka Commit: 659ce9b5ccad65520711f6c9db88f60743e53bf3 https://github.com/siemens/jailhouse/commit/659ce9b5ccad65520711f6c9db88f60743e53bf3 Author: Antonios Motakis Date: 2016-10-04 (Tue, 04 Oct 2016) Changed paths: A hypervisor/arch/arm64/include/asm/sysregs.h Log Message: --- arm64: add sysregs helper macros On the AArch32 port of Jailhouse, the arm_write_sysreg and arm_read_sysreg macros are used to access the system registers. Implementing these helpers on AArch64 allows to approach some low hanging fruit when looking for code to reuse from the AArch32 port. On AArch64 we always get a u64 value from a system register, while on AArch32 it might be either u32 or u64. We need to look at the users of this macro on a case by case basis and see if it makes sense to reuse code. Signed-off-by: Antonios Motakis Signed-off-by: Jan Kiszka Commit: 75d7ddc19005049f90d542b07b109ae5205ff722 https://github.com/siemens/jailhouse/commit/75d7ddc19005049f90d542b07b109ae5205ff722 Author: Antonios Motakis Date: 2016-10-04 (Tue, 04 Oct 2016) Changed paths: A hypervisor/arch/arm64/include/asm/processor.h Log Message: --- arm64: add asm/processor.h header for AArch64 Add an initial asm/processor.h header for AArch64. This header is similar to the version for AArch32, but e.g. processor modes and exception classes differ. Signed-off-by: Antonios Motakis Signed-off-by: Jan Kiszka Commit: e518f7fc8f0199a0c62fc0f2e76a0f7fd86cd9a9 https://github.com/siemens/jailhouse/commit/e518f7fc8f0199a0c62fc0f2e76a0f7fd86cd9a9 Author: Dmitry Voytik Date: 2016-10-05 (Wed, 05 Oct 2016) Changed paths: A hypervisor/arch/arm64/include/asm/control.h Log Message: --- arm64: add control.h header file Add the header file control.h to the AArch64 port of Jailhouse. Signed-off-by: Dmitry Voytik Signed-off-by: Antonios Motakis [antonios.mota...@huawei.com: split off as a separate patch] [Jan: remove obsolete parts, update arch_handle_* prototypes] Signed-off-by: Jan Kiszka Commit: d534d43b9b41463c1ee074fe6c61bb28096bc15c https://github.com/siemens/jailhouse/commit/d534d43b9b41463c1ee074fe6c61bb28096bc15c Author: Antonios Motakis Date: 2016-10-05 (Wed, 05 Oct 2016) Changed paths: A hypervisor/arch/arm64/include/asm/paging.h Log Message: --- arm64: add definitions for the AArch64 page table format The AArch64 page table format is very similar, almost identical to the AArch32 page table format. Add a header file for the AArch64 page table format, based on the AArch32 implementation. AArch64 introduces an extra level of page tables, for a total of four, and support for different translation granule sizes. Sticking to a granule size of 4Kb, we end up with an iden