aboutsummaryrefslogtreecommitdiff
path: root/sys/arm/rockchip
Commit message (Collapse)AuthorAgeFilesLines
* sys: Remove $FreeBSD$: one-line sh patternWarner Losh2023-08-162-2/+0
| | | | Remove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/
* sys: Remove $FreeBSD$: one-line .c patternWarner Losh2023-08-162-4/+0
| | | | Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/
* sys: Remove $FreeBSD$: two-line .h patternWarner Losh2023-08-161-2/+0
| | | | Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/
* spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSDWarner Losh2023-05-123-3/+3
| | | | | | | | | The SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catch up to that fact and revert to their recommended match of BSD-2-Clause. Discussed with: pfg MFC After: 3 days Sponsored by: Netflix
* ofw_cpu_early_foreach: Change callback to return bool instead of boolean_t.John Baldwin2023-05-041-1/+1
| | | | | Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D39926
* Add support for RK3288 SoC.Michal Meloun2020-12-045-0/+375
| | | | Notes: svn path=/head/; revision=368340
* arm: Remove old rockchip supportEmmanuel Vadot2020-11-2412-1673/+0
| | | | | | | | | | | | | | | Remove the port for rk30xx. Kernel config was removed in r346096 and this port was never migrated to GENERIC. It is also impossible to obtain such hardware nowadays and this code don't provide anything beside booting. Reviewed by: imp Relnotes: yes Differential Revision: https://reviews.freebsd.org/D27280 Notes: svn path=/head/; revision=367992
* arm: clean up empty lines in .c and .h filesMateusz Guzik2020-09-015-6/+1
| | | | Notes: svn path=/head/; revision=365068
* Include eventhandler.h in more compilation unitsConrad Meyer2019-05-211-0/+1
| | | | | | | | | | | | | | | | This was enumerated with exhaustive search for sys/eventhandler.h includes, cross-referenced against EVENTHANDLER_* usage with the comm(1) utility. Manual checking was performed to avoid redundant includes in some drivers where a common os_bsd.h (for example) included sys/eventhandler.h indirectly, but it is possible some of these are redundant with driver-specific headers in ways I didn't notice. (These CUs did not show up as missing eventhandler.h in tinderbox.) X-MFC-With: r347984 Notes: svn path=/head/; revision=348026
* arm: Add kern_clocksource.c directly in files.armEmmanuel Vadot2019-04-161-1/+0
| | | | | | | | | | This files is needed and included in all our config so move it to a common location. MFC after: 2 weeks Notes: svn path=/head/; revision=346295
* Remove IPI_IRQ_START and IPI_IRQ_END from the arm kernel config files.Andrew Turner2018-07-281-3/+0
| | | | | | | These are unneeded with INTRNG. Notes: svn path=/head/; revision=336804
* dwmmc: Fully subclass driverEmmanuel Vadot2017-12-301-0/+1
| | | | | | | | | | | | | Fully 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 Rock64 Differential Revision: https://reviews.freebsd.org/D13615 Notes: svn path=/head/; revision=327392
* Make kernel option KERNVIRTADDR optional, remove it from std.<platform>Ian Lepore2017-12-301-3/+0
| | | | | | | | | | | | | | | | | | | files that can use the default value. It used to be required that the low-order bits of KERNVIRTADDR matched the 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 KERNVIRTADDR except that both must be aligned to a 2 MiB boundary. This change makes the default KERNVIRTADDR value 0xc0000000, and removes the options from all the platforms that can use the default value. The default is now defined in vmparam.h, and that file is now included in a few new places that reference KERNVIRTADDR, since it may not come in via the forced-include of opt_global.h on the compile command line. Notes: svn path=/head/; revision=327367
* Revert r327250 as it broke the build for some armv6 kernel and all armv4/5Emmanuel Vadot2017-12-281-0/+1
| | | | | | | Reported by: ian Notes: svn path=/head/; revision=327280
* arm: Add kern/kern_clocksource.c to files.armEmmanuel Vadot2017-12-271-1/+0
| | | | | | | Instead of adding it to every files.vendor, add it to the common arch file. Notes: svn path=/head/; revision=327250
* sys/arm: further adoption of SPDX licensing ID tags.Pedro F. Giffuni2017-11-278-0/+16
| | | | | | | | | | | | | | | Mainly focus on files that use BSD 2-Clause license, however the tool I was using misidentified many licenses so this was mostly a manual - error prone - task. The Software Package Data Exchange (SPDX) group provides a specification to make it easier for automated tools to detect and summarize well known opensource licenses. We are gradually adopting the specification, noting that the tags are considered only advisory and do not, in any way, superceed or replace the license texts. Notes: svn path=/head/; revision=326258
* Tag all armv7 kernels as such in their machine config line.Warner Losh2017-10-051-1/+1
| | | | | | | | | | | | | | Transition all boards that support arm cortex CPUs to armv7. This leaves two armv6 kernels in the tree. RPI-B, which uses the BCM2835 which has a ARM1176 core, and VERSATILEPB, which is a qemu board setup around the time RPI-B went in. Copy std.armv6 to std.armv7, even though that duplicates a lot of stuff. More work needs to be done to sort out the duplication. Differential Revision: https://reviews.freebsd.org/D12027 Notes: svn path=/head/; revision=324341
* Remake support for SMP kernel on UP cpu:Michal Meloun2017-02-021-1/+1
| | | | | | | | | | | | | | | | | - 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 Notes: svn path=/head/; revision=313090
* All armv6 platforms have the same implementation of platform_lastaddr.Andrew Turner2016-12-161-9/+0
| | | | | | | | | | | Replace them with a default handler that returns devmap_lastaddr. Reviewed by: mmel Sponsored by: ABT Systems Ltd Differential Revision: https://reviews.freebsd.org/D8806 Notes: svn path=/head/; revision=310153
* Add the missing void to function signatures in much of the arm code.Andrew Turner2016-12-131-1/+1
| | | | | | | Sponsored by: ABT Systems Ltd Notes: svn path=/head/; revision=310021
* Use platform_*_t to check the platform function signatures are correct inAndrew Turner2016-12-131-1/+6
| | | | | | | | | the Rockchip platform code and correct the one place they differ. Sponsored by: ABT Systems Ltd Notes: svn path=/head/; revision=310020
* Switch Rockchip RK3188 SoC to use the platform code.Ganbold Tsagaankhuu2016-12-133-23/+73
| | | | | | | | Reviewed by: andrew, manu Differential Revision: https://reviews.freebsd.org/D8769 Notes: svn path=/head/; revision=310019
* Use the correct OF_getencprop over OF_getprop + fdt32_to_cpu to readAndrew Turner2016-11-141-8/+6
| | | | | | | | | integer data from the device tree. Sponsored by: ABT Systems Ltd Notes: svn path=/head/; revision=308640
* Stop including fdt_common.h from the arm code when it's unneeded.Andrew Turner2016-11-144-5/+0
| | | | | | | Sponsored by: ABT Systems Ltd Notes: svn path=/head/; revision=308638
* Use the modern spelling of ofw_bus_node_is_compatible in sys/arm.Andrew Turner2016-11-111-1/+1
| | | | | | | Sponsored by: ABT Systems Ltd Notes: svn path=/head/; revision=308531
* Remove more unneeded users of the fdt_pic_decode_t table.Andrew Turner2016-11-112-62/+0
| | | | | | | Sponsored by: ABT Systems Ltd Notes: svn path=/head/; revision=308525
* ARM: Remove unused includes.Michal Meloun2016-10-092-3/+0
| | | | | | | MFC after: 1 week Notes: svn path=/head/; revision=306902
* ARM: SEV/WFE instructions are implemented starting from ARMv6K,Michal Meloun2016-10-061-1/+2
| | | | | | | | | use it directly. MFC after: 1 week Notes: svn path=/head/; revision=306756
* Split CPU_CORTEXA into CPU_CORTEXA8, for the Cortex-A8, and CPU_CORTEXA_MP,Andrew Turner2016-10-041-1/+1
| | | | | | | | | | | | | | for later Cortex-A CPUs that support the Multiprocessor Extensions. This will be needed to support both in a single GENERIC kernel while still being able to only build for a single SoC. Reviewed by: mmel Relnotes: yes Sponsored by: ABT Systems Ltd Differential Revision: https://reviews.freebsd.org/D8138 Notes: svn path=/head/; revision=306672
* Restrict where we need to define fdt_fixup_table to just PowerPC andAndrew Turner2016-09-231-4/+0
| | | | | | | | | Marvell. Sponsored by: ABT Systems Ltd Notes: svn path=/head/; revision=306267
* Remove bus_dma_get_range and bus_dma_get_range_nb on armv6. We only needAndrew Turner2016-09-231-15/+0
| | | | | | | | | | this on a few earlier arm SoCs. Reviewed by: manu (earlier version) Sponsored by: ABT Systems Ltd Notes: svn path=/head/; revision=306262
* Move arm's devmap to some generic place, so it can be usedRuslan Bukin2016-04-261-4/+4
| | | | | | | | | | | | by other architectures. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D6091 Sponsored by: DARPA, AFRL Sponsored by: HEIF5 Notes: svn path=/head/; revision=298627
* Rename ARM_INTRNG and MIPS_INTRNG to INTRNG. This will help with machineAndrew Turner2016-04-151-1/+1
| | | | | | | | | | independent code that needs to know about INTRNG such as PCI drivers. Obtained from: ABT Systems Ltd Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=298068
* Almost all copies of platform_mp_init_secondary just calledAndrew Turner2016-02-261-7/+0
| | | | | | | | | | | | intr_pic_init_secondary. Replace them with a direct call. On BCM2836 and ARMADA XP we need to add this function, but it can be empty. Reviewed by: ian, imp Sponsored by: ABT Systems Ltd Differential Revision: https://reviews.freebsd.org/D5460 Notes: svn path=/head/; revision=296100
* Remove platform_mp_probe as it's almost identical on most ARM SoCs, andAndrew Turner2016-02-261-10/+0
| | | | | | | | | | | | | slightly wrong on the others. We should just check if mp_ncpus is set to more than one CPU as we may wish to run on a single core even when SMP is available. Reviewed by: ian Sponsored by: ABT Systems Ltd Differential Revision: https://reviews.freebsd.org/D5458 Notes: svn path=/head/; revision=296098
* Remove platform_ipi_send, it's an unneeded as all implementations areAndrew Turner2016-02-251-7/+0
| | | | | | | | | identical. Sponsored by: ABT Systems Ltd Notes: svn path=/head/; revision=296066
* Move ARM_L2_PIPT option to std.armv6 for all armv6 platforms.Svatopluk Kraus2016-02-221-2/+0
| | | | | | | | | | Only L2 PIPT cache is supported for __ARM_ARCH >= 6. In fact, this is just a pure proclamation as this option is used only in armv4 specific files now. Notes: svn path=/head/; revision=295885
* Stop defining fdt_pic_table when building for ARM_INTRNG.Andrew Turner2016-02-111-0/+2
| | | | Notes: svn path=/head/; revision=295509
* ARM: Use new ARMv6 naming conventions for cache and TLB functionsMichal Meloun2016-02-051-2/+2
| | | | | | | | | in all but ARMv4 specific files. Expand ARMv6 compatibility stubs in cpu-v4.h. Use physical address in L2 cache functions if ARM_L2_PIPT is defined. Notes: svn path=/head/; revision=295319
* [intrng] Migrate the intrng code from sys/arm/arm to sys/kern/subr_intr.c.Adrian Chadd2015-12-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ci20 port (by kan@) is going to reuse almost all of the intrng code since the SoC in question looks suspiciously like someone took an ARM SoC design and replaced the ARM core with a MIPS core. * migrate out the code; * rename ARM_ -> INTR_; * rename arm_ -> intr_; * move the interrupt flush routine from intr.c / intrng.c into arm/machdep_intr.c - removing the code duplication and removing the ARM specific bits from here. Thanks to the Star Wars: The Force Awakens premiere line for allowing me a couple hours of quiet time to finish the universe builds. Tested: * make universe TODO: * The structure definitions in subr_intr.c still includes machine/intr.h which requires one duplicates all of the intrng definitions in the platform code (which kan has done, and I think we don't have to.) Instead I should break out the generic things (function declarations, common intr structures, etc) into a separate header. * Kan has requested I make the PIC based IPI stuff optional. Notes: svn path=/head/; revision=292426
* Create device options for the two common ARM timers.Andrew Turner2015-11-211-2/+0
| | | | | | | Sponsored by: ABT Systems Ltd Notes: svn path=/head/; revision=291135
* Move more bus_space_* files to be built by files.arm. This leaves theAndrew Turner2015-11-211-3/+0
| | | | | | | | | | definition in a file.* file under sys/arm/arm in the few cases we need it for non-fdt platforms. Sponsored by: ABT Systems Ltd Notes: svn path=/head/; revision=291133
* Makeoption ARM_LITLE_ENDIAN does nothing. Remove it since it isn'tWarner Losh2015-11-201-1/+0
| | | | | | | | consistently used. It was a carry over from NetBSD that FreeBSD doesn't use. Notes: svn path=/head/; revision=291110
* Remove bus_space_asm_generic.S from the per-SoC files.* files, it's alreadyAndrew Turner2015-11-201-1/+0
| | | | | | | | | in files.arm. Sponsored by: ABT Systems Ltd Notes: svn path=/head/; revision=291108
* Stop setting {KERN,}PHYSADDR on armv6, it's unneeded.Andrew Turner2015-11-201-9/+0
| | | | | | | Sponsored by: ABT Systems Ltd Notes: svn path=/head/; revision=291102
* Rename arm_init_secondary_ic() -> arm_pic_init_secondary(). The latter isIan Lepore2015-10-181-1/+1
| | | | | | | | | the name the function will have when the new ARM_INTRNG code is integrated, and doing this rename first will make it easier to toggle the new interrupt handling code on/off with a config option for debugging. Notes: svn path=/head/; revision=289522
* Use the new gic option on all configs that need it.Andrew Turner2015-05-101-1/+0
| | | | Notes: svn path=/head/; revision=282723
* Include vm/pmap.h for pmap_kextract.Andrew Turner2015-04-041-0/+3
| | | | Notes: svn path=/head/; revision=281092
* Stop using machine/fdt.h in the arm kernel code when we don't need it.Andrew Turner2015-04-044-4/+0
| | | | Notes: svn path=/head/; revision=281085
* Build the cpufunc_asm_* files based on the cpu type, not which config fileAndrew Turner2015-03-291-1/+0
| | | | | | | we happen to be building. Notes: svn path=/head/; revision=280831