MFC r346295, r346297r346295:arm: Add kern_clocksource.c directly in files.armThis files is needed and included in all our config so move it to a commonlocation.r346297:arm: Order files.arm t
MFC r346295, r346297r346295:arm: Add kern_clocksource.c directly in files.armThis files is needed and included in all our config so move it to a commonlocation.r346297:arm: Order files.arm to have cloudabi and annapurna sections
show more ...
Remove IPI_IRQ_START and IPI_IRQ_END from the arm kernel config files.These are unneeded with INTRNG.
dwmmc: Fully subclass driverFully subclass the dwmmc driver and split every driver into multiple files.There is still a few quirks in the dwmmc driver that will need some work.Tested On: Pine64
dwmmc: Fully subclass driverFully subclass the dwmmc driver and split every driver into multiple files.There is still a few quirks in the dwmmc driver that will need some work.Tested On: Pine64 Rock64Differential Revision: https://reviews.freebsd.org/D13615
Make kernel option KERNVIRTADDR optional, remove it from std.<platform>files that can use the default value.It used to be required that the low-order bits of KERNVIRTADDR matchedthe low-order bit
Make kernel option KERNVIRTADDR optional, remove it from std.<platform>files that can use the default value.It used to be required that the low-order bits of KERNVIRTADDR matchedthe low-order bits of the physical load address for all arm platforms.That hasn't been a requirement for armv6 platforms since FreeBSD 10.There is no longer any relationship between load addr and KERNVIRTADDRexcept that both must be aligned to a 2 MiB boundary.This change makes the default KERNVIRTADDR value 0xc0000000, and removes theoptions from all the platforms that can use the default value. The defaultis now defined in vmparam.h, and that file is now included in a few newplaces that reference KERNVIRTADDR, since it may not come in via theforced-include of opt_global.h on the compile command line.
Revert r327250 as it broke the build for some armv6 kernel and all armv4/5Reported by: ian
arm: Add kern/kern_clocksource.c to files.armInstead of adding it to every files.vendor, add it to the common arch file.
sys/arm: further adoption of SPDX licensing ID tags.Mainly focus on files that use BSD 2-Clause license, however the tool Iwas using misidentified many licenses so this was mostly a manual - error
sys/arm: further adoption of SPDX licensing ID tags.Mainly focus on files that use BSD 2-Clause license, however the tool Iwas using misidentified many licenses so this was mostly a manual - errorprone - task.The Software Package Data Exchange (SPDX) group provides a specificationto make it easier for automated tools to detect and summarize well knownopensource licenses. We are gradually adopting the specification, notingthat the tags are considered only advisory and do not, in any way,superceed or replace the license texts.
Tag all armv7 kernels as such in their machine config line.Transition all boards that support arm cortex CPUs to armv7. Thisleaves two armv6 kernels in the tree. RPI-B, which uses the BCM2835whic
Tag all armv7 kernels as such in their machine config line.Transition all boards that support arm cortex CPUs to armv7. Thisleaves two armv6 kernels in the tree. RPI-B, which uses the BCM2835which has a ARM1176 core, and VERSATILEPB, which is a qemu board setuparound the time RPI-B went in. Copy std.armv6 to std.armv7, eventhough that duplicates a lot of stuff. More work needs to be done tosort out the duplication.Differential Revision: https://reviews.freebsd.org/D12027
Remake support for SMP kernel on UP cpu: - Use new option SMP_ON_UP instead of (mis)using specific CPU type. By this, any SMP kernel can be compiled with SMP_ON_UP support. - Enable runtime dete
Remake support for SMP kernel on UP cpu: - Use new option SMP_ON_UP instead of (mis)using specific CPU type. By this, any SMP kernel can be compiled with SMP_ON_UP support. - Enable runtime detection of CPU multiprocessor extensions only if SMP_ON_UP option is used. In other cases (pure SMP or UP), statically compile only required variant. - Don't leak multiprocessor instructions to UP kernel. - Correctly handle data cache write back to point of unification. DCCMVAU is supported on all armv7 cpus. - For SMP_ON_UP kernels, detect proper TTB flags on runtime.Differential Revision: https://reviews.freebsd.org/D9133
All armv6 platforms have the same implementation of platform_lastaddr.Replace them with a default handler that returns devmap_lastaddr.Reviewed by: mmelSponsored by: ABT Systems LtdDifferential
All armv6 platforms have the same implementation of platform_lastaddr.Replace them with a default handler that returns devmap_lastaddr.Reviewed by: mmelSponsored by: ABT Systems LtdDifferential Revision: https://reviews.freebsd.org/D8806
Add the missing void to function signatures in much of the arm code.Sponsored by: ABT Systems Ltd
Use platform_*_t to check the platform function signatures are correct inthe Rockchip platform code and correct the one place they differ.Sponsored by: ABT Systems Ltd
Switch Rockchip RK3188 SoC to use the platform code.Reviewed by: andrew, manuDifferential Revision: https://reviews.freebsd.org/D8769
Use the correct OF_getencprop over OF_getprop + fdt32_to_cpu to readinteger data from the device tree.Sponsored by: ABT Systems Ltd
Stop including fdt_common.h from the arm code when it's unneeded.Sponsored by: ABT Systems Ltd
Use the modern spelling of ofw_bus_node_is_compatible in sys/arm.Sponsored by: ABT Systems Ltd
Remove more unneeded users of the fdt_pic_decode_t table.Sponsored by: ABT Systems Ltd
ARM: Remove unused includes.MFC after: 1 week
ARM: SEV/WFE instructions are implemented starting from ARMv6K,use it directly.MFC after: 1 week
Split CPU_CORTEXA into CPU_CORTEXA8, for the Cortex-A8, and CPU_CORTEXA_MP,for later Cortex-A CPUs that support the Multiprocessor Extensions. Thiswill be needed to support both in a single GENERIC
Split CPU_CORTEXA into CPU_CORTEXA8, for the Cortex-A8, and CPU_CORTEXA_MP,for later Cortex-A CPUs that support the Multiprocessor Extensions. Thiswill be needed to support both in a single GENERIC kernel while stillbeing able to only build for a single SoC.Reviewed by: mmelRelnotes: yesSponsored by: ABT Systems LtdDifferential Revision: https://reviews.freebsd.org/D8138
Restrict where we need to define fdt_fixup_table to just PowerPC andMarvell.Sponsored by: ABT Systems Ltd
Remove bus_dma_get_range and bus_dma_get_range_nb on armv6. We only needthis on a few earlier arm SoCs.Reviewed by: manu (earlier version)Sponsored by: ABT Systems Ltd
Move arm's devmap to some generic place, so it can be usedby other architectures.Reviewed by: impDifferential Revision: https://reviews.freebsd.org/D6091Sponsored by: DARPA, AFRLSponsored by: H
Move arm's devmap to some generic place, so it can be usedby other architectures.Reviewed by: impDifferential Revision: https://reviews.freebsd.org/D6091Sponsored by: DARPA, AFRLSponsored by: HEIF5
Rename ARM_INTRNG and MIPS_INTRNG to INTRNG. This will help with machineindependent code that needs to know about INTRNG such as PCI drivers.Obtained from: ABT Systems LtdSponsored by: The FreeBS
Rename ARM_INTRNG and MIPS_INTRNG to INTRNG. This will help with machineindependent code that needs to know about INTRNG such as PCI drivers.Obtained from: ABT Systems LtdSponsored by: The FreeBSD Foundation
Almost all copies of platform_mp_init_secondary just calledintr_pic_init_secondary. Replace them with a direct call. On BCM2836and ARMADA XP we need to add this function, but it can be empty.Revi
Almost all copies of platform_mp_init_secondary just calledintr_pic_init_secondary. Replace them with a direct call. On BCM2836and ARMADA XP we need to add this function, but it can be empty.Reviewed by: ian, impSponsored by: ABT Systems LtdDifferential Revision: https://reviews.freebsd.org/D5460
123