- 21 Aug, 2023 6 commits
-
-
Rob Herring authored
__of_update_property() returns the existing property if there is one, but that value is never added to the changeset. Updates work because the existing property was also retrieved before in of_changeset_action(), but that is racy as of_changeset_action() doesn't hold any locks. The property could be changed before the changeset is applied. Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> Tested-by: Geert Uytterhoeven <geert+renesas@glider.be> Link: https://lore.kernel.org/r/20230801-dt-changeset-fixes-v3-4-5f0410e007dd@kernel.orgSigned-off-by: Rob Herring <robh@kernel.org>
-
Rob Herring authored
Several places print the changeset action with node and property details. Refactor these into a common printing helper. The complicating factor is some prints are debug and some are errors. Solve this with a bit of preprocessor magic. Some cases printed the 'cset' which was the changeset entry pointer rather than the whole changeset itself. The changeset entry is not all that interesting and gets obfuscated by default anyways. So just drop it. Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> Link: https://lore.kernel.org/r/20230801-dt-changeset-fixes-v3-3-5f0410e007dd@kernel.orgSigned-off-by: Rob Herring <robh@kernel.org>
-
Rob Herring authored
Pick up changeset fixes for further rework.
-
Peng Fan authored
commit 0f8e5651 ("of/platform: Propagate firmware node by calling device_set_node()") use of_fwnode_handle to replace of_node_get, which introduces a side effect that the refcount is not increased. Then the out of tree jailhouse hypervisor enable/disable test will trigger kernel dump in of_overlay_remove, with the following sequence " of_changeset_revert(&overlay_changeset); of_changeset_destroy(&overlay_changeset); of_overlay_remove(&overlay_id); " So increase the refcount to avoid issues. This patch also release the refcount when releasing amba device to avoid refcount leakage. Fixes: 0f8e5651 ("of/platform: Propagate firmware node by calling device_set_node()") Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: Peng Fan <peng.fan@nxp.com> Link: https://lore.kernel.org/r/20230821023928.3324283-2-peng.fan@oss.nxp.comSigned-off-by: Rob Herring <robh@kernel.org>
-
Rob Herring authored
While originally it was fine to format strings using "%pOF" while holding devtree_lock, this now causes a deadlock. Lockdep reports: of_get_parent from of_fwnode_get_parent+0x18/0x24 ^^^^^^^^^^^^^ of_fwnode_get_parent from fwnode_count_parents+0xc/0x28 fwnode_count_parents from fwnode_full_name_string+0x18/0xac fwnode_full_name_string from device_node_string+0x1a0/0x404 device_node_string from pointer+0x3c0/0x534 pointer from vsnprintf+0x248/0x36c vsnprintf from vprintk_store+0x130/0x3b4 Fix this by moving the printing in __of_changeset_entry_apply() outside the lock. As the only difference in the multiple prints is the action name, use the existing "action_names" to refactor the prints into a single print. Fixes: a92eb762 ("lib/vsprintf: Make use of fwnode API to obtain node names and separators") Cc: stable@vger.kernel.org Reported-by: Geert Uytterhoeven <geert+renesas@glider.be> Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> Link: https://lore.kernel.org/r/20230801-dt-changeset-fixes-v3-2-5f0410e007dd@kernel.orgSigned-off-by: Rob Herring <robh@kernel.org>
-
Rob Herring authored
Commit 12e17243 ("of: base: improve error msg in of_phandle_iterator_next()") added printing of the phandle value on error, but failed to update the unittest. Fixes: 12e17243 ("of: base: improve error msg in of_phandle_iterator_next()") Cc: stable@vger.kernel.org Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> Link: https://lore.kernel.org/r/20230801-dt-changeset-fixes-v3-1-5f0410e007dd@kernel.orgSigned-off-by: Rob Herring <robh@kernel.org>
-
- 18 Aug, 2023 4 commits
-
-
Fabio Estevam authored
Convert from pps-gpio.txt to pps-gpio.yaml to allow schema validation. Signed-off-by: Fabio Estevam <festevam@denx.de> Acked-by: Rodolfo Giometti <giometti@enneenne.com> Link: https://lore.kernel.org/r/20230818174159.1680572-1-festevam@gmail.comSigned-off-by: Rob Herring <robh@kernel.org>
-
Rik van Riel authored
The code calling ima_free_kexec_buffer runs long after the memblock allocator has already been torn down, potentially resulting in a use after free in memblock_isolate_range. With KASAN or KFENCE, this use after free will result in a BUG from the idle task, and a subsequent kernel panic. Switch ima_free_kexec_buffer over to memblock_free_late to avoid that issue. Fixes: fee3ff99 ("powerpc: Move arch independent ima kexec functions to drivers/of/kexec.c") Cc: stable@kernel.org Signed-off-by: Rik van Riel <riel@surriel.com> Suggested-by: Mike Rappoport <rppt@kernel.org> Link: https://lore.kernel.org/r/20230817135759.0888e5ef@imladris.surriel.comSigned-off-by: Rob Herring <robh@kernel.org>
-
Bjorn Helgaas authored
Fix typos in Documentation/devicetree/bindings. The changes are in descriptions or comments where they shouldn't affect functionality. Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Link: https://lore.kernel.org/r/20230814212822.193684-3-helgaas@kernel.orgSigned-off-by: Rob Herring <robh@kernel.org>
-
Naman Trivedi Manojbhai authored
Remove the zynqmp-genpd.txt binding. Add the power-domain-cells property from the zynqmp-genpd.txt binding to firmware binding. Signed-off-by: Naman Trivedi Manojbhai <naman.trivedimanojbhai@amd.com> Acked-by: Conor Dooley <conor.dooley@microchip.com> Link: https://lore.kernel.org/r/20230816130309.1338446-1-naman.trivedimanojbhai@amd.comSigned-off-by: Rob Herring <robh@kernel.org>
-
- 17 Aug, 2023 3 commits
-
-
Rob Herring authored
The regex search for declarations of struct of_device_id was missing cases that had a compiler annotation such as "__maybe_unused". Improve the regex to allow for these. Use '\S' instead of specific characters to shorten the regex. That also finds some more compatibles using '.' characters. Unfortunately, these changes add ~400 more compatibles without a schema. Reviewed-by: Conor Dooley <conor.dooley@microchip.com> Link: https://lore.kernel.org/r/20230804190130.1936566-1-robh@kernel.orgSigned-off-by: Rob Herring <robh@kernel.org>
-
Konrad Dybcio authored
Like all other RPMh-enabled SoCs, SDM670 includes a PDC. Document it. Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org> Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20230811-topic-tlmm_wakeup-v1-1-5616a7da1fff@linaro.orgSigned-off-by: Rob Herring <robh@kernel.org>
-
Ivan Mikhaylov authored
Conversion from ftgmac100.txt to yaml format version. Signed-off-by: Ivan Mikhaylov <fr0st61te@gmail.com> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20230805135318.6102-1-fr0st61te@gmail.comSigned-off-by: Rob Herring <robh@kernel.org>
-
- 16 Aug, 2023 5 commits
-
-
Sebastian Reichel authored
Rockchip RK356x and RK3588 handle legacy interrupts via a ganged interrupts. The RK356x DT implements this via a sub-node named "legacy-interrupt-controller", just like a couple of other PCIe implementations. This adds proper documentation for this and updates the example to avoid regressions. Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com> Link: https://lore.kernel.org/r/20230731165723.53069-5-sebastian.reichel@collabora.comSigned-off-by: Rob Herring <robh@kernel.org>
-
Sebastian Reichel authored
Use the generic binding for Rockchip. This should either be ignored/dropped or squashed into the previous commit. Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com> Link: https://lore.kernel.org/r/20230731165723.53069-4-sebastian.reichel@collabora.comSigned-off-by: Rob Herring <robh@kernel.org>
-
Sebastian Reichel authored
The RK356x (and RK3588) have 5 ganged interrupts. For example the "legacy" interrupt combines "inta/intb/intc/intd" with a register providing the details, which specific interrupt triggered. The interrupts from the second level are part of the Synopsys DW PCIe System Information Interface (SII). Some of them are listed in the Interrupt Signals section, the others are mostly common SII output signals. The grouping and the ganged interrupt controllers are specific to the Rockchip implementation. Currently the binding is not specifying these interrupts resulting in a bunch of errors for all rk356x/rk3588 boards using PCIe. Fix this by specifying the interrupts and add them to the example to prevent regressions. This changes the reference from snps,dw-pcie.yaml to snps,dw-pcie-common.yaml, since the interrupts are vendor specific and should not be listed in the generic file. The only other bit from the generic binding are the reg-names, which are overwritten by this binding. Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com> Link: https://lore.kernel.org/r/20230731165723.53069-3-sebastian.reichel@collabora.comSigned-off-by: Rob Herring <robh@kernel.org>
-
Sebastian Reichel authored
Allow missing "msi" interrupt, iff the node has a "msi-map" property. Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com> Link: https://lore.kernel.org/r/20230731165723.53069-2-sebastian.reichel@collabora.comSigned-off-by: Rob Herring <robh@kernel.org>
-
Alexander Stein authored
Starting with commit 3e37c9d4 ("dt-bindings: hwmon: Convert lm75 bindings to yaml") 'national,lm75' has it's own dedicated (YAML) binding. If kept in this file device specific properties as 'vs-supply' are considered excessive. Remove compatible here so it can be checked with more specific binding. arch/arm/boot/dts/nxp/imx/imx6q-mba6a.dtb: sensor@48: 'vs-supply' does not match any of the regexes: 'pinctrl-[0-9]+' From schema: Documentation/devicetree/bindings/trivial-devices.yaml Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com> Acked-by: Conor Dooley <conor.dooley@microchip.com> Link: https://lore.kernel.org/r/20230810144451.1459985-2-alexander.stein@ew.tq-group.comSigned-off-by: Rob Herring <robh@kernel.org>
-
- 10 Aug, 2023 1 commit
-
-
Ruan Jinjie authored
The driver depends on CONFIG_OF, it is not necessary to use of_match_ptr() here. Signed-off-by: Ruan Jinjie <ruanjinjie@huawei.com> Link: https://lore.kernel.org/r/20230808094043.2732158-1-ruanjinjie@huawei.comSigned-off-by: Rob Herring <robh@kernel.org>
-
- 04 Aug, 2023 2 commits
-
-
Rob Herring authored
The declarations for of_device_{add,register,unregister} were moved into of_platform.h, so the implementations should be moved to platform.c as well. Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Link: https://lore.kernel.org/r/20230717143718.1715773-2-robh@kernel.orgSigned-off-by: Rob Herring <robh@kernel.org>
-
Rob Herring authored
There's no reason the generic platform bus code needs to call of_platform_register_reconfig_notifier(). The notifier can be setup before the platform bus is. Let's move it into of_core_init() which is called just before platform_bus_init() instead to keep more of the DT bits in the DT code. Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Link: https://lore.kernel.org/r/20230717143718.1715773-1-robh@kernel.orgSigned-off-by: Rob Herring <robh@kernel.org>
-
- 03 Aug, 2023 1 commit
-
-
Guru Das Srinagesh authored
Clean up my email address as the codeaurora.org address is not used anymore. Signed-off-by: Guru Das Srinagesh <quic_gurus@quicinc.com> Link: https://lore.kernel.org/r/20230728001622.4938-1-quic_gurus@quicinc.comSigned-off-by: Rob Herring <robh@kernel.org>
-
- 27 Jul, 2023 5 commits
-
-
Krzysztof Kozlowski authored
USB connector bindings is complete, thus no additional properties should be allowed. Add missing 'reg' property and change additionalProperties to false, so the schema will check for anything unexpected. This also allows to drop the 'reg' from other bindings referencing the usb-connector.yaml and make it required. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20230725102325.76336-1-krzysztof.kozlowski@linaro.orgSigned-off-by: Rob Herring <robh@kernel.org>
-
Rob Herring authored
Add compatible strings for the Arm Cortex-A520, Cortex-A720, and Cortex-X4 2023 CPUs. Acked-by: Conor Dooley <conor.dooley@microchip.com> Link: https://lore.kernel.org/r/20230706205334.306483-1-robh@kernel.orgSigned-off-by: Rob Herring <robh@kernel.org>
-
Ruan Jinjie authored
when kmalloc() fail to allocate memory in kasprintf(), name or full_name will be NULL, strcmp() will cause null pointer dereference. Fixes: 0d638a07 ("of: Convert to using %pOF instead of full_name") Signed-off-by: Ruan Jinjie <ruanjinjie@huawei.com> Link: https://lore.kernel.org/r/20230727080246.519539-1-ruanjinjie@huawei.comSigned-off-by: Rob Herring <robh@kernel.org>
-
Krzysztof Kozlowski authored
samsung,s3c6400-hsotg compatible is already fully covered in dwc2.yaml bindings. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20230722201620.35489-1-krzysztof.kozlowski@linaro.orgSigned-off-by: Rob Herring <robh@kernel.org>
-
Stephen Rothwell authored
Fix these htmldoc build warnings: include/linux/of.h:115: warning: cannot understand function prototype: 'const struct kobj_type of_node_ktype; ' include/linux/of.h:118: warning: Excess function parameter 'phandle_name' description in 'of_node_init' Reported-by: Stephen Rothwell <sfr@canb.auug.org.au> Reported-by: Randy Dunlap <rdunlap@infradead.org> Fixes: d9194e00 ("of: dynamic: add lifecycle docbook info to node creation functions") Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Reviewed-by: Randy Dunlap <rdunlap@infradead.org> Link: https://lore.kernel.org/r/20230322180032.1badd132@canb.auug.org.auSigned-off-by: Rob Herring <robh@kernel.org>
-
- 21 Jul, 2023 2 commits
-
-
Rob Herring authored
nxp,lpc1850-uart.txt binding is already covered by 8250.yaml, so remove it. Reviewed-by: Conor Dooley <conor.dooley@microchip.com> Link: https://lore.kernel.org/r/20230707221607.1064888-1-robh@kernel.orgSigned-off-by: Rob Herring <robh@kernel.org>
-
Rob Herring authored
cavium-uart.txt binding is already covered by 8250.yaml, so remove it. Reviewed-by: Conor Dooley <conor.dooley@microchip.com> Link: https://lore.kernel.org/r/20230707221602.1063972-1-robh@kernel.orgSigned-off-by: Rob Herring <robh@kernel.org>
-
- 19 Jul, 2023 1 commit
-
-
Dinh Nguyen authored
The property "altr,modrst-offset" is only applicable to arm32 SoCFPGA platforms, thus it not required for all platforms. While at it, update my email address. Signed-off-by: Dinh Nguyen <dinguyen@kernel.org> Acked-by: Conor Dooley <conor.dooley@microchip.com> Link: https://lore.kernel.org/r/20230719132749.661914-1-dinguyen@kernel.orgSigned-off-by: Rob Herring <robh@kernel.org>
-
- 14 Jul, 2023 2 commits
-
-
Krzysztof Kozlowski authored
Few coefficients use default values multiple of 100, not 1000 (in the example DTS and in the Linux driver): moortec,mr75203.example.dtb: pvt@e0680000: moortec,ts-coeff-g:0:0: 61400 is not a multiple of 1000 Fixes: bf1fdafd ("dt-bindings: hwmon: (mr75203) add coefficient properties for the thermal equation") Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20230712081124.110345-1-krzysztof.kozlowski@linaro.orgSigned-off-by: Rob Herring <robh@kernel.org>
-
Anusha Rao authored
Document the compatible string for ipq9574. Acked-by: Conor Dooley <conor.dooley@microchip.com> Reviewed-by: Bhupesh Sharma <bhupesh.sharma@linaro.org> Signed-off-by: Anusha Rao <quic_anusha@quicinc.com> Link: https://lore.kernel.org/r/20230714093032.22400-1-quic_anusha@quicinc.comSigned-off-by: Rob Herring <robh@kernel.org>
-
- 11 Jul, 2023 1 commit
-
-
Rob Herring authored
Since commit 241d2fb5 ("of: Make OF framebuffer device names unique"), as spotted by Frédéric Bonnard, the historical "of-display" device is gone: the updated logic creates "of-display.0" instead, then as many "of-display.N" as required. This means that offb no longer finds the expected device, which prevents the Debian Installer from setting up its interface, at least on ppc64el. Fix this by keeping "of-display" for the first device and "of-display.N" for subsequent devices. Link: https://bugzilla.kernel.org/show_bug.cgi?id=217328 Link: https://bugs.debian.org/1033058 Fixes: 241d2fb5 ("of: Make OF framebuffer device names unique") Cc: stable@vger.kernel.org Cc: Cyril Brulebois <cyril@debamax.com> Cc: Thomas Zimmermann <tzimmermann@suse.de> Cc: Helge Deller <deller@gmx.de> Acked-by: Helge Deller <deller@gmx.de> Acked-by: Thomas Zimmermann <tzimmermann@suse.de> Reviewed-by: Michal Suchánek <msuchanek@suse.de> Link: https://lore.kernel.org/r/20230710174007.2291013-1-robh@kernel.orgSigned-off-by: Rob Herring <robh@kernel.org>
-
- 10 Jul, 2023 1 commit
-
-
Baoquan He authored
On s390 systems (aka mainframes), it has classic channel devices for networking and permanent storage that are currently even more common than PCI devices. Hence it could have a fully functional s390 kernel with CONFIG_PCI=n, then the relevant iomem mapping functions [including ioremap(), devm_ioremap(), etc.] are not available. In LKP error report at below on s390: ------ ld: kernel/dma/coherent.o: in function `dma_init_coherent_memory': coherent.c:(.text+0x102): undefined reference to `memremap' ld: coherent.c:(.text+0x226): undefined reference to `memunmap' ld: kernel/dma/coherent.o: in function `dma_declare_coherent_memory': coherent.c:(.text+0x8b8): undefined reference to `memunmap' ld: kernel/dma/coherent.o: in function `dma_release_coherent_memory': coherent.c:(.text+0x9aa): undefined reference to `memunmap' ------ In the config file, several Kconfig options are: ------ '# CONFIG_PCI is not set' CONFIG_OF_EARLY_FLATTREE=y CONFIG_DMA_DECLARE_COHERENT=y ------ So, enabling OF_EARLY_FLATTREE will select DMA_DECLARE_COHERENT and cause above building errors even though they are not needed because CONFIG_PCI is disabled. Here let OF_EARLY_FLATTREE depend on HAS_IOMEM so that it won't be built to cause compiling error if PCI is unset. Reported-by: kernel test robot <lkp@intel.com> Closes: https://lore.kernel.org/oe-kbuild-all/202306211329.ticOJCSv-lkp@intel.com/Signed-off-by: Baoquan He <bhe@redhat.com> Cc: Rob Herring <robh+dt@kernel.org> Cc: Frank Rowand <frowand.list@gmail.com> Cc: devicetree@vger.kernel.org Link: https://lore.kernel.org/r/20230707135852.24292-9-bhe@redhat.comSigned-off-by: Rob Herring <robh@kernel.org>
-
- 09 Jul, 2023 6 commits
-
-
Linus Torvalds authored
-
Linus Torvalds authored
We just sorted the entries and fields last release, so just out of a perverse sense of curiosity, I decided to see if we can keep things ordered for even just one release. The answer is "No. No we cannot". I suggest that all kernel developers will need weekly training sessions, involving a lot of Big Bird and Sesame Street. And at the yearly maintainer summit, we will all sing the alphabet song together. I doubt I will keep doing this. At some point "perverse sense of curiosity" turns into just a cold dark place filled with sadness and despair. Repeats: 80e62bc8 ("MAINTAINERS: re-sort all entries and fields") Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-
git://git.infradead.org/users/hch/dma-mappingLinus Torvalds authored
Pull dma-mapping fixes from Christoph Hellwig: - swiotlb area sizing fixes (Petr Tesarik) * tag 'dma-mapping-6.5-2023-07-09' of git://git.infradead.org/users/hch/dma-mapping: swiotlb: reduce the number of areas to match actual memory pool size swiotlb: always set the number of areas before allocating the pool
-
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tipLinus Torvalds authored
Pull irq update from Borislav Petkov: - Optimize IRQ domain's name assignment * tag 'irq_urgent_for_v6.5_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: irqdomain: Use return value of strreplace()
-
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tipLinus Torvalds authored
Pull x86 fpu fix from Borislav Petkov: - Do FPU AP initialization on Xen PV too which got missed by the recent boot reordering work * tag 'x86_urgent_for_v6.5_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: x86/xen: Fix secondary processors' FPU initialization
-
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tipLinus Torvalds authored
Pull x86 fix from Thomas Gleixner: "A single fix for the mechanism to park CPUs with an INIT IPI. On shutdown or kexec, the kernel tries to park the non-boot CPUs with an INIT IPI. But the same code path is also used by the crash utility. If the CPU which panics is not the boot CPU then it sends an INIT IPI to the boot CPU which resets the machine. Prevent this by validating that the CPU which runs the stop mechanism is the boot CPU. If not, leave the other CPUs in HLT" * tag 'x86-core-2023-07-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: x86/smp: Don't send INIT to boot CPU
-