|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 thorpej-ifq-base thorpej-altq-separation-base netbsd-10-0-RC1 netbsd-10-base
|
| 1.7 |
05-Nov-2022 |
jmcneill |
Handle speed change events
|
| 1.6 |
01-Nov-2022 |
jmcneill |
On a system with both global and private timers, we cannot drive hardclock from both or else time will move too fast.
Check MPIDR and install the global timer interrupt handler on uniprocessor configs, and the private timer interrupt handler on MPCore configs.
|
|
Revision tags: bouyer-sunxi-drm-base thorpej-i2c-spi-conf2-base
|
| 1.5 |
07-Aug-2021 |
thorpej |
Merge thorpej-cfargs2.
|
|
Revision tags: thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base
|
| 1.4 |
24-Apr-2021 |
thorpej |
branches: 1.4.8; Merge thorpej-cfargs branch:
Simplify and make extensible the config_search() / config_found() / config_attach() interfaces: rather than having different variants for which arguments you want pass along, just have a single call that takes a variadic list of tag-value arguments.
Adjust all call sites: - Simplify wherever possible; don't pass along arguments that aren't actually needed. - Don't be explicit about what interface attribute is attaching if the device only has one. (More simplification.) - Add a config_probe() function to be used in indirect configuiration situations, making is visibly easier to see when indirect config is in play, and allowing for future change in semantics. (As of now, this is just a wrapper around config_match(), but that is an implementation detail.)
Remove unnecessary or redundant interface attributes where they're not needed.
There are currently 5 "cfargs" defined: - CFARG_SUBMATCH (submatch function for direct config) - CFARG_SEARCH (search function for indirect config) - CFARG_IATTR (interface attribte) - CFARG_LOCATORS (locators array) - CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)
...and a sentinel value CFARG_EOL.
Add some extra sanity checking to ensure that interface attributes aren't ambiguous.
Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark ports to associate those device handles with device_t instance. This will trickle trough to more places over time (need back-end for pre-OFW Sun OBP; any others?).
|
|
Revision tags: thorpej-cfargs-base thorpej-futex-base
|
| 1.3 |
27-Jan-2021 |
thorpej |
branches: 1.3.2; Rename of_match_compat_data() to of_compatible_match(). Similarly, rename of_search_compatible() to of_compatible_lookup().
Standardize on of_compatible_match() for driver matching, and adapt all call sites.
|
| 1.2 |
15-Jan-2021 |
ryo |
use fdtbus_intr_establish_xname
|
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3 ad-namecache-base2 ad-namecache-base1 ad-namecache-base phil-wifi-20191119
|
| 1.1 |
10-Aug-2019 |
skrll |
branches: 1.1.2; 1.1.10; 1.1.12; Add a driver for the A5/A9 Private timer.
While here FDTise the Watchdog driver.
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 thorpej-ifq-base thorpej-altq-separation-base netbsd-10-0-RC1 netbsd-10-base
|
| 1.8 |
01-Nov-2022 |
jmcneill |
On a system with both global and private timers, we cannot drive hardclock from both or else time will move too fast.
Check MPIDR and install the global timer interrupt handler on uniprocessor configs, and the private timer interrupt handler on MPCore configs.
|
|
Revision tags: bouyer-sunxi-drm-base thorpej-i2c-spi-conf2-base
|
| 1.7 |
07-Aug-2021 |
thorpej |
Merge thorpej-cfargs2.
|
|
Revision tags: thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base
|
| 1.6 |
24-Apr-2021 |
thorpej |
branches: 1.6.8; Merge thorpej-cfargs branch:
Simplify and make extensible the config_search() / config_found() / config_attach() interfaces: rather than having different variants for which arguments you want pass along, just have a single call that takes a variadic list of tag-value arguments.
Adjust all call sites: - Simplify wherever possible; don't pass along arguments that aren't actually needed. - Don't be explicit about what interface attribute is attaching if the device only has one. (More simplification.) - Add a config_probe() function to be used in indirect configuiration situations, making is visibly easier to see when indirect config is in play, and allowing for future change in semantics. (As of now, this is just a wrapper around config_match(), but that is an implementation detail.)
Remove unnecessary or redundant interface attributes where they're not needed.
There are currently 5 "cfargs" defined: - CFARG_SUBMATCH (submatch function for direct config) - CFARG_SEARCH (search function for indirect config) - CFARG_IATTR (interface attribte) - CFARG_LOCATORS (locators array) - CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)
...and a sentinel value CFARG_EOL.
Add some extra sanity checking to ensure that interface attributes aren't ambiguous.
Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark ports to associate those device handles with device_t instance. This will trickle trough to more places over time (need back-end for pre-OFW Sun OBP; any others?).
|
|
Revision tags: thorpej-cfargs-base thorpej-futex-base
|
| 1.5 |
27-Jan-2021 |
thorpej |
branches: 1.5.2; Rename of_match_compat_data() to of_compatible_match(). Similarly, rename of_search_compatible() to of_compatible_lookup().
Standardize on of_compatible_match() for driver matching, and adapt all call sites.
|
| 1.4 |
15-Jan-2021 |
ryo |
use fdtbus_intr_establish_xname
|
|
Revision tags: netbsd-9-4-RELEASE netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3 netbsd-9-0-RELEASE netbsd-9-0-RC2 ad-namecache-base2 ad-namecache-base1 ad-namecache-base netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127
|
| 1.3 |
22-Jan-2019 |
jmcneill |
branches: 1.3.12; Listen for PMFE_SPEED_CHANGED events and automatically update a9tmr frequency
|
| 1.2 |
19-Jan-2019 |
jmcneill |
Add support for (FDT-ized) Amlogic Meson8b.
|
|
Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728 phil-wifi-base pgoyette-compat-0625
|
| 1.1 |
05-Jun-2018 |
hkenken |
branches: 1.1.2; 1.1.4; Rename ARM A9 Global Timer driver name to support fdt.
- Rename a9tmr to arma9tmr. - Add a9tmr_fdt.c based gtmr_fdt.c.
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 thorpej-ifq-base thorpej-altq-separation-base netbsd-10-0-RC1 netbsd-10-base bouyer-sunxi-drm-base thorpej-i2c-spi-conf2-base
|
| 1.4 |
07-Aug-2021 |
thorpej |
Merge thorpej-cfargs2.
|
|
Revision tags: thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base
|
| 1.3 |
24-Apr-2021 |
thorpej |
branches: 1.3.8; Merge thorpej-cfargs branch:
Simplify and make extensible the config_search() / config_found() / config_attach() interfaces: rather than having different variants for which arguments you want pass along, just have a single call that takes a variadic list of tag-value arguments.
Adjust all call sites: - Simplify wherever possible; don't pass along arguments that aren't actually needed. - Don't be explicit about what interface attribute is attaching if the device only has one. (More simplification.) - Add a config_probe() function to be used in indirect configuiration situations, making is visibly easier to see when indirect config is in play, and allowing for future change in semantics. (As of now, this is just a wrapper around config_match(), but that is an implementation detail.)
Remove unnecessary or redundant interface attributes where they're not needed.
There are currently 5 "cfargs" defined: - CFARG_SUBMATCH (submatch function for direct config) - CFARG_SEARCH (search function for indirect config) - CFARG_IATTR (interface attribte) - CFARG_LOCATORS (locators array) - CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)
...and a sentinel value CFARG_EOL.
Add some extra sanity checking to ensure that interface attributes aren't ambiguous.
Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark ports to associate those device handles with device_t instance. This will trickle trough to more places over time (need back-end for pre-OFW Sun OBP; any others?).
|
|
Revision tags: thorpej-cfargs-base thorpej-futex-base
|
| 1.2 |
27-Jan-2021 |
thorpej |
branches: 1.2.2; Rename of_match_compat_data() to of_compatible_match(). Similarly, rename of_search_compatible() to of_compatible_lookup().
Standardize on of_compatible_match() for driver matching, and adapt all call sites.
|
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3 ad-namecache-base2 ad-namecache-base1 ad-namecache-base phil-wifi-20191119
|
| 1.1 |
10-Aug-2019 |
skrll |
branches: 1.1.2; 1.1.10; 1.1.12; Add a driver for the A5/A9 Private timer.
While here FDTise the Watchdog driver.
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 thorpej-ifq-base thorpej-altq-separation-base netbsd-10-0-RC1 netbsd-10-base bouyer-sunxi-drm-base thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base
|
| 1.3 |
27-Jan-2021 |
thorpej |
Rename of_match_compat_data() to of_compatible_match(). Similarly, rename of_search_compatible() to of_compatible_lookup().
Standardize on of_compatible_match() for driver matching, and adapt all call sites.
|
| 1.2 |
15-Jan-2021 |
ryo |
use fdtbus_intr_establish_xname
|
|
Revision tags: netbsd-9-4-RELEASE netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3 netbsd-9-0-RELEASE netbsd-9-0-RC2 ad-namecache-base2 ad-namecache-base1 ad-namecache-base netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-merge-20190127 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728 phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202 nick-nhusb-base-20170825 perseant-stdc-iso10646-base
|
| 1.1 |
08-Jun-2017 |
jmcneill |
branches: 1.1.2; 1.1.6; 1.1.8; 1.1.24; Add fdt glue for ARM PrimeCell Advanced Audio CODEC interface (PL041).
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base
|
| 1.25 |
08-Dec-2024 |
jmcneill |
acpi: Try PSCI before UEFI RT for shutdown/reset.
BSA says that an OS can use either UEFI RT or PSCI, and that the RT implementation should just call PSCI.
Given the amount of implementation issues with UEFI RT, let's try PSCI first, because it's nice to be able to reboot and poweroff even with buggy firmware.
|
|
Revision tags: netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 thorpej-ifq-base thorpej-altq-separation-base netbsd-10-0-RC1 netbsd-10-base
|
| 1.24 |
25-Nov-2022 |
mrg |
branches: 1.24.8; move the creation of machdep.smbios into platform_init().
"dmidecode -d /dev/smbios" now works on x86. also tested on arm64 (lx2k.)
|
|
Revision tags: bouyer-sunxi-drm-base thorpej-i2c-spi-conf2-base
|
| 1.23 |
07-Aug-2021 |
thorpej |
Merge thorpej-cfargs2.
|
|
Revision tags: thorpej-futex2-base thorpej-cfargs2-base thorpej-i2c-spi-conf-base
|
| 1.22 |
24-Jul-2021 |
jmcneill |
branches: 1.22.2; smbios: Add character device for accessing SMBIOS tables
The /dev/smbios character device gives an aperture into physical memory that allows read-only access to the SMBIOS header and tables.
|
| 1.21 |
23-Jul-2021 |
jmcneill |
smbios: Support SMBIOS 2.x tables.
|
| 1.20 |
22-Jul-2021 |
jmcneill |
Expose SMBIOS tables using sysctl machdep.dmi.*, same as x86.
|
|
Revision tags: cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base
|
| 1.19 |
24-Apr-2021 |
thorpej |
branches: 1.19.2; Merge thorpej-cfargs branch:
Simplify and make extensible the config_search() / config_found() / config_attach() interfaces: rather than having different variants for which arguments you want pass along, just have a single call that takes a variadic list of tag-value arguments.
Adjust all call sites: - Simplify wherever possible; don't pass along arguments that aren't actually needed. - Don't be explicit about what interface attribute is attaching if the device only has one. (More simplification.) - Add a config_probe() function to be used in indirect configuiration situations, making is visibly easier to see when indirect config is in play, and allowing for future change in semantics. (As of now, this is just a wrapper around config_match(), but that is an implementation detail.)
Remove unnecessary or redundant interface attributes where they're not needed.
There are currently 5 "cfargs" defined: - CFARG_SUBMATCH (submatch function for direct config) - CFARG_SEARCH (search function for indirect config) - CFARG_IATTR (interface attribte) - CFARG_LOCATORS (locators array) - CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)
...and a sentinel value CFARG_EOL.
Add some extra sanity checking to ensure that interface attributes aren't ambiguous.
Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark ports to associate those device handles with device_t instance. This will trickle trough to more places over time (need back-end for pre-OFW Sun OBP; any others?).
|
|
Revision tags: thorpej-cfargs-base thorpej-futex-base
|
| 1.18 |
27-Jan-2021 |
thorpej |
branches: 1.18.2; Rename of_match_compat_data() to of_compatible_match(). Similarly, rename of_search_compatible() to of_compatible_lookup().
Standardize on of_compatible_match() for driver matching, and adapt all call sites.
|
| 1.17 |
17-Jan-2021 |
jmcneill |
trailing whitespace
|
| 1.16 |
10-Oct-2020 |
jmcneill |
branches: 1.16.2; Support using EFI runtime services for RTC when booting in devicetree mode.
|
| 1.15 |
15-Sep-2020 |
jmcneill |
If acpi_probe() falis, just panic now instead of failing mysteriously later.
|
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3 ad-namecache-base2 ad-namecache-base1
|
| 1.14 |
17-Jan-2020 |
jmcneill |
Add support for Arm N1 SDP PCIe host controller.
The N1 SDP has a few bugs that we need to work around: - PCIe root port config space lives in a non-standard location. - Access to PCIe config space of devices that do not exist results in an sync SError. Firmware creates a "known devices" table at a fixed physical address that we use to filter PCI conf access to only known devices.
This change splits the Arm ACPI PCI quirks into separate files for each host controller, and allows per-segment quirks to be applied.
These changes exposed some bugs in the MI ACPI layer related to multi-segment support. The MI ACPI PCI code was using a shared PCI chipset tag to access devices, and these accesses can happen before our PCI host bridge drivers are attached! The global chipset tag is now gone, and an MD callback can provide a custom tag on a per-segment basis.
|
|
Revision tags: ad-namecache-base
|
| 1.13 |
29-Dec-2019 |
jmcneill |
branches: 1.13.2; Allow MD code to provide custom bus_dma tags on a per-node basis. On Arm this is required to return non-coherent bus_dma tags for device nodes with _CCA=0
|
|
Revision tags: netbsd-9-4-RELEASE netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base
|
| 1.12 |
22-Jun-2019 |
jmcneill |
Finish the job
|
| 1.11 |
22-Jun-2019 |
jakllsch |
Restore previous range of aa_dmat.
Should fix ahcisata_acpi on OverDrive 1000, which has no DRAM below 4GiB.
|
| 1.10 |
19-Jun-2019 |
jmcneill |
Provide a 64-bit dma tag and use a coherent tag unless CCA=0
|
|
Revision tags: phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
| 1.9 |
12-Nov-2018 |
jmcneill |
branches: 1.9.4; Support building kernels with ACPI and no PCI.
|
| 1.8 |
31-Oct-2018 |
jmcneill |
Add MSI-X support
|
| 1.7 |
28-Oct-2018 |
jmcneill |
Add support for EFI runtime services on aarch64.
|
| 1.6 |
23-Oct-2018 |
jmcneill |
Expose SMBIOS table pointer via machdep.smbios sysctl
|
| 1.5 |
21-Oct-2018 |
jmcneill |
Some parts of the ACPI subsystem depend on a valid PCI chipset tag in the ACPI softc. Provide one here, and assume segment 0.
|
| 1.4 |
21-Oct-2018 |
jmcneill |
Add support for PCI MSI using ARM GICv2m.
|
|
Revision tags: pgoyette-compat-1020
|
| 1.3 |
15-Oct-2018 |
jmcneill |
branches: 1.3.2; Add ARM ACPI PCI support.
|
| 1.2 |
13-Oct-2018 |
jmcneill |
Support poweroff via PSCI
|
| 1.1 |
12-Oct-2018 |
jmcneill |
Add acpi @ fdt glue
|
|
Revision tags: perseant-exfatfs-base-20250801 perseant-exfatfs-base-20240630 perseant-exfatfs-base bouyer-sunxi-drm-base cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-futex-base bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406 ad-namecache-base3 ad-namecache-base2 ad-namecache-base1 ad-namecache-base
|
| 1.3 |
05-Jan-2020 |
jmcneill |
Make the generic Arm platform available for arm32 as well.
|
| 1.2 |
05-Jan-2020 |
jmcneill |
Use arm_fdt_cpu_bootstrap
|
| 1.1 |
05-Jan-2020 |
jmcneill |
Add a generic Arm64 platform definition that is used as a fallback.
The generic platform assumes PSCI, a generic timer, pre-initialized UART clocks, and adds a 4KB entry to the devmap for the console UART device.
|
| 1.24 |
07-Sep-2025 |
thorpej |
No need to initialize efi_todr.cookie to NULL.
|
| 1.23 |
06-Sep-2025 |
thorpej |
Refactor the "platform" defitions into fdt_platform.h
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base
|
| 1.22 |
30-Jan-2025 |
jmcneill |
Ignore broken UEFI RTS on Radxa Orion O6
|
|
Revision tags: perseant-exfatfs-base-20240630 perseant-exfatfs-base thorpej-ifq-base thorpej-altq-separation-base
|
| 1.21 |
07-Apr-2023 |
skrll |
branches: 1.21.6; Rename ARM_PLATFORM to FDT_PLATFORM and make it available outside arm.
|
|
Revision tags: netbsd-10-1-RELEASE netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 netbsd-10-0-RC1 netbsd-10-base bouyer-sunxi-drm-base
|
| 1.20 |
10-Oct-2021 |
jmcneill |
efi: Add /dev/efi character device
Introduce a /dev/efi character device that provides a means for accessing UEFI RT variable services from userland. Compatible with the FreeBSD ioctl interface for ease of porting their libefivar and associated tools.
The ioctl interface is defined in sys/efiio.h.
To enable support for this on an arch, the kernel needs `pseudo-device efi` and the MD EFI implementation needs to register its backend by calling efi_ops_register(). This commit includes an implementation for Arm.
|
| 1.19 |
05-Sep-2021 |
jmcneill |
Remove unused arm_fdt_memory_dump
|
| 1.18 |
30-Aug-2021 |
jmcneill |
Add FIQ support.
|
|
Revision tags: thorpej-i2c-spi-conf2-base
|
| 1.17 |
07-Aug-2021 |
thorpej |
Merge thorpej-cfargs2.
|
|
Revision tags: thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base
|
| 1.16 |
24-Apr-2021 |
thorpej |
branches: 1.16.8; Merge thorpej-cfargs branch:
Simplify and make extensible the config_search() / config_found() / config_attach() interfaces: rather than having different variants for which arguments you want pass along, just have a single call that takes a variadic list of tag-value arguments.
Adjust all call sites: - Simplify wherever possible; don't pass along arguments that aren't actually needed. - Don't be explicit about what interface attribute is attaching if the device only has one. (More simplification.) - Add a config_probe() function to be used in indirect configuiration situations, making is visibly easier to see when indirect config is in play, and allowing for future change in semantics. (As of now, this is just a wrapper around config_match(), but that is an implementation detail.)
Remove unnecessary or redundant interface attributes where they're not needed.
There are currently 5 "cfargs" defined: - CFARG_SUBMATCH (submatch function for direct config) - CFARG_SEARCH (search function for indirect config) - CFARG_IATTR (interface attribte) - CFARG_LOCATORS (locators array) - CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)
...and a sentinel value CFARG_EOL.
Add some extra sanity checking to ensure that interface attributes aren't ambiguous.
Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark ports to associate those device handles with device_t instance. This will trickle trough to more places over time (need back-end for pre-OFW Sun OBP; any others?).
|
|
Revision tags: thorpej-cfargs-base thorpej-futex-base
|
| 1.15 |
23-Feb-2021 |
jmcneill |
branches: 1.15.2; Install a default irq handler that panics when no interrupt controller driver is installed.
|
| 1.14 |
27-Jan-2021 |
thorpej |
Rename of_match_compat_data() to of_compatible_match(). Similarly, rename of_search_compatible() to of_compatible_lookup().
Standardize on of_compatible_match() for driver matching, and adapt all call sites.
|
| 1.13 |
17-Dec-2020 |
skrll |
No need for PMAP_WRITE_BACK here (also aa32 pmap doesn't know about it)
|
| 1.12 |
10-Oct-2020 |
jmcneill |
branches: 1.12.2; Support using EFI runtime services for RTC when booting in devicetree mode.
|
| 1.11 |
21-Jun-2020 |
jmcneill |
Add support for installing modules that were loaded by the bootloader.
|
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3 ad-namecache-base2 ad-namecache-base1 ad-namecache-base
|
| 1.10 |
05-Jan-2020 |
jmcneill |
Add a generic Arm64 platform definition that is used as a fallback.
The generic platform assumes PSCI, a generic timer, pre-initialized UART clocks, and adds a 4KB entry to the devmap for the console UART device.
|
|
Revision tags: netbsd-9-4-RELEASE netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118
|
| 1.9 |
03-Jan-2019 |
jmcneill |
Remove unused variable
|
|
Revision tags: pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
|
| 1.8 |
05-Aug-2018 |
skrll |
Add prefixes to struct arm_platform{,_info} members.
No functional change.
|
|
Revision tags: pgoyette-compat-0728 phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
|
| 1.7 |
10-Dec-2017 |
skrll |
branches: 1.7.2; 1.7.4; 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
|
|
Revision tags: tls-maxphys-base-20171202
|
| 1.6 |
21-Sep-2017 |
skrll |
branches: 1.6.2; Spaces to TABs
|
|
Revision tags: nick-nhusb-base-20170825
|
| 1.5 |
24-Aug-2017 |
jmcneill |
branches: 1.5.2; Add __HAVE_GENERIC_CPU_INITCLOCKS option. If set, don't export cpu_initclocks from device drivers as common code (in this case FDT) will provide its own copy.
|
|
Revision tags: perseant-stdc-iso10646-base
|
| 1.4 |
29-Jun-2017 |
jmcneill |
Add arm_fdt_memory_dump helper for dumping physical addresses from ddb
|
|
Revision tags: netbsd-8-base
|
| 1.3 |
30-May-2017 |
jmcneill |
branches: 1.3.2; Use an FDT-based ARM_INTR_IMPL for Tegra.
|
| 1.2 |
30-May-2017 |
jmcneill |
Allow ARM FDT drivers to register per-cpu init callbacks. Run through this callback list when a CPU hatches instead of calling gtmr_init_cpu_clock directly.
|
| 1.1 |
29-May-2017 |
jmcneill |
Rename armv7fdt to armfdt now that bus space + dma tags are filled in by platform code.
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base perseant-exfatfs-base-20240630 perseant-exfatfs-base thorpej-ifq-base thorpej-altq-separation-base
|
| 1.20 |
07-Apr-2023 |
skrll |
Rename ARM_PLATFORM to FDT_PLATFORM and make it available outside arm.
|
|
Revision tags: netbsd-10-1-RELEASE netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 netbsd-10-0-RC1 netbsd-10-base bouyer-sunxi-drm-base
|
| 1.19 |
05-Sep-2021 |
jmcneill |
Remove unused arm_fdt_memory_dump
|
| 1.18 |
30-Aug-2021 |
jmcneill |
Add FIQ support.
|
|
Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base
|
| 1.17 |
21-Jun-2020 |
jmcneill |
Add support for installing modules that were loaded by the bootloader.
|
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3 ad-namecache-base2 ad-namecache-base1 ad-namecache-base
|
| 1.16 |
05-Jan-2020 |
jmcneill |
Add a generic Arm64 platform definition that is used as a fallback.
The generic platform assumes PSCI, a generic timer, pre-initialized UART clocks, and adds a 4KB entry to the devmap for the console UART device.
|
|
Revision tags: netbsd-9-4-RELEASE netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base
|
| 1.15 |
31-Jan-2019 |
skrll |
Change ap_mpstart to return non-zero value if any/all APs don't start.
|
|
Revision tags: pgoyette-compat-20190127 pgoyette-compat-20190118
|
| 1.14 |
03-Jan-2019 |
jmcneill |
Remove unused variable
|
| 1.13 |
03-Jan-2019 |
jmcneill |
Add a link set for cpu enable methods.
|
|
Revision tags: pgoyette-compat-1226 pgoyette-compat-1126
|
| 1.12 |
30-Oct-2018 |
skrll |
Retire fdt_putchar and ap_early_put_char in favour of uartputc.
|
|
Revision tags: pgoyette-compat-1020
|
| 1.11 |
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.10 |
12-Oct-2018 |
jmcneill |
Add optional ap_startup callback to struct arm_platform. This allows for late (post-UVM init) initialization of platform specific stuff.
|
|
Revision tags: pgoyette-compat-0930
|
| 1.9 |
10-Sep-2018 |
ryo |
cleanup aarch64 mpstart and fdt bootstrap * arm_cpu_hatch_arg is a bad idea. avoid serializing CPU startup, and eliminate arm_cpu_hatch_arg. in mpstart, resolve own cpu index using array of cpu_mpidr[] (aarch64) * add support fdt enable-method "spin-table" * add support fdt enable-method "brcm,bcm2836-smp" (for 32bit RaspberryPi) * use arm_fdt_cpu_bootstrap() instead of psci_fdt_bootstrap() * rename "arm/fdt/psci_fdt.h" to "arm/fdt/psci_fdtvar.h" because of conflict of include file for needs-flag * add devmap for cpu spin-table of raspberrypi3/aarch64 * no need to force hatch APs for raspberrypi3/arm32 ifndef MULTIPROCESSOR. * fix to work pmap_extract(kerneltext/data/bss) even if before calling pmap_bootstrap
idea to use cpu_mpidr[] by jmcneill@. reviewd by skrll@. thanks.
|
|
Revision tags: pgoyette-compat-0906
|
| 1.8 |
05-Aug-2018 |
skrll |
Add prefixes to struct arm_platform{,_info} members.
No functional change.
|
|
Revision tags: pgoyette-compat-0728 phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202 nick-nhusb-base-20170825
|
| 1.7 |
24-Aug-2017 |
jmcneill |
branches: 1.7.2; 1.7.4; 1.7.6; 1.7.8; Add __HAVE_GENERIC_CPU_INITCLOCKS option. If set, don't export cpu_initclocks from device drivers as common code (in this case FDT) will provide its own copy.
|
|
Revision tags: perseant-stdc-iso10646-base
|
| 1.6 |
29-Jun-2017 |
jmcneill |
Add arm_fdt_memory_dump helper for dumping physical addresses from ddb
|
|
Revision tags: netbsd-8-base
|
| 1.5 |
02-Jun-2017 |
jmcneill |
branches: 1.5.2; Allow platform code to specify the UART frequency for consinit
|
| 1.4 |
02-Jun-2017 |
jmcneill |
FDT-ize "delay" by having fdt_machdep provide the delay() function and move the implementations into the platform code.
|
| 1.3 |
30-May-2017 |
jmcneill |
Use an FDT-based ARM_INTR_IMPL for Tegra.
|
| 1.2 |
30-May-2017 |
jmcneill |
Allow ARM FDT drivers to register per-cpu init callbacks. Run through this callback list when a CPU hatches instead of calling gtmr_init_cpu_clock directly.
|
| 1.1 |
29-May-2017 |
jmcneill |
Rename armv7fdt to armfdt now that bus space + dma tags are filled in by platform code.
|
| 1.9 |
06-Sep-2025 |
thorpej |
Re-factor the console-related code into fdt_console.[ch]
|
| 1.8 |
06-Sep-2025 |
thorpej |
Refactor the "platform" defitions into fdt_platform.h
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base perseant-exfatfs-base-20240630 perseant-exfatfs-base thorpej-ifq-base thorpej-altq-separation-base
|
| 1.7 |
07-Apr-2023 |
skrll |
Rename ARM_PLATFORM to FDT_PLATFORM and make it available outside arm.
|
| 1.6 |
25-Feb-2023 |
skrll |
Restore the ability to have EARLYCONS work for the QEMU virt after SOC_VIRT got removed.
|
|
Revision tags: netbsd-10-1-RELEASE netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 netbsd-10-0-RC1 netbsd-10-base bouyer-sunxi-drm-base thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base
|
| 1.5 |
24-Apr-2021 |
thorpej |
Merge thorpej-cfargs branch:
Simplify and make extensible the config_search() / config_found() / config_attach() interfaces: rather than having different variants for which arguments you want pass along, just have a single call that takes a variadic list of tag-value arguments.
Adjust all call sites: - Simplify wherever possible; don't pass along arguments that aren't actually needed. - Don't be explicit about what interface attribute is attaching if the device only has one. (More simplification.) - Add a config_probe() function to be used in indirect configuiration situations, making is visibly easier to see when indirect config is in play, and allowing for future change in semantics. (As of now, this is just a wrapper around config_match(), but that is an implementation detail.)
Remove unnecessary or redundant interface attributes where they're not needed.
There are currently 5 "cfargs" defined: - CFARG_SUBMATCH (submatch function for direct config) - CFARG_SEARCH (search function for indirect config) - CFARG_IATTR (interface attribte) - CFARG_LOCATORS (locators array) - CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)
...and a sentinel value CFARG_EOL.
Add some extra sanity checking to ensure that interface attributes aren't ambiguous.
Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark ports to associate those device handles with device_t instance. This will trickle trough to more places over time (need back-end for pre-OFW Sun OBP; any others?).
|
|
Revision tags: thorpej-cfargs-base thorpej-futex-base
|
| 1.4 |
04-Feb-2021 |
thorpej |
branches: 1.4.2; Call acpi_device_register() / fdtbus_device_register() as approrpriate.
|
| 1.3 |
28-Sep-2020 |
jmcneill |
branches: 1.3.2; Get rid of a4x bus_space tag from fdtbus_attach_args. The only consumer of this was various com(4) glue so modify all of that to use the new com_init_regs_stride instead.
|
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3 ad-namecache-base2 ad-namecache-base1 ad-namecache-base
|
| 1.2 |
06-Jan-2020 |
skrll |
branches: 1.2.6; Fix DEVMAP build losage by reducing diffs between arm and aarch64
*sigh*
|
| 1.1 |
05-Jan-2020 |
jmcneill |
Make the generic Arm platform available for arm32 as well.
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 thorpej-ifq-base thorpej-altq-separation-base netbsd-10-0-RC1 netbsd-10-base
|
| 1.13 |
14-Oct-2022 |
jmcneill |
Add a PCI resource manager and use it on Arm ACPI platforms.
The Arm ACPI code relied on PCI_NETBSD_CONFIGURE to configure devices that were not enabled by system firmware. This is not safe to do unless the firmware explicitly permits it using a device specific method defined in the PCI firmware spec.
Introduce a new PCI resource manager that discovers what has already been configured by firmware and allocates from the remaining space. This will ensure that devices setup by firmware are untouched and only will program BARs of devices that are not enabled at boot time.
The current implementation assumes that the parent PCI-PCI bridge's are already configured. A worthwhile improvement in the future would be to support programming windows for bridges that are not fully configured.
|
|
Revision tags: bouyer-sunxi-drm-base
|
| 1.12 |
17-Jul-2022 |
riastradh |
wsdisplay(4): Make most of struct vcons_data private.
More importantly, make sizeof(struct vcons_data) independent of whether VCONS_DRAW_INTR &c. is defined.
Allocate the private space with kmem rather than in the caller.
This still doesn't have very good separation between interface parameters and internal state, but it's better than before, and is necessary to make genfb usable in modules.
In arm_simplefb.c, this removes use of the use_intr member. That assignment became redundant with the introduction of vcons_earlyinit, so there's no need to replace it by anything.
|
| 1.11 |
30-Aug-2021 |
jmcneill |
Add 10-bit pixel format support.
|
|
Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base
|
| 1.10 |
02-Mar-2021 |
jmcneill |
Fix previous: Each line is "stride" bytes wide, not "width * depth".
While here, add a comment explaining what this test is doing.
|
| 1.9 |
02-Mar-2021 |
skrll |
Sanity check size vs width x height x depth. Buggy firmware exists.
|
| 1.8 |
27-Jan-2021 |
thorpej |
Rename of_match_compat_data() to of_compatible_match(). Similarly, rename of_search_compatible() to of_compatible_lookup().
Standardize on of_compatible_match() for driver matching, and adapt all call sites.
|
| 1.7 |
17-Jan-2021 |
jmcneill |
Fit in 80 columns. NFC.
|
| 1.6 |
17-Jan-2021 |
jmcneill |
Use vcons_earlyinit
|
| 1.5 |
17-Jan-2021 |
jmcneill |
fix build without VCONS_DRAW_INTR
|
| 1.4 |
21-Oct-2020 |
rin |
branches: 1.4.2; Fix build for some arm32 kernels; arm_simplefb_reconfig() is used only when NPCI > 0 && defined(PCI_NETBSD_CONFIGURE).
|
| 1.3 |
20-Oct-2020 |
jmcneill |
Instead of trying to prevent pciconf from reconfiguring the firmware's framebuffer, instead allow MD code to register callbacks. If a resource is changed, the driver can unmap the old resource and remap the new. Do this with simplefb so the console doesn't explode when the VGA device is (potentially) reconfigured at boot.
|
| 1.2 |
19-Oct-2020 |
rin |
Fix colors of 32-bpp raster console for evbarm/aarch64eb and armeb.
Most boards are configured to little-endian in initial, and switched to big-endian after kernel is loaded. In this case, framebuffer seems byte-swapped to CPU.
It is best to reconfigure framebuffer (as done recently for sunxi_mixer by jmcneill), but in most cases, HW is incapable, or we just don't know register bits to configure them.
Therefore, override "format" FDT property for "simple-framebuffer" to let drivers know byte-order for 32-bpp framebuffer.
Then, make fdt/simplefb (genfb) and arm_simplefb (early console) detect byte-swapped FB, and configure genfb(4) or rasops(4) layers accordingly.
Tested on Pine A64+ (arm_simplefb) and Cubietruck (both fdt/simplefb and arm_simplefb).
Discussed with jmcneill. Thanks!!
|
| 1.1 |
10-Oct-2020 |
jmcneill |
Support early FB console attachment when booting with a devicetree (non-ACPI mode). Inform the pciconf code about the framebuffer to prevent pciconf from changing resources out from under us when framebuffer memory is in VRAM.
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 thorpej-ifq-base thorpej-altq-separation-base netbsd-10-0-RC1 netbsd-10-base bouyer-sunxi-drm-base thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base
|
| 1.2 |
20-Oct-2020 |
jmcneill |
Instead of trying to prevent pciconf from reconfiguring the firmware's framebuffer, instead allow MD code to register callbacks. If a resource is changed, the driver can unmap the old resource and remap the new. Do this with simplefb so the console doesn't explode when the VGA device is (potentially) reconfigured at boot.
|
| 1.1 |
10-Oct-2020 |
jmcneill |
Support early FB console attachment when booting with a devicetree (non-ACPI mode). Inform the pciconf code about the framebuffer to prevent pciconf from changing resources out from under us when framebuffer memory is in VRAM.
|
|
Revision tags: perseant-exfatfs-base-20250801 perseant-exfatfs-base-20240630 perseant-exfatfs-base bouyer-sunxi-drm-base cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-futex-base bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406 ad-namecache-base3 ad-namecache-base2 ad-namecache-base1 ad-namecache-base isaki-audio2-base pgoyette-compat-merge-20190127 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728 pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base perseant-stdc-iso10646-base
|
| 1.4 |
29-May-2017 |
jmcneill |
Rename armv7fdt to armfdt now that bus space + dma tags are filled in by platform code.
|
| 1.3 |
29-May-2017 |
jmcneill |
Move console initialization out of platform code into the console drivers themselves.
|
| 1.2 |
28-May-2017 |
jmcneill |
Add a facility for platform-specific callbacks and use it to remove most of the Tegra-specific code from tegra_machdep.c.
Platform code matches on the compatible property of the root ("/") DT node and allows for chip-specific implementations of the following:
- devmap: Return a 0-terminated list of static device map entries. - bootstrap: Early initialization of platform-specific facilities. - early_putchar: Provides an implementation of putchar for use in early debug messages. - device_register: Platform-specific device register callback. - reset: Platform-specific CPU reset implementation. - consinit: Platform-specific console init implementation.
|
| 1.1 |
28-May-2017 |
jmcneill |
Enumerate CPUs, GIC, and generic timer using FDT data instead of relying on hard-coded tables in mainbus.
|
|
Revision tags: perseant-exfatfs-base-20250801 perseant-exfatfs-base-20240630 perseant-exfatfs-base bouyer-sunxi-drm-base cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-futex-base bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406 ad-namecache-base3 ad-namecache-base2 ad-namecache-base1 ad-namecache-base isaki-audio2-base pgoyette-compat-merge-20190127 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728 pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base perseant-stdc-iso10646-base
|
| 1.3 |
29-May-2017 |
jmcneill |
Rename armv7fdt to armfdt now that bus space + dma tags are filled in by platform code.
|
| 1.2 |
29-May-2017 |
jmcneill |
Move console initialization out of platform code into the console drivers themselves.
|
| 1.1 |
28-May-2017 |
jmcneill |
Add a facility for platform-specific callbacks and use it to remove most of the Tegra-specific code from tegra_machdep.c.
Platform code matches on the compatible property of the root ("/") DT node and allows for chip-specific implementations of the following:
- devmap: Return a 0-terminated list of static device map entries. - bootstrap: Early initialization of platform-specific facilities. - early_putchar: Provides an implementation of putchar for use in early debug messages. - device_register: Platform-specific device register callback. - reset: Platform-specific CPU reset implementation. - consinit: Platform-specific console init implementation.
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base perseant-exfatfs-base-20240630 perseant-exfatfs-base
|
| 1.44 |
10-May-2024 |
riastradh |
arm/fdt/cpu_fdt.c: Use `cpu' iattr to attach cpufreq.
Now that cpu has an explicit interface attribute, cpufeaturebus, _all_ children of cpu must use an explicit interface attribute to disambiguate. For children that weren't previously attached using an explicit interface attribute, the name of the parent, `cpu', serves as the iattr.
XXX I think we should either (a) not use cpufreqbus, since in the aarch64 case it doesn't seem to be passing any information through attach args, or (b) create another iattr like cpufdtbus for use by cpufreq_dt.c, which does rely on attach args, if it has to attach differently from the rest of fdtbus. But for now this should get aarch64 on fdt booting again.
|
| 1.43 |
09-May-2024 |
pho |
kern/58195: arm: Support drvctl -d and -r for cpufeaturebus
This is required for detaching and re-attaching the vmt(4) driver on aarch64.
|
|
Revision tags: netbsd-10-1-RELEASE netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 thorpej-ifq-base thorpej-altq-separation-base netbsd-10-0-RC1 netbsd-10-base bouyer-sunxi-drm-base
|
| 1.42 |
03-Mar-2022 |
riastradh |
arm: Use device_set_private for cpuN.
For cpu at fdt, nix the fdt softc -- this was leaked and never used for anything. The device's private storage is the cpu_info.
|
| 1.41 |
30-Aug-2021 |
jmcneill |
Inspect #address-cells to determine if the cpu-release-addr requires a 32- or 64-bit write.
|
|
Revision tags: thorpej-i2c-spi-conf2-base
|
| 1.40 |
07-Aug-2021 |
thorpej |
Merge thorpej-cfargs2.
|
|
Revision tags: thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base
|
| 1.39 |
24-Apr-2021 |
thorpej |
branches: 1.39.8; Merge thorpej-cfargs branch:
Simplify and make extensible the config_search() / config_found() / config_attach() interfaces: rather than having different variants for which arguments you want pass along, just have a single call that takes a variadic list of tag-value arguments.
Adjust all call sites: - Simplify wherever possible; don't pass along arguments that aren't actually needed. - Don't be explicit about what interface attribute is attaching if the device only has one. (More simplification.) - Add a config_probe() function to be used in indirect configuiration situations, making is visibly easier to see when indirect config is in play, and allowing for future change in semantics. (As of now, this is just a wrapper around config_match(), but that is an implementation detail.)
Remove unnecessary or redundant interface attributes where they're not needed.
There are currently 5 "cfargs" defined: - CFARG_SUBMATCH (submatch function for direct config) - CFARG_SEARCH (search function for indirect config) - CFARG_IATTR (interface attribte) - CFARG_LOCATORS (locators array) - CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)
...and a sentinel value CFARG_EOL.
Add some extra sanity checking to ensure that interface attributes aren't ambiguous.
Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark ports to associate those device handles with device_t instance. This will trickle trough to more places over time (need back-end for pre-OFW Sun OBP; any others?).
|
|
Revision tags: thorpej-cfargs-base thorpej-futex-base
|
| 1.38 |
03-Dec-2020 |
skrll |
branches: 1.38.2; Provide and use a sev() macro for the sev instruction.
While here use the correct barrier to ensure completion of memory accesses before a couple of the sev() calls.
|
| 1.37 |
25-Nov-2020 |
skrll |
Fix comment. Spotted by jmcneill@
|
| 1.36 |
10-Jun-2020 |
jmcneill |
branches: 1.36.2; If enable-method is missing, try psci
|
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3
|
| 1.35 |
21-Feb-2020 |
skrll |
Improve a comment
|
| 1.34 |
15-Feb-2020 |
skrll |
Various updates and improvements to cpu start up on arm/aarch64
- start sharing more code around the AP startup messaging. - call arm_cpu_topology_set early so that ci_core_id is available for drivers, e.g. bcm2835_intr.c - both arm and aarch64 now have - a static cpu_info_store array - the same arm_cpu_{hatched,mbox}
|
| 1.33 |
27-Jan-2020 |
jmcneill |
Match any node with device_type = "cpu"
|
|
Revision tags: ad-namecache-base2
|
| 1.32 |
25-Jan-2020 |
skrll |
Wrap a long line
|
|
Revision tags: ad-namecache-base1
|
| 1.31 |
12-Jan-2020 |
mrg |
provide some semblance of valid cpu topology for big.little systems.
while attaching cpus, if the FDT provides "capacity-dmips-mhz" track the fastest set, and call cpu_topology_set() with slow=true for any cpus that are not the fastest.
bug fix for cpu_topology_set(): actually set ci_is_slow for slow cpus.
with this change, and -current's recent scheduler changes, this means that long running processes run on the faster cores. on RK3399 based systems, i am seeing 20-50% speed ups for many tasks.
XXX: all this can be made common with armv7 big.little.
|
|
Revision tags: ad-namecache-base phil-wifi-20191119
|
| 1.30 |
01-Nov-2019 |
bad |
branches: 1.30.2; fix typos in comment in previous.
|
| 1.29 |
01-Nov-2019 |
bad |
re-apply r1.26. but only #if !defined(AARCH64).
not necessary on armv8 and cache ops are not available that early there.
|
| 1.28 |
19-Oct-2019 |
jmcneill |
Increase aarch64 MAXCPUS to 256.
|
| 1.27 |
17-Oct-2019 |
bad |
back out r1.26. it makes the pinebook fail to boot.
|
| 1.26 |
15-Oct-2019 |
bad |
flush the dcache in cpu_enable_psci() before calling psci_cpu_on().
fixes the kernel hanging with multiple "mpstart" on (at least) NanoPi R1.
OK jmcneill@, skrll@
XXX pullup-9
|
|
Revision tags: netbsd-9-base phil-wifi-20190609 isaki-audio2-base
|
| 1.25 |
13-Apr-2019 |
jmcneill |
branches: 1.25.4; If an enable-method property is present on the cpu node and not supported by the kernel, try to use the enable-method from the cpus node instead.
|
| 1.24 |
13-Apr-2019 |
jmcneill |
Fix build w/o PSCI
|
| 1.23 |
13-Apr-2019 |
jmcneill |
The spin-table CPU enable method is only valid for 64-bit kernels.
|
| 1.22 |
31-Jan-2019 |
skrll |
Change ap_mpstart to return non-zero value if any/all APs don't start.
|
|
Revision tags: pgoyette-compat-20190127
|
| 1.21 |
19-Jan-2019 |
jmcneill |
Add support for (FDT-ized) Amlogic Meson8b.
|
|
Revision tags: pgoyette-compat-20190118
|
| 1.20 |
03-Jan-2019 |
jmcneill |
No need to swap cpu-release-addr twice
|
| 1.19 |
03-Jan-2019 |
jmcneill |
Add a link set for cpu enable methods.
|
| 1.18 |
03-Jan-2019 |
skrll |
Start CPUs more like aarch64 by using a cpu_mpidr array (if populated) to map MPIDRs to an index for each CPU.
Towards big.LITTLE support.
|
| 1.17 |
02-Jan-2019 |
skrll |
Avoid double negative
|
|
Revision tags: pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020
|
| 1.16 |
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.15 |
04-Oct-2018 |
ryo |
fix to boot APs of RPI3 with GENERIC64. if no psci, try other methods.
|
|
Revision tags: pgoyette-compat-0930
|
| 1.14 |
13-Sep-2018 |
jmcneill |
Wrap arm_fdt_cpu_okay with #ifdef MULTIPROCESSOR
|
| 1.13 |
10-Sep-2018 |
jmcneill |
Re-add support for cpu nodes with status = "disabled", lost in previous commit
|
| 1.12 |
10-Sep-2018 |
ryo |
cleanup aarch64 mpstart and fdt bootstrap * arm_cpu_hatch_arg is a bad idea. avoid serializing CPU startup, and eliminate arm_cpu_hatch_arg. in mpstart, resolve own cpu index using array of cpu_mpidr[] (aarch64) * add support fdt enable-method "spin-table" * add support fdt enable-method "brcm,bcm2836-smp" (for 32bit RaspberryPi) * use arm_fdt_cpu_bootstrap() instead of psci_fdt_bootstrap() * rename "arm/fdt/psci_fdt.h" to "arm/fdt/psci_fdtvar.h" because of conflict of include file for needs-flag * add devmap for cpu spin-table of raspberrypi3/aarch64 * no need to force hatch APs for raspberrypi3/arm32 ifndef MULTIPROCESSOR. * fix to work pmap_extract(kerneltext/data/bss) even if before calling pmap_bootstrap
idea to use cpu_mpidr[] by jmcneill@. reviewd by skrll@. thanks.
|
| 1.11 |
09-Sep-2018 |
jmcneill |
Ditch arm,arm-v8 compatible string (everything uses arm,armv8)
|
|
Revision tags: pgoyette-compat-0906
|
| 1.10 |
05-Sep-2018 |
jmcneill |
Match non-standard compat string "arm,armv8" (should be "arm,arm-v8")
|
| 1.9 |
26-Aug-2018 |
ryo |
add support multiple cpu clusters. * pass cpu index as an argument to secondary processors when hatching. * keep cpu cache confituration per cpu clusters.
Hello big.LITTLE!
|
|
Revision tags: pgoyette-compat-0728
|
| 1.8 |
02-Jul-2018 |
jmcneill |
Attach cpufreq scaling provider to ourself, as cpus doesn't do this anymore
|
|
Revision tags: phil-wifi-base pgoyette-compat-0625
|
| 1.7 |
22-Jun-2018 |
jmcneill |
branches: 1.7.2; Match generic arm,arm-v8 compatible string
|
| 1.6 |
15-Jun-2018 |
jakllsch |
Add "arm,arm-v7" to compatible strings.
(for `qemu-system-arm -M virt`)
|
|
Revision tags: pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407
|
| 1.5 |
01-Apr-2018 |
ryo |
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@)
|
|
Revision tags: pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
|
| 1.4 |
10-Dec-2017 |
skrll |
branches: 1.4.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
|
|
Revision tags: tls-maxphys-base-20171202
|
| 1.3 |
18-Sep-2017 |
jmcneill |
branches: 1.3.2; Add support for arm,arm1176jzf-s
|
|
Revision tags: nick-nhusb-base-20170825 perseant-stdc-iso10646-base
|
| 1.2 |
18-Jun-2017 |
jmcneill |
branches: 1.2.4; Only try to attach to CPUs with the same cluster ID as the boot processor.
|
|
Revision tags: netbsd-8-base
|
| 1.1 |
28-May-2017 |
jmcneill |
branches: 1.1.2; Enumerate CPUs, GIC, and generic timer using FDT data instead of relying on hard-coded tables in mainbus.
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base perseant-exfatfs-base-20240630 perseant-exfatfs-base thorpej-ifq-base thorpej-altq-separation-base
|
| 1.1 |
12-Jun-2023 |
skrll |
Call / define fdtbus_cpus_md_attach for platforms with cpus @ fdt.
The RISC-V binding here seems somewhat of an abuse, but it exists in mainline linux.
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 thorpej-ifq-base thorpej-altq-separation-base netbsd-10-0-RC1 netbsd-10-base bouyer-sunxi-drm-base
|
| 1.8 |
25-Jun-2022 |
jmcneill |
Remove GIC_SPLFUNCS.
|
| 1.7 |
20-Sep-2021 |
jmcneill |
Make _splraise/_spllower/splx functions available to modules again.
|
| 1.6 |
30-Aug-2021 |
jmcneill |
Add FIQ support.
|
|
Revision tags: netbsd-9-4-RELEASE netbsd-9-3-RELEASE thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 netbsd-9-2-RELEASE cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base netbsd-9-1-RELEASE bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3 netbsd-9-0-RELEASE netbsd-9-0-RC2 ad-namecache-base2 ad-namecache-base1 ad-namecache-base netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
| 1.5 |
09-Nov-2018 |
jmcneill |
Increase max PIC sources
|
|
Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
|
| 1.4 |
05-Sep-2018 |
jmcneill |
Bump PIX_MAXSOURCES to 480
|
|
Revision tags: pgoyette-compat-0728 phil-wifi-base pgoyette-compat-0625
|
| 1.3 |
15-Jun-2018 |
jakllsch |
branches: 1.3.2; Bump PIC_MAXSOURCES to 352.
(`qemu-system-arm -M virt` currently needs 288)
|
|
Revision tags: pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202 nick-nhusb-base-20170825
|
| 1.2 |
25-Aug-2017 |
jmcneill |
branches: 1.2.2; 1.2.4; 1.2.6; Add initial support for Allwinner A13 and R8 SoCs.
|
|
Revision tags: netbsd-8-3-RELEASE netbsd-8-2-RELEASE netbsd-8-1-RELEASE netbsd-8-1-RC1 netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 matt-nb8-mediatek-base perseant-stdc-iso10646-base netbsd-8-base
|
| 1.1 |
30-May-2017 |
jmcneill |
Use an FDT-based ARM_INTR_IMPL for Tegra.
|
| 1.37 |
06-Sep-2025 |
thorpej |
Refactor the "platform" defitions into fdt_platform.h
|
| 1.36 |
06-Sep-2025 |
thorpej |
Step towards modularizing the Flattened Device Tree code.
Define attributes for each of the specific device bindings: clock, dai, dma, gpio, i2c, iommu, mbox, mmc_pwrseq, phy, power, power domain, pwm, regulator, reset controller, spi, system controller, pin controller. Include these support files only if either a provider or consumer with one of these attributes is present in the kernel config.
Add the necessary attributes to the device / attach declarations for each provider and consumer.
There are some bindings that are consumed by generic code (iommu, pinctrl, power, power domain). Provide weak stubs for these routines to handle situations where there is no provider.
No actual code changed; NFCI.
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base perseant-exfatfs-base-20240630 perseant-exfatfs-base thorpej-ifq-base thorpej-altq-separation-base
|
| 1.35 |
12-Jun-2023 |
skrll |
branches: 1.35.8; Call / define fdtbus_cpus_md_attach for platforms with cpus @ fdt.
The RISC-V binding here seems somewhat of an abuse, but it exists in mainline linux.
|
|
Revision tags: netbsd-10-1-RELEASE netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 netbsd-10-0-RC1 netbsd-10-base bouyer-sunxi-drm-base thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base thorpej-i2c-spi-conf-base
|
| 1.34 |
22-Jul-2021 |
jmcneill |
Expose SMBIOS tables using sysctl machdep.dmi.*, same as x86.
|
|
Revision tags: cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base
|
| 1.33 |
26-Apr-2021 |
thorpej |
armfdt does not need its own interface attribute; all of its children attach to the "fdt" interface attribute.
|
|
Revision tags: thorpej-cfargs-base thorpej-futex-base
|
| 1.32 |
10-Oct-2020 |
jmcneill |
branches: 1.32.6; Support early FB console attachment when booting with a devicetree (non-ACPI mode). Inform the pciconf code about the framebuffer to prevent pciconf from changing resources out from under us when framebuffer memory is in VRAM.
|
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3 ad-namecache-base2 ad-namecache-base1 ad-namecache-base
|
| 1.31 |
07-Jan-2020 |
skrll |
arm_platform requires gtmr and psci. Should fix build failures.
|
| 1.30 |
05-Jan-2020 |
jmcneill |
Make the generic Arm platform available for arm32 as well.
|
|
Revision tags: phil-wifi-20191119
|
| 1.29 |
10-Aug-2019 |
skrll |
Add a driver for the A5/A9 Private timer.
While here FDTise the Watchdog driver.
|
|
Revision tags: netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226
|
| 1.28 |
05-Dec-2018 |
jmcneill |
branches: 1.28.4; Split armv7/armv8 tprof backend config logic from the fdt bus glue.
|
|
Revision tags: pgoyette-compat-1126 pgoyette-compat-1020
|
| 1.27 |
12-Oct-2018 |
jmcneill |
Add acpi @ fdt glue
|
|
Revision tags: pgoyette-compat-0930
|
| 1.26 |
21-Sep-2018 |
skrll |
Centralise defparam CONSADDR, CONSPEED, CONMODE and CONADDR into opt_console.h and adjust.
|
| 1.25 |
10-Sep-2018 |
ryo |
cleanup aarch64 mpstart and fdt bootstrap * arm_cpu_hatch_arg is a bad idea. avoid serializing CPU startup, and eliminate arm_cpu_hatch_arg. in mpstart, resolve own cpu index using array of cpu_mpidr[] (aarch64) * add support fdt enable-method "spin-table" * add support fdt enable-method "brcm,bcm2836-smp" (for 32bit RaspberryPi) * use arm_fdt_cpu_bootstrap() instead of psci_fdt_bootstrap() * rename "arm/fdt/psci_fdt.h" to "arm/fdt/psci_fdtvar.h" because of conflict of include file for needs-flag * add devmap for cpu spin-table of raspberrypi3/aarch64 * no need to force hatch APs for raspberrypi3/arm32 ifndef MULTIPROCESSOR. * fix to work pmap_extract(kerneltext/data/bss) even if before calling pmap_bootstrap
idea to use cpu_mpidr[] by jmcneill@. reviewd by skrll@. thanks.
|
| 1.24 |
08-Sep-2018 |
jmcneill |
Add FDT generic PCI host controller driver.
|
|
Revision tags: pgoyette-compat-0906
|
| 1.23 |
17-Aug-2018 |
skrll |
Whitespace
|
| 1.22 |
08-Aug-2018 |
jmcneill |
Add GICv3 FDT glue
|
|
Revision tags: pgoyette-compat-0728
|
| 1.21 |
15-Jul-2018 |
jmcneill |
Add support for ARMv7 performance monitor (PMU).
|
| 1.20 |
15-Jul-2018 |
jmcneill |
Add glue for ARMv8 performance monitor (PMU).
|
| 1.19 |
30-Jun-2018 |
jmcneill |
cpus: use fdt_add_bus
|
| 1.18 |
30-Jun-2018 |
jmcneill |
Allow nodes to attach child devices using the same sorting rules as used by the simplebus driver.
|
|
Revision tags: phil-wifi-base pgoyette-compat-0625
|
| 1.17 |
20-Jun-2018 |
hkenken |
branches: 1.17.2; Add l2cc support.
|
| 1.16 |
05-Jun-2018 |
hkenken |
Rename ARM A9 Global Timer driver name to support fdt.
- Rename a9tmr to arma9tmr. - Add a9tmr_fdt.c based gtmr_fdt.c.
|
|
Revision tags: pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
|
| 1.15 |
19-Feb-2018 |
jmcneill |
branches: 1.15.2; move plfb glue to the correct location
|
|
Revision tags: tls-maxphys-base-20171202
|
| 1.14 |
02-Oct-2017 |
jmcneill |
branches: 1.14.2; Add generic DT cpu frequency and voltage scaling driver.
|
| 1.13 |
26-Aug-2017 |
jmcneill |
Until config supports multiple 'attach driver at bus with <foo>' lines, move plfb from common files.fdt to files.vexpress
|
|
Revision tags: nick-nhusb-base-20170825 perseant-stdc-iso10646-base
|
| 1.12 |
28-Jun-2017 |
jmcneill |
Add support for ARM Power State Coordination Interface (PSCI).
|
| 1.11 |
08-Jun-2017 |
jmcneill |
Add fdt glue for plrtc
|
| 1.10 |
08-Jun-2017 |
jmcneill |
Add fdt glue for ARM PrimeCell Advanced Audio CODEC interface (PL041).
|
|
Revision tags: netbsd-8-base
|
| 1.9 |
03-Jun-2017 |
jmcneill |
branches: 1.9.2; Add and enable FDT glue for ARM PrimeCell PL050 (KMI) PS2 keyboard/mouse interface.
|
| 1.8 |
03-Jun-2017 |
jmcneill |
Add driver for ARM PrimeCell Color LCD controller (PL111).
|
| 1.7 |
02-Jun-2017 |
jmcneill |
Add fdt glue for ARM PrimeCell UART (PL011).
|
| 1.6 |
02-Jun-2017 |
jmcneill |
Add fdt glue for ARM PrimeCell Multimedia Card Interface (MMCI).
|
| 1.5 |
02-Jun-2017 |
jmcneill |
Add fdt glue for SMSC LAN9118 ethernet.
|
| 1.4 |
30-May-2017 |
jmcneill |
Fix VERBOSE_INIT_ARM build with TEGRA kernel.
|
| 1.3 |
29-May-2017 |
jmcneill |
Rename armv7fdt to armfdt now that bus space + dma tags are filled in by platform code.
|
| 1.2 |
28-May-2017 |
jmcneill |
Enumerate CPUs, GIC, and generic timer using FDT data instead of relying on hard-coded tables in mainbus.
|
|
Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base pgoyette-localcount-20170320 nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107 nick-nhusb-base-20161204 pgoyette-localcount-20161104 nick-nhusb-base-20161004 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907 nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
|
| 1.1 |
13-Dec-2015 |
jmcneill |
branches: 1.1.2; fdt glue for gic
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base
|
| 1.26 |
02-Dec-2024 |
skrll |
Fix attachment for GICs above 4GB
|
|
Revision tags: netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 thorpej-ifq-base thorpej-altq-separation-base netbsd-10-0-RC1 netbsd-10-base bouyer-sunxi-drm-base
|
| 1.25 |
11-Aug-2022 |
riastradh |
branches: 1.25.10; gic at fdt: Don't assume all irqs are established on disestablish.
Fixes panic on detach of PCI devices on pcihost.
|
| 1.24 |
04-Nov-2021 |
jakllsch |
make compilable at NPCI==0
|
|
Revision tags: thorpej-i2c-spi-conf2-base
|
| 1.23 |
07-Aug-2021 |
thorpej |
Merge thorpej-cfargs2.
|
|
Revision tags: thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base
|
| 1.22 |
24-Apr-2021 |
thorpej |
branches: 1.22.8; Merge thorpej-cfargs branch:
Simplify and make extensible the config_search() / config_found() / config_attach() interfaces: rather than having different variants for which arguments you want pass along, just have a single call that takes a variadic list of tag-value arguments.
Adjust all call sites: - Simplify wherever possible; don't pass along arguments that aren't actually needed. - Don't be explicit about what interface attribute is attaching if the device only has one. (More simplification.) - Add a config_probe() function to be used in indirect configuiration situations, making is visibly easier to see when indirect config is in play, and allowing for future change in semantics. (As of now, this is just a wrapper around config_match(), but that is an implementation detail.)
Remove unnecessary or redundant interface attributes where they're not needed.
There are currently 5 "cfargs" defined: - CFARG_SUBMATCH (submatch function for direct config) - CFARG_SEARCH (search function for indirect config) - CFARG_IATTR (interface attribte) - CFARG_LOCATORS (locators array) - CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)
...and a sentinel value CFARG_EOL.
Add some extra sanity checking to ensure that interface attributes aren't ambiguous.
Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark ports to associate those device handles with device_t instance. This will trickle trough to more places over time (need back-end for pre-OFW Sun OBP; any others?).
|
|
Revision tags: thorpej-cfargs-base thorpej-futex-base
|
| 1.21 |
27-Jan-2021 |
thorpej |
branches: 1.21.2; Rename of_match_compat_data() to of_compatible_match(). Similarly, rename of_search_compatible() to of_compatible_lookup().
Standardize on of_compatible_match() for driver matching, and adapt all call sites.
|
| 1.20 |
15-Jan-2021 |
jmcneill |
Add 'const char *xname' arg to fdtbus_interrupt_controller_func .establish
|
| 1.19 |
25-Nov-2020 |
jmcneill |
Fix off-by-one when printing the range of SPIs in a GICv2m frame
|
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3 ad-namecache-base2 ad-namecache-base1 ad-namecache-base
|
| 1.18 |
24-Nov-2019 |
skrll |
branches: 1.18.8; Remove unnecessary cast and wrap a long line.
|
|
Revision tags: netbsd-9-4-RELEASE netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base
|
| 1.17 |
19-Jul-2019 |
hkenken |
Fixed compile error.
|
|
Revision tags: phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127
|
| 1.16 |
26-Jan-2019 |
thorpej |
Define constants for representing the standard interrupt types ({pos,neg,double}-edge, {high,low}-level) from the FDT "interrupts" bindings. Use these defined constants rather than magic numbers.
|
|
Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
| 1.15 |
12-Nov-2018 |
jmcneill |
Only attach v2m if PCI support is present
|
| 1.14 |
11-Nov-2018 |
jmcneill |
Add GICv2m support
|
|
Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
|
| 1.13 |
03-Sep-2018 |
riastradh |
Rename min/max -> uimin/uimax for better honesty.
These functions are defined on unsigned int. The generic name min/max should not silently truncate to 32 bits on 64-bit systems. This is purely a name change -- no functional change intended.
HOWEVER! Some subsystems have
#define min(a, b) ((a) < (b) ? (a) : (b)) #define max(a, b) ((a) > (b) ? (a) : (b))
even though our standard name for that is MIN/MAX. Although these may invite multiple evaluation bugs, these do _not_ cause integer truncation.
To avoid `fixing' these cases, I first changed the name in libkern, and then compile-tested every file where min/max occurred in order to confirm that it failed -- and thus confirm that nothing shadowed min/max -- before changing it.
I have left a handful of bootloaders that are too annoying to compile-test, and some dead code:
cobalt ews4800mips hp300 hppa ia64 luna68k vax acorn32/if_ie.c (not included in any kernels) macppc/if_gm.c (superseded by gem(4))
It should be easy to fix the fallout once identified -- this way of doing things fails safe, and the goal here, after all, is to _avoid_ silent integer truncations, not introduce them.
Maybe one day we can reintroduce min/max as type-generic things that never silently truncate. But we should avoid doing that for a while, so that existing code has a chance to be detected by the compiler for conversion to uimin/uimax without changing the semantics until we can properly audit it all. (Who knows, maybe in some cases integer truncation is actually intended!)
|
|
Revision tags: pgoyette-compat-0728
|
| 1.12 |
15-Jul-2018 |
jmcneill |
Return the real interrupt handle from gic_fdt_establish
|
| 1.11 |
03-Jul-2018 |
jmcneill |
Make IRQ sharing work again
|
|
Revision tags: phil-wifi-base pgoyette-compat-0625
|
| 1.10 |
20-Jun-2018 |
hkenken |
branches: 1.10.2; Support Cortex-A9 (addr_d > addr_c).
|
| 1.9 |
06-Jun-2018 |
jakllsch |
more completely gic_fdt_disestablish() such that it's possible to re-establish later
|
|
Revision tags: pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202
|
| 1.8 |
30-Nov-2017 |
skrll |
branches: 1.8.2; 1.8.4; Handle NULL arg interrupt handlers that want the clock frame.
|
|
Revision tags: nick-nhusb-base-20170825 perseant-stdc-iso10646-base
|
| 1.7 |
02-Jul-2017 |
jmcneill |
Disallow sharing between MPSAFE and non-MPSAFE handlers.
|
| 1.6 |
29-Jun-2017 |
jmcneill |
Don't allow sharing edge and level triggered interrupts.
|
| 1.5 |
28-Jun-2017 |
jmcneill |
Support interrupt sharing.
|
|
Revision tags: netbsd-8-base
|
| 1.4 |
30-May-2017 |
jmcneill |
branches: 1.4.2; Use an FDT-based ARM_INTR_IMPL for Tegra.
|
| 1.3 |
28-May-2017 |
jmcneill |
Enumerate CPUs, GIC, and generic timer using FDT data instead of relying on hard-coded tables in mainbus.
|
|
Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base pgoyette-localcount-20170320 nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107 nick-nhusb-base-20161204 pgoyette-localcount-20161104 nick-nhusb-base-20161004 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907 nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319
|
| 1.2 |
05-Jan-2016 |
marty |
FDT: Interrupts -- add support for interrupt maps
The mct on exynos uses an interrupt map so we add support now. Devices represent their interrupts either through a combination of interrupt-parent and interrupts properties, where the 'interrupts' property is an array of one or more interrupt specifiers; or through a combination of an interrupt-parent that points to an interrupt-map, where the interrupt-map contains 2 or more entries consisting of an index, a pointer to an interrupt-controller, and a specifier for that controller.
This code adds the ability to walk the interrupt-map and return a specifier. Unfortunately, the addition requires changing the interface to the interrupt-controllers' _establish and _intstr functions, so this check in contains a rototill of the three existing fdt interrupt controllers to use the new interface.
|
|
Revision tags: nick-nhusb-base-20151226
|
| 1.1 |
13-Dec-2015 |
jmcneill |
branches: 1.1.2; fdt glue for gic
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 thorpej-ifq-base thorpej-altq-separation-base netbsd-10-0-RC1 netbsd-10-base bouyer-sunxi-drm-base
|
| 1.16 |
17-Nov-2021 |
jmcneill |
gicv3: add support for mbi-alias property
The mbi-alias property, if present, contains the base address of a GICD alias frame that contains only SET/CLRSPI registers. Use this instead of the GICD register frame if present.
|
|
Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base
|
| 1.15 |
27-Jan-2021 |
thorpej |
Rename of_match_compat_data() to of_compatible_match(). Similarly, rename of_search_compatible() to of_compatible_lookup().
Standardize on of_compatible_match() for driver matching, and adapt all call sites.
|
| 1.14 |
27-Jan-2021 |
thorpej |
Use DEVICE_COMPAT_EOL.
|
| 1.13 |
25-Jan-2021 |
thorpej |
Since we're using designated initialisers for compat data, we should use a completely empty initializer for the sentinel.
|
| 1.12 |
19-Jan-2021 |
thorpej |
Use device_compatible_entry / of_search_compatible() for the GICv3 quirk table.
|
| 1.11 |
15-Jan-2021 |
jmcneill |
Add 'const char *xname' arg to fdtbus_interrupt_controller_func .establish
|
| 1.10 |
25-Nov-2020 |
jmcneill |
Add support for message-based interrupts.
|
| 1.9 |
24-Nov-2020 |
jmcneill |
Improve detection of NS vs S views of priorities.
For PMR, write a 0 to bit7 and see if it sticks. This is only possible from NS EL1 if we have a non-secure view of ICC_PMR_EL1.
For int priorities (GICD/GICR interfaces and LPIs), assume that the GICD_CTLR.DS bit is telling us the truth.
RK3399 is special here when using the vendor bootloader, so keep the auto-detection from the previous commit but limit the scope to only run on RK3399 SOCs.
|
|
Revision tags: netbsd-9-4-RELEASE netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3 netbsd-9-0-RELEASE netbsd-9-0-RC2 ad-namecache-base2 ad-namecache-base1 ad-namecache-base netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base
|
| 1.8 |
19-Jul-2019 |
hkenken |
branches: 1.8.10; Fixed compile error.
|
|
Revision tags: phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127
|
| 1.7 |
26-Jan-2019 |
thorpej |
branches: 1.7.4; Define constants for representing the standard interrupt types ({pos,neg,double}-edge, {high,low}-level) from the FDT "interrupts" bindings. Use these defined constants rather than magic numbers.
|
|
Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
| 1.6 |
24-Nov-2018 |
jakllsch |
attach GICv3 ITS where applicable
|
| 1.5 |
19-Nov-2018 |
jakllsch |
avoid NULL deref in gicv3_fdt_disestablish()
|
| 1.4 |
10-Nov-2018 |
jmcneill |
Initialize gic softc dma tag
|
|
Revision tags: pgoyette-compat-1020 pgoyette-compat-0930
|
| 1.3 |
29-Sep-2018 |
jmcneill |
Stop searching for redistributors in a region after we find a redistributor with the Last bit set in GICR_TYPER.
|
|
Revision tags: pgoyette-compat-0906
|
| 1.2 |
12-Aug-2018 |
jmcneill |
branches: 1.2.2; Use aprint_debug for redist count print
|
| 1.1 |
08-Aug-2018 |
jmcneill |
Add GICv3 FDT glue
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 thorpej-ifq-base thorpej-altq-separation-base netbsd-10-0-RC1 netbsd-10-base bouyer-sunxi-drm-base
|
| 1.12 |
12-Nov-2021 |
jmcneill |
gtmr: Add support for arm,cpu-registers-not-fw-configured property.
On armv7, arm,cpu-registers-not-fw-configured means that firmware hasn't bothered to configure any generic timer registers and we need to initialize cntfrq ourselves.
|
|
Revision tags: thorpej-i2c-spi-conf2-base
|
| 1.11 |
07-Aug-2021 |
thorpej |
Merge thorpej-cfargs2.
|
|
Revision tags: thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base
|
| 1.10 |
24-Apr-2021 |
thorpej |
branches: 1.10.8; Merge thorpej-cfargs branch:
Simplify and make extensible the config_search() / config_found() / config_attach() interfaces: rather than having different variants for which arguments you want pass along, just have a single call that takes a variadic list of tag-value arguments.
Adjust all call sites: - Simplify wherever possible; don't pass along arguments that aren't actually needed. - Don't be explicit about what interface attribute is attaching if the device only has one. (More simplification.) - Add a config_probe() function to be used in indirect configuiration situations, making is visibly easier to see when indirect config is in play, and allowing for future change in semantics. (As of now, this is just a wrapper around config_match(), but that is an implementation detail.)
Remove unnecessary or redundant interface attributes where they're not needed.
There are currently 5 "cfargs" defined: - CFARG_SUBMATCH (submatch function for direct config) - CFARG_SEARCH (search function for indirect config) - CFARG_IATTR (interface attribte) - CFARG_LOCATORS (locators array) - CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)
...and a sentinel value CFARG_EOL.
Add some extra sanity checking to ensure that interface attributes aren't ambiguous.
Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark ports to associate those device handles with device_t instance. This will trickle trough to more places over time (need back-end for pre-OFW Sun OBP; any others?).
|
|
Revision tags: thorpej-cfargs-base thorpej-futex-base
|
| 1.9 |
27-Jan-2021 |
thorpej |
branches: 1.9.2; Rename of_match_compat_data() to of_compatible_match(). Similarly, rename of_search_compatible() to of_compatible_lookup().
Standardize on of_compatible_match() for driver matching, and adapt all call sites.
|
| 1.8 |
15-Jan-2021 |
ryo |
use fdtbus_intr_establish_xname
|
|
Revision tags: netbsd-9-4-RELEASE netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3 netbsd-9-0-RELEASE netbsd-9-0-RC2 ad-namecache-base2 ad-namecache-base1 ad-namecache-base netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-merge-20190127 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728 phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202
|
| 1.7 |
30-Nov-2017 |
skrll |
branches: 1.7.2; 1.7.18; typo
|
| 1.6 |
30-Nov-2017 |
skrll |
When attaching gtmr at fdt use fdtbus_intr_establish to establish the gtmr interrupt.
|
|
Revision tags: nick-nhusb-base-20170825
|
| 1.5 |
24-Aug-2017 |
jmcneill |
branches: 1.5.2; Add __HAVE_GENERIC_CPU_INITCLOCKS option. If set, don't export cpu_initclocks from device drivers as common code (in this case FDT) will provide its own copy.
|
| 1.4 |
20-Jul-2017 |
jmcneill |
Match arm,armv8-timer compat string
|
|
Revision tags: netbsd-8-3-RELEASE netbsd-8-2-RELEASE netbsd-8-1-RELEASE netbsd-8-1-RC1 netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 matt-nb8-mediatek-base perseant-stdc-iso10646-base netbsd-8-base
|
| 1.3 |
30-May-2017 |
jmcneill |
Use an FDT-based ARM_INTR_IMPL for Tegra.
|
| 1.2 |
30-May-2017 |
jmcneill |
Allow ARM FDT drivers to register per-cpu init callbacks. Run through this callback list when a CPU hatches instead of calling gtmr_init_cpu_clock directly.
|
| 1.1 |
28-May-2017 |
jmcneill |
Enumerate CPUs, GIC, and generic timer using FDT data instead of relying on hard-coded tables in mainbus.
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 thorpej-ifq-base thorpej-altq-separation-base netbsd-10-0-RC1 netbsd-10-base bouyer-sunxi-drm-base thorpej-i2c-spi-conf2-base
|
| 1.5 |
07-Aug-2021 |
thorpej |
Merge thorpej-cfargs2.
|
|
Revision tags: thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base
|
| 1.4 |
24-Apr-2021 |
thorpej |
branches: 1.4.8; Merge thorpej-cfargs branch:
Simplify and make extensible the config_search() / config_found() / config_attach() interfaces: rather than having different variants for which arguments you want pass along, just have a single call that takes a variadic list of tag-value arguments.
Adjust all call sites: - Simplify wherever possible; don't pass along arguments that aren't actually needed. - Don't be explicit about what interface attribute is attaching if the device only has one. (More simplification.) - Add a config_probe() function to be used in indirect configuiration situations, making is visibly easier to see when indirect config is in play, and allowing for future change in semantics. (As of now, this is just a wrapper around config_match(), but that is an implementation detail.)
Remove unnecessary or redundant interface attributes where they're not needed.
There are currently 5 "cfargs" defined: - CFARG_SUBMATCH (submatch function for direct config) - CFARG_SEARCH (search function for indirect config) - CFARG_IATTR (interface attribte) - CFARG_LOCATORS (locators array) - CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)
...and a sentinel value CFARG_EOL.
Add some extra sanity checking to ensure that interface attributes aren't ambiguous.
Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark ports to associate those device handles with device_t instance. This will trickle trough to more places over time (need back-end for pre-OFW Sun OBP; any others?).
|
|
Revision tags: thorpej-cfargs-base thorpej-futex-base
|
| 1.3 |
27-Jan-2021 |
thorpej |
branches: 1.3.2; Rename of_match_compat_data() to of_compatible_match(). Similarly, rename of_search_compatible() to of_compatible_lookup().
Standardize on of_compatible_match() for driver matching, and adapt all call sites.
|
|
Revision tags: netbsd-9-4-RELEASE netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3 netbsd-9-0-RELEASE netbsd-9-0-RC2 ad-namecache-base2 ad-namecache-base1 ad-namecache-base netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127
|
| 1.2 |
19-Jan-2019 |
jmcneill |
branches: 1.2.12; Add support for (FDT-ized) Amlogic Meson8b.
|
|
Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728 phil-wifi-base pgoyette-compat-0625
|
| 1.1 |
20-Jun-2018 |
hkenken |
branches: 1.1.2; 1.1.4; Add l2cc support.
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base perseant-exfatfs-base-20240630 perseant-exfatfs-base
|
| 1.33 |
12-Jan-2024 |
skrll |
Trailing whitespace.
|
|
Revision tags: netbsd-10-1-RELEASE netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 thorpej-ifq-base thorpej-altq-separation-base netbsd-10-0-RC1 netbsd-10-base
|
| 1.32 |
15-Oct-2022 |
jmcneill |
Use "non-posted" instead of "strongly ordered" to describe nGnRnE mappings
Rename the following defines: - _ARM_BUS_SPACE_MAP_STRONGLY_ORDERED to BUS_SPACE_MAP_NONPOSTED - PMAP_DEV_SO to PMAP_DEV_NP - LX_BLKPAG_ATTR_DEVICE_MEM_SO to LX_BLKPAG_ATTR_DEVICE_MEM_NP Rename the following option: - AARCH64_DEVICE_MEM_STRONGLY_ORDERED to AARCH64_DEVICE_MEM_NONPOSTED
|
|
Revision tags: bouyer-sunxi-drm-base
|
| 1.31 |
06-Sep-2022 |
skrll |
pcihost: Track MSI/MSI-X interrupt handlers.
Track the MSI/MSI-X interrupt handlers so that fdtbus_intr_disestablish doesn't get called for them.
This avoids a KASSERT firing when using 'drvctl -d' on a pci device that uses MSI/MSI-X interrupts.
|
| 1.30 |
04-Sep-2022 |
skrll |
Revert previous
kern/56994: wm(4) panic on attach in interrupt_distribute, sometimes
|
| 1.29 |
04-Sep-2022 |
skrll |
pcihost: Don't call fdtbus_intr_disestablish for MSI/MSI-X interrupts.
This avoids a KASSERT firing when using 'drvctl -d' on a pci device that uses MSI/MSI-X interrupts.
|
| 1.28 |
13-Aug-2022 |
jmcneill |
Process "ranges" property even when linux,pci-probe-only is set.
When the linux,pci-probe-only flag is set, we still need to process the ranges property to determine whether or not to set PCI_FLAGS_IO_OKAY and PCI_FLAGS_MEM_OKAY flags on the bus.
|
| 1.27 |
06-Sep-2021 |
jmcneill |
Instead of requiring drivers to be explicit about their device memory mapping requirements, move this decision into the fdt layer. This introduces a new MD function, fdtbus_bus_tag_create, which is responsible for returning per-node bus_space handles.
|
|
Revision tags: thorpej-i2c-spi-conf2-base
|
| 1.26 |
07-Aug-2021 |
thorpej |
Merge thorpej-cfargs2.
|
|
Revision tags: thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
|
| 1.25 |
12-May-2021 |
thorpej |
branches: 1.25.4; Pass along our device handle to the PCI bus instance we attach.
|
|
Revision tags: cjep_staticlib_x-base
|
| 1.24 |
24-Apr-2021 |
thorpej |
branches: 1.24.2; 1.24.4; Merge thorpej-cfargs branch:
Simplify and make extensible the config_search() / config_found() / config_attach() interfaces: rather than having different variants for which arguments you want pass along, just have a single call that takes a variadic list of tag-value arguments.
Adjust all call sites: - Simplify wherever possible; don't pass along arguments that aren't actually needed. - Don't be explicit about what interface attribute is attaching if the device only has one. (More simplification.) - Add a config_probe() function to be used in indirect configuiration situations, making is visibly easier to see when indirect config is in play, and allowing for future change in semantics. (As of now, this is just a wrapper around config_match(), but that is an implementation detail.)
Remove unnecessary or redundant interface attributes where they're not needed.
There are currently 5 "cfargs" defined: - CFARG_SUBMATCH (submatch function for direct config) - CFARG_SEARCH (search function for indirect config) - CFARG_IATTR (interface attribte) - CFARG_LOCATORS (locators array) - CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)
...and a sentinel value CFARG_EOL.
Add some extra sanity checking to ensure that interface attributes aren't ambiguous.
Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark ports to associate those device handles with device_t instance. This will trickle trough to more places over time (need back-end for pre-OFW Sun OBP; any others?).
|
|
Revision tags: thorpej-cfargs-base thorpej-futex-base
|
| 1.23 |
27-Jan-2021 |
thorpej |
branches: 1.23.2; Rename of_match_compat_data() to of_compatible_match(). Similarly, rename of_search_compatible() to of_compatible_lookup().
Standardize on of_compatible_match() for driver matching, and adapt all call sites.
|
| 1.22 |
27-Jan-2021 |
thorpej |
Use DEVICE_COMPAT_EOL.
|
| 1.21 |
25-Jan-2021 |
thorpej |
Since we're using designated initialisers for compat data, we should use a completely empty initializer for the sentinel.
|
| 1.20 |
18-Jan-2021 |
thorpej |
Remove "struct of_compat_data" and replace its usage with "struct device_compatible_entry"; they are ABI-compatible.
Fix several "loses const qualifier" bugs encountered during this conversion.
|
| 1.19 |
15-Jan-2021 |
ryo |
add fdtbus_intr_establish_xname() function
|
| 1.18 |
10-Oct-2020 |
jmcneill |
branches: 1.18.2; Read the linux,pci-probe-only property from the /chosen node, not the PCI host controller node
|
| 1.17 |
07-Jul-2020 |
thorpej |
Overhaul the interface to pci_configure_bus(): - Don't expose how PCI bus configuration resource management is implemented. Provide a new resource provider API:
==> pciconf_resource_init() -- Initialize a PCI configuration resources container. ==> pciconf_resource_add() -- Add a PCI configuration resource to the container (I/O, MEM, or prefetchable MEM). Multiple resources of each type may be added. ==> pciconf_resource_fini() -- Tear down the PCI configurtation resources container once the bus has been configured.
This is much easier to use than the previous method of providing an extent map for each kind of resource, and works better for e.g. ACPI platforms that provide potentially multiple PCI resources in tables provided by firmware.
- Re-implement PCI configuration resource management using vmem arenas, rather than extent maps.
|
| 1.16 |
14-Jun-2020 |
chs |
replace EX_NOWAIT with EX_WAITOK in device attach methods. remove checks for failures that can no longer occur.
|
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3 ad-namecache-base2 ad-namecache-base1 ad-namecache-base
|
| 1.15 |
07-Jan-2020 |
skrll |
Fix arm __HAVE_PREEMPTION build
__HAVE_PREEMPTION requires TPIDRPRW_IS_CURLWP and curcpu is defined as
#define curcpu() lwp_getcpu(_curlwp())
|
| 1.14 |
07-Jan-2020 |
skrll |
oops more KNF
|
| 1.13 |
07-Jan-2020 |
skrll |
KNF
|
| 1.12 |
28-Dec-2019 |
jmcneill |
Do not use Early Write Acknowledge for PCIe I/O and config space.
|
|
Revision tags: netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base
|
| 1.11 |
23-Jun-2019 |
jmcneill |
branches: 1.11.2; Use ARM_PCI_INTR_* definitions from pci_machdep.h instead of own copies
|
| 1.10 |
12-Jun-2019 |
jmcneill |
Support configuring ranges where only prefetchable memory is defined
|
| 1.9 |
12-Jun-2019 |
jmcneill |
Enable RK3399 PCIe.
|
|
Revision tags: phil-wifi-20190609 isaki-audio2-base
|
| 1.8 |
28-Feb-2019 |
jakllsch |
branches: 1.8.4; Split up the initialization of pcihost_fdt so we can borrow and override its innards in an upcoming driver.
|
| 1.7 |
28-Feb-2019 |
jakllsch |
Implement support for IO space, and better-handle both variants of MMIO space.
|
|
Revision tags: pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
| 1.6 |
19-Nov-2018 |
jmcneill |
Clear PCI_FLAGS_IO_OKAY as we don't support it yet.
|
| 1.5 |
16-Nov-2018 |
jakllsch |
make pcihost_intr_evcnt static, like the other functions
|
| 1.4 |
16-Nov-2018 |
jmcneill |
Add intr_establish_xname support to arm and expose it to intrctl
|
| 1.3 |
11-Nov-2018 |
jmcneill |
Add MSI/MSI-X support.
|
|
Revision tags: pgoyette-compat-1020 pgoyette-compat-0930
|
| 1.2 |
09-Sep-2018 |
jmcneill |
branches: 1.2.2; Take interrupt-map-mask into consideration when mapping PCI interrupts.
|
| 1.1 |
08-Sep-2018 |
jmcneill |
Add FDT generic PCI host controller driver.
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 thorpej-ifq-base thorpej-altq-separation-base netbsd-10-0-RC1 netbsd-10-base bouyer-sunxi-drm-base
|
| 1.5 |
06-Sep-2022 |
skrll |
pcihost: Track MSI/MSI-X interrupt handlers.
Track the MSI/MSI-X interrupt handlers so that fdtbus_intr_disestablish doesn't get called for them.
This avoids a KASSERT firing when using 'drvctl -d' on a pci device that uses MSI/MSI-X interrupts.
|
| 1.4 |
06-Sep-2021 |
jmcneill |
Instead of requiring drivers to be explicit about their device memory mapping requirements, move this decision into the fdt layer. This introduces a new MD function, fdtbus_bus_tag_create, which is responsible for returning per-node bus_space handles.
|
|
Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3 ad-namecache-base2 ad-namecache-base1 ad-namecache-base
|
| 1.3 |
28-Dec-2019 |
jmcneill |
Do not use Early Write Acknowledge for PCIe I/O and config space.
|
|
Revision tags: netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base
|
| 1.2 |
12-Jun-2019 |
jmcneill |
branches: 1.2.2; Enable RK3399 PCIe.
|
|
Revision tags: phil-wifi-20190609 isaki-audio2-base
|
| 1.1 |
28-Feb-2019 |
jakllsch |
branches: 1.1.4; Split up the initialization of pcihost_fdt so we can borrow and override its innards in an upcoming driver.
|
| 1.7 |
06-Sep-2025 |
thorpej |
Re-factor the console-related code into fdt_console.[ch]
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base perseant-exfatfs-base-20240630 perseant-exfatfs-base thorpej-ifq-base thorpej-altq-separation-base
|
| 1.6 |
24-Jan-2023 |
mlelstv |
Add support for FIFOs and hardware flow-control to plcom driver. Add a PLCOM_TYPE_GENERIC_UART variant to match SBSA requirements.
|
|
Revision tags: netbsd-10-1-RELEASE netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 netbsd-10-0-RC1 netbsd-10-base bouyer-sunxi-drm-base thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base
|
| 1.5 |
27-Jan-2021 |
thorpej |
Rename of_match_compat_data() to of_compatible_match(). Similarly, rename of_search_compatible() to of_compatible_lookup().
Standardize on of_compatible_match() for driver matching, and adapt all call sites.
|
| 1.4 |
15-Jan-2021 |
ryo |
use fdtbus_intr_establish_xname
|
|
Revision tags: netbsd-9-4-RELEASE netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3 netbsd-9-0-RELEASE netbsd-9-0-RC2 ad-namecache-base2 ad-namecache-base1 ad-namecache-base netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
| 1.3 |
23-Oct-2018 |
jmcneill |
branches: 1.3.12; Fix blank line printed at attach on ACPI
|
|
Revision tags: pgoyette-compat-1020 pgoyette-compat-0930
|
| 1.2 |
07-Sep-2018 |
jmcneill |
Print interrupt info
|
|
Revision tags: netbsd-8-3-RELEASE netbsd-8-2-RELEASE netbsd-8-1-RELEASE netbsd-8-1-RC1 pgoyette-compat-0906 pgoyette-compat-0728 netbsd-8-0-RELEASE phil-wifi-base pgoyette-compat-0625 netbsd-8-0-RC2 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 netbsd-8-0-RC1 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202 matt-nb8-mediatek-base nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base
|
| 1.1 |
02-Jun-2017 |
jmcneill |
branches: 1.1.6; 1.1.10; 1.1.12; 1.1.14; Add fdt glue for ARM PrimeCell UART (PL011).
|
| 1.6 |
06-Sep-2025 |
thorpej |
Re-factor the console-related code into fdt_console.[ch]
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 thorpej-ifq-base thorpej-altq-separation-base netbsd-10-0-RC1 netbsd-10-base bouyer-sunxi-drm-base thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base
|
| 1.5 |
27-Jan-2021 |
thorpej |
Rename of_match_compat_data() to of_compatible_match(). Similarly, rename of_search_compatible() to of_compatible_lookup().
Standardize on of_compatible_match() for driver matching, and adapt all call sites.
|
|
Revision tags: netbsd-9-4-RELEASE netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3 netbsd-9-0-RELEASE netbsd-9-0-RC2 ad-namecache-base2 ad-namecache-base1 ad-namecache-base netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base
|
| 1.4 |
23-Jul-2019 |
jmcneill |
branches: 1.4.10; Add support for WSDISPLAY_MULTICONS
|
| 1.3 |
06-Jul-2019 |
jmcneill |
If panel timings are missing, assume 800x600
|
|
Revision tags: phil-wifi-20190609 isaki-audio2-base pgoyette-compat-merge-20190127 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728 phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202 nick-nhusb-base-20170825 perseant-stdc-iso10646-base
|
| 1.2 |
06-Jun-2017 |
jmcneill |
branches: 1.2.4; 1.2.6; 1.2.10; Allow plfb to be the console device
|
|
Revision tags: netbsd-8-base
|
| 1.1 |
03-Jun-2017 |
jmcneill |
branches: 1.1.2; Add driver for ARM PrimeCell Color LCD controller (PL111).
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 thorpej-ifq-base thorpej-altq-separation-base netbsd-10-0-RC1 netbsd-10-base bouyer-sunxi-drm-base thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base
|
| 1.3 |
27-Jan-2021 |
thorpej |
Rename of_match_compat_data() to of_compatible_match(). Similarly, rename of_search_compatible() to of_compatible_lookup().
Standardize on of_compatible_match() for driver matching, and adapt all call sites.
|
| 1.2 |
15-Jan-2021 |
ryo |
use fdtbus_intr_establish_xname
|
|
Revision tags: netbsd-8-3-RELEASE netbsd-9-4-RELEASE netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 netbsd-8-2-RELEASE ad-namecache-base3 netbsd-9-0-RELEASE netbsd-9-0-RC2 ad-namecache-base2 ad-namecache-base1 ad-namecache-base netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 netbsd-8-1-RELEASE netbsd-8-1-RC1 isaki-audio2-base pgoyette-compat-merge-20190127 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728 netbsd-8-0-RELEASE phil-wifi-base pgoyette-compat-0625 netbsd-8-0-RC2 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 netbsd-8-0-RC1 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202 matt-nb8-mediatek-base nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base
|
| 1.1 |
03-Jun-2017 |
jmcneill |
branches: 1.1.6; 1.1.10; 1.1.26; Add and enable FDT glue for ARM PrimeCell PL050 (KMI) PS2 keyboard/mouse interface.
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 thorpej-ifq-base thorpej-altq-separation-base netbsd-10-0-RC1 netbsd-10-base bouyer-sunxi-drm-base thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base
|
| 1.4 |
27-Jan-2021 |
thorpej |
Rename of_match_compat_data() to of_compatible_match(). Similarly, rename of_search_compatible() to of_compatible_lookup().
Standardize on of_compatible_match() for driver matching, and adapt all call sites.
|
| 1.3 |
15-Jan-2021 |
ryo |
use fdtbus_intr_establish_xname
|
|
Revision tags: netbsd-9-4-RELEASE netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3 netbsd-9-0-RELEASE netbsd-9-0-RC2 ad-namecache-base2 ad-namecache-base1 ad-namecache-base netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base
|
| 1.2 |
12-Jun-2019 |
skrll |
branches: 1.2.10; Print interrupt details
|
|
Revision tags: netbsd-8-3-RELEASE netbsd-8-2-RELEASE phil-wifi-20190609 netbsd-8-1-RELEASE netbsd-8-1-RC1 isaki-audio2-base pgoyette-compat-merge-20190127 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728 netbsd-8-0-RELEASE phil-wifi-base pgoyette-compat-0625 netbsd-8-0-RC2 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 netbsd-8-0-RC1 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202 matt-nb8-mediatek-base nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base
|
| 1.1 |
02-Jun-2017 |
jmcneill |
branches: 1.1.6; 1.1.10; 1.1.14; Add fdt glue for ARM PrimeCell Multimedia Card Interface (MMCI).
|
| 1.3 |
08-Sep-2025 |
thorpej |
Garbage-collect fdtbus_todr_attach(); todr_attach() does all the necessary work now.
kern/59630
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 thorpej-ifq-base thorpej-altq-separation-base netbsd-10-0-RC1 netbsd-10-base bouyer-sunxi-drm-base thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base
|
| 1.2 |
27-Jan-2021 |
thorpej |
Rename of_match_compat_data() to of_compatible_match(). Similarly, rename of_search_compatible() to of_compatible_lookup().
Standardize on of_compatible_match() for driver matching, and adapt all call sites.
|
|
Revision tags: netbsd-9-4-RELEASE netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3 netbsd-9-0-RELEASE netbsd-9-0-RC2 ad-namecache-base2 ad-namecache-base1 ad-namecache-base netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-merge-20190127 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728 phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202 nick-nhusb-base-20170825 perseant-stdc-iso10646-base
|
| 1.1 |
08-Jun-2017 |
jmcneill |
branches: 1.1.2; 1.1.6; 1.1.8; 1.1.24; Add fdt glue for plrtc
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base perseant-exfatfs-base-20240630 perseant-exfatfs-base thorpej-ifq-base thorpej-altq-separation-base
|
| 1.12 |
02-Oct-2023 |
riastradh |
armpmu(4): Add missing newline to error message.
|
|
Revision tags: netbsd-10-1-RELEASE netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 netbsd-10-0-RC1 netbsd-10-base
|
| 1.11 |
09-Nov-2022 |
ryo |
fdt/pmu was not working. do return only if there is an error.
|
|
Revision tags: bouyer-sunxi-drm-base
|
| 1.10 |
25-Nov-2021 |
skrll |
Improve error handling.
Hypervisors can return a PMCR.N of 0.
|
| 1.9 |
27-Sep-2021 |
jmcneill |
No longer need to call arm_pmu_init on all CPUs.
|
|
Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base
|
| 1.8 |
27-Jan-2021 |
thorpej |
Rename of_match_compat_data() to of_compatible_match(). Similarly, rename of_search_compatible() to of_compatible_lookup().
Standardize on of_compatible_match() for driver matching, and adapt all call sites.
|
| 1.7 |
15-Jan-2021 |
ryo |
use fdtbus_intr_establish_xname
|
|
Revision tags: netbsd-9-4-RELEASE netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3 netbsd-9-0-RELEASE netbsd-9-0-RC2 ad-namecache-base2 ad-namecache-base1 ad-namecache-base netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base
|
| 1.6 |
29-Jun-2019 |
jmcneill |
branches: 1.6.10; Add support for multiple PMUs
|
|
Revision tags: phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127
|
| 1.5 |
21-Jan-2019 |
skrll |
branches: 1.5.4; Use ci_{package,core,smt}_id instead of ci_data.cpu_{package,core,smt}_id
NFC
|
|
Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
|
| 1.4 |
12-Aug-2018 |
jmcneill |
Only attempt to set interrupt affinity if we have more than one IRQ.
|
|
Revision tags: pgoyette-compat-0728
|
| 1.3 |
16-Jul-2018 |
jmcneill |
branches: 1.3.2; aarch64 build fix
|
| 1.2 |
15-Jul-2018 |
jmcneill |
Add support for ARMv7 performance monitor (PMU).
|
| 1.1 |
15-Jul-2018 |
jmcneill |
Add glue for ARMv8 performance monitor (PMU).
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 thorpej-ifq-base thorpej-altq-separation-base netbsd-10-0-RC1 netbsd-10-base bouyer-sunxi-drm-base thorpej-i2c-spi-conf2-base
|
| 1.21 |
06-Aug-2021 |
jmcneill |
Arm: Add support for SMC Calling Convention
Arm DEN0028 defines a calling mechanism used with Secure Monitor Call (SMC) and Hypervisor Call (HVC) instructions. To discover SMCCC, we must:
1) Find the PSCI conduit (either via ACPI FADT, or Device Tree) 2) Use PSCI_VERSION to determine whether PSCI_FEATURES is supported 3) Call PSCI_FEATURES with SMCCC_VERSION to determine the implementation version.
|
|
Revision tags: thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base
|
| 1.20 |
27-Jan-2021 |
thorpej |
Rename of_match_compat_data() to of_compatible_match(). Similarly, rename of_search_compatible() to of_compatible_lookup().
Standardize on of_compatible_match() for driver matching, and adapt all call sites.
|
|
Revision tags: netbsd-9-4-RELEASE netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3 netbsd-9-0-RELEASE netbsd-9-0-RC2 ad-namecache-base2 ad-namecache-base1 ad-namecache-base netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020
|
| 1.19 |
17-Oct-2018 |
skrll |
branches: 1.19.12; KNF
|
|
Revision tags: pgoyette-compat-0930
|
| 1.18 |
10-Sep-2018 |
ryo |
cleanup aarch64 mpstart and fdt bootstrap * arm_cpu_hatch_arg is a bad idea. avoid serializing CPU startup, and eliminate arm_cpu_hatch_arg. in mpstart, resolve own cpu index using array of cpu_mpidr[] (aarch64) * add support fdt enable-method "spin-table" * add support fdt enable-method "brcm,bcm2836-smp" (for 32bit RaspberryPi) * use arm_fdt_cpu_bootstrap() instead of psci_fdt_bootstrap() * rename "arm/fdt/psci_fdt.h" to "arm/fdt/psci_fdtvar.h" because of conflict of include file for needs-flag * add devmap for cpu spin-table of raspberrypi3/aarch64 * no need to force hatch APs for raspberrypi3/arm32 ifndef MULTIPROCESSOR. * fix to work pmap_extract(kerneltext/data/bss) even if before calling pmap_bootstrap
idea to use cpu_mpidr[] by jmcneill@. reviewd by skrll@. thanks.
|
| 1.17 |
09-Sep-2018 |
jmcneill |
Boot APs with status "disabled" if they have an enable-method property
|
| 1.16 |
09-Sep-2018 |
jmcneill |
Fix previous; PSCI_CPU_ON requires an MPIDR!
|
|
Revision tags: pgoyette-compat-0906
|
| 1.15 |
26-Aug-2018 |
ryo |
add support multiple cpu clusters. * pass cpu index as an argument to secondary processors when hatching. * keep cpu cache confituration per cpu clusters.
Hello big.LITTLE!
|
| 1.14 |
24-Aug-2018 |
ryo |
/cpus node may have any nodes except cpu. count only nodes of device_type "cpu"
|
| 1.13 |
13-Aug-2018 |
skrll |
Need to use fdtbus_get_reg64 for mpidr
|
| 1.12 |
12-Aug-2018 |
skrll |
Provide and use cpu_mpidr_aff_read in psci_fdt_bootstrap
|
| 1.11 |
10-Aug-2018 |
jmcneill |
Pass full mpidr (instead of just aff0) to psci_cpu_on
|
|
Revision tags: pgoyette-compat-0728
|
| 1.10 |
16-Jul-2018 |
christos |
Add missing pointer <-> integer casts Use PRI?64 to print uint64_t instead 'll?'
|
| 1.9 |
14-Jul-2018 |
jmcneill |
Fix non-MULTIPROCESSOR build
|
| 1.8 |
09-Jul-2018 |
jmcneill |
Fix arm32 build
|
| 1.7 |
09-Jul-2018 |
jmcneill |
Add aarch64 support.
|
| 1.6 |
07-Jul-2018 |
jmcneill |
Switch to PSCI 0.1 mode only if the first compatible string listed on /psci is "arm,psci"
|
|
Revision tags: phil-wifi-base pgoyette-compat-0625
|
| 1.5 |
15-Jun-2018 |
jakllsch |
branches: 1.5.2; Fix PSCI 0.1 detection.
|
| 1.4 |
26-May-2018 |
jmcneill |
Export a psci_fdt_reset function, usable from FDT platform code.
|
|
Revision tags: pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202
|
| 1.3 |
11-Sep-2017 |
jmcneill |
branches: 1.3.2; 1.3.4; Use PSCI for reset and poweroff when available.
|
|
Revision tags: nick-nhusb-base-20170825
|
| 1.2 |
05-Aug-2017 |
jmcneill |
branches: 1.2.2; Wrap MP-specific code in ifdef MULTIPROCESSOR
|
|
Revision tags: perseant-stdc-iso10646-base
|
| 1.1 |
28-Jun-2017 |
jmcneill |
branches: 1.1.4; Add support for ARM Power State Coordination Interface (PSCI).
|
|
Revision tags: perseant-exfatfs-base-20250801 perseant-exfatfs-base-20240630 perseant-exfatfs-base bouyer-sunxi-drm-base cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-futex-base bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406 ad-namecache-base3 ad-namecache-base2 ad-namecache-base1 ad-namecache-base isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930
|
| 1.3 |
10-Sep-2018 |
ryo |
cleanup aarch64 mpstart and fdt bootstrap * arm_cpu_hatch_arg is a bad idea. avoid serializing CPU startup, and eliminate arm_cpu_hatch_arg. in mpstart, resolve own cpu index using array of cpu_mpidr[] (aarch64) * add support fdt enable-method "spin-table" * add support fdt enable-method "brcm,bcm2836-smp" (for 32bit RaspberryPi) * use arm_fdt_cpu_bootstrap() instead of psci_fdt_bootstrap() * rename "arm/fdt/psci_fdt.h" to "arm/fdt/psci_fdtvar.h" because of conflict of include file for needs-flag * add devmap for cpu spin-table of raspberrypi3/aarch64 * no need to force hatch APs for raspberrypi3/arm32 ifndef MULTIPROCESSOR. * fix to work pmap_extract(kerneltext/data/bss) even if before calling pmap_bootstrap
idea to use cpu_mpidr[] by jmcneill@. reviewd by skrll@. thanks.
|
|
Revision tags: pgoyette-compat-0906 pgoyette-compat-0728 phil-wifi-base pgoyette-compat-0625
|
| 1.2 |
26-May-2018 |
jmcneill |
branches: 1.2.2; Export a psci_fdt_reset function, usable from FDT platform code.
|
|
Revision tags: pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202 nick-nhusb-base-20170825 perseant-stdc-iso10646-base
|
| 1.1 |
28-Jun-2017 |
jmcneill |
branches: 1.1.4; 1.1.6; 1.1.8; 1.1.10; Add support for ARM Power State Coordination Interface (PSCI).
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-9-4-RELEASE netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 thorpej-ifq-base thorpej-altq-separation-base netbsd-10-0-RC1 netbsd-10-base bouyer-sunxi-drm-base netbsd-9-3-RELEASE thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 netbsd-9-2-RELEASE cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base netbsd-9-1-RELEASE bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3 netbsd-9-0-RELEASE netbsd-9-0-RC2 ad-namecache-base2 ad-namecache-base1 ad-namecache-base netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930
|
| 1.1 |
10-Sep-2018 |
ryo |
branches: 1.1.2; 1.1.6; cleanup aarch64 mpstart and fdt bootstrap * arm_cpu_hatch_arg is a bad idea. avoid serializing CPU startup, and eliminate arm_cpu_hatch_arg. in mpstart, resolve own cpu index using array of cpu_mpidr[] (aarch64) * add support fdt enable-method "spin-table" * add support fdt enable-method "brcm,bcm2836-smp" (for 32bit RaspberryPi) * use arm_fdt_cpu_bootstrap() instead of psci_fdt_bootstrap() * rename "arm/fdt/psci_fdt.h" to "arm/fdt/psci_fdtvar.h" because of conflict of include file for needs-flag * add devmap for cpu spin-table of raspberrypi3/aarch64 * no need to force hatch APs for raspberrypi3/arm32 ifndef MULTIPROCESSOR. * fix to work pmap_extract(kerneltext/data/bss) even if before calling pmap_bootstrap
idea to use cpu_mpidr[] by jmcneill@. reviewd by skrll@. thanks.
|
| 1.5 |
04-Oct-2025 |
thorpej |
Add a shared function to query the common properties used for configuring an Ethernet address.
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 thorpej-ifq-base thorpej-altq-separation-base netbsd-10-0-RC1 netbsd-10-base bouyer-sunxi-drm-base thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base
|
| 1.4 |
27-Jan-2021 |
thorpej |
Rename of_match_compat_data() to of_compatible_match(). Similarly, rename of_search_compatible() to of_compatible_lookup().
Standardize on of_compatible_match() for driver matching, and adapt all call sites.
|
| 1.3 |
15-Jan-2021 |
ryo |
use fdtbus_intr_establish_xname
|
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3 ad-namecache-base2 ad-namecache-base1 ad-namecache-base phil-wifi-20191119
|
| 1.2 |
03-Nov-2019 |
jmcneill |
branches: 1.2.8; Match smsc,lan9115 and honour local-mac-address/mac-address properties
|
|
Revision tags: netbsd-8-3-RELEASE netbsd-8-2-RELEASE netbsd-9-base phil-wifi-20190609 netbsd-8-1-RELEASE netbsd-8-1-RC1 isaki-audio2-base pgoyette-compat-merge-20190127 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728 netbsd-8-0-RELEASE phil-wifi-base pgoyette-compat-0625 netbsd-8-0-RC2 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 netbsd-8-0-RC1 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202 matt-nb8-mediatek-base nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base
|
| 1.1 |
02-Jun-2017 |
jmcneill |
branches: 1.1.6; 1.1.10; 1.1.14; 1.1.18; Add fdt glue for SMSC LAN9118 ethernet.
|