| History log of /src/sys/arch/evbarm/rpi |
| Revision | Date | Author | Comments |
| 1.5 | 18-Oct-2018 |
skrll | Provide generic start code that assumes the MMU is off and caches are disabled as per the linux booting protocol for ARMv6 and ARMv7 boards. u-boot image type should be changed to 'linux' for correct behaviour.
The new start code builds a minimal "bootstrap" L1PT with cached access disabled and uses the same table for all processors. AP startup is performed in less steps and more code is written in C.
The bootstrap tables and stack are placed into an (orphaned) section "_init_memory" which is given to uvm when it is no longer used.
Various kernels have been converted to use this code and tested. Some boards were provided by TNF. Thanks!
The GENERIC kernel now boots on boards using the TEGRA, SUNXI and EXYNOS kernels. The GENERIC kernel will also work on RPI2 using u-boot.
Thanks to martin@ and aymeric@ for testing on parallella and nanosoc respectively
|
| 1.4 | 01-Apr-2018 |
ryo | branches: 1.4.2; Add initial support for ARMv8 (AARCH64) (by nisimura@ and ryo@)
- sys/arch/evbarm64 is gone and integrated into sys/arch/evbarm. (by skrll@) - add support fdt. evbarm/conf/GENERIC64 fdt (bcm2837,sunxi,tegra) based generic 64bit kernel config. (by skrll@, jmcneill@)
|
| 1.3 | 10-Dec-2017 |
skrll | branches: 1.3.2; FDTise RapberryPI support. Thanks for jmcneill for a lot of help with this.
The kernel image that the RPI firmware boots is now netbsd.img in the kernel build directory.
XXX fdtbus_get_reg needs reworking
|
| 1.2 | 28-Feb-2015 |
skrll | Initial RPI2 support - it doesn't work yet. The generic timer gets messed up somehow.
This commit changes the KVA layout of the RPI.
|
| 1.1 | 26-Jul-2012 |
skrll | branches: 1.1.2; 1.1.4; 1.1.6; 1.1.18; 1.1.20; Initial commit of support for the RaspberryPI (www.raspberrypi.org)
This is enough for serial console via the gpio header pins and to get to multiuser.
A huge thank you to Matt Thomas for all his help.
|
| 1.1.20.1 | 06-Apr-2015 |
skrll | Sync with HEAD
|
| 1.1.18.1 | 11-Mar-2015 |
snj | Pull up following revision(s) (requested by skrll in ticket #582): distrib/utils/embedded/conf/rpi.conf: revision 1.27 etc/etc.evbarm/Makefile.inc: revision 1.70 sys/arch/arm/broadcom/bcm2835_intr.c: revision 1.5-1.7 sys/arch/arm/broadcom/bcm2835_obio.c: revision 1.23, 1.24 sys/arch/arm/broadcom/bcm2835_space.c: revision 1.8 sys/arch/arm/broadcom/bcm2835reg.h: revision 1.14 sys/arch/arm/broadcom/bcm2835var.h: revision 1.2 sys/arch/arm/broadcom/files.bcm2835: revision 1.24 sys/arch/arm/cortex/a9_mpsubr.S: revision 1.30 sys/arch/arm/cortex/armperiph.c: revision 1.8, 1.9 sys/arch/arm/cortex/gtmr.c: revision 1.9 sys/arch/arm/cortex/gtmr_var.h: revision 1.5 sys/arch/arm/cortex/mpcore_var.h: revision 1.3 sys/arch/arm/include/cpu.h: revision 1.84 sys/arch/evbarm/conf/RPI2: revision 1.1, 1.2 sys/arch/evbarm/conf/RPI2_INSTALL: revision 1.1 sys/arch/evbarm/conf/RPI: revision 1.59, 1.60 sys/arch/evbarm/conf/mk.rpi: revision 1.4 sys/arch/evbarm/conf/std.rpi: revisions 1.16-1.19 via patch sys/arch/evbarm/rpi/genassym.cf: revision 1.2 sys/arch/evbarm/rpi/rpi.h: revision 1.4 sys/arch/evbarm/rpi/rpi2_start.S: revision 1.1 sys/arch/evbarm/rpi/rpi_machdep.c: revision 1.57, 1.58 via patch sys/arch/evbarm/rpi/rpi_start.S: revision 1.13 Move some options into std.rpi -- Add __HAVE_MM_MD_CACHE_ALIASING Pull up following revision(s) (requested by skrll in ticket #582): Fix TPIDRPRW_IS_CURLWP builds. -- A MULTIPROCESSOR kernel requires TPIDRPRW_IS_CURCPU. -- Use TPIDRPRW_IS_CURLWP as it's a slight code reduction and performance improvement. Initial RPI2 support - it doesn't work yet. The generic timer gets messed up somehow. This commit changes the KVA layout of the RPI. -- Make this compile where gtmr isn't used. -- Spin up the non-boot CPUs, but don't allow cpu_boot_secondary_processors to see them for now. RPI2 nows works well with only the boot cpu. -- Appease a KASSERT - will be remove when MULTIPROCESSOR RPI2 is fixed. -- Add RPI2 to kernels build for both earmv[67]. Use the earmv6 built kernels to create an image that can be used on both RPI and RPI2 -- Add an RPI2_INSTALL
|
| 1.1.6.2 | 30-Oct-2012 |
yamt | sync with head
|
| 1.1.6.1 | 26-Jul-2012 |
yamt | file genassym.cf was added on branch yamt-pagecache on 2012-10-30 17:19:26 +0000
|
| 1.1.4.1 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.2.2 | 09-Aug-2012 |
jdc | Pull up revisions: src/sys/arch/evbarm/dev/plcomreg.h revisions 1.2,1.3,1.4 src/sys/arch/evbarm/conf/INTEGRATOR revision 1.65 src/sys/arch/evbarm/dev/plcom.c revisions 1.34,1.35,1.36,1.37,1.38,1.39,1.40 src/sys/arch/evbarm/ifpga/plcom_ifpga.c revisions 1.12,1.13,1.14 src/sys/arch/evbarm/dev/plcomvar.h revisions 1.9,1.10,1.11 src/sys/arch/evbarm/ifpga/plcom_ifpgavar.h revision 1.2 src/sys/arch/arm/arm/cpufunc.c revisions 1.105,1.108 src/sys/arch/arm/arm32/cpu.c revision 1.79 src/sys/arch/arm/include/armreg.h revisions 1.49,1.54 src/sys/arch/arm/arm32/pmap.c revision 1.229 src/sys/arch/arm/arm32/arm32_machdep.c revision 1.77 src/sys/arch/arm/include/cpu.h revision 1.64 src/sys/arch/arm/arm/cpufunc_asm_arm1136.S revision 1.3 src/sys/arch/arm/arm/cpufunc_asm_arm11x6.S revision 1.1 src/sys/arch/arm/conf/files.arm revision 1.106 src/sys/arch/arm/include/cpufunc.h revision 1.57 src/sys/dev/sdmmc/sdhc.c revisions 1.14,1.24 src/sys/dev/sdmmc/sdhcvar.h revisions 1.7,1.8 src/sys/arch/evbarm/ifpga/ifpgareg.h revision 1.4 src/sys/arch/evbarm/integrator/integrator_machdep.c revision 1.69 src/sys/arch/arm/broadcom/bcm2835_dma.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_emmc.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_intr.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_intr.h revision 1.1 src/sys/arch/arm/broadcom/bcm2835_obio.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_plcom.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_pm.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_pmvar.h revision 1.1 src/sys/arch/arm/broadcom/bcm2835_space.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_tmr.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835reg.h revision 1.1 src/sys/arch/arm/broadcom/bcm2835var.h revision 1.1 src/sys/arch/arm/broadcom/bcm_amba.h revision 1.1 src/sys/arch/arm/broadcom/files.bcm2835 revision 1.1 src/sys/arch/evbarm/Makefile revision 1.9 src/sys/arch/evbarm/conf/RPI revision 1.1 src/sys/arch/evbarm/conf/files.rpi revision 1.1 src/sys/arch/evbarm/conf/mk.rpi revision 1.1 src/sys/arch/evbarm/conf/std.rpi revision 1.1 src/sys/arch/evbarm/rpi/genassym.cf revision 1.1 src/sys/arch/evbarm/rpi/rpi.h revision 1.1 src/sys/arch/evbarm/rpi/rpi_machdep.c revision 1.1 src/sys/arch/evbarm/rpi/rpi_start.S revision 1.1,1.2 src/etc/etc.evbarm/Makefile.inc revision 1.28 (requested by skrll in ticket #454).
don't mix #define<TAB> and #define<SPACE> in a file.
avoid warning with options PLCOM_DEBUG for INTEGRATOR.
Rename register values. No functional change - same code before and after.
Existing names are prefixed with PL01X_ where they're common between the PL010 and the PL011. The PL010_/PL011_ prefixes are added where they're found only on the respective chips.
Replace the simple_lock with a kmutex_t. Update the locking to match com(4) in the few places it didn't already.
DOH. Replace a line that got accidently deleted in the last commit.
device_t/softc split struct device * -> device_t struct cfdata * -> cfdata_t
Add the 'Z' to the 1176 cpu product name.
ok matt@
Fix locking botch introduced in 1.36.
Fix a KASSERT. From/OK'ed by matt@
Fix racy softint dispatch that lead to KASSERT(si->si_active) in softint_execute
Discussed with matt@. "Looks good to me"
Add the documented ARM11[37]6 Auxiliary control register defines.
Add support for the ARM1176JZS
Add a flag for the lack of LED_ON in HOST_CTL (ti omap3 doesn't do that).
Provide a method for attachments to specify capabilites.
Add support for the PL011 to plcom. Pull across a bunch of fixes from com(4) while I'm here and do some other tidyup.
Tested on a RaspberryPi.
PL010 not tested.
Initial commit of support for the RaspberryPI (www.raspberrypi.org)
This is enough for serial console via the gpio header pins and to get to multiuser.
A huge thank you to Matt Thomas for all his help.
Add RPI to KERNEL_SETS
Remove #if 0 code.
|
| 1.1.2.1 | 26-Jul-2012 |
jdc | file genassym.cf was added on branch netbsd-6 on 2012-08-09 06:36:51 +0000
|
| 1.3.2.2 | 20-Oct-2018 |
pgoyette | Sync with head
|
| 1.3.2.1 | 07-Apr-2018 |
pgoyette | Sync with HEAD. 77 conflicts resolved - all of them $NetBSD$
|
| 1.4.2.1 | 10-Jun-2019 |
christos | Sync with HEAD
|
| 1.6 | 04-Jul-2020 |
skrll | G/C
|
| 1.5 | 10-Dec-2017 |
skrll | FDTise RapberryPI support. Thanks for jmcneill for a lot of help with this.
The kernel image that the RPI firmware boots is now netbsd.img in the kernel build directory.
XXX fdtbus_get_reg needs reworking
|
| 1.4 | 28-Feb-2015 |
skrll | Initial RPI2 support - it doesn't work yet. The generic timer gets messed up somehow.
This commit changes the KVA layout of the RPI.
|
| 1.3 | 06-Apr-2014 |
skrll | branches: 1.3.2; 1.3.4; Re-arrange RPI VM layout and enable __HAVE_MM_MD_DIRECT_MAPPED_PHYS. RPI kernels now boot again.
I'm not admitting defeat in why there are problems with the non-__HAVE_MM_MD_DIRECT_MAPPED_PHYS case.
|
| 1.2 | 05-Sep-2013 |
skrll | branches: 1.2.2; Whitespace
|
| 1.1 | 26-Jul-2012 |
skrll | branches: 1.1.2; 1.1.4; 1.1.6; 1.1.8; Initial commit of support for the RaspberryPI (www.raspberrypi.org)
This is enough for serial console via the gpio header pins and to get to multiuser.
A huge thank you to Matt Thomas for all his help.
|
| 1.1.8.1 | 18-May-2014 |
rmind | sync with head
|
| 1.1.6.3 | 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
| 1.1.6.2 | 30-Oct-2012 |
yamt | sync with head
|
| 1.1.6.1 | 26-Jul-2012 |
yamt | file rpi.h was added on branch yamt-pagecache on 2012-10-30 17:19:26 +0000
|
| 1.1.4.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.1.4.1 | 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
| 1.1.2.2 | 09-Aug-2012 |
jdc | Pull up revisions: src/sys/arch/evbarm/dev/plcomreg.h revisions 1.2,1.3,1.4 src/sys/arch/evbarm/conf/INTEGRATOR revision 1.65 src/sys/arch/evbarm/dev/plcom.c revisions 1.34,1.35,1.36,1.37,1.38,1.39,1.40 src/sys/arch/evbarm/ifpga/plcom_ifpga.c revisions 1.12,1.13,1.14 src/sys/arch/evbarm/dev/plcomvar.h revisions 1.9,1.10,1.11 src/sys/arch/evbarm/ifpga/plcom_ifpgavar.h revision 1.2 src/sys/arch/arm/arm/cpufunc.c revisions 1.105,1.108 src/sys/arch/arm/arm32/cpu.c revision 1.79 src/sys/arch/arm/include/armreg.h revisions 1.49,1.54 src/sys/arch/arm/arm32/pmap.c revision 1.229 src/sys/arch/arm/arm32/arm32_machdep.c revision 1.77 src/sys/arch/arm/include/cpu.h revision 1.64 src/sys/arch/arm/arm/cpufunc_asm_arm1136.S revision 1.3 src/sys/arch/arm/arm/cpufunc_asm_arm11x6.S revision 1.1 src/sys/arch/arm/conf/files.arm revision 1.106 src/sys/arch/arm/include/cpufunc.h revision 1.57 src/sys/dev/sdmmc/sdhc.c revisions 1.14,1.24 src/sys/dev/sdmmc/sdhcvar.h revisions 1.7,1.8 src/sys/arch/evbarm/ifpga/ifpgareg.h revision 1.4 src/sys/arch/evbarm/integrator/integrator_machdep.c revision 1.69 src/sys/arch/arm/broadcom/bcm2835_dma.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_emmc.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_intr.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_intr.h revision 1.1 src/sys/arch/arm/broadcom/bcm2835_obio.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_plcom.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_pm.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_pmvar.h revision 1.1 src/sys/arch/arm/broadcom/bcm2835_space.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_tmr.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835reg.h revision 1.1 src/sys/arch/arm/broadcom/bcm2835var.h revision 1.1 src/sys/arch/arm/broadcom/bcm_amba.h revision 1.1 src/sys/arch/arm/broadcom/files.bcm2835 revision 1.1 src/sys/arch/evbarm/Makefile revision 1.9 src/sys/arch/evbarm/conf/RPI revision 1.1 src/sys/arch/evbarm/conf/files.rpi revision 1.1 src/sys/arch/evbarm/conf/mk.rpi revision 1.1 src/sys/arch/evbarm/conf/std.rpi revision 1.1 src/sys/arch/evbarm/rpi/genassym.cf revision 1.1 src/sys/arch/evbarm/rpi/rpi.h revision 1.1 src/sys/arch/evbarm/rpi/rpi_machdep.c revision 1.1 src/sys/arch/evbarm/rpi/rpi_start.S revision 1.1,1.2 src/etc/etc.evbarm/Makefile.inc revision 1.28 (requested by skrll in ticket #454).
don't mix #define<TAB> and #define<SPACE> in a file.
avoid warning with options PLCOM_DEBUG for INTEGRATOR.
Rename register values. No functional change - same code before and after.
Existing names are prefixed with PL01X_ where they're common between the PL010 and the PL011. The PL010_/PL011_ prefixes are added where they're found only on the respective chips.
Replace the simple_lock with a kmutex_t. Update the locking to match com(4) in the few places it didn't already.
DOH. Replace a line that got accidently deleted in the last commit.
device_t/softc split struct device * -> device_t struct cfdata * -> cfdata_t
Add the 'Z' to the 1176 cpu product name.
ok matt@
Fix locking botch introduced in 1.36.
Fix a KASSERT. From/OK'ed by matt@
Fix racy softint dispatch that lead to KASSERT(si->si_active) in softint_execute
Discussed with matt@. "Looks good to me"
Add the documented ARM11[37]6 Auxiliary control register defines.
Add support for the ARM1176JZS
Add a flag for the lack of LED_ON in HOST_CTL (ti omap3 doesn't do that).
Provide a method for attachments to specify capabilites.
Add support for the PL011 to plcom. Pull across a bunch of fixes from com(4) while I'm here and do some other tidyup.
Tested on a RaspberryPi.
PL010 not tested.
Initial commit of support for the RaspberryPI (www.raspberrypi.org)
This is enough for serial console via the gpio header pins and to get to multiuser.
A huge thank you to Matt Thomas for all his help.
Add RPI to KERNEL_SETS
Remove #if 0 code.
|
| 1.1.2.1 | 26-Jul-2012 |
jdc | file rpi.h was added on branch netbsd-6 on 2012-08-09 06:36:51 +0000
|
| 1.2.2.1 | 10-Aug-2014 |
tls | Rebase.
|
| 1.3.4.1 | 06-Apr-2015 |
skrll | Sync with HEAD
|
| 1.3.2.1 | 11-Mar-2015 |
snj | Pull up following revision(s) (requested by skrll in ticket #582): distrib/utils/embedded/conf/rpi.conf: revision 1.27 etc/etc.evbarm/Makefile.inc: revision 1.70 sys/arch/arm/broadcom/bcm2835_intr.c: revision 1.5-1.7 sys/arch/arm/broadcom/bcm2835_obio.c: revision 1.23, 1.24 sys/arch/arm/broadcom/bcm2835_space.c: revision 1.8 sys/arch/arm/broadcom/bcm2835reg.h: revision 1.14 sys/arch/arm/broadcom/bcm2835var.h: revision 1.2 sys/arch/arm/broadcom/files.bcm2835: revision 1.24 sys/arch/arm/cortex/a9_mpsubr.S: revision 1.30 sys/arch/arm/cortex/armperiph.c: revision 1.8, 1.9 sys/arch/arm/cortex/gtmr.c: revision 1.9 sys/arch/arm/cortex/gtmr_var.h: revision 1.5 sys/arch/arm/cortex/mpcore_var.h: revision 1.3 sys/arch/arm/include/cpu.h: revision 1.84 sys/arch/evbarm/conf/RPI2: revision 1.1, 1.2 sys/arch/evbarm/conf/RPI2_INSTALL: revision 1.1 sys/arch/evbarm/conf/RPI: revision 1.59, 1.60 sys/arch/evbarm/conf/mk.rpi: revision 1.4 sys/arch/evbarm/conf/std.rpi: revisions 1.16-1.19 via patch sys/arch/evbarm/rpi/genassym.cf: revision 1.2 sys/arch/evbarm/rpi/rpi.h: revision 1.4 sys/arch/evbarm/rpi/rpi2_start.S: revision 1.1 sys/arch/evbarm/rpi/rpi_machdep.c: revision 1.57, 1.58 via patch sys/arch/evbarm/rpi/rpi_start.S: revision 1.13 Move some options into std.rpi -- Add __HAVE_MM_MD_CACHE_ALIASING Pull up following revision(s) (requested by skrll in ticket #582): Fix TPIDRPRW_IS_CURLWP builds. -- A MULTIPROCESSOR kernel requires TPIDRPRW_IS_CURCPU. -- Use TPIDRPRW_IS_CURLWP as it's a slight code reduction and performance improvement. Initial RPI2 support - it doesn't work yet. The generic timer gets messed up somehow. This commit changes the KVA layout of the RPI. -- Make this compile where gtmr isn't used. -- Spin up the non-boot CPUs, but don't allow cpu_boot_secondary_processors to see them for now. RPI2 nows works well with only the boot cpu. -- Appease a KASSERT - will be remove when MULTIPROCESSOR RPI2 is fixed. -- Add RPI2 to kernels build for both earmv[67]. Use the earmv6 built kernels to create an image that can be used on both RPI and RPI2 -- Add an RPI2_INSTALL
|
| 1.9 | 18-Oct-2018 |
skrll | Provide generic start code that assumes the MMU is off and caches are disabled as per the linux booting protocol for ARMv6 and ARMv7 boards. u-boot image type should be changed to 'linux' for correct behaviour.
The new start code builds a minimal "bootstrap" L1PT with cached access disabled and uses the same table for all processors. AP startup is performed in less steps and more code is written in C.
The bootstrap tables and stack are placed into an (orphaned) section "_init_memory" which is given to uvm when it is no longer used.
Various kernels have been converted to use this code and tested. Some boards were provided by TNF. Thanks!
The GENERIC kernel now boots on boards using the TEGRA, SUNXI and EXYNOS kernels. The GENERIC kernel will also work on RPI2 using u-boot.
Thanks to martin@ and aymeric@ for testing on parallella and nanosoc respectively
|
| 1.8 | 03-Aug-2018 |
skrll | Provide and use kern_vtopdiff in KERN_{VTOPHYS,PHYSTOV}. A step towards generic arm.
|
| 1.7 | 27-Jun-2018 |
ryo | branches: 1.7.2; on evbarm/RPI,RPI2, VERBOSE_INIT_ARM had broken.
XPUTC() of evbarm/rpi/rpi*_start.S uses bcm283[567]_platform_early_putchar() and it requires stack. fixed to allocate stack when starting from rpi*_start.S and a9_mpsubr.S if needed.
to work XPUTC(), need to define VERBOSE_INIT_ARM and EARLYCONS option.
|
| 1.6 | 27-Jun-2018 |
ryo | remove unnecessary code. .Lmmu_init_table is in same section, and also not r8.
|
| 1.5 | 03-Mar-2018 |
skrll | branches: 1.5.2; Start code now updates a global variable fdt_addr_r to handle differences in boot protocol (think arm64)
|
| 1.4 | 10-Dec-2017 |
skrll | FDTise RapberryPI support. Thanks for jmcneill for a lot of help with this.
The kernel image that the RPI firmware boots is now netbsd.img in the kernel build directory.
XXX fdtbus_get_reg needs reworking
|
| 1.3 | 17-Dec-2015 |
skrll | branches: 1.3.16; Check for hypervisor mode in cortex_init and exit if the cpu started there.
Needed by latest RPI firmware.
|
| 1.2 | 18-Apr-2015 |
skrll | Use character constants instead of ascii values for readability
|
| 1.1 | 28-Feb-2015 |
skrll | branches: 1.1.2; 1.1.4; Initial RPI2 support - it doesn't work yet. The generic timer gets messed up somehow.
This commit changes the KVA layout of the RPI.
|
| 1.1.4.4 | 27-Dec-2015 |
skrll | Sync with HEAD (as of 26th Dec)
|
| 1.1.4.3 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.1.4.2 | 06-Apr-2015 |
skrll | Sync with HEAD
|
| 1.1.4.1 | 28-Feb-2015 |
skrll | file rpi2_start.S was added on branch nick-nhusb on 2015-04-06 15:17:56 +0000
|
| 1.1.2.3 | 26-Feb-2016 |
snj | Pull up following revision(s) (requested by skrll in ticket #1107): external/broadcom/rpi-firmware/dist/LICENCE.broadcom: revision 1.2 external/broadcom/rpi-firmware/dist/bootcode.bin: revision 1.8 external/broadcom/rpi-firmware/dist/fixup.dat: revision 1.8 external/broadcom/rpi-firmware/dist/fixup_cd.dat: revision 1.8 external/broadcom/rpi-firmware/dist/start.elf: revision 1.8 external/broadcom/rpi-firmware/dist/start_cd.elf: revision 1.8 sys/arch/arm/broadcom/bcm2835_emmc.c: revision 1.29 sys/arch/arm/broadcom/bcm2835_gpio.c: revision 1.3 sys/arch/arm/broadcom/bcm2835_gpio_subr.c: revision 1.4 sys/arch/arm/broadcom/bcm2835_space.c: revision 1.9, 1.10 sys/arch/arm/broadcom/bcm2835reg.h: patch sys/arch/arm/cortex/a9_mpsubr.S: revisions 1.45, 1.46 sys/arch/evbarm/conf/CUBIEBOARD: revision 1.45 sys/arch/evbarm/conf/std.awin: revision 1.9 sys/arch/evbarm/rpi/rpi2_start.S: revision 1.3 sys/arch/evbarm/rpi/rpi_machdep.c: revision 1.68 Check for hypervisor mode in cortex_init and exit if the cpu started there. Needed by latest RPI firmware. -- Fix up bus_space_map for latest RPI firmware which now passes the FB address in the mailbox properties as a bus address. -- Update RPI firmware to version after the following commit commit 224c75602b8bae1a9e942b4f1c7ed3aa8e0f0ec8 Author: popcornmix<popcornmix@gmail.com> Date: Tue Dec 8 14:48:57 2015 +0000 -- Deal with kernel builds where virtualisation isn't available -- Tweak CPUFLAGS to cover all CPUs -- Fix up bcm283[56] bus_space(4) to really use bus addresses for peripherals, etc Simplifies the code in various places and uses the abstraction in more places. (bcm2835_gpio_subr.c still doesn't)
|
| 1.1.2.2 | 11-Mar-2015 |
snj | Pull up following revision(s) (requested by skrll in ticket #582): distrib/utils/embedded/conf/rpi.conf: revision 1.27 etc/etc.evbarm/Makefile.inc: revision 1.70 sys/arch/arm/broadcom/bcm2835_intr.c: revision 1.5-1.7 sys/arch/arm/broadcom/bcm2835_obio.c: revision 1.23, 1.24 sys/arch/arm/broadcom/bcm2835_space.c: revision 1.8 sys/arch/arm/broadcom/bcm2835reg.h: revision 1.14 sys/arch/arm/broadcom/bcm2835var.h: revision 1.2 sys/arch/arm/broadcom/files.bcm2835: revision 1.24 sys/arch/arm/cortex/a9_mpsubr.S: revision 1.30 sys/arch/arm/cortex/armperiph.c: revision 1.8, 1.9 sys/arch/arm/cortex/gtmr.c: revision 1.9 sys/arch/arm/cortex/gtmr_var.h: revision 1.5 sys/arch/arm/cortex/mpcore_var.h: revision 1.3 sys/arch/arm/include/cpu.h: revision 1.84 sys/arch/evbarm/conf/RPI2: revision 1.1, 1.2 sys/arch/evbarm/conf/RPI2_INSTALL: revision 1.1 sys/arch/evbarm/conf/RPI: revision 1.59, 1.60 sys/arch/evbarm/conf/mk.rpi: revision 1.4 sys/arch/evbarm/conf/std.rpi: revisions 1.16-1.19 via patch sys/arch/evbarm/rpi/genassym.cf: revision 1.2 sys/arch/evbarm/rpi/rpi.h: revision 1.4 sys/arch/evbarm/rpi/rpi2_start.S: revision 1.1 sys/arch/evbarm/rpi/rpi_machdep.c: revision 1.57, 1.58 via patch sys/arch/evbarm/rpi/rpi_start.S: revision 1.13 Move some options into std.rpi -- Add __HAVE_MM_MD_CACHE_ALIASING Pull up following revision(s) (requested by skrll in ticket #582): Fix TPIDRPRW_IS_CURLWP builds. -- A MULTIPROCESSOR kernel requires TPIDRPRW_IS_CURCPU. -- Use TPIDRPRW_IS_CURLWP as it's a slight code reduction and performance improvement. Initial RPI2 support - it doesn't work yet. The generic timer gets messed up somehow. This commit changes the KVA layout of the RPI. -- Make this compile where gtmr isn't used. -- Spin up the non-boot CPUs, but don't allow cpu_boot_secondary_processors to see them for now. RPI2 nows works well with only the boot cpu. -- Appease a KASSERT - will be remove when MULTIPROCESSOR RPI2 is fixed. -- Add RPI2 to kernels build for both earmv[67]. Use the earmv6 built kernels to create an image that can be used on both RPI and RPI2 -- Add an RPI2_INSTALL
|
| 1.1.2.1 | 28-Feb-2015 |
snj | file rpi2_start.S was added on branch netbsd-7 on 2015-03-11 20:22:56 +0000
|
| 1.3.16.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.3.16.1 | 17-Dec-2015 |
jdolecek | file rpi2_start.S was added on branch tls-maxphys on 2017-12-03 11:36:06 +0000
|
| 1.5.2.3 | 20-Oct-2018 |
pgoyette | Sync with head
|
| 1.5.2.2 | 06-Sep-2018 |
pgoyette | Sync with HEAD
Resolve a couple of conflicts (result of the uimin/uimax changes)
|
| 1.5.2.1 | 28-Jul-2018 |
pgoyette | Sync with HEAD
|
| 1.7.2.1 | 10-Jun-2019 |
christos | Sync with HEAD
|
| 1.83 | 10-Dec-2017 |
skrll | FDTise RapberryPI support. Thanks for jmcneill for a lot of help with this.
The kernel image that the RPI firmware boots is now netbsd.img in the kernel build directory.
XXX fdtbus_get_reg needs reworking
|
| 1.82 | 07-Nov-2017 |
ryo | on RPI2, fix compile failure without options MULTIPROCESSOR.
|
| 1.81 | 04-Nov-2017 |
jmcneill | Firmware after May 8, 2017 places APs in WFE state at boot. Add a "sev" after writing the start vector, otherwise secondary CPUs will not boot.
|
| 1.80 | 16-Aug-2017 |
jmcneill | Disable sdhost instead of sdhc for non-wifibt boards.
|
| 1.79 | 12-Aug-2017 |
jmcneill | For boards with bluetooth, use AUX UART for console and PLCOM for bt.
|
| 1.78 | 01-Aug-2017 |
jmcneill | Enable GPCLK2 to Bluetooth.
|
| 1.77 | 31-Jul-2017 |
jmcneill | Only remap sdhost/sdhci on boards with wifi.
|
| 1.76 | 31-Jul-2017 |
jmcneill | Enable AUX UART for BT on btwifi boards
|
| 1.75 | 30-Jul-2017 |
jmcneill | Add support for BCM2835 AUX UART.
|
| 1.74 | 30-Jul-2017 |
jmcneill | Explicitly configure pin pull-down/up settings for SDIO.
|
| 1.73 | 30-Jul-2017 |
jmcneill | Add driver for the bcm2835 internal SD controller. On boards with SDIO Wi-Fi, the internal SD controller is used for the SD card slot and the Arasan SDHCI controller is used for SDIO.
|
| 1.72 | 17-Jun-2017 |
jmcneill | Enable UART0 (PL011) on GPIO header for Raspberry Pi 3 / Zero W
|
| 1.71 | 17-Jun-2017 |
jmcneill | Disable BSC0 on Raspberry Pi 3 and Zero W boards.
|
| 1.70 | 06-Jan-2017 |
skrll | branches: 1.70.8; Use the VC property mailbox to request the UART clock rate and use it appropriately
Newer firmwares use 48MHz
|
| 1.69 | 06-Jan-2017 |
skrll | Whitespace
|
| 1.68 | 02-Feb-2016 |
skrll | branches: 1.68.2; Fix up bcm283[56] bus_space(4) to really use bus addresses for peripherals, etc
Simplifies the code in various places and uses the abstraction in more places. (bcm2835_gpio_subr.c still doesn't)
|
| 1.67 | 01-Aug-2015 |
skrll | Re-enable cpus [123] now that bcm2835_intr.c is fixed with rev 1.11/
|
| 1.66 | 31-May-2015 |
skrll | No need to cpu_dcache_wbinv_all now that a9_mpsubr.S invalidates L1 only as it should
|
| 1.65 | 27-May-2015 |
jmcneill | MP not ready, disable it again
|
| 1.64 | 21-May-2015 |
skrll | Before spinning up the secondary cpus flush the dcache otherwise the dcache invalidate in cortex_mpstart makes bad things happen.
I have no idea why.
RPI2 boots again
|
| 1.63 | 21-May-2015 |
jmcneill | re-enable multiprocessor support now that sdmmc has been fixed
|
| 1.62 | 01-May-2015 |
skrll | Disable non-boot CPUs on RPI2 - there are still issues with interrupt handling.
|
| 1.61 | 12-Apr-2015 |
skrll | RPI2 MP support.
Thanks to Matt Thomas for making this possible with his changes to pic.c
|
| 1.60 | 11-Apr-2015 |
skrll | Tweak cpu start up slightly and print TTBR for cortex_mmuinfo when VERBOSE_INIT_ARM
|
| 1.59 | 15-Mar-2015 |
joerg | Do invalidate the cache as RPI2 build with Clang can't fetch the memory config otherwise.
|
| 1.58 | 04-Mar-2015 |
skrll | Spin up the non-boot CPUs, but don't allow cpu_boot_secondary_processors to see them for now.
RPI2 nows works well with only the boot cpu.
|
| 1.57 | 28-Feb-2015 |
skrll | Initial RPI2 support - it doesn't work yet. The generic timer gets messed up somehow.
This commit changes the KVA layout of the RPI.
|
| 1.56 | 21-Jan-2015 |
jmcneill | Newer Raspberry Pi firmware has changed the framebuffer from BGR to RGB. The method we use to set the pixel order (vcprop set pixel order) does not seem to work, nor does querying the pixel order (vcprop get pixel order).
The firmware passes this information to the kernel by adding a "bcm2708_fb.fbswap" kernel cmdline arg. 0=BGR, 1=RGB. If the parameter is absent, assume we are running on old firmware and use BGR mode.
|
| 1.55 | 07-Oct-2014 |
mlelstv | branches: 1.55.2; fwrev is a timestamp, print in decimal.
|
| 1.54 | 04-Oct-2014 |
macallan | pay attention to copyin()'s return values
|
| 1.53 | 03-Oct-2014 |
skrll | Introduce RPI_HWCURSOR and default to off. The existing code causes problems with vchiq at the moment.
|
| 1.52 | 01-Oct-2014 |
mlelstv | turn off hardware cursor while blanking screen.
|
| 1.51 | 01-Oct-2014 |
mlelstv | make board/firmware revisions visible via sysctl
|
| 1.50 | 29-Sep-2014 |
macallan | shut up gcc warning while there, do some magic number reduction
|
| 1.49 | 28-Sep-2014 |
macallan | make global variables static also, make cursor test pattern red/green to highlight RGB vs. BGR
|
| 1.48 | 28-Sep-2014 |
macallan | add hardware cursor support
|
| 1.47 | 12-Sep-2014 |
jmcneill | use dma channel mask from firmware
|
| 1.46 | 07-Sep-2014 |
skrll | Grab the DMA channel mask from the firmware.
|
| 1.45 | 05-Sep-2014 |
macallan | implement WSCONSIO_[G|S]VIDEO by hijacking bcm2835_genfb's ioctl next step: hardware cursor
|
| 1.44 | 22-Aug-2014 |
skrll | Remove unnecessary #include
|
| 1.43 | 25-Jul-2014 |
jmcneill | branches: 1.43.2; bump VCPROP_MAXCMDLINE to 1024, use this instead of MAX_BOOT_STRING for sizing boot_args, and allow for overriding VCPROP_MAXCMDLINE in kernel config. Fixes cmdline parsing with newer firmware (required for B+)
|
| 1.42 | 16-Jul-2014 |
jmcneill | need opt_arm_debug.h for VERBOSE_INIT_ARM
|
| 1.41 | 06-Apr-2014 |
skrll | Re-arrange RPI VM layout and enable __HAVE_MM_MD_DIRECT_MAPPED_PHYS. RPI kernels now boot again.
I'm not admitting defeat in why there are problems with the non-__HAVE_MM_MD_DIRECT_MAPPED_PHYS case.
|
| 1.40 | 01-Apr-2014 |
skrll | branches: 1.40.2; Trailing whitespace.
|
| 1.39 | 10-Dec-2013 |
joerg | Move alignment attribute onto the types, not the variable instances. Drop (unused) packed attribute.
|
| 1.38 | 15-Oct-2013 |
skrll | Switch to dwctwo(4) from dotg(4) for the RaspberryPi port. This brings DMA support and (initial) isoc transfer support.
Remove URTWN_DOTG_WORKAROUND as dwctwo doesn't appear to need it.
|
| 1.37 | 11-May-2013 |
skrll | branches: 1.37.2; Add attempt at KGDB support from Reiound. I couldn't get gdb to attach properly, but the kernel was definitely in kgdb_trap and would respond to $?#3f if typed via tip(1)
|
| 1.36 | 11-May-2013 |
skrll | Fix up the VCONS_DRAW_INTR support and DDB.
From reinoud.
|
| 1.35 | 19-Mar-2013 |
garbled | Add a new installer image for Raspberry PI to evbarm
Includes the following major changes:
1) Add new configmenu item to sysinst to allow creation of users at post-install time. 2) Add an sshramdisk type to evbarm, which is a ramdisk with sshd enabled, allowing users to install on a headless PI by sshing to the device with the account "sysinst" password "netbsd" to begin the installation. (Note, neither the account, nor the ssh setup are copied to the finalized installation image) 3) Change mkimage to build a boot-only image, without the root filesystems.
Much of the sshramdisk code could be reused on other ports easily.
|
| 1.34 | 04-Feb-2013 |
skrll | Oops, put back the initialisation of cpu_cc_freq
|
| 1.33 | 04-Feb-2013 |
skrll | Fix some VERBOSE_INIT_ARM output
|
| 1.32 | 28-Jan-2013 |
jmcneill | add machdep.serial sysctl for getting board serial number
|
| 1.31 | 25-Jan-2013 |
jmcneill | dont crash if edid data is missing or bad
|
| 1.30 | 21-Jan-2013 |
jakllsch | Assume the first ld@sdmmc to attach is the booted device until possibily-otherwise specified during evbarm cpu_rootconf().
|
| 1.29 | 19-Jan-2013 |
jmcneill | if the firmware gives us a bad emmc clock rate, ignore it
|
| 1.28 | 11-Jan-2013 |
jmcneill | allow ukbd to be the console keyboard if genfb is the console display device
|
| 1.27 | 10-Jan-2013 |
jmcneill | Modify fb attachment so genfb still attaches even if it isn't the console device. Slight change to cmdline.txt to allow for this:
- console=fb enables fb console, otherwise serial console will be used - fb=WxH to select a mode, otherwise EDID will be tried and fallback to default mode (1280x720) - fb=disable to disable fb completely
|
| 1.26 | 09-Jan-2013 |
jmcneill | If genfb.type=<int> is passed on cmdline, override the wsdisplay type returned by WSDISPLAYIO_GTYPE ioctl.
|
| 1.25 | 09-Jan-2013 |
skrll | Provide the mac address for usmsc(4) as read from the firmware.
|
| 1.24 | 09-Jan-2013 |
jmcneill | framebuffer only seems to support BGR mode, so request it and set is_bgr property on device when in BGR mode
|
| 1.23 | 09-Jan-2013 |
skrll | Provide dotg(4) - a driver for the Synposys DesignWare OTG USB IP found in the RaspberryPI. The driver supports host mode and control, interrupt, and bulk transfers only at this point.
Heavily based on the FreeBSD driver by Hans Petter Selasky.
Thanks to all who helped. Jared McNeill, Michael van Elst and other.
|
| 1.22 | 09-Jan-2013 |
jmcneill | genfb support for rpi
|
| 1.21 | 08-Jan-2013 |
skrll | Use the VC power manager mailbox channel to power up the devices we have support for.
|
| 1.20 | 07-Jan-2013 |
jmcneill | pass cmdline.txt boot arguments to kernel
|
| 1.19 | 19-Dec-2012 |
skrll | Get the CPU frequency and set cpu_cc_freq.
|
| 1.18 | 30-Oct-2012 |
skrll | Query the EMMC clock rate and use it if it's available.
|
| 1.17 | 30-Oct-2012 |
skrll | Make rpi_bootparams static
|
| 1.16 | 26-Oct-2012 |
skrll | branches: 1.16.2; Count the memory regions in bootconfig.dramblocks when using the VCPROP information.
|
| 1.15 | 19-Oct-2012 |
skrll | Make the first 8 pages available for use.
|
| 1.14 | 19-Oct-2012 |
skrll | Style change. No functional change.
|
| 1.13 | 14-Oct-2012 |
skrll | Add the Raspberry PI firmware VC mailbox channel numbers.
Add some VC property tag definitions and use them to get ARM/VC memory split.
Grab a few others things in the process, but don't do anything other than display them when VERBOSE_INIT_ARM is defined.
|
| 1.12 | 13-Oct-2012 |
skrll | Remove some unused includes
|
| 1.11 | 03-Oct-2012 |
skrll | Use armreg_ttbr_read instead of local version. No code change.
|
| 1.10 | 03-Oct-2012 |
skrll | Remove one set of _[AS] defines. No functional change.
|
| 1.9 | 03-Oct-2012 |
skrll | Remove some unnecessary headers.
|
| 1.8 | 03-Oct-2012 |
skrll | Update copyright
|
| 1.7 | 01-Sep-2012 |
skrll | branches: 1.7.2; Switch RaspberryPI to use the new boot/init code.
|
| 1.6 | 22-Aug-2012 |
jakllsch | ... and remove inclusion of defparam-created header.
|
| 1.5 | 16-Aug-2012 |
jakllsch | Get accessible memory quantity and kernel command line via Linux ARM 'A'-tag interface used by Raspberry Pi's start.elf.
|
| 1.4 | 16-Aug-2012 |
matt | Move the standard definitions of the {UND,IRQ,FIQ,ABT}_STACK_SIZE to <arm32/machdep.h> Move the extern for cpu_reset_address to the same file. Add cpu_reset_address_paddr. Kill cpu_reset_v4_MMU_disable. if cpu_reset_address is NULL, then the MMU will be disabled.
|
| 1.3 | 29-Jul-2012 |
matt | branches: 1.3.2; Fix more -fno-common fallout. Move more variables to common locations.
|
| 1.2 | 28-Jul-2012 |
matt | Remove declartions of physmem
|
| 1.1 | 26-Jul-2012 |
skrll | Initial commit of support for the RaspberryPI (www.raspberrypi.org)
This is enough for serial console via the gpio header pins and to get to multiuser.
A huge thank you to Matt Thomas for all his help.
|
| 1.3.2.5 | 14-Feb-2013 |
riz | Pull up revision 1.6 of rpi_machdep.c to fix ticket #813.
|
| 1.3.2.4 | 13-Feb-2013 |
riz | Pull up following revision(s) (requested by skrll in ticket #813):
etc/MAKEDEV.tmpl 1.160 etc/etc.evbarm/MAKEDEV.conf 1.9 external/broadcom/rpi-firmware/dist/LICENCE.broadcom 1.1 external/broadcom/rpi-firmware/dist/bootcode.bin 1.1 external/broadcom/rpi-firmware/dist/bootcode.bin 1.2 external/broadcom/rpi-firmware/dist/fixup.dat 1.1 external/broadcom/rpi-firmware/dist/fixup.dat 1.2 external/broadcom/rpi-firmware/dist/fixup_cd.dat 1.1 external/broadcom/rpi-firmware/dist/fixup_cd.dat 1.2 external/broadcom/rpi-firmware/dist/start.elf 1.1 external/broadcom/rpi-firmware/dist/start.elf 1.2 external/broadcom/rpi-firmware/dist/start_cd.elf 1.1 external/broadcom/rpi-firmware/dist/start_cd.elf 1.2 sys/arch/arm/broadcom/bcm2835_bsc.c 1.1 via patch sys/arch/arm/broadcom/bcm2835_bscreg.h 1.1 via patch sys/arch/arm/broadcom/bcm2835_dotg.c 1.1 via patch sys/arch/arm/broadcom/bcm2835_emmc.c 1.7 via patch sys/arch/arm/broadcom/bcm2835_genfb.c 1.4 via patch sys/arch/arm/broadcom/bcm2835_gpio_subr.c 1.2 via patch sys/arch/arm/broadcom/bcm2835_gpio_subr.h 1.1 via patch sys/arch/arm/broadcom/bcm2835_gpioreg.h 1.1 via patch sys/arch/arm/broadcom/bcm2835_intr.c 1.3 via patch sys/arch/arm/broadcom/bcm2835_mbox.c 1.5 via patch sys/arch/arm/broadcom/bcm2835_mbox.h 1.4 via patch sys/arch/arm/broadcom/bcm2835_obio.c 1.17 via patch sys/arch/arm/broadcom/bcm2835_pm.c 1.2 via patch sys/arch/arm/broadcom/bcm2835_rng.c 1.3 via patch sys/arch/arm/broadcom/bcm2835_space.c 1.5 via patch sys/arch/arm/broadcom/bcm2835_spi.c 1.1 via patch sys/arch/arm/broadcom/bcm2835_spireg.h 1.1 via patch sys/arch/arm/broadcom/bcm2835_tmr.c 1.3 via patch sys/arch/arm/broadcom/bcm2835reg.h 1.10 via patch sys/arch/arm/broadcom/files.bcm2835 1.14 via patch sys/arch/evbarm/conf/RPI 1.23 via patch sys/arch/evbarm/conf/files.rpi 1.3 via patch sys/arch/evbarm/conf/mk.rpi 1.2 via patch sys/arch/evbarm/conf/std.rpi 1.4 via patch sys/arch/evbarm/rpi/rpi_machdep.c 1.34 via patch sys/arch/evbarm/rpi/rpi_start.S 1.7 via patch sys/arch/evbarm/rpi/rpi_vcmbox.c 1.2 via patch sys/arch/evbarm/rpi/vcio.h 1.1 via patch sys/arch/evbarm/rpi/vcprop.h 1.7 via patch sys/conf/files patch sys/dev/sdmmc/sdhc.c 1.43 sys/dev/sdmmc/sdhcvar.h 1.13 sys/dev/usb/dwc_otg.c 1.45 via patch sys/dev/usb/dwc_otgreg.h 1.5 via patch sys/dev/usb/dwc_otgvar.h 1.11 via patch sys/dev/usb/files.usb 1.126 via patch sys/dev/usb/if_smsc.c 1.7 via patch sys/dev/usb/if_smscreg.h 1.1 via patch sys/dev/usb/if_smscvar.h 1.1 via patch sys/dev/usb/usbdevices.config patch sys/dev/usb/usbdevs 1.633 via patch sys/dev/usb/usbdevs.h regen sys/dev/usb/usbdevs_data.h regen sys/dev/wscons/wsconsio.h 1.105,1.107 via patch sys/dev/wscons/wsdisplayvar.h 1.50 sys/dev/wscons/wsdisplay_util.c 1.2 sys/dev/videomode/edid.c 1.12 via patch
Greatly improved Raspberry Pi support. USB and onboard Ethernet should work. [skrll, ticket #813]
|
| 1.3.2.3 | 19-Nov-2012 |
riz | sys/arch/arm/broadcom/bcm2835_emmc.c patch sys/arch/arm/broadcom/bcm2835reg.h patch sys/arch/arm/broadcom/bcm2835_mbox.h 1.1-1.3 via patch sys/arch/arm/broadcom/bcm2835_mbox_subr.c 1.1-1.3 via patch sys/arch/arm/broadcom/bcm2835_mboxreg.h 1.1 via patch sys/arch/arm/broadcom/files.bcm2835 patch sys/arch/evbarm/rpi/rpi_machdep.c patch sys/arch/evbarm/rpi/rpi_start.S patch sys/arch/evbarm/rpi/vcio.h 1.1 via patch sys/arch/evbarm/rpi/vcprop.h 1.1-1.2 via patch
Improve Raspberry PI support: memory layout and clock for the sdhc(4) controller are queried via the mailbox properties channel. [skrll, ticket #660]
|
| 1.3.2.2 | 09-Aug-2012 |
jdc | Pull up revisions: src/sys/arch/evbarm/dev/plcomreg.h revisions 1.2,1.3,1.4 src/sys/arch/evbarm/conf/INTEGRATOR revision 1.65 src/sys/arch/evbarm/dev/plcom.c revisions 1.34,1.35,1.36,1.37,1.38,1.39,1.40 src/sys/arch/evbarm/ifpga/plcom_ifpga.c revisions 1.12,1.13,1.14 src/sys/arch/evbarm/dev/plcomvar.h revisions 1.9,1.10,1.11 src/sys/arch/evbarm/ifpga/plcom_ifpgavar.h revision 1.2 src/sys/arch/arm/arm/cpufunc.c revisions 1.105,1.108 src/sys/arch/arm/arm32/cpu.c revision 1.79 src/sys/arch/arm/include/armreg.h revisions 1.49,1.54 src/sys/arch/arm/arm32/pmap.c revision 1.229 src/sys/arch/arm/arm32/arm32_machdep.c revision 1.77 src/sys/arch/arm/include/cpu.h revision 1.64 src/sys/arch/arm/arm/cpufunc_asm_arm1136.S revision 1.3 src/sys/arch/arm/arm/cpufunc_asm_arm11x6.S revision 1.1 src/sys/arch/arm/conf/files.arm revision 1.106 src/sys/arch/arm/include/cpufunc.h revision 1.57 src/sys/dev/sdmmc/sdhc.c revisions 1.14,1.24 src/sys/dev/sdmmc/sdhcvar.h revisions 1.7,1.8 src/sys/arch/evbarm/ifpga/ifpgareg.h revision 1.4 src/sys/arch/evbarm/integrator/integrator_machdep.c revision 1.69 src/sys/arch/arm/broadcom/bcm2835_dma.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_emmc.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_intr.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_intr.h revision 1.1 src/sys/arch/arm/broadcom/bcm2835_obio.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_plcom.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_pm.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_pmvar.h revision 1.1 src/sys/arch/arm/broadcom/bcm2835_space.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_tmr.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835reg.h revision 1.1 src/sys/arch/arm/broadcom/bcm2835var.h revision 1.1 src/sys/arch/arm/broadcom/bcm_amba.h revision 1.1 src/sys/arch/arm/broadcom/files.bcm2835 revision 1.1 src/sys/arch/evbarm/Makefile revision 1.9 src/sys/arch/evbarm/conf/RPI revision 1.1 src/sys/arch/evbarm/conf/files.rpi revision 1.1 src/sys/arch/evbarm/conf/mk.rpi revision 1.1 src/sys/arch/evbarm/conf/std.rpi revision 1.1 src/sys/arch/evbarm/rpi/genassym.cf revision 1.1 src/sys/arch/evbarm/rpi/rpi.h revision 1.1 src/sys/arch/evbarm/rpi/rpi_machdep.c revision 1.1 src/sys/arch/evbarm/rpi/rpi_start.S revision 1.1,1.2 src/etc/etc.evbarm/Makefile.inc revision 1.28 (requested by skrll in ticket #454).
don't mix #define<TAB> and #define<SPACE> in a file.
avoid warning with options PLCOM_DEBUG for INTEGRATOR.
Rename register values. No functional change - same code before and after.
Existing names are prefixed with PL01X_ where they're common between the PL010 and the PL011. The PL010_/PL011_ prefixes are added where they're found only on the respective chips.
Replace the simple_lock with a kmutex_t. Update the locking to match com(4) in the few places it didn't already.
DOH. Replace a line that got accidently deleted in the last commit.
device_t/softc split struct device * -> device_t struct cfdata * -> cfdata_t
Add the 'Z' to the 1176 cpu product name.
ok matt@
Fix locking botch introduced in 1.36.
Fix a KASSERT. From/OK'ed by matt@
Fix racy softint dispatch that lead to KASSERT(si->si_active) in softint_execute
Discussed with matt@. "Looks good to me"
Add the documented ARM11[37]6 Auxiliary control register defines.
Add support for the ARM1176JZS
Add a flag for the lack of LED_ON in HOST_CTL (ti omap3 doesn't do that).
Provide a method for attachments to specify capabilites.
Add support for the PL011 to plcom. Pull across a bunch of fixes from com(4) while I'm here and do some other tidyup.
Tested on a RaspberryPi.
PL010 not tested.
Initial commit of support for the RaspberryPI (www.raspberrypi.org)
This is enough for serial console via the gpio header pins and to get to multiuser.
A huge thank you to Matt Thomas for all his help.
Add RPI to KERNEL_SETS
Remove #if 0 code.
|
| 1.3.2.1 | 29-Jul-2012 |
jdc | file rpi_machdep.c was added on branch netbsd-6 on 2012-08-09 06:36:51 +0000
|
| 1.7.2.5 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.7.2.4 | 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
| 1.7.2.3 | 23-Jun-2013 |
tls | resync from head
|
| 1.7.2.2 | 25-Feb-2013 |
tls | resync with head
|
| 1.7.2.1 | 20-Nov-2012 |
tls | Resync to 2012-11-19 00:00:00 UTC
|
| 1.16.2.5 | 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
| 1.16.2.4 | 23-Jan-2013 |
yamt | sync with head
|
| 1.16.2.3 | 16-Jan-2013 |
yamt | sync with (a bit old) head
|
| 1.16.2.2 | 30-Oct-2012 |
yamt | sync with head
|
| 1.16.2.1 | 26-Oct-2012 |
yamt | file rpi_machdep.c was added on branch yamt-pagecache on 2012-10-30 17:19:26 +0000
|
| 1.37.2.1 | 18-May-2014 |
rmind | sync with head
|
| 1.40.2.1 | 10-Aug-2014 |
tls | Rebase.
|
| 1.43.2.8 | 09-Aug-2017 |
snj | Pull up following revision(s) (requested by jmcneill in ticket #1464): sys/arch/evbarm/rpi/rpi_machdep.c: 1.71 via patch Disable BSC0 on Raspberry Pi 3 and Zero W boards.
|
| 1.43.2.7 | 26-Jul-2017 |
snj | Pull up following revision(s) (requested by jmcneill in ticket #1435): sys/arch/arm/arm32/cpu.c: 1.113 via patch sys/arch/arm/broadcom/bcm2835_bsc.c: 1.6 via patch sys/arch/arm/broadcom/bcm2835_plcom.c: 1.4 via patch sys/arch/arm/cortex/gtmr.c: 1.18 via patch sys/arch/arm/include/armreg.h: 1.110 via patch sys/arch/arm/include/vfpreg.h: 1.15 via patch sys/arch/arm/vfp/vfp_init.c: 1.50 via patch sys/arch/evbarm/rpi/rpi_machdep.c: 1.59, 1.70-1.72 via patch sys/arch/evbarm/rpi/vcprop.h: 1.16 Get the RPI3 working (in aarch32 mode) by recognising Cortex A53 CPUs. While I'm here add some A57/A72 info as well. My RPI3 works with FB console - the uart needs some help with its clocks. -- Do invalidate the cache as RPI2 build with Clang can't fetch the memory config otherwise. -- Use the VC property mailbox to request the UART clock rate and use it appropriately Newer firmwares use 48MHz -- Disable BSC0 on Raspberry Pi 3 and Zero W boards. -- Interrupts are enabled before the timer is configured. Ensure that the timer is disabled when attaching so it doesn't go crazy between the time interrupts are enabled and clocks are initialized. My RPI3 makes it multi-user now. -- Enable UART0 (PL011) on GPIO header for Raspberry Pi 3 / Zero W
|
| 1.43.2.6 | 26-Feb-2016 |
snj | Pull up following revision(s) (requested by skrll in ticket #1107): external/broadcom/rpi-firmware/dist/LICENCE.broadcom: revision 1.2 external/broadcom/rpi-firmware/dist/bootcode.bin: revision 1.8 external/broadcom/rpi-firmware/dist/fixup.dat: revision 1.8 external/broadcom/rpi-firmware/dist/fixup_cd.dat: revision 1.8 external/broadcom/rpi-firmware/dist/start.elf: revision 1.8 external/broadcom/rpi-firmware/dist/start_cd.elf: revision 1.8 sys/arch/arm/broadcom/bcm2835_emmc.c: revision 1.29 sys/arch/arm/broadcom/bcm2835_gpio.c: revision 1.3 sys/arch/arm/broadcom/bcm2835_gpio_subr.c: revision 1.4 sys/arch/arm/broadcom/bcm2835_space.c: revision 1.9, 1.10 sys/arch/arm/broadcom/bcm2835reg.h: patch sys/arch/arm/cortex/a9_mpsubr.S: revisions 1.45, 1.46 sys/arch/evbarm/conf/CUBIEBOARD: revision 1.45 sys/arch/evbarm/conf/std.awin: revision 1.9 sys/arch/evbarm/rpi/rpi2_start.S: revision 1.3 sys/arch/evbarm/rpi/rpi_machdep.c: revision 1.68 Check for hypervisor mode in cortex_init and exit if the cpu started there. Needed by latest RPI firmware. -- Fix up bus_space_map for latest RPI firmware which now passes the FB address in the mailbox properties as a bus address. -- Update RPI firmware to version after the following commit commit 224c75602b8bae1a9e942b4f1c7ed3aa8e0f0ec8 Author: popcornmix<popcornmix@gmail.com> Date: Tue Dec 8 14:48:57 2015 +0000 -- Deal with kernel builds where virtualisation isn't available -- Tweak CPUFLAGS to cover all CPUs -- Fix up bcm283[56] bus_space(4) to really use bus addresses for peripherals, etc Simplifies the code in various places and uses the abstraction in more places. (bcm2835_gpio_subr.c still doesn't)
|
| 1.43.2.5 | 30-Jul-2015 |
martin | Pull up following revision(s) (requested by skrll in ticket #890): sys/arch/arm/pic/pic.c: revision 1.27-1.32 sys/arch/arm/omap/omap5430_intr.h: revision 1.3 sys/arch/arm/broadcom/bcm2835_obio.c: revision 1.25 sys/arch/arm/cortex/gic.c: revision 1.18 sys/arch/arm/broadcom/bcm2835reg.h: revision 1.15 sys/arch/evbarm/rpi/rpi_machdep.c: revision 1.61 sys/arch/arm/broadcom/bcm2835_intr.h: revision 1.2 sys/arch/arm/marvell/mvsoc_intr.h: revision 1.5 sys/arch/arm/broadcom/bcm2835_intr.c: revision 1.8-1.10 sys/arch/arm/pic/picvar.h: revision 1.12-1.14 sys/arch/arm/omap/omap4430_intr.h: revision 1.3
Don't clear CI_ASTPENDING in exception return, do it in ast() instead. Add basic support for __HAVE_PREEMPTION. Use atomic ops for ci_astpending if __HAVE_PREEMPTION is defined. Use kpreempt_disable/kpreempt_enable Add __HAVE_PIC_HAVE_PENDING_INTRS and define it if __HAVE_PIC_SET_PRIORITY is undefined (also define in mvsoc_intr.h since their use of the latter is peculiar). This new define controls whether the pending interrupt logic is compiled. The GIC doesn't use pending interrupts since it uses the priority level on the GIC to control delivery of interrupts, thus there can never be a pending interrupt. The kernel shrinks about 4KB with the removal of the pending interupt support, Only if we __HAVE_PIC_PENDING_INTRS do we need the variables to track them. Add #define __HAVE_PIC_PENDING_INTRS for the non-GIC PICs. Add a pic_cpus to the softc which specifies which cpus the pic can send IPIs to. For GIC, initialize pic_cpus to kcpuset_running since it can handle all the cpus. Adapt pic to deal with the BCM2836 interrupts. Move pic_pending_pics, pic_pending_ipls, and pic_blocked_irqs into a structure and make then per-cpu. There is no global interrupt state anymore. Use right kcpuset call. Don't need pic_ipi_sender anymore. Don't send IPIs to ourselves if sending to everyone. RPI2 MP support. Thanks to Matt Thomas for making this possible with his changes to pic.c Use a bit per IPI type in local mailbox 0 registers. Ok matt@ IPIs should be IPL_HIGH according to rmind@ Fix bcm2836mp_pic_{un,}block_irqs to handle timer AND mailbox interrupts if they're both passed. Thanks to nat@ for finding this. Sprinkle some KASSERTs
|
| 1.43.2.4 | 11-Mar-2015 |
snj | Pull up following revision(s) (requested by skrll in ticket #582): distrib/utils/embedded/conf/rpi.conf: revision 1.27 etc/etc.evbarm/Makefile.inc: revision 1.70 sys/arch/arm/broadcom/bcm2835_intr.c: revision 1.5-1.7 sys/arch/arm/broadcom/bcm2835_obio.c: revision 1.23, 1.24 sys/arch/arm/broadcom/bcm2835_space.c: revision 1.8 sys/arch/arm/broadcom/bcm2835reg.h: revision 1.14 sys/arch/arm/broadcom/bcm2835var.h: revision 1.2 sys/arch/arm/broadcom/files.bcm2835: revision 1.24 sys/arch/arm/cortex/a9_mpsubr.S: revision 1.30 sys/arch/arm/cortex/armperiph.c: revision 1.8, 1.9 sys/arch/arm/cortex/gtmr.c: revision 1.9 sys/arch/arm/cortex/gtmr_var.h: revision 1.5 sys/arch/arm/cortex/mpcore_var.h: revision 1.3 sys/arch/arm/include/cpu.h: revision 1.84 sys/arch/evbarm/conf/RPI2: revision 1.1, 1.2 sys/arch/evbarm/conf/RPI2_INSTALL: revision 1.1 sys/arch/evbarm/conf/RPI: revision 1.59, 1.60 sys/arch/evbarm/conf/mk.rpi: revision 1.4 sys/arch/evbarm/conf/std.rpi: revisions 1.16-1.19 via patch sys/arch/evbarm/rpi/genassym.cf: revision 1.2 sys/arch/evbarm/rpi/rpi.h: revision 1.4 sys/arch/evbarm/rpi/rpi2_start.S: revision 1.1 sys/arch/evbarm/rpi/rpi_machdep.c: revision 1.57, 1.58 via patch sys/arch/evbarm/rpi/rpi_start.S: revision 1.13 Move some options into std.rpi -- Add __HAVE_MM_MD_CACHE_ALIASING Pull up following revision(s) (requested by skrll in ticket #582): Fix TPIDRPRW_IS_CURLWP builds. -- A MULTIPROCESSOR kernel requires TPIDRPRW_IS_CURCPU. -- Use TPIDRPRW_IS_CURLWP as it's a slight code reduction and performance improvement. Initial RPI2 support - it doesn't work yet. The generic timer gets messed up somehow. This commit changes the KVA layout of the RPI. -- Make this compile where gtmr isn't used. -- Spin up the non-boot CPUs, but don't allow cpu_boot_secondary_processors to see them for now. RPI2 nows works well with only the boot cpu. -- Appease a KASSERT - will be remove when MULTIPROCESSOR RPI2 is fixed. -- Add RPI2 to kernels build for both earmv[67]. Use the earmv6 built kernels to create an image that can be used on both RPI and RPI2 -- Add an RPI2_INSTALL
|
| 1.43.2.3 | 21-Jan-2015 |
martin | Pull up following revision(s) (requested by jmcneill in ticket #440): sys/arch/evbarm/rpi/rpi_machdep.c: revision 1.56 Newer Raspberry Pi firmware has changed the framebuffer from BGR to RGB. The method we use to set the pixel order (vcprop set pixel order) does not seem to work, nor does querying the pixel order (vcprop get pixel order). The firmware passes this information to the kernel by adding a "bcm2708_fb.fbswap" kernel cmdline arg. 0=BGR, 1=RGB. If the parameter is absent, assume we are running on old firmware and use BGR mode.
|
| 1.43.2.2 | 03-Oct-2014 |
martin | Pull up following revision(s) (requested by skrll in ticket #126): sys/arch/evbarm/rpi/rpi_machdep.c: revision 1.47 sys/arch/arm/broadcom/bcm2835reg.h: revision 1.12 sys/arch/evbarm/conf/RPI: revision 1.52 sys/arch/evbarm/conf/RPI: revision 1.53 sys/arch/evbarm/conf/RPI: revision 1.54 sys/arch/arm/broadcom/bcm2835_emmc.c: revision 1.10 sys/arch/arm/broadcom/bcm2835_emmc.c: revision 1.11 sys/arch/arm/broadcom/bcm2835_emmc.c: revision 1.12 sys/arch/arm/broadcom/bcm2835_emmc.c: revision 1.13 sys/arch/arm/broadcom/bcm2835_emmc.c: revision 1.14 sys/arch/arm/broadcom/bcm2835_emmc.c: revision 1.15 sys/arch/arm/broadcom/bcm2835_dmac.c: revision 1.3 sys/arch/arm/broadcom/bcm2835_dmac.c: revision 1.4 sys/arch/arm/broadcom/bcm2835_dmac.h: revision 1.2 sys/arch/arm/broadcom/bcm2835_dmac.c: revision 1.5 sys/arch/arm/broadcom/bcm2835_emmc.c: revision 1.18 sys/arch/arm/broadcom/bcm2835_dmac.h: revision 1.3 sys/arch/arm/broadcom/bcm2835_dmac.c: revision 1.6 sys/arch/arm/broadcom/bcm2835_dmac.c: revision 1.7 sys/arch/arm/broadcom/bcm2835_dmac.c: revision 1.8 sys/arch/arm/broadcom/bcm2835_dmac.c: revision 1.9 sys/arch/arm/broadcom/files.bcm2835: revision 1.23 sys/dev/sdmmc/sdhc.c: revision 1.45 sys/dev/sdmmc/sdhc.c: revision 1.46 sys/dev/sdmmc/sdhc.c: revision 1.47 sys/dev/sdmmc/sdhcvar.h: revision 1.14 Various RPI DMAC and sdhc improvements.
|
| 1.43.2.1 | 11-Sep-2014 |
martin | Pull up the following changes (requested by skrll, #83): sys/arch/arm/broadcom/bcm2835_dmac.c 1.1-1.2 sys/arch/arm/broadcom/bcm2835_dmac.h 1.1 sys/arch/arm/broadcom/bcm2835_intr.c 1.4 sys/arch/arm/broadcom/bcm2835_obio.c 1.21 sys/arch/arm/broadcom/bcm2835reg.h 1.11 sys/arch/arm/broadcom/files.bcm2835 1.22 sys/arch/evbarm/conf/RPI 1.51 sys/arch/evbarm/rpi/rpi_machdep.c 1.46
Add bcm2835 dma controller driver.
|
| 1.55.2.6 | 28-Aug-2017 |
skrll | Sync with HEAD
|
| 1.55.2.5 | 05-Feb-2017 |
skrll | Sync with HEAD
|
| 1.55.2.4 | 19-Mar-2016 |
skrll | Sync with HEAD
|
| 1.55.2.3 | 22-Sep-2015 |
skrll | Sync with HEAD
|
| 1.55.2.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
| 1.55.2.1 | 06-Apr-2015 |
skrll | Sync with HEAD
|
| 1.68.2.1 | 07-Jan-2017 |
pgoyette | Sync with HEAD. (Note that most of these changes are simply $NetBSD$ tag issues.)
|
| 1.70.8.3 | 08-Apr-2018 |
snj | Pull up following revision(s) (requested by mlelstv in ticket #704): sys/arch/evbarm/rpi/rpi_machdep.c: 1.81 Firmware after May 8, 2017 places APs in WFE state at boot. Add a "sev" after writing the start vector, otherwise secondary CPUs will not boot.
|
| 1.70.8.2 | 21-Jun-2017 |
snj | Pull up following revision(s) (requested by jmcneill in ticket #46): sys/arch/evbarm/rpi/rpi_machdep.c: revision 1.72 Enable UART0 (PL011) on GPIO header for Raspberry Pi 3 / Zero W
|
| 1.70.8.1 | 21-Jun-2017 |
snj | Pull up following revision(s) (requested by jmcneill in ticket #43): sys/arch/arm/broadcom/bcm2835_bsc.c: revision 1.6 sys/arch/evbarm/rpi/rpi_machdep.c: revision 1.71 sys/arch/evbarm/rpi/vcprop.h: revision 1.16 Disable BSC0 on Raspberry Pi 3 and Zero W boards.
|
| 1.21 | 18-Oct-2018 |
skrll | Provide generic start code that assumes the MMU is off and caches are disabled as per the linux booting protocol for ARMv6 and ARMv7 boards. u-boot image type should be changed to 'linux' for correct behaviour.
The new start code builds a minimal "bootstrap" L1PT with cached access disabled and uses the same table for all processors. AP startup is performed in less steps and more code is written in C.
The bootstrap tables and stack are placed into an (orphaned) section "_init_memory" which is given to uvm when it is no longer used.
Various kernels have been converted to use this code and tested. Some boards were provided by TNF. Thanks!
The GENERIC kernel now boots on boards using the TEGRA, SUNXI and EXYNOS kernels. The GENERIC kernel will also work on RPI2 using u-boot.
Thanks to martin@ and aymeric@ for testing on parallella and nanosoc respectively
|
| 1.20 | 03-Aug-2018 |
skrll | Provide and use kern_vtopdiff in KERN_{VTOPHYS,PHYSTOV}. A step towards generic arm.
|
| 1.19 | 03-Aug-2018 |
skrll | Subtract KERNEL_BASE_VOFFSET from all VAs to get PA. How did this work before?
|
| 1.18 | 27-Jun-2018 |
ryo | branches: 1.18.2; on evbarm/RPI,RPI2, VERBOSE_INIT_ARM had broken.
XPUTC() of evbarm/rpi/rpi*_start.S uses bcm283[567]_platform_early_putchar() and it requires stack. fixed to allocate stack when starting from rpi*_start.S and a9_mpsubr.S if needed.
to work XPUTC(), need to define VERBOSE_INIT_ARM and EARLYCONS option.
|
| 1.17 | 03-Mar-2018 |
skrll | branches: 1.17.2; Start code now updates a global variable fdt_addr_r to handle differences in boot protocol (think arm64)
|
| 1.16 | 01-Jan-2018 |
skrll | Need to map 512MB for some RPIs
|
| 1.15 | 10-Dec-2017 |
skrll | FDTise RapberryPI support. Thanks for jmcneill for a lot of help with this.
The kernel image that the RPI firmware boots is now netbsd.img in the kernel build directory.
XXX fdtbus_get_reg needs reworking
|
| 1.14 | 27-Mar-2015 |
skrll | Trailing whitespace.
|
| 1.13 | 28-Feb-2015 |
skrll | Initial RPI2 support - it doesn't work yet. The generic timer gets messed up somehow.
This commit changes the KVA layout of the RPI.
|
| 1.12 | 27-Jul-2014 |
skrll | branches: 1.12.2; 1.12.4; Prepare for ARM_MMU_EXTENDED
|
| 1.11 | 14-May-2014 |
joerg | Enabling alignment faults and unaligned access at the same time makes the former win. LLVM is more aggressive than GCC about using unaligned access, so it would crash during pmap_init.
|
| 1.10 | 07-Apr-2014 |
skrll | Whitespace.
|
| 1.9 | 01-Apr-2014 |
skrll | branches: 1.9.2; Trailing whitespace.
|
| 1.8 | 12-Nov-2013 |
skrll | Add CPU_CONTROL_UNAL_ENABLE. New ABIs demand unaligned accesses!
|
| 1.7 | 23-Sep-2012 |
skrll | branches: 1.7.2; 1.7.4; Map 1M beyond _end to make sure we bootstrap.
|
| 1.6 | 16-Sep-2012 |
skrll | Don't depend on any memory split for initial L1 table. Size kernel mapping according to actual size.
|
| 1.5 | 22-Aug-2012 |
jakllsch | branches: 1.5.2; ... and remove inclusion of defparam-created header.
|
| 1.4 | 16-Aug-2012 |
jakllsch | Get accessible memory quantity and kernel command line via Linux ARM 'A'-tag interface used by Raspberry Pi's start.elf.
|
| 1.3 | 16-Aug-2012 |
jakllsch | Do not depend on MEMSIZE being defined, instead always place temporary MMU tables just below 128MiB.
|
| 1.2 | 26-Jul-2012 |
skrll | branches: 1.2.2; Remove #if 0 code.
|
| 1.1 | 26-Jul-2012 |
skrll | Initial commit of support for the RaspberryPI (www.raspberrypi.org)
This is enough for serial console via the gpio header pins and to get to multiuser.
A huge thank you to Matt Thomas for all his help.
|
| 1.2.2.4 | 13-Feb-2013 |
riz | Pull up following revision(s) (requested by skrll in ticket #813):
etc/MAKEDEV.tmpl 1.160 etc/etc.evbarm/MAKEDEV.conf 1.9 external/broadcom/rpi-firmware/dist/LICENCE.broadcom 1.1 external/broadcom/rpi-firmware/dist/bootcode.bin 1.1 external/broadcom/rpi-firmware/dist/bootcode.bin 1.2 external/broadcom/rpi-firmware/dist/fixup.dat 1.1 external/broadcom/rpi-firmware/dist/fixup.dat 1.2 external/broadcom/rpi-firmware/dist/fixup_cd.dat 1.1 external/broadcom/rpi-firmware/dist/fixup_cd.dat 1.2 external/broadcom/rpi-firmware/dist/start.elf 1.1 external/broadcom/rpi-firmware/dist/start.elf 1.2 external/broadcom/rpi-firmware/dist/start_cd.elf 1.1 external/broadcom/rpi-firmware/dist/start_cd.elf 1.2 sys/arch/arm/broadcom/bcm2835_bsc.c 1.1 via patch sys/arch/arm/broadcom/bcm2835_bscreg.h 1.1 via patch sys/arch/arm/broadcom/bcm2835_dotg.c 1.1 via patch sys/arch/arm/broadcom/bcm2835_emmc.c 1.7 via patch sys/arch/arm/broadcom/bcm2835_genfb.c 1.4 via patch sys/arch/arm/broadcom/bcm2835_gpio_subr.c 1.2 via patch sys/arch/arm/broadcom/bcm2835_gpio_subr.h 1.1 via patch sys/arch/arm/broadcom/bcm2835_gpioreg.h 1.1 via patch sys/arch/arm/broadcom/bcm2835_intr.c 1.3 via patch sys/arch/arm/broadcom/bcm2835_mbox.c 1.5 via patch sys/arch/arm/broadcom/bcm2835_mbox.h 1.4 via patch sys/arch/arm/broadcom/bcm2835_obio.c 1.17 via patch sys/arch/arm/broadcom/bcm2835_pm.c 1.2 via patch sys/arch/arm/broadcom/bcm2835_rng.c 1.3 via patch sys/arch/arm/broadcom/bcm2835_space.c 1.5 via patch sys/arch/arm/broadcom/bcm2835_spi.c 1.1 via patch sys/arch/arm/broadcom/bcm2835_spireg.h 1.1 via patch sys/arch/arm/broadcom/bcm2835_tmr.c 1.3 via patch sys/arch/arm/broadcom/bcm2835reg.h 1.10 via patch sys/arch/arm/broadcom/files.bcm2835 1.14 via patch sys/arch/evbarm/conf/RPI 1.23 via patch sys/arch/evbarm/conf/files.rpi 1.3 via patch sys/arch/evbarm/conf/mk.rpi 1.2 via patch sys/arch/evbarm/conf/std.rpi 1.4 via patch sys/arch/evbarm/rpi/rpi_machdep.c 1.34 via patch sys/arch/evbarm/rpi/rpi_start.S 1.7 via patch sys/arch/evbarm/rpi/rpi_vcmbox.c 1.2 via patch sys/arch/evbarm/rpi/vcio.h 1.1 via patch sys/arch/evbarm/rpi/vcprop.h 1.7 via patch sys/conf/files patch sys/dev/sdmmc/sdhc.c 1.43 sys/dev/sdmmc/sdhcvar.h 1.13 sys/dev/usb/dwc_otg.c 1.45 via patch sys/dev/usb/dwc_otgreg.h 1.5 via patch sys/dev/usb/dwc_otgvar.h 1.11 via patch sys/dev/usb/files.usb 1.126 via patch sys/dev/usb/if_smsc.c 1.7 via patch sys/dev/usb/if_smscreg.h 1.1 via patch sys/dev/usb/if_smscvar.h 1.1 via patch sys/dev/usb/usbdevices.config patch sys/dev/usb/usbdevs 1.633 via patch sys/dev/usb/usbdevs.h regen sys/dev/usb/usbdevs_data.h regen sys/dev/wscons/wsconsio.h 1.105,1.107 via patch sys/dev/wscons/wsdisplayvar.h 1.50 sys/dev/wscons/wsdisplay_util.c 1.2 sys/dev/videomode/edid.c 1.12 via patch
Greatly improved Raspberry Pi support. USB and onboard Ethernet should work. [skrll, ticket #813]
|
| 1.2.2.3 | 19-Nov-2012 |
riz | sys/arch/arm/broadcom/bcm2835_emmc.c patch sys/arch/arm/broadcom/bcm2835reg.h patch sys/arch/arm/broadcom/bcm2835_mbox.h 1.1-1.3 via patch sys/arch/arm/broadcom/bcm2835_mbox_subr.c 1.1-1.3 via patch sys/arch/arm/broadcom/bcm2835_mboxreg.h 1.1 via patch sys/arch/arm/broadcom/files.bcm2835 patch sys/arch/evbarm/rpi/rpi_machdep.c patch sys/arch/evbarm/rpi/rpi_start.S patch sys/arch/evbarm/rpi/vcio.h 1.1 via patch sys/arch/evbarm/rpi/vcprop.h 1.1-1.2 via patch
Improve Raspberry PI support: memory layout and clock for the sdhc(4) controller are queried via the mailbox properties channel. [skrll, ticket #660]
|
| 1.2.2.2 | 09-Aug-2012 |
jdc | Pull up revisions: src/sys/arch/evbarm/dev/plcomreg.h revisions 1.2,1.3,1.4 src/sys/arch/evbarm/conf/INTEGRATOR revision 1.65 src/sys/arch/evbarm/dev/plcom.c revisions 1.34,1.35,1.36,1.37,1.38,1.39,1.40 src/sys/arch/evbarm/ifpga/plcom_ifpga.c revisions 1.12,1.13,1.14 src/sys/arch/evbarm/dev/plcomvar.h revisions 1.9,1.10,1.11 src/sys/arch/evbarm/ifpga/plcom_ifpgavar.h revision 1.2 src/sys/arch/arm/arm/cpufunc.c revisions 1.105,1.108 src/sys/arch/arm/arm32/cpu.c revision 1.79 src/sys/arch/arm/include/armreg.h revisions 1.49,1.54 src/sys/arch/arm/arm32/pmap.c revision 1.229 src/sys/arch/arm/arm32/arm32_machdep.c revision 1.77 src/sys/arch/arm/include/cpu.h revision 1.64 src/sys/arch/arm/arm/cpufunc_asm_arm1136.S revision 1.3 src/sys/arch/arm/arm/cpufunc_asm_arm11x6.S revision 1.1 src/sys/arch/arm/conf/files.arm revision 1.106 src/sys/arch/arm/include/cpufunc.h revision 1.57 src/sys/dev/sdmmc/sdhc.c revisions 1.14,1.24 src/sys/dev/sdmmc/sdhcvar.h revisions 1.7,1.8 src/sys/arch/evbarm/ifpga/ifpgareg.h revision 1.4 src/sys/arch/evbarm/integrator/integrator_machdep.c revision 1.69 src/sys/arch/arm/broadcom/bcm2835_dma.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_emmc.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_intr.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_intr.h revision 1.1 src/sys/arch/arm/broadcom/bcm2835_obio.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_plcom.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_pm.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_pmvar.h revision 1.1 src/sys/arch/arm/broadcom/bcm2835_space.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_tmr.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835reg.h revision 1.1 src/sys/arch/arm/broadcom/bcm2835var.h revision 1.1 src/sys/arch/arm/broadcom/bcm_amba.h revision 1.1 src/sys/arch/arm/broadcom/files.bcm2835 revision 1.1 src/sys/arch/evbarm/Makefile revision 1.9 src/sys/arch/evbarm/conf/RPI revision 1.1 src/sys/arch/evbarm/conf/files.rpi revision 1.1 src/sys/arch/evbarm/conf/mk.rpi revision 1.1 src/sys/arch/evbarm/conf/std.rpi revision 1.1 src/sys/arch/evbarm/rpi/genassym.cf revision 1.1 src/sys/arch/evbarm/rpi/rpi.h revision 1.1 src/sys/arch/evbarm/rpi/rpi_machdep.c revision 1.1 src/sys/arch/evbarm/rpi/rpi_start.S revision 1.1,1.2 src/etc/etc.evbarm/Makefile.inc revision 1.28 (requested by skrll in ticket #454).
don't mix #define<TAB> and #define<SPACE> in a file.
avoid warning with options PLCOM_DEBUG for INTEGRATOR.
Rename register values. No functional change - same code before and after.
Existing names are prefixed with PL01X_ where they're common between the PL010 and the PL011. The PL010_/PL011_ prefixes are added where they're found only on the respective chips.
Replace the simple_lock with a kmutex_t. Update the locking to match com(4) in the few places it didn't already.
DOH. Replace a line that got accidently deleted in the last commit.
device_t/softc split struct device * -> device_t struct cfdata * -> cfdata_t
Add the 'Z' to the 1176 cpu product name.
ok matt@
Fix locking botch introduced in 1.36.
Fix a KASSERT. From/OK'ed by matt@
Fix racy softint dispatch that lead to KASSERT(si->si_active) in softint_execute
Discussed with matt@. "Looks good to me"
Add the documented ARM11[37]6 Auxiliary control register defines.
Add support for the ARM1176JZS
Add a flag for the lack of LED_ON in HOST_CTL (ti omap3 doesn't do that).
Provide a method for attachments to specify capabilites.
Add support for the PL011 to plcom. Pull across a bunch of fixes from com(4) while I'm here and do some other tidyup.
Tested on a RaspberryPi.
PL010 not tested.
Initial commit of support for the RaspberryPI (www.raspberrypi.org)
This is enough for serial console via the gpio header pins and to get to multiuser.
A huge thank you to Matt Thomas for all his help.
Add RPI to KERNEL_SETS
Remove #if 0 code.
|
| 1.2.2.1 | 26-Jul-2012 |
jdc | file rpi_start.S was added on branch netbsd-6 on 2012-08-09 06:36:51 +0000
|
| 1.5.2.3 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.5.2.2 | 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
| 1.5.2.1 | 20-Nov-2012 |
tls | Resync to 2012-11-19 00:00:00 UTC
|
| 1.7.4.1 | 18-May-2014 |
rmind | sync with head
|
| 1.7.2.3 | 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
| 1.7.2.2 | 30-Oct-2012 |
yamt | sync with head
|
| 1.7.2.1 | 23-Sep-2012 |
yamt | file rpi_start.S was added on branch yamt-pagecache on 2012-10-30 17:19:26 +0000
|
| 1.9.2.1 | 10-Aug-2014 |
tls | Rebase.
|
| 1.12.4.1 | 06-Apr-2015 |
skrll | Sync with HEAD
|
| 1.12.2.1 | 11-Mar-2015 |
snj | Pull up following revision(s) (requested by skrll in ticket #582): distrib/utils/embedded/conf/rpi.conf: revision 1.27 etc/etc.evbarm/Makefile.inc: revision 1.70 sys/arch/arm/broadcom/bcm2835_intr.c: revision 1.5-1.7 sys/arch/arm/broadcom/bcm2835_obio.c: revision 1.23, 1.24 sys/arch/arm/broadcom/bcm2835_space.c: revision 1.8 sys/arch/arm/broadcom/bcm2835reg.h: revision 1.14 sys/arch/arm/broadcom/bcm2835var.h: revision 1.2 sys/arch/arm/broadcom/files.bcm2835: revision 1.24 sys/arch/arm/cortex/a9_mpsubr.S: revision 1.30 sys/arch/arm/cortex/armperiph.c: revision 1.8, 1.9 sys/arch/arm/cortex/gtmr.c: revision 1.9 sys/arch/arm/cortex/gtmr_var.h: revision 1.5 sys/arch/arm/cortex/mpcore_var.h: revision 1.3 sys/arch/arm/include/cpu.h: revision 1.84 sys/arch/evbarm/conf/RPI2: revision 1.1, 1.2 sys/arch/evbarm/conf/RPI2_INSTALL: revision 1.1 sys/arch/evbarm/conf/RPI: revision 1.59, 1.60 sys/arch/evbarm/conf/mk.rpi: revision 1.4 sys/arch/evbarm/conf/std.rpi: revisions 1.16-1.19 via patch sys/arch/evbarm/rpi/genassym.cf: revision 1.2 sys/arch/evbarm/rpi/rpi.h: revision 1.4 sys/arch/evbarm/rpi/rpi2_start.S: revision 1.1 sys/arch/evbarm/rpi/rpi_machdep.c: revision 1.57, 1.58 via patch sys/arch/evbarm/rpi/rpi_start.S: revision 1.13 Move some options into std.rpi -- Add __HAVE_MM_MD_CACHE_ALIASING Pull up following revision(s) (requested by skrll in ticket #582): Fix TPIDRPRW_IS_CURLWP builds. -- A MULTIPROCESSOR kernel requires TPIDRPRW_IS_CURCPU. -- Use TPIDRPRW_IS_CURLWP as it's a slight code reduction and performance improvement. Initial RPI2 support - it doesn't work yet. The generic timer gets messed up somehow. This commit changes the KVA layout of the RPI. -- Make this compile where gtmr isn't used. -- Spin up the non-boot CPUs, but don't allow cpu_boot_secondary_processors to see them for now. RPI2 nows works well with only the boot cpu. -- Appease a KASSERT - will be remove when MULTIPROCESSOR RPI2 is fixed. -- Add RPI2 to kernels build for both earmv[67]. Use the earmv6 built kernels to create an image that can be used on both RPI and RPI2 -- Add an RPI2_INSTALL
|
| 1.17.2.3 | 20-Oct-2018 |
pgoyette | Sync with head
|
| 1.17.2.2 | 06-Sep-2018 |
pgoyette | Sync with HEAD
Resolve a couple of conflicts (result of the uimin/uimax changes)
|
| 1.17.2.1 | 28-Jul-2018 |
pgoyette | Sync with HEAD
|
| 1.18.2.1 | 10-Jun-2019 |
christos | Sync with HEAD
|
| 1.8 | 08-Mar-2021 |
mlelstv | Add some firmware support functions and define more properties - framebuffer - power management - vchiq init - RPI4 USB firmware support
|
| 1.7 | 01-Dec-2020 |
rin | Data written to and read from bcmmbox(4) should be in little-endian.
|
| 1.6 | 23-Nov-2020 |
rin | Sort headers. No binary changes.
|
| 1.5 | 08-Dec-2018 |
mlelstv | branches: 1.5.12; Add machdep.cpu.frequency.available node to support estd.
While the RPI can run at many intermediate clock frequencies, this is sufficient for estd and is known to work with every firmware revision.
|
| 1.4 | 04-Oct-2014 |
mlelstv | branches: 1.4.18; 1.4.20; be verbose about sysmon error. enable monitoring.
|
| 1.3 | 01-Apr-2014 |
skrll | Trailing whitespace.
|
| 1.2 | 07-Jan-2013 |
jmcneill | branches: 1.2.2; 1.2.4; 1.2.6; 1.2.8; Add support for rpi cpu frequency scaling through machdep.cpu.frequency.* sysctls. The minimum and maximum supported frequencies are based on the "arm_freq_min" and "arm_freq" values in config.txt.
|
| 1.1 | 07-Jan-2013 |
jmcneill | add support for rpi temperature sensor
|
| 1.2.8.4 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.2.8.3 | 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
| 1.2.8.2 | 25-Feb-2013 |
tls | resync with head
|
| 1.2.8.1 | 07-Jan-2013 |
tls | file rpi_vcmbox.c was added on branch tls-maxphys on 2013-02-25 00:28:37 +0000
|
| 1.2.6.1 | 18-May-2014 |
rmind | sync with head
|
| 1.2.4.2 | 13-Feb-2013 |
riz | Pull up following revision(s) (requested by skrll in ticket #813):
etc/MAKEDEV.tmpl 1.160 etc/etc.evbarm/MAKEDEV.conf 1.9 external/broadcom/rpi-firmware/dist/LICENCE.broadcom 1.1 external/broadcom/rpi-firmware/dist/bootcode.bin 1.1 external/broadcom/rpi-firmware/dist/bootcode.bin 1.2 external/broadcom/rpi-firmware/dist/fixup.dat 1.1 external/broadcom/rpi-firmware/dist/fixup.dat 1.2 external/broadcom/rpi-firmware/dist/fixup_cd.dat 1.1 external/broadcom/rpi-firmware/dist/fixup_cd.dat 1.2 external/broadcom/rpi-firmware/dist/start.elf 1.1 external/broadcom/rpi-firmware/dist/start.elf 1.2 external/broadcom/rpi-firmware/dist/start_cd.elf 1.1 external/broadcom/rpi-firmware/dist/start_cd.elf 1.2 sys/arch/arm/broadcom/bcm2835_bsc.c 1.1 via patch sys/arch/arm/broadcom/bcm2835_bscreg.h 1.1 via patch sys/arch/arm/broadcom/bcm2835_dotg.c 1.1 via patch sys/arch/arm/broadcom/bcm2835_emmc.c 1.7 via patch sys/arch/arm/broadcom/bcm2835_genfb.c 1.4 via patch sys/arch/arm/broadcom/bcm2835_gpio_subr.c 1.2 via patch sys/arch/arm/broadcom/bcm2835_gpio_subr.h 1.1 via patch sys/arch/arm/broadcom/bcm2835_gpioreg.h 1.1 via patch sys/arch/arm/broadcom/bcm2835_intr.c 1.3 via patch sys/arch/arm/broadcom/bcm2835_mbox.c 1.5 via patch sys/arch/arm/broadcom/bcm2835_mbox.h 1.4 via patch sys/arch/arm/broadcom/bcm2835_obio.c 1.17 via patch sys/arch/arm/broadcom/bcm2835_pm.c 1.2 via patch sys/arch/arm/broadcom/bcm2835_rng.c 1.3 via patch sys/arch/arm/broadcom/bcm2835_space.c 1.5 via patch sys/arch/arm/broadcom/bcm2835_spi.c 1.1 via patch sys/arch/arm/broadcom/bcm2835_spireg.h 1.1 via patch sys/arch/arm/broadcom/bcm2835_tmr.c 1.3 via patch sys/arch/arm/broadcom/bcm2835reg.h 1.10 via patch sys/arch/arm/broadcom/files.bcm2835 1.14 via patch sys/arch/evbarm/conf/RPI 1.23 via patch sys/arch/evbarm/conf/files.rpi 1.3 via patch sys/arch/evbarm/conf/mk.rpi 1.2 via patch sys/arch/evbarm/conf/std.rpi 1.4 via patch sys/arch/evbarm/rpi/rpi_machdep.c 1.34 via patch sys/arch/evbarm/rpi/rpi_start.S 1.7 via patch sys/arch/evbarm/rpi/rpi_vcmbox.c 1.2 via patch sys/arch/evbarm/rpi/vcio.h 1.1 via patch sys/arch/evbarm/rpi/vcprop.h 1.7 via patch sys/conf/files patch sys/dev/sdmmc/sdhc.c 1.43 sys/dev/sdmmc/sdhcvar.h 1.13 sys/dev/usb/dwc_otg.c 1.45 via patch sys/dev/usb/dwc_otgreg.h 1.5 via patch sys/dev/usb/dwc_otgvar.h 1.11 via patch sys/dev/usb/files.usb 1.126 via patch sys/dev/usb/if_smsc.c 1.7 via patch sys/dev/usb/if_smscreg.h 1.1 via patch sys/dev/usb/if_smscvar.h 1.1 via patch sys/dev/usb/usbdevices.config patch sys/dev/usb/usbdevs 1.633 via patch sys/dev/usb/usbdevs.h regen sys/dev/usb/usbdevs_data.h regen sys/dev/wscons/wsconsio.h 1.105,1.107 via patch sys/dev/wscons/wsdisplayvar.h 1.50 sys/dev/wscons/wsdisplay_util.c 1.2 sys/dev/videomode/edid.c 1.12 via patch
Greatly improved Raspberry Pi support. USB and onboard Ethernet should work. [skrll, ticket #813]
|
| 1.2.4.1 | 07-Jan-2013 |
riz | file rpi_vcmbox.c was added on branch netbsd-6 on 2013-02-13 01:36:15 +0000
|
| 1.2.2.3 | 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
| 1.2.2.2 | 23-Jan-2013 |
yamt | sync with head
|
| 1.2.2.1 | 07-Jan-2013 |
yamt | file rpi_vcmbox.c was added on branch yamt-pagecache on 2013-01-23 00:05:46 +0000
|
| 1.4.20.1 | 10-Jun-2019 |
christos | Sync with HEAD
|
| 1.4.18.1 | 26-Dec-2018 |
pgoyette | Sync with HEAD, resolve a few conflicts
|
| 1.5.12.2 | 03-Apr-2021 |
thorpej | Sync with HEAD.
|
| 1.5.12.1 | 14-Dec-2020 |
thorpej | Sync w/ HEAD.
|
| 1.2 | 24-Mar-2021 |
simonb | s/depreciated/deprecated/g
|
| 1.1 | 14-Oct-2012 |
skrll | branches: 1.1.2; 1.1.4; 1.1.6; 1.1.56; 1.1.58; Add the Raspberry PI firmware VC mailbox channel numbers.
Add some VC property tag definitions and use them to get ARM/VC memory split.
Grab a few others things in the process, but don't do anything other than display them when VERBOSE_INIT_ARM is defined.
|
| 1.1.58.1 | 03-Apr-2021 |
thorpej | Sync with HEAD.
|
| 1.1.56.1 | 03-Apr-2021 |
thorpej | Sync with HEAD.
|
| 1.1.6.2 | 20-Nov-2012 |
tls | Resync to 2012-11-19 00:00:00 UTC
|
| 1.1.6.1 | 14-Oct-2012 |
tls | file vcio.h was added on branch tls-maxphys on 2012-11-20 03:01:17 +0000
|
| 1.1.4.3 | 13-Feb-2013 |
riz | Pull up following revision(s) (requested by skrll in ticket #813):
etc/MAKEDEV.tmpl 1.160 etc/etc.evbarm/MAKEDEV.conf 1.9 external/broadcom/rpi-firmware/dist/LICENCE.broadcom 1.1 external/broadcom/rpi-firmware/dist/bootcode.bin 1.1 external/broadcom/rpi-firmware/dist/bootcode.bin 1.2 external/broadcom/rpi-firmware/dist/fixup.dat 1.1 external/broadcom/rpi-firmware/dist/fixup.dat 1.2 external/broadcom/rpi-firmware/dist/fixup_cd.dat 1.1 external/broadcom/rpi-firmware/dist/fixup_cd.dat 1.2 external/broadcom/rpi-firmware/dist/start.elf 1.1 external/broadcom/rpi-firmware/dist/start.elf 1.2 external/broadcom/rpi-firmware/dist/start_cd.elf 1.1 external/broadcom/rpi-firmware/dist/start_cd.elf 1.2 sys/arch/arm/broadcom/bcm2835_bsc.c 1.1 via patch sys/arch/arm/broadcom/bcm2835_bscreg.h 1.1 via patch sys/arch/arm/broadcom/bcm2835_dotg.c 1.1 via patch sys/arch/arm/broadcom/bcm2835_emmc.c 1.7 via patch sys/arch/arm/broadcom/bcm2835_genfb.c 1.4 via patch sys/arch/arm/broadcom/bcm2835_gpio_subr.c 1.2 via patch sys/arch/arm/broadcom/bcm2835_gpio_subr.h 1.1 via patch sys/arch/arm/broadcom/bcm2835_gpioreg.h 1.1 via patch sys/arch/arm/broadcom/bcm2835_intr.c 1.3 via patch sys/arch/arm/broadcom/bcm2835_mbox.c 1.5 via patch sys/arch/arm/broadcom/bcm2835_mbox.h 1.4 via patch sys/arch/arm/broadcom/bcm2835_obio.c 1.17 via patch sys/arch/arm/broadcom/bcm2835_pm.c 1.2 via patch sys/arch/arm/broadcom/bcm2835_rng.c 1.3 via patch sys/arch/arm/broadcom/bcm2835_space.c 1.5 via patch sys/arch/arm/broadcom/bcm2835_spi.c 1.1 via patch sys/arch/arm/broadcom/bcm2835_spireg.h 1.1 via patch sys/arch/arm/broadcom/bcm2835_tmr.c 1.3 via patch sys/arch/arm/broadcom/bcm2835reg.h 1.10 via patch sys/arch/arm/broadcom/files.bcm2835 1.14 via patch sys/arch/evbarm/conf/RPI 1.23 via patch sys/arch/evbarm/conf/files.rpi 1.3 via patch sys/arch/evbarm/conf/mk.rpi 1.2 via patch sys/arch/evbarm/conf/std.rpi 1.4 via patch sys/arch/evbarm/rpi/rpi_machdep.c 1.34 via patch sys/arch/evbarm/rpi/rpi_start.S 1.7 via patch sys/arch/evbarm/rpi/rpi_vcmbox.c 1.2 via patch sys/arch/evbarm/rpi/vcio.h 1.1 via patch sys/arch/evbarm/rpi/vcprop.h 1.7 via patch sys/conf/files patch sys/dev/sdmmc/sdhc.c 1.43 sys/dev/sdmmc/sdhcvar.h 1.13 sys/dev/usb/dwc_otg.c 1.45 via patch sys/dev/usb/dwc_otgreg.h 1.5 via patch sys/dev/usb/dwc_otgvar.h 1.11 via patch sys/dev/usb/files.usb 1.126 via patch sys/dev/usb/if_smsc.c 1.7 via patch sys/dev/usb/if_smscreg.h 1.1 via patch sys/dev/usb/if_smscvar.h 1.1 via patch sys/dev/usb/usbdevices.config patch sys/dev/usb/usbdevs 1.633 via patch sys/dev/usb/usbdevs.h regen sys/dev/usb/usbdevs_data.h regen sys/dev/wscons/wsconsio.h 1.105,1.107 via patch sys/dev/wscons/wsdisplayvar.h 1.50 sys/dev/wscons/wsdisplay_util.c 1.2 sys/dev/videomode/edid.c 1.12 via patch
Greatly improved Raspberry Pi support. USB and onboard Ethernet should work. [skrll, ticket #813]
|
| 1.1.4.2 | 19-Nov-2012 |
riz | sys/arch/arm/broadcom/bcm2835_emmc.c patch sys/arch/arm/broadcom/bcm2835reg.h patch sys/arch/arm/broadcom/bcm2835_mbox.h 1.1-1.3 via patch sys/arch/arm/broadcom/bcm2835_mbox_subr.c 1.1-1.3 via patch sys/arch/arm/broadcom/bcm2835_mboxreg.h 1.1 via patch sys/arch/arm/broadcom/files.bcm2835 patch sys/arch/evbarm/rpi/rpi_machdep.c patch sys/arch/evbarm/rpi/rpi_start.S patch sys/arch/evbarm/rpi/vcio.h 1.1 via patch sys/arch/evbarm/rpi/vcprop.h 1.1-1.2 via patch
Improve Raspberry PI support: memory layout and clock for the sdhc(4) controller are queried via the mailbox properties channel. [skrll, ticket #660]
|
| 1.1.4.1 | 14-Oct-2012 |
riz | file vcio.h was added on branch netbsd-6 on 2012-11-19 19:13:01 +0000
|
| 1.1.2.2 | 30-Oct-2012 |
yamt | sync with head
|
| 1.1.2.1 | 14-Oct-2012 |
yamt | file vcio.h was added on branch yamt-pagecache on 2012-10-30 17:19:26 +0000
|
| 1.1 | 08-Jan-2013 |
skrll | branches: 1.1.2; 1.1.4; 1.1.8; Use the VC power manager mailbox channel to power up the devices we have support for.
|
| 1.1.8.2 | 25-Feb-2013 |
tls | resync with head
|
| 1.1.8.1 | 08-Jan-2013 |
tls | file vcpm.h was added on branch tls-maxphys on 2013-02-25 00:28:37 +0000
|
| 1.1.4.2 | 15-Feb-2013 |
riz | Commit another file missed from ticket 813. (Raspberry Pi support)
|
| 1.1.4.1 | 08-Jan-2013 |
riz | file vcpm.h was added on branch netbsd-6 on 2013-02-15 03:35:52 +0000
|
| 1.1.2.2 | 23-Jan-2013 |
yamt | sync with head
|
| 1.1.2.1 | 08-Jan-2013 |
yamt | file vcpm.h was added on branch yamt-pagecache on 2013-01-23 00:05:46 +0000
|
| 1.20 | 08-Mar-2021 |
mlelstv | Add some firmware support functions and define more properties - framebuffer - power management - vchiq init - RPI4 USB firmware support
|
| 1.19 | 01-Dec-2020 |
rin | Data written to and read from bcmmbox(4) should be in little-endian.
|
| 1.18 | 23-Nov-2020 |
rin | Remove stray white space. No binary changes.
|
| 1.17 | 30-Dec-2019 |
skrll | branches: 1.17.8; Add emmc2 clock goop from mlelstv@
(missing commit)
|
| 1.16 | 17-Jun-2017 |
jmcneill | branches: 1.16.6; Disable BSC0 on Raspberry Pi 3 and Zero W boards.
|
| 1.15 | 03-Apr-2016 |
mlelstv | branches: 1.15.10; Add more tags understood by the firmware.
|
| 1.14 | 14-Mar-2016 |
skrll | Update vcprop_tag_clockrate structure
|
| 1.13 | 28-Sep-2014 |
macallan | branches: 1.13.2; add hardware cursor support
|
| 1.12 | 28-Sep-2014 |
macallan | the RPi wiki had the values for VCPROPTAG_SET_CURSOR_INFO and VCPROPTAG_SET_CURSOR_STATE swapped - now they actually work thanks jmcneill@ for having the right idea
|
| 1.11 | 23-Sep-2014 |
macallan | add VC memory management goop
|
| 1.10 | 23-Sep-2014 |
macallan | add goop for hardware cursor handling
|
| 1.9 | 25-Jul-2014 |
jmcneill | branches: 1.9.2; bump VCPROP_MAXCMDLINE to 1024, use this instead of MAX_BOOT_STRING for sizing boot_args, and allow for overriding VCPROP_MAXCMDLINE in kernel config. Fixes cmdline parsing with newer firmware (required for B+)
|
| 1.8 | 17-Apr-2013 |
skrll | branches: 1.8.8; Added __packed in a couple of places to help AEABI
|
| 1.7 | 08-Jan-2013 |
jmcneill | add vc fb alpha and screen blanking tags
|
| 1.6 | 08-Jan-2013 |
jmcneill | add a couple more fb prop tags
|
| 1.5 | 08-Jan-2013 |
jmcneill | add some framebuffer related vc tags
|
| 1.4 | 07-Jan-2013 |
jmcneill | Add support for rpi cpu frequency scaling through machdep.cpu.frequency.* sysctls. The minimum and maximum supported frequencies are based on the "arm_freq_min" and "arm_freq" values in config.txt.
|
| 1.3 | 07-Jan-2013 |
jmcneill | add some more vcprop definitions -- power, temperature, and voltage related
|
| 1.2 | 30-Oct-2012 |
skrll | branches: 1.2.2; 1.2.4; Add VCPROPTAG_[GS]ET_CLOCK{R,ST}ATE
|
| 1.1 | 14-Oct-2012 |
skrll | branches: 1.1.2; Add the Raspberry PI firmware VC mailbox channel numbers.
Add some VC property tag definitions and use them to get ARM/VC memory split.
Grab a few others things in the process, but don't do anything other than display them when VERBOSE_INIT_ARM is defined.
|
| 1.1.2.5 | 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
| 1.1.2.4 | 23-Jan-2013 |
yamt | sync with head
|
| 1.1.2.3 | 16-Jan-2013 |
yamt | sync with (a bit old) head
|
| 1.1.2.2 | 30-Oct-2012 |
yamt | sync with head
|
| 1.1.2.1 | 14-Oct-2012 |
yamt | file vcprop.h was added on branch yamt-pagecache on 2012-10-30 17:19:26 +0000
|
| 1.2.4.6 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.2.4.5 | 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
| 1.2.4.4 | 23-Jun-2013 |
tls | resync from head
|
| 1.2.4.3 | 25-Feb-2013 |
tls | resync with head
|
| 1.2.4.2 | 20-Nov-2012 |
tls | Resync to 2012-11-19 00:00:00 UTC
|
| 1.2.4.1 | 30-Oct-2012 |
tls | file vcprop.h was added on branch tls-maxphys on 2012-11-20 03:01:17 +0000
|
| 1.2.2.3 | 13-Feb-2013 |
riz | Pull up following revision(s) (requested by skrll in ticket #813):
etc/MAKEDEV.tmpl 1.160 etc/etc.evbarm/MAKEDEV.conf 1.9 external/broadcom/rpi-firmware/dist/LICENCE.broadcom 1.1 external/broadcom/rpi-firmware/dist/bootcode.bin 1.1 external/broadcom/rpi-firmware/dist/bootcode.bin 1.2 external/broadcom/rpi-firmware/dist/fixup.dat 1.1 external/broadcom/rpi-firmware/dist/fixup.dat 1.2 external/broadcom/rpi-firmware/dist/fixup_cd.dat 1.1 external/broadcom/rpi-firmware/dist/fixup_cd.dat 1.2 external/broadcom/rpi-firmware/dist/start.elf 1.1 external/broadcom/rpi-firmware/dist/start.elf 1.2 external/broadcom/rpi-firmware/dist/start_cd.elf 1.1 external/broadcom/rpi-firmware/dist/start_cd.elf 1.2 sys/arch/arm/broadcom/bcm2835_bsc.c 1.1 via patch sys/arch/arm/broadcom/bcm2835_bscreg.h 1.1 via patch sys/arch/arm/broadcom/bcm2835_dotg.c 1.1 via patch sys/arch/arm/broadcom/bcm2835_emmc.c 1.7 via patch sys/arch/arm/broadcom/bcm2835_genfb.c 1.4 via patch sys/arch/arm/broadcom/bcm2835_gpio_subr.c 1.2 via patch sys/arch/arm/broadcom/bcm2835_gpio_subr.h 1.1 via patch sys/arch/arm/broadcom/bcm2835_gpioreg.h 1.1 via patch sys/arch/arm/broadcom/bcm2835_intr.c 1.3 via patch sys/arch/arm/broadcom/bcm2835_mbox.c 1.5 via patch sys/arch/arm/broadcom/bcm2835_mbox.h 1.4 via patch sys/arch/arm/broadcom/bcm2835_obio.c 1.17 via patch sys/arch/arm/broadcom/bcm2835_pm.c 1.2 via patch sys/arch/arm/broadcom/bcm2835_rng.c 1.3 via patch sys/arch/arm/broadcom/bcm2835_space.c 1.5 via patch sys/arch/arm/broadcom/bcm2835_spi.c 1.1 via patch sys/arch/arm/broadcom/bcm2835_spireg.h 1.1 via patch sys/arch/arm/broadcom/bcm2835_tmr.c 1.3 via patch sys/arch/arm/broadcom/bcm2835reg.h 1.10 via patch sys/arch/arm/broadcom/files.bcm2835 1.14 via patch sys/arch/evbarm/conf/RPI 1.23 via patch sys/arch/evbarm/conf/files.rpi 1.3 via patch sys/arch/evbarm/conf/mk.rpi 1.2 via patch sys/arch/evbarm/conf/std.rpi 1.4 via patch sys/arch/evbarm/rpi/rpi_machdep.c 1.34 via patch sys/arch/evbarm/rpi/rpi_start.S 1.7 via patch sys/arch/evbarm/rpi/rpi_vcmbox.c 1.2 via patch sys/arch/evbarm/rpi/vcio.h 1.1 via patch sys/arch/evbarm/rpi/vcprop.h 1.7 via patch sys/conf/files patch sys/dev/sdmmc/sdhc.c 1.43 sys/dev/sdmmc/sdhcvar.h 1.13 sys/dev/usb/dwc_otg.c 1.45 via patch sys/dev/usb/dwc_otgreg.h 1.5 via patch sys/dev/usb/dwc_otgvar.h 1.11 via patch sys/dev/usb/files.usb 1.126 via patch sys/dev/usb/if_smsc.c 1.7 via patch sys/dev/usb/if_smscreg.h 1.1 via patch sys/dev/usb/if_smscvar.h 1.1 via patch sys/dev/usb/usbdevices.config patch sys/dev/usb/usbdevs 1.633 via patch sys/dev/usb/usbdevs.h regen sys/dev/usb/usbdevs_data.h regen sys/dev/wscons/wsconsio.h 1.105,1.107 via patch sys/dev/wscons/wsdisplayvar.h 1.50 sys/dev/wscons/wsdisplay_util.c 1.2 sys/dev/videomode/edid.c 1.12 via patch
Greatly improved Raspberry Pi support. USB and onboard Ethernet should work. [skrll, ticket #813]
|
| 1.2.2.2 | 19-Nov-2012 |
riz | sys/arch/arm/broadcom/bcm2835_emmc.c patch sys/arch/arm/broadcom/bcm2835reg.h patch sys/arch/arm/broadcom/bcm2835_mbox.h 1.1-1.3 via patch sys/arch/arm/broadcom/bcm2835_mbox_subr.c 1.1-1.3 via patch sys/arch/arm/broadcom/bcm2835_mboxreg.h 1.1 via patch sys/arch/arm/broadcom/files.bcm2835 patch sys/arch/evbarm/rpi/rpi_machdep.c patch sys/arch/evbarm/rpi/rpi_start.S patch sys/arch/evbarm/rpi/vcio.h 1.1 via patch sys/arch/evbarm/rpi/vcprop.h 1.1-1.2 via patch
Improve Raspberry PI support: memory layout and clock for the sdhc(4) controller are queried via the mailbox properties channel. [skrll, ticket #660]
|
| 1.2.2.1 | 30-Oct-2012 |
riz | file vcprop.h was added on branch netbsd-6 on 2012-11-19 19:13:01 +0000
|
| 1.8.8.1 | 10-Aug-2014 |
tls | Rebase.
|
| 1.9.2.1 | 26-Jul-2017 |
snj | Pull up following revision(s) (requested by jmcneill in ticket #1435): sys/arch/arm/arm32/cpu.c: 1.113 via patch sys/arch/arm/broadcom/bcm2835_bsc.c: 1.6 via patch sys/arch/arm/broadcom/bcm2835_plcom.c: 1.4 via patch sys/arch/arm/cortex/gtmr.c: 1.18 via patch sys/arch/arm/include/armreg.h: 1.110 via patch sys/arch/arm/include/vfpreg.h: 1.15 via patch sys/arch/arm/vfp/vfp_init.c: 1.50 via patch sys/arch/evbarm/rpi/rpi_machdep.c: 1.59, 1.70-1.72 via patch sys/arch/evbarm/rpi/vcprop.h: 1.16 Get the RPI3 working (in aarch32 mode) by recognising Cortex A53 CPUs. While I'm here add some A57/A72 info as well. My RPI3 works with FB console - the uart needs some help with its clocks. -- Do invalidate the cache as RPI2 build with Clang can't fetch the memory config otherwise. -- Use the VC property mailbox to request the UART clock rate and use it appropriately Newer firmwares use 48MHz -- Disable BSC0 on Raspberry Pi 3 and Zero W boards. -- Interrupts are enabled before the timer is configured. Ensure that the timer is disabled when attaching so it doesn't go crazy between the time interrupts are enabled and clocks are initialized. My RPI3 makes it multi-user now. -- Enable UART0 (PL011) on GPIO header for Raspberry Pi 3 / Zero W
|
| 1.13.2.3 | 28-Aug-2017 |
skrll | Sync with HEAD
|
| 1.13.2.2 | 22-Apr-2016 |
skrll | Sync with HEAD
|
| 1.13.2.1 | 19-Mar-2016 |
skrll | Sync with HEAD
|
| 1.15.10.1 | 21-Jun-2017 |
snj | Pull up following revision(s) (requested by jmcneill in ticket #43): sys/arch/arm/broadcom/bcm2835_bsc.c: revision 1.6 sys/arch/evbarm/rpi/rpi_machdep.c: revision 1.71 sys/arch/evbarm/rpi/vcprop.h: revision 1.16 Disable BSC0 on Raspberry Pi 3 and Zero W boards.
|
| 1.16.6.1 | 08-Apr-2020 |
martin | Merge changes from current as of 20200406
|
| 1.17.8.2 | 03-Apr-2021 |
thorpej | Sync with HEAD.
|
| 1.17.8.1 | 14-Dec-2020 |
thorpej | Sync w/ HEAD.
|
| 1.10 | 08-Mar-2021 |
mlelstv | Add some firmware support functions and define more properties - framebuffer - power management - vchiq init - RPI4 USB firmware support
|
| 1.9 | 01-Dec-2020 |
rin | Data written to and read from bcmmbox(4) should be in little-endian.
|
| 1.8 | 23-Nov-2020 |
rin | Add missing __KERNEL_RCSID().
|
| 1.7 | 23-Nov-2020 |
rin | Sort headers. No binary changes.
|
| 1.6 | 04-Jul-2020 |
skrll | branches: 1.6.2; G/C
|
| 1.5 | 01-Jan-2018 |
skrll | Remove unnecessary #includE
|
| 1.4 | 10-Dec-2017 |
skrll | FDTise RapberryPI support. Thanks for jmcneill for a lot of help with this.
The kernel image that the RPI firmware boots is now netbsd.img in the kernel build directory.
XXX fdtbus_get_reg needs reworking
|
| 1.3 | 09-Nov-2017 |
skrll | branches: 1.3.2; Trailing whitespcae
|
| 1.2 | 03-Oct-2014 |
skrll | Better error handling.
|
| 1.1 | 28-Sep-2014 |
macallan | add hardware cursor support
|
| 1.3.2.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
| 1.3.2.1 | 09-Nov-2017 |
jdolecek | file vcprop_subr.c was added on branch tls-maxphys on 2017-12-03 11:36:06 +0000
|
| 1.6.2.2 | 03-Apr-2021 |
thorpej | Sync with HEAD.
|
| 1.6.2.1 | 14-Dec-2020 |
thorpej | Sync w/ HEAD.
|