Adds i2c3, pwm1, pwdm2, spi0 and uart1 nodes to rk3568-odroid-m1.dts.
Adds patch to remove spi-dev warning
Adds patch with support for overlay compilation
Adds DTS overlays for spi, uart0, uart1, pwm1, pwm2, pwm9, i2c0 and i2c1
Co-authored-by: jassuncao <joao.assuncao@exploitsys.com>
RK3328 UART1 and I2C0 are available on Orange Pi R1 Plus LTS 13 pin connector. Add device tree overlay files for rk3328 uart1 and i2c0.
Co-authored-by: schwar3kat <schwar3kat@armbian.com>
- ACPI stmmac glue, PHY hack
- there are 2 gmacs, but only eth1 has an actual PHY
- original https://gitee.com/atzlinux/atzlinux-kernel/tree/master/debian/patch
- adapted to default to =m, not require Feiteng kernel reqs, and small api change around 5.19.y (done before)
- squash and rename patch to reflect what it is
- remove numbering, let's not do numbered patches in UEFI families?
* Initial work on bringing mvebu to 6.0
* Switch mvebu edge to 6.1
* Remove link leftover
* Update kernel config
Co-authored-by: Igor <igor@armbian.com>
* `orangepi5.wip`: initial OrangePi5 support
- OPi5's Xunlong vendor u-boot; override family in board hook
- using original config from vendor, needs `BOOT_SOC`
- OPi5's kernel patches, all extracted from Xunlong's tree
- Only enable the DT patch and the Motorcomm PHY patch
- Other stuff that looks might be useful is grouped in a few other disabled patches
- Most panel/overlays/etc from Xunlong tree not included
- everything is on top of existing `rockchip-rk3588` family,
- thus the same crazy half-android rk kernel tree and ancient rk u-boot
Co-authored-by: Muhammed Efe Çetin <efectn@protonmail.com>
Co-authored-by: Ricardo Pardini <ricardo@pardini.net>
* `linux-rockchip-rk3588-legacy`: `.config` updated to 5.10.110; no actual changes
- prepare for merging Xunlong config
* `linux-rockchip-rk3588-legacy`: `.config` Xunlong config, manually merged; preserved previous PR's
- preserved previous PR's changes:
- 1fdbab346a
- bf3b8a8fb7
- 7a3ad3afb2
- f1952f97f4
- ab70cb247f
- 62adba7825
- ba10622c32
- cd4da2a77b
- 7b3325c95e
- b4945d973c
- a8473e8143
* `linux-rockchip-rk3588-legacy`: `.config` re-updated to 5.10.110 after Xunlong changes
* OPi5: `rockchip-rk3588-legacy`: add patch to remove chosen > bootargs from `rk3588-linux.dtsi`
* Opi5: add build targets (by Igor)
Co-authored-by: Ricardo Pardini <ricardo@pardini.net>
Co-authored-by: Muhammed Efe Çetin <efectn@protonmail.com>
Co-authored-by: Igor <igor@armbian.com>
* moved rockpro64 patch out of rockpis patch sequence
It had been misnamed
* patch new mainline devtree for Rock Pi-S instead of overwritting it.
Also restores lost bluetooth compatibility items on UART4
* Rename add-board-roc-pc.patch to add-board-rk3328-roc-pc.patch
there are a large number of "roc-pc" boards as firefly has adopted/misapplied the Libre Computer naming convention. Be as specific as possible.
ALSO NOTE A DTS EXISTS IN MAINLINE.
This patch is overwriting the mainline DTS entirely, and should be replaced with patches changing the mainline instead to avoid further deviation from the base.
* Rename add-board-roc-pc.patch to add-board-rk3328-roc-pc.patch
Specify which roc-pc it is
This patch doesn't make any changes to the source file:
- rockchip->ep_gpio = devm_gpiod_get_optional(dev, "ep",
- GPIOD_OUT_HIGH);
+ rockchip->ep_gpio = devm_gpiod_get_optional(dev, "ep", GPIOD_OUT_HIGH);
- this patch had "half-mbox" formatting
- first a bare patch (no mbox headers, From/Subject etc)
- then an mbox-formatted patch
- this causes the 1st/bare patch to be lost when parsing this file with a proper mbox-enabled tool
* `meson64-6.1` - rebased patches; 3 were mainlined
- JetHub device was mainlined
- ODROID's hack for pwm1_enable was re-done diffrently in mainline
* `meson64`: switch `current` to `6.0`, `edge` to `6.1-rc8`
- notes in the board file about the RAM issues (tested, confirmed working blob change of #4383 by @pinhaozhang working with u-boot 21.07; `blobless` also works with ATF v2.7 on my known-good-RAM boards)
- tinkerboard-2: add full firmware, for the rtl8822ce PCIe Wifi default card in the tb2 as shipped by ASUS
- tinkerboard-2: uboot: rename `TARGET_TINKER-2_RK3399` to `TARGET_TINKER2_RK3399` to avoid warnings all over
- tinkerboard-2: slower but working Tinkerboard 2S eMMC (HS400+ES to HS200)
- both for u-boot and kernel.
- should not affect 2, only 2S
* `meson64`: `6.0`: g12a and g12b pinmux patches from Radxa
* u-boot: `radxa-zero2`: Radxa's patches for the Zero2 on `v2022.10`
* u-boot: `radxa-zero2`: use `v2022.10` plus Radxa's patches
* `meson64` u-boot v2022.10: change `BOOT_TARGET_DEVICES` to try to boot USB, NVME and SCSI before SD, MMC, PXE, DHCP
* `radxa-zero`: include v2022.10 standard patches (eg: boot from USB first)
* `radxa-zero` & `radxa-zero2`: set `BOOT_FDT_FILE` explicitly; no real changes
* `radxa-zero2`: `6.0`/`edge`: update Radxa Zero 2 DTS patch with Radxa's latest
* `radxa-zero`: `6.0`/`edge`: update USB-C patch with "fix interrupt storm from fusb302"
* `radxa-zero`: use pure mainline v2022.10 u-boot with no patches
* Add Rockpi 4C+
* add newer patches:
- apply patches from RadxaNaoki <noaki@radxa.com>
- ref 5652d6f9c2a4e2c50ac1040c0388859381b0616f: arm64: dts: rockchip: add gmac for ROCK 4C+ (#17)
- apply latest patches from Marcone <marco.nelissen@gmail.com>
- ref e39da181b099a86f5440ed1c08fc699d4a65aed7: arm64: dts: rockchip: Make Rock Pi 4C+ ethernet actually work
- ref 8c519612eeb852268371b3c596eec4622460e5bf: arm64: dts: rockchip: add Rock Pi 4C+ LEDs
- ref 726441afe687ea6059bac37f145ff204b75430f7: arm64: dts: rockchip: enable Rock Pi 4C+ wifi
- ref caad7bef3b5558e2598480c0a0089e2ac3cedcdd: arm64: dts: rockchip: enable Rock Pi 4C+ nvme
- ref 6cdc3215d1691bcd2a407a30e88efa0cec179eb2: arm64: dts: rockchip: enable Rock Pi 4C+ OTG
* default top USB3 port to host mode
* get 2nd HDMI port to work at least. :)
* revert OTG USB3.1 port back to otg mode
* [rockpi4c+] update board def. add usb host overlay.
* remove redundant HDMI clocks and voltages
* enable test builds for Rock PI 4 C+
* [rockpi4c+] add USB host overlay
Co-authored-by: Joe Khoobyar <fourheads@gmail.com>
* sunxi-6.0: initial state: add megous patches to series
* sunxi-6.0: Switch to v6.0.1
* wifi: Limit the version 6.0 for Realtek 88x2cs chipsets
* Adjust kernel configs
* Remove not needed patches
* Adjust broken patches
Co-authored-by: Igor <igor@armbian.com>
* Remove deprecated Odroid XU4 legacy 4.14.y branch
* Clean deprecated kernels from meson64 family
- legacy kernel 4.9 was removed
- current 5.10 was replaced with 5.19
- edge remains on 5.19 until someone bumps it to 6
- patches between 5.11 and 5.18 were removed, 5.10 will be kept for awhile
* Update configs
* RockPI-S board has no video I/O
* udev rule to fix MAC address of iface based on UUID
Deals with WiFi chip lacking any EEPROM to store its unique Ethernet MAC address
Generic mechanism -- could be utilized for other boards having similar issues
* Handy Device Tree overlays for the RockPI S
Use armbian-add-overlay to install these
Reduce CPU voltage for the RK3308 B-S
Option to overclock RK3308 B-S to 1.3Ghz
Increase SDIO clock rate from 1Mhz to 10Mhz
This increases WiFi throughput from 300K bytes/s to 2.4M bytes/s
* corrected comment
* No longer repeat standard opp's in this dts
Require that the standard bs dts already be installed
* User README for adding RockPI-S board variant specific dts overlays
* "enabled" --> "okay"
* added mention of sdnand.dts, fixed typo
* added p2p0 to interfaces whose MAC address should be "fixed"
* RK3308 CPU serial number in nvmem replaces UUID for derivation of fixed MAC addr
Restored use of install utility
* Use RK3308 specific CPU serial number
rather than rootfs UUID
* remove generic fixMACaddress
* Install fixMACaddr file-by-file via install utility
* Drive SDIO bus signals faster
setting RK3308_SOC_CON0_VCCIO3 reduces signal rise/fall times to WiFi SDIO chip
from 30ns to 5ns.
This odd fix forward ported from legacy kernel.
Allows Rock Pi-S WiFi to operate at full speed.
* Set RK3308 I/O voltage domains before SDIO initializes
This patch moves responibility form the io-domain to the pinctrl driver because
the io-domain driver is probed after the SDIO devices are discovered.
This was causing multiple SDIO I/O failures during boot.
A new pinctrl property is added:
io-1v8-domains
is a u32 interpreted as a bit mask where each set bit corresponds to
a 1.8V I/O domain (as opposed to the default of 3.3V for I/O)
The mask is writted to the RK3308_SOC_CON0 GRF register
(once) when the pinctrl driver starts
The default mask is 0x10 where only I/O domain 4 runs at 1.8V
This is necessary for the RockPI-S to run the SDIO clock at high (50Mhz) speed
* align whitespace
* factored rk3308bs overlays out up sdio speedup patch
* factored dts for RK3308 iodomains and pinctrl patches out of speedup patch
* remains of sdio speedup patch merely add iodomains support for rk3308
* factored rockpis dts modification out from rk3308 io voltage domains
replaced rk3308 support from iodomains with
new io-voltage-domains property added to pinctrl
io-voltage-domains specific to rk3308 for now, others SOCs may be added later.
* add sequence numbering to names of rk3308 patches
* corrected tab alignment
* Add ssv6051p wifi driver for rockchip64 current and edge kernel
* also reorders and tidies device tree overlays for rk3318-box
* increase ssv6051 sdio bus to 50MHz in the driver
* Bump sunxi kernels
* sunxi-5.19: Remove pre-applied patch, adapt for series
* sunxi-5.15: Adapt patches to the series, remove previously applied
* Bump it again
Co-authored-by: The-going <48602507+The-going@users.noreply.github.com>
G12/GXL boards with memory of 1GB or lower are unable to boot because the CMA memory pool is set to high. Leaving CMA at the default and providing an overlay for those who need or want the CMA higher, makes more sense than not supporting all possible memory options provided by said SoC(s).
* meson: bump version
bump edge to thirdparty linux-5.18-rc7
bump current to linux-5.15
change legacy back to LTS linux-5.10
* Upgrade kernel config
* meson: edge and current: Enable NTFS3 driver
* Solve compatibility issues for some of wifi patches, disable those that needs more work
* Fix 8812au
* Update to re-enable RTL88x2CS driver for 5.19.2+
* Add 8723ds and rename others
* Following naming convention
* Name
* Adjust UWE5622 for 5.19.2
* Update UWE5622 patch for sunxi
* Enable last one
* Fixes for 8723DU
Co-authored-by: Vyacheslav Bocharov <adeep@lexina.in>
* sunxi-5.19: Initial state for megous patches
* Add the ability to do 5.19
* Move to 5.19
- tested both
- removed broken Opi Zero xradio driver https://armbian.atlassian.net/browse/AR-1280
* sunxi-5.19: fix tag for switch
* sunxi-5.19: Initial state for armbian patches
* sunxi-5.19: Add armbian patches to series.conf file
* sanxi-5.19: Add other 2 patches
* sunxi-5.19: Limit to use the 'wireless/xradio' module
Limit the kernel version to less than 5.19 to use
the 'wireless/xradio' module
Co-authored-by: Igor Pecovnik <igor.pecovnik@gmail.com>
* meson64-edge/5.19: use `tag:v5.19-rc2`, meson64 kernel config and kernel patches, by @adeepv
* meson64-edge/5.19: we don't need `CONFIG_ARCH_ROCKCHIP=y` for meson64, right?
* meson64-edge/5.19: remove `meson_drv_shutdown` revert patch, instead `CONFIG_DRM_MESON=y` and its dependencies in .config
- this allows other meson64's to shutdown properly, while allowing the N2(+) to reboot without kernel-side hangs
* meson64-edge/5.19: odroidn2(+): remove SD UHS modes patch for ODROID N2(+)
- it works when cold-booted
- but changes voltage to enable
- when rebooted, voltage persists and uboot can't read the SD anymore
- adding the "odroid,reboot" driver+dt that is supposed to fix this, doesn't
- so for now remove it
* meson64-edge/5.19: odroidn2(+): add dumb gpio fan at 30 celsius
- backport from rework in 5.10
* meson64-edge/5.19: odroidhc4: bring back `fan1_input` by adding fan details to DT
- yeah, I know; the cooling map is right there too, so empty, poor thing. for later.
* meson64-edge/5.19: bump to 5.19-rc3
* meson64-edge/5.19: radxa-zero: add patch to remove UHS mode so `wifi` works
- sent by @pyavitz: https://raw.githubusercontent.com/pyavitz/debian-image-builder/feature/patches/amlogic/radxazero/wifi/001-arm64-dts-amlogic-radxa-zero-sdio-card-speed.patch
- tested by @lanefu
* meson64-edge/5.19: bump to 5.19-rc4
* meson64-edge/5.19: bump to 5.19-rc5
* meson64-edge/5.19: bump to 5.19-rc7
* meson64-edge/5.19: bump to 5.19.y branch, which is 5.19.0 right now
* Add kernel config - tested on Odroid N2+
Co-authored-by: Vyacheslav Bocharov <adeep@lexina.in>
Co-authored-by: Igor Pecovnik <igor.pecovnik@gmail.com>
- uefi-arm64-edge/5.19: add patch for ACPI enablement of PHYT0004 onboard network card
- reworked 5.10 version of patch to 5.19, trivial datatype change
- sent by Dragonbox/Pythium person via @lanefu
- uefi-(arm64|x86)-edge/5.19: split patch dir from x86, otherwise identical
* Skip applying fixes for touchscreen: goodix.
This device is not supported by armbian.
Patch fixes cannot be tested on real hardware.
* Bring the patch format to the form git-format-patch
for application by the `git am` command.
* This disables support for the RockPI-S "SDNAND" soldered on EMMC storage
Without it, SDNAND functions
There are no issues on boards that lack the EMMC storage option
In this case, the kernel probes the chip, quietly fails and continues without
creating the corresponding /dev/mmcblk* nodes
* This patch attempts to enable CPU operating points that are not defined.
The result is that the cpufreq-dt driver aborts when attempting to process these incompletely defined nodes.
The CPU ends up running at a constant clock rate, without cpufreq support.
Simply removing the patch restores proper cpufreq operation.
Note, however, that the CPU operating points are still overvolted for the newer RK3308B-S SOC.
See:
https://dl.radxa.com/rockpis/docs/sw/RK3308B-S&RK3308H-S_Software_Compatibility_Introduction_V1.0.0_20211016.pdf
* sunxi-5.18: add megous patches: tag: orange-pi-5.18-20220627-1924
* tools: mk_format_patch: ignore-matching-lines git version
* sunxi-5.18: re-extracted armbian patches after being applied to 5.18.8
* sunxi-5.18: switch to version tag=v5.18.8
* sunxi-5.18: add new megous patches
* switch to v5.18.5: exclude a previously applied patch
* fix: tools/mk_format_patch: numbered=false by default
* sunxi-5.18: rebasing and extraction using the mk_format_patch script
* Refactor patches
* Fix bug: the USB closed to the HDMI doesn't work
* Fix bug: cpufreq doesn't work
* Fix bug: thermal_zone doesn't work
* More frequency governors
* Add bootscript
* Fix bug: add missing dependency
needed for gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf
* sunxi-5.18: rebase megous patces to v5.18.3
* sunxi-5.18: Add upstream patches - tag: orange-pi-5.18-20220609-1318
* Check applicability to version 5.18.3
* sunxi-5.18: switch to version 5.18.3
* Update kernel configs
* Switch sunxi edge to 5.18.y
* Move sunxi to 5.18.y and re-enable AUFS
* Change version - temporally to make a build from here
* Update config
* 88xx was fixed in the mean time.
* Put version back
* Fix sunxi legacy, disable aufs on 5.10.y since its broken
* Upstream changed in the mean time
* Add a patch to enable 8821cu compilation at 5.18
https://github.com/armbian/build/pull/3814
* Re-enable CONFIG_RTL8822BU in edge
* Update CONFIG_RTL8XXXU
* Bump imx6
* Bump uefi kernels to 5.18.y
* Bump mvebu64 and switch odroid xu4 to 5.18
* sunxi-5.18 Initial state for armbian patches
* Adapting patches to the new kernel, sort, add new megous patches
* DEBUG
* Add the latest patches
* fix: compile error
drivers/spi/spi.c:3548:3: note: in expansion of macro ‘dev_info’
dev_info(&spi->dev, "spi_setup / gpio_is_valid(%d) ... doing gpio_request ...\n", spi->cs_gpio);
^~~~~~~~
drivers/spi/spi.c:3549:9: error:
implicit declaration of function ‘gpio_request’;
did you mean ‘gpio_to_desc’? [-Werror=implicit-function-declaration]
ret = gpio_request(spi->cs_gpio, dev_name(&spi->dev));
^~~~~~~~~~~~
gpio_to_desc
drivers/spi/spi.c:3549:27: error:
‘struct spi_device’ has no member named ‘cs_gpio’;
did you mean ‘cs_gpiod’?
ret = gpio_request(spi->cs_gpio, dev_name(&spi->dev));
^~~~~~~
cs_gpiod
drivers/spi/spi.c:3554:4: error:
implicit declaration of function ‘gpio_direction_output’;
did you mean ‘gpiod_direction_output’? [-Werror=implicit-function-declaration]
gpio_direction_output(spi->cs_gpio,
^~~~~~~~~~~~~~~~~~~~~
gpiod_direction_output
drivers/spi/spi.c:3554:31: error:
‘struct spi_device’ has no member named ‘cs_gpio’;
did you mean ‘cs_gpiod’?
gpio_direction_output(spi->cs_gpio,
^~~~~~~
cs_gpiod
In file included from ./include/linux/device.h:15,
from drivers/spi/spi.c:8:
drivers/spi/spi.c:3556:79: error:
‘struct spi_device’ has no member named ‘cs_gpio’;
did you mean ‘cs_gpiod’?
* Remove pre-applied patches
* sunxi-5.17: update and switch to version 5.17.11
* remove the patch that appeared in the upstream kernel
upstream commit c06a99a6605f524ff5ef096646e9501fc905366e
* sunxi-5.17: Fix include uapi spi spidev module
* add a compatible string alias "spi-dev" for spidev module
* overlay: Change the string compatible "spidev" to "spi-dev"
* remove unused patches
* drv: spi: spidev: fix header uapi
* Add alias "spi-dev" for module spidev
Add the armbian alias "spi-dev" to load and
initialize the spidev module from the device tree.
* Move patches for orangepi3-lts to series
* Remove unused patches
This resolves a bug that affects r8153b USB network interface causing the RX interface to hang on load.
On some xHCI controllers (e.g. Rockchip RK3399/RK3328/RK1808),
they need to enable the ENT flag in the TRB data structure
to force xHC to prefetch the next TRB of a TD.
The quirk patch is already applied to dwc3 xhci usb on rockchip64.
Enable the quirk on RK3328 through device tree node properties in rk3328.dtsi
* sunxi-5.17: Add series patches rtw88, rtw89 drivers
* Fix sunxi-5.17 for v5.17.4 version
* Print the error message and its contents
* rtl8822bs: used if kernel version less 5.16
Restrict the use of the wifi driver" "rtl8822bs" for
the kernel version less than 5.16
* Add reg_ahci_5v status okay for bananapro board
* Bananapro: add AXP209 regulators
* Fix series.conf, Disable the patch that is not being applied.
* Fix linux-sunxi64-edge.config for v5.17.3
* Fix linux-sunxi-edge.config to v5.17.3
* Switch EDGE to core 5.17 for sunxi
* Remove the old rtl8723cs driver which is incompatible with the new kernel and cannot be used.
* Use AUFS if the kernel version is less than 5.16
* Print the last 20 lines of the log if the kernel compilation failed.
* Set KERNEL_VERSION_LEVEL to 5.17
Co-authored-by: Igor Pecovnik <igor.pecovnik@gmail.com>
* Add 88 new patches to series. tag: orange-pi-5.17-20220409-0454
* Fix the applicability of patches.megous to the v5.17.3 kernel
* Fix series.conf. Disable the patch that is not being applied
* Add support for sun50i-h6-orangepi-3-lts
* Check the applicability in the series
* Move to a patches.armbian folder
* Bananapro: add AXP209 regulators
* fix-gpio-kconfig remove if EXPERT to allow normal build
* sunxi-5.17: Remove unused patches
* alias defined in patch 0007 is part of armada-372x.dtsi, so unnecessary in 37xx
* u-boot patch to dts shouldn't disable emmc or overwrite sdhci1
* update u-boot
* sunxi-5.15: Add reg_ahci_5v status okay for bananapro board
* Bananapro: add AXP209 regulators
* Fix series.conf, Disable the patch that is not being applied.
* sun7i-a20-bananapro: add reg_ahci_5v for sunxi-5.10
* sun7i-a20-bananapro: Add more regulators
* Rename patches for correct apply
* Disable the patch that is not being applied.
The patch is initially a crude hack. It solves one problem but creates
other problems. I don't know how to resolve the conflict correctly yet,
so I just disabled it.
add CONFIG_GPIO_SYSFS=y to linux-sunxi64-current.config and linux-sunxi64-edge.config
remove if EXPERT from /sys/class/gpio/... (sysfs interface) in /drivers/gpio/Kconfig
* The initial state of a series of patches for sunxi-5.17
tag orange-pi-5.17-20220323-1423
* DEBUG for sunxi-5.17
* Add Armbian patches to 5.17
* Fix duplicate nodes for sun50i-h5-orangepi-pc2
* Fix reg_ahci_5v to status okay for bananapro board
* Remove an unused patch for an unsupported sun50i-h6-tanix-tx6 board
* Fix duplicate nodes for sun50i-h5-orangepi-pc2
* Remove unused patch for pinctrl: sunxi: Fix deadlock.
This fix duplicates the upstream commit
896d1b8a36129c3f1378fbbafd7c394a877635b5 of the linux-5.15.y branch
pinctrl: sunxi: Use unique lockdep classes for IRQs
commit bac129dbc6560dfeb634c03f0c08b78024e71915 upstream.
This driver, like several others, uses a chained IRQ for each GPIO bank,
and forwards .irq_set_wake to the GPIO bank's upstream IRQ. As a result,
a call to irq_set_irq_wake() needs to lock both the upstream and
downstream irq_desc's. Lockdep considers this to be a possible deadlock
when the irq_desc's share lockdep classes, which they do by default:
============================================
WARNING: possible recursive locking detected
5.17.0-rc3-00394-gc849047c2473 #1 Not tainted
...
* Add to series.armbian Fix-duplicate-nodes-for-sun50i-h5-orangepi-pc2.patch
The problem with duplicate nodes in the device tree is that the first
one in the queue will be applied. The subsequent one will be ignored,
not replaced.
Fix spi-nor node initialization error for orangepi-pc2
[ 1.288263] spi-nor spi0.0: supply vdd not found, using dummy regulator
[ 1.306391] spi-nor spi0.0: mx25l1606e (2048 Kbytes)
[ 1.845203] Freeing initrd memory: 10824K
[ 1.855263] sun6i-spi 1c68000.spi: chipselect 0 already in use
[ 1.861159] spi_master spi0: spi_device register error /soc/spi@1c68000/spi-flash@0
[ 1.868842] spi_master spi0: Failed to create SPI device for /soc/spi@1c68000/spi-flash@0
Remove duplicate nodes from applied patches for the board
sun50i-h5-orangepi-pc2. After this fix:
[ 1.290252] sun50i-h5-pinctrl 1c20800.pinctrl: supply vcc-pc not found, using dummy regulator
[ 1.291250] spi-nor spi0.0: supply vdd not found, using dummy regulator
[ 1.310397] spi-nor spi0.0: mx25l1606e (2048 Kbytes)
[ 1.845686] Freeing initrd memory: 10824K
[ 1.854333] 2 fixed-partitions partitions found on MTD device spi0.0
[ 1.854369] Creating 2 MTD partitions on "spi0.0":
[ 1.854381] 0x000000000000-0x000000100000 : "uboot"
[ 1.855679] 0x000000100000-0x000000200000 : "env"
* Remove unused pinctrl-sunxi-Fix-misleading-lockdep-deadlock-warnin.patch
The problem was solved in the upstream kernel.
commit e221ef82d9f5e97bca61f7c25e2b58b04466de87 linux-5.16.y branch.
commit bac129dbc6560dfeb634c03f0c08b78024e71915 upstream.
This driver, like several others, uses a chained IRQ for each GPIO bank,
and forwards .irq_set_wake to the GPIO bank's upstream IRQ. As a result,
a call to irq_set_irq_wake() needs to lock both the upstream and
downstream irq_desc's. Lockdep considers this to be a possible deadlock
when the irq_desc's share lockdep classes, which they do by default:
============================================
WARNING: possible recursive locking detected
5.17.0-rc3-00394-gc849047c2473 #1 Not tainted
...
* Fix spi-nor node initialization error for orangepi-pc2
[ 1.288263] spi-nor spi0.0: supply vdd not found, using dummy regulator
[ 1.306391] spi-nor spi0.0: mx25l1606e (2048 Kbytes)
[ 1.845203] Freeing initrd memory: 10824K
[ 1.855263] sun6i-spi 1c68000.spi: chipselect 0 already in use
[ 1.861159] spi_master spi0: spi_device register error /soc/spi@1c68000/spi-flash@0
[ 1.868842] spi_master spi0: Failed to create SPI device for /soc/spi@1c68000/spi-flash@0
Remove duplicate nodes from applied patches for the board
sun50i-h5-orangepi-pc2. After this fix:
[ 1.290252] sun50i-h5-pinctrl 1c20800.pinctrl: supply vcc-pc not found, using dummy regulator
[ 1.291250] spi-nor spi0.0: supply vdd not found, using dummy regulator
[ 1.310397] spi-nor spi0.0: mx25l1606e (2048 Kbytes)
[ 1.845686] Freeing initrd memory: 10824K
[ 1.854333] 2 fixed-partitions partitions found on MTD device spi0.0
[ 1.854369] Creating 2 MTD partitions on "spi0.0":
[ 1.854381] 0x000000000000-0x000000100000 : "uboot"
[ 1.855679] 0x000000100000-0x000000200000 : "env"
* Add meson64 patch net: phy: meson-gxl: fix interrupt handling in forced mode
https://patchwork.kernel.org/project/linux-amlogic/patch/04cac530-ea1b-850e-6cfa-144a55c4d75d@gmail.com/
This PHY doesn't support a link-up interrupt source. If aneg is enabled
we use the "aneg complete" interrupt for this purpose, but if aneg is
disabled link-up isn't signaled currently.
According to a vendor driver there's an additional "energy detect"
interrupt source that can be used to signal link-up if aneg is disabled.
We can safely ignore this interrupt source if aneg is enabled.
This patch was tested on a TX3 Mini TV box with S905W (even though
boot message says it's a S905D).
This issue has been existing longer, but due to changes in phylib and
the driver the patch applies only from the commit marked as fixed.
Fixes: 84c8f773d2dc ("net: phy: meson-gxl: remove the use of .ack_callback()")
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
* Add meson64 kernel patch: net: phy: meson-gxl: improve link-up behavior
https://patchwork.kernel.org/project/linux-amlogic/patch/e3473452-a1f9-efcf-5fdd-02b6f44c3fcd@gmail.com/
Sometimes the link comes up but no data flows. This patch fixes
this behavior. It's not clear what's the root cause of the issue.
According to the tests one other link-up issue remains.
In very rare cases the link isn't even reported as up.
Fixes: 84c8f773d2dc ("net: phy: meson-gxl: remove the use of .ack_callback()")
Tested-by: Erico Nunes <nunes.erico@gmail.com>
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
---
drivers/net/phy/meson-gxl.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
* This is already contained in the 5.15.27 kernel
pinctrl: sunxi: Use unique lockdep classes for IRQs
commit 896d1b8a36129c3f1378fbbafd7c394a877635b5 linux-5.15.y
commit bac129dbc6560dfeb634c03f0c08b78024e71915 upstream.
This driver, like several others, uses a chained IRQ for each GPIO bank,
and forwards .irq_set_wake to the GPIO bank's upstream IRQ. As a result,
a call to irq_set_irq_wake() needs to lock both the upstream and
downstream irq_desc's. Lockdep considers this to be a possible deadlock
when the irq_desc's share lockdep classes, which they do by default:
============================================
WARNING: possible recursive locking detected
5.17.0-rc3-00394-gc849047c2473 #1 Not tainted
--------------------------------------------
init/307 is trying to acquire lock:
c2dfe27c (&irq_desc_lock_class){-.-.}-{2:2}, at: __irq_get_desc_lock+0x58/0xa0
but task is already holding lock:
c3c0ac7c (&irq_desc_lock_class){-.-.}-{2:2}, at: __irq_get_desc_lock+0x58/0xa0
other info that might help us debug this:
Possible unsafe locking scenario:
CPU0
----
lock(&irq_desc_lock_class);
lock(&irq_desc_lock_class);
*** DEADLOCK ***
May be due to missing lock nesting notation
4 locks held by init/307:
#0: c1f29f18 (system_transition_mutex){+.+.}-{3:3}, at: __do_sys_reboot+0x90/0x23c
#1: c20f7760 (&dev->mutex){....}-{3:3}, at: device_shutdown+0xf4/0x224
#2: c2e804d8 (&dev->mutex){....}-{3:3}, at: device_shutdown+0x104/0x224
#3: c3c0ac7c (&irq_desc_lock_class){-.-.}-{2:2}, at: __irq_get_desc_lock+0x58/0xa0
stack backtrace:
CPU: 0 PID: 307 Comm: init Not tainted 5.17.0-rc3-00394-gc849047c2473 #1
Hardware name: Allwinner sun8i Family
unwind_backtrace from show_stack+0x10/0x14
show_stack from dump_stack_lvl+0x68/0x90
dump_stack_lvl from __lock_acquire+0x1680/0x31a0
__lock_acquire from lock_acquire+0x148/0x3dc
lock_acquire from _raw_spin_lock_irqsave+0x50/0x6c
_raw_spin_lock_irqsave from __irq_get_desc_lock+0x58/0xa0
__irq_get_desc_lock from irq_set_irq_wake+0x2c/0x19c
irq_set_irq_wake from irq_set_irq_wake+0x13c/0x19c
[tail call from sunxi_pinctrl_irq_set_wake]
irq_set_irq_wake from gpio_keys_suspend+0x80/0x1a4
gpio_keys_suspend from gpio_keys_shutdown+0x10/0x2c
gpio_keys_shutdown from device_shutdown+0x180/0x224
device_shutdown from __do_sys_reboot+0x134/0x23c
__do_sys_reboot from ret_fast_syscall+0x0/0x1c
However, this can never deadlock because the upstream and downstream
IRQs are never the same (nor do they even involve the same irqchip).
Silence this erroneous lockdep splat by applying what appears to be the
usual fix of moving the GPIO IRQs to separate lockdep classes.
Fixes: a59c99d9eaf9 ("pinctrl: sunxi: Forward calls to irq_set_irq_wake")
Reported-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Samuel Holland <samuel@sholland.org>
Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Tested-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20220216040037.22730-1-samuel@sholland.org
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* This is already contained in the 5.16.13 kernel
pinctrl: sunxi: Use unique lockdep classes for IRQs
commit e221ef82d9f5e97bca61f7c25e2b58b04466de87 linux-5.16.y.
commit bac129dbc6560dfeb634c03f0c08b78024e71915 upstream.
This driver, like several others, uses a chained IRQ for each GPIO bank,
and forwards .irq_set_wake to the GPIO bank's upstream IRQ. As a result,
a call to irq_set_irq_wake() needs to lock both the upstream and
downstream irq_desc's. Lockdep considers this to be a possible deadlock
when the irq_desc's share lockdep classes, which they do by default:
============================================
WARNING: possible recursive locking detected
5.17.0-rc3-00394-gc849047c2473 #1 Not tainted
--------------------------------------------
....
* rk322x: restore drm patches, rework a couple of hunks due to upstream changes
* rockchip: restore drm patches, rework hunks due to upstreamed patch
* Revert also on media kernel
Co-authored-by: Igor Pecovnik <igor.pecovnik@gmail.com>
* Add megous files for 5.16, tag orange-pi-5.16-20220216-2000
* Optimize the selection of a set of patches
* Remove unused patches
* Fix the state on the version tag=v5.16.11
Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>
Co-authored-by: Igor Pecovnik <igor.pecovnik@gmail.com>
* Rockchip64 Linux-5.10y - drivers for Motorcomm YT8531
renamed the previous "net-phy-Add-driver-for-Motorcomm-YT85xx-PHYs.patch" to "net-phy-Add-driver-for-Motorcomm-1-YT85xx-PHYs.patch" to fix patch order and added a new patch "net-phy-Add-driver-for-Motorcomm-2-YT8531-PHYs.patch"
The new YT8531 patch is sourced from from Lean's OpenWrt source rockchip/patches-5.10/601-net-phy-Add-driver-for-Motorcomm-YT8531-PHYs.patch.
It is intended to extend a patch identical to Armbian's "net-phy-Add-driver-for-Motorcomm-YT85xx-PHYs.patch" and is used without alteration.
* Add new board OrangePi R1 LTS (rk3328)
Includes uBoot and support for Linux-5.10y
* Rockchip64 Linux-5.15y drivers for YT8531 and other Motorcomm chips
YT8010, YT8510, YT8511, YT8512, YT8521. The driver patch set is sourced from Xunlong-OrangePi OpenWRT and is used as is, with only a name and makefile change.
A single patch set uses the same underlying source code as the Armbian Linux-5.10y set, but uses inbuilt logic to apply tweaks that depend on the Linux kernel version.
The patch is renamed similarly to the 5.10 patch set, net-phy-Add-driver-for-Motorcomm-T85xx+PHYs.patch to imply code base continuity with the previous similar Armbian patch sets.
* Rockchip64 Linux-5.15y support for Orange Pi R1 Plus LTS
Includes DTS and makefile changes. A driver for net phy YT8531C is in a separate commit
* change orangepi-r1plus-lts.csc to orangepi-r1plus-lts.conf
board is now supported
* - add patch also to 5.16.y
- fix wrong patch permission
* Fix Makefile patch
Co-authored-by: Igor Pecovnik <igor.pecovnik@gmail.com>
* Switched rockchip64-current to linux 5.15
* Backported and adjusted patches from rockchip64-current
* Switched rockchip64 edge to 5.16.y (#3499)
* Initial rockchip64-edge at 5.16.y
* Bunch of fixes for rockchip64-edge at 5.16.y
Co-authored-by: Igor Pečovnik <igorpecovnik@users.noreply.github.com>
Radxa Zero 2 is a small form factor SBC based on the Amlogic A311D
chipset that ships in a number of eMMC configurations:
- Amlogic A311D (Quad A73 + Dual A53) CPU
- 4GB LPDDR4 RAM
- 32/64/128GB eMMC
- Mali G52-MP4 GPU
- HDMI 2.1 output (micro)
- BCM4345 WiFi (2.4/5GHz a/b/g/n/ac) and BT 5.0
- 1x USB 2.0 port - Type C (OTG)
- 1x USB 3.0 port - Type C (Host)
- 1x micro SD Card slot
- 40 Pin GPIO header
Signed-off-by: Yuntian Zhang <yt@radxa.com>
* remove incorrectly duplicated GPIO pins from I2C7, name I2C7/I2C8 bus, from README.rockchip-overlays
* remove incorrectly duplicated GPIO pins from I2C7, name I2C7/I2C8 bus, from README.rockchip-overlays
* remove incorrectly duplicated GPIO pins from I2C7, name I2C7/I2C8 bus, from README.rockchip-overlays
* remove incorrectly duplicated GPIO pins from I2C7, name I2C7/I2C8 bus, from README.rockchip-overlays
* remove incorrectly duplicated GPIO pins from I2C7, name I2C7/I2C8 bus, from README.rockchip-overlays
* remove incorrectly duplicated GPIO pins from I2C7, name I2C7/I2C8 bus, from README.rockchip-overlays
* remove incorrectly duplicated GPIO pins from I2C7, name I2C7/I2C8 bus, from README.rockchip-overlays
* remove incorrectly duplicated GPIO pins from I2C7, name I2C7/I2C8 bus, from README.rockchip-overlays
* remove incorrectly duplicated GPIO pins from I2C7, name I2C7/I2C8 bus, from README.rockchip-overlays
Co-authored-by: Leif Sawyer <leif@akhepcat.com>