MFC r346334, r346787-r346789, r347017r346334:arm: allwinner: Fix audio for Allwinner H3/H5Due to three conditions the codec driver for Allwinner A10/A20 and H3/H5 did not work properly here:
MFC r346334, r346787-r346789, r347017r346334:arm: allwinner: Fix audio for Allwinner H3/H5Due to three conditions the codec driver for Allwinner A10/A20 and H3/H5 did not work properly here: Wrong bit position for the analog audio reset Hardware Reset of codec was not de-asserted correctly Linux DTS file did not contain the address of the analog register the way as the driver was expecting it.This patch proposes fixes for those three parts.Submitted by: [email protected] (Manuel Stühn)Differential Revision: https://reviews.freebsd.org/D19910r346787:arm64: allwinner: Add compatible strings for clock devices used on both Allwinner H3 and H5Allwinner H3 and H5 share many internal components, that's why they canuse the same drivers.This patch adds the compatible strings to enable clock driversprobing on Allwinner NanoPI NEO2 device.Tested on: NanoPi NEO2 (by submitter), OrangePi PC2 (by manu)Submitted by: Manuel Stühn ([email protected])Differential Revision: https://reviews.freebsd.org/D20069r346788:arm64: allwinner: ccu_de2: Remove H5 compatibleWe don't have the display engine driver commited in FreeBSD yet so it isuseless to expose the clocks yet (and also it have not been tested on H5).Reported by: Manuel Stühn ([email protected])PR: 237571r346789:arm: allwinner: a10: Correct pin functionsPB20 and PB21 alternate function 1 is i2c2 not i2c1Reported by: Horiki Mori ([email protected])PR: 237401r347017:arm64: Add support for NanoPI NEO2Add overlay files and activate devicetree file for NanoPi NEO2 featuringAllwinner H5 ARM64 core.To enable sound, dma and codec drivers are enabled for build.Submitted by: Manuel Stühn ([email protected])Differential Revision: https://reviews.freebsd.org/D20129
show more ...
MFC r340987, r340989, r341254, r341269, r341333r340987:arm64: Add evdev support to GENERICr340989:regulator_fixed: Do not disable fixed regulator at probeIf the regulator is unused it will be
MFC r340987, r340989, r341254, r341269, r341333r340987:arm64: Add evdev support to GENERICr340989:regulator_fixed: Do not disable fixed regulator at probeIf the regulator is unused it will be disabled by the regulator_shutdown sysinit.Tested on pinebook where the backlight is controlled by a fixed-regulator.The regulator doesn't have a regulator-boot-on param (I'm gonna upstream this) and so we disable it at probe.We later enable it but this cause the screen to go black.Linux doesn't disable regulator at boot (at least for fixed-regulator) so better match this to have the same UX.Differential Revision: https://reviews.freebsd.org/D17978r341254:extres: clk: Fix clk_set_assignedofw_bus_parse_xref_list_get_length doesn't returns the number of elements, fix this.While here when setting the clock to the assigned freqeuncy, allow the clockdriver to round down or up the frequency as sometimes the exact frequency cannotbe obtain.r341269:release: arm64: Add opp dtbo to PINE* boardsr341333:arm64: allwinner: Add 792Mhz frequency to sun50i-a64-oppThis is the frequency of the cpu on the Pinebook so add it to makecpufreq find the current setting.Note that this dtbo on the Pinebook doesn't work right now as u-bootdtb doesn't have symbols and so it fails to apply. Linux 4.20 havethe dts and will be imported once taggued.X-MFC with: r341268
MFC r341268, r342003-r342007, r342087-r342088, r342091r341268 by manu:arm64: allwinner: Add a dtbo to have cpu operating pointsThis enables cpufreq on A64 boards.r342003 by manu:Add a pwm sub
MFC r341268, r342003-r342007, r342087-r342088, r342091r341268 by manu:arm64: allwinner: Add a dtbo to have cpu operating pointsThis enables cpufreq on A64 boards.r342003 by manu:Add a pwm subsystem so we can configure pwm controller from kernel and userland.The pwm subsystem consist of API for PWM controllers, pwmbus to register themand a pwm(8) utility to talk to them from userland.Reviewed by: oshgobo (capsicum), bcr (manpage), 0mp (manpage)Differential Revision: https://reviews.freebsd.org/D17938r342004 by manu:arm64: allwinner: Add pwm driverAdd a pwm driver for Allwinner PWMAdd pwm and aw_pwm to the GENERIC kernelr342005 by manu:arm64: allwinner: Add DTSO for pwm and r_pwmThose are both dtso (overlays) for the two pwm controllers found on the A64.r342006 by manu:arm64: allwinner: Fix pwm dtsoDouble patched files ended up in the treeReported by: kevansr342007 by manu:pwm: Fix some arches by using %ju and casting to uintmax_tReported by: ci.freebsd.orgr342087 by manu:pwm: Convert period and duty to unsigned intWe don't need a 64 bits value to store nanosecondsDiscused with: ian, jhibbitsr342088 by manu:pwm(8): Add percentage value support for duty cycler342091 by manu:allwinner: aw_pwm: Read value at attachThe booloaded might have configured the pwm controller so read the values.
MFC r343069:[rpi] Reorganize spigen(4) overlays for Raspberry Pi- Remove CS=2 entry from spigen-rpi2 since it didn't work- Add spigen-rpi3 overlay for Raspberry Pi 3- Enable rpi overlay modules
MFC r343069:[rpi] Reorganize spigen(4) overlays for Raspberry Pi- Remove CS=2 entry from spigen-rpi2 since it didn't work- Add spigen-rpi3 overlay for Raspberry Pi 3- Enable rpi overlay modules for GENERIC kernel on aarch64PR: 233489Submitted by: [email protected]Reviewed by: dbDifferential Revision: https://reviews.freebsd.org/D16088
MFC r340390: Fix test-dts{,o} targetsThere were two main problems here:1.) sys/dts/Makefile.inc is not included from various */overlays directories by default, only ../Makefile.inc2.) When s
MFC r340390: Fix test-dts{,o} targetsThere were two main problems here:1.) sys/dts/Makefile.inc is not included from various */overlays directories by default, only ../Makefile.inc2.) When shelling out for DTS/DTSO, cwd != .CURDIR, so enumeration always failedThese changes allow make test-dts and make test-dtso to function in theirrespective directories.
arm64: Add DTS overlays for A64 - sun50i-a64-sid.dtso registers the Security ID node, needed for thermal - sun50i-a64-ths.dtso registers the thermal node, for which we already have adriver - sun
arm64: Add DTS overlays for A64 - sun50i-a64-sid.dtso registers the Security ID node, needed for thermal - sun50i-a64-ths.dtso registers the thermal node, for which we already have adriver - sun50i-a64-timer.dtso registers the timer node, needed as the generic timer glitch on A64 SoC.Approved by: re (gjb)
dts: arm64: allwinner: Remove unused dts for pine64Latest u-boot port provide the dts for pine64, remove our customand outdated dts for this board.
Move sys/boot/fdt/dts to sys/dts and adjust scripts.Sponsored by: Netflix