7cb7001e | 07-Nov-2023 |
Nícolas F. R. A. Prado <nfraprado@collabora.com> |
dt: dt-extract-compatibles: Don't follow symlinks when walking tree
[ Upstream commit 8f51593cdcab82fb23ef2e1a0010b2e6f99aae02 ]
The iglob function, which we use to find C source files in the kerne
dt: dt-extract-compatibles: Don't follow symlinks when walking tree
[ Upstream commit 8f51593cdcab82fb23ef2e1a0010b2e6f99aae02 ]
The iglob function, which we use to find C source files in the kernel tree, always follows symbolic links. This can cause unintentional recursions whenever a symbolic link points to a parent directory. A common scenario is building the kernel with the output set to a directory inside the kernel tree, which will contain such a symlink.
Instead of using the iglob function, use os.walk to traverse the directory tree, which by default doesn't follow symbolic links. fnmatch is then used to match the glob on the filename, as well as ignore hidden files (which were ignored by default with iglob).
This approach runs just as fast as using iglob.
Fixes: b6acf8073517 ("dt: Add a check for undocumented compatible strings in kernel") Reported-by: Aishwarya TCV <aishwarya.tcv@arm.com> Closes: https://lore.kernel.org/all/e90cb52f-d55b-d3ba-3933-6cc7b43fcfbc@arm.com Signed-off-by: "Nícolas F. R. A. Prado" <nfraprado@collabora.com> Link: https://lore.kernel.org/r/20231107225624.9811-1-nfraprado@collabora.com Signed-off-by: Rob Herring <robh@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
show more ...
|
568a10bf | 13-Feb-2023 |
Frank Rowand <frowand.list@gmail.com> |
of: add processing of EXPECT_NOT to of_unittest_expect
scripts/dtc/of_unittest_expect processes EXPECT messages that document expected kernel messages triggered by unittest. Add processing of EXPEC
of: add processing of EXPECT_NOT to of_unittest_expect
scripts/dtc/of_unittest_expect processes EXPECT messages that document expected kernel messages triggered by unittest. Add processing of EXPECT_NOT messages that document kernel messages triggered by unittest that are not expected.
This is commit 2 of 2, implementing the processing of EXPECT_NOT messages.
Signed-off-by: Frank Rowand <frowand.list@gmail.com> Link: https://lore.kernel.org/r/20230213185702.395776-3-frowand.list@gmail.com Signed-off-by: Rob Herring <robh@kernel.org>
show more ...
|
ef8795f3 | 10-Mar-2022 |
Rob Herring <robh@kernel.org> |
dt-bindings: kbuild: Use DTB files for validation
Switch the DT validation to use DTB files directly instead of a DTS to YAML conversion.
The original motivation for supporting validation on DTB fi
dt-bindings: kbuild: Use DTB files for validation
Switch the DT validation to use DTB files directly instead of a DTS to YAML conversion.
The original motivation for supporting validation on DTB files was to enable running validation on a running system (e.g. 'dt-validate /sys/firmware/fdt') or other cases where the original source DTS is not available.
The YAML format was not without issues. Using DTBs with the schema type information solves some of those problems. The YAML format relies on the DTS source level information including bracketing of properties, size directives, and phandle tags all of which are lost in a DTB file. While standardizing the bracketing is a good thing, it does cause a lot of extra warnings and churn to fix them.
Another issue has been signed types are not validated correctly as sign information is not propagated to YAML. Using the schema type information allows for proper handling of signed types. YAML also can't represent the full range of 64-bit integers as numbers are stored as floats by most/all parsers.
The DTB validation works by decoding property values using the type information in the schemas themselves. The main corner case this does not work for is matrix types where neither dimension is fixed. For now, checking the dimensions in these cases are skipped.
Signed-off-by: Rob Herring <robh@kernel.org> Tested-by: Geert Uytterhoeven <geert+renesas@glider.be> Link: https://lore.kernel.org/r/20220310160513.1708182-3-robh@kernel.org
show more ...
/openbmc/linux/Documentation/devicetree/bindings/Makefile/openbmc/linux/Documentation/devicetree/bindings/arm/cpus.yaml/openbmc/linux/Documentation/devicetree/bindings/arm/linux,dummy-virt.yaml/openbmc/linux/Documentation/devicetree/bindings/connector/usb-connector.yaml/openbmc/linux/Documentation/devicetree/bindings/display/brcm,bcm2711-hdmi.yaml/openbmc/linux/Documentation/devicetree/bindings/display/bridge/adi,adv7511.yaml/openbmc/linux/Documentation/devicetree/bindings/display/bridge/synopsys,dw-hdmi.yaml/openbmc/linux/Documentation/devicetree/bindings/display/panel/display-timings.yaml/openbmc/linux/Documentation/devicetree/bindings/display/ste,mcde.yaml/openbmc/linux/Documentation/devicetree/bindings/firmware/arm,scpi.yaml/openbmc/linux/Documentation/devicetree/bindings/firmware/qemu,fw-cfg-mmio.yaml/openbmc/linux/Documentation/devicetree/bindings/gpio/sifive,gpio.yaml/openbmc/linux/Documentation/devicetree/bindings/i2c/atmel,at91sam-i2c.yaml/openbmc/linux/Documentation/devicetree/bindings/i2c/renesas,riic.yaml/openbmc/linux/Documentation/devicetree/bindings/input/adc-joystick.yaml/openbmc/linux/Documentation/devicetree/bindings/leds/cznic,turris-omnia-leds.yaml/openbmc/linux/Documentation/devicetree/bindings/leds/leds-lp50xx.yaml/openbmc/linux/Documentation/devicetree/bindings/mfd/brcm,cru.yaml/openbmc/linux/Documentation/devicetree/bindings/mfd/cirrus,lochnagar.yaml/openbmc/linux/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml/openbmc/linux/Documentation/devicetree/bindings/mfd/ti,j721e-system-controller.yaml/openbmc/linux/Documentation/devicetree/bindings/mtd/rockchip,nand-controller.yaml/openbmc/linux/Documentation/devicetree/bindings/net/can/renesas,rcar-canfd.yaml/openbmc/linux/Documentation/devicetree/bindings/net/mscc,vsc7514-switch.yaml/openbmc/linux/Documentation/devicetree/bindings/net/ti,cpsw-switch.yaml/openbmc/linux/Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.yaml/openbmc/linux/Documentation/devicetree/bindings/phy/phy-stm32-usbphyc.yaml/openbmc/linux/Documentation/devicetree/bindings/phy/ti,omap-usb2.yaml/openbmc/linux/Documentation/devicetree/bindings/phy/ti,tcan104x-can.yaml/openbmc/linux/Documentation/devicetree/bindings/pinctrl/cirrus,madera.yaml/openbmc/linux/Documentation/devicetree/bindings/power/supply/sbs,sbs-manager.yaml/openbmc/linux/Documentation/devicetree/bindings/pwm/pwm-sifive.yaml/openbmc/linux/Documentation/devicetree/bindings/remoteproc/ti,k3-r5f-rproc.yaml/openbmc/linux/Documentation/devicetree/bindings/reset/renesas,rzg2l-usbphy-ctrl.yaml/openbmc/linux/Documentation/devicetree/bindings/riscv/sifive-l2-cache.yaml/openbmc/linux/Documentation/devicetree/bindings/soc/ti/ti,pruss.yaml/openbmc/linux/Documentation/devicetree/bindings/sound/st,stm32-sai.yaml/openbmc/linux/Documentation/devicetree/bindings/sound/tlv320adcx140.yaml/openbmc/linux/Documentation/devicetree/bindings/spi/spi-controller.yaml/openbmc/linux/Documentation/devicetree/bindings/timer/renesas,ostm.yaml/openbmc/linux/Documentation/devicetree/bindings/ufs/cdns,ufshc.yaml/openbmc/linux/Documentation/devicetree/bindings/ufs/hisilicon,ufs.yaml/openbmc/linux/Documentation/devicetree/bindings/ufs/mediatek,ufs.yaml/openbmc/linux/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml/openbmc/linux/Documentation/devicetree/bindings/ufs/samsung,exynos-ufs.yaml/openbmc/linux/Documentation/devicetree/bindings/ufs/snps,tc-dwc-g210.yaml/openbmc/linux/Documentation/devicetree/bindings/ufs/ti,j721e-ufs.yaml/openbmc/linux/Documentation/devicetree/bindings/ufs/ufs-common.yaml/openbmc/linux/Documentation/devicetree/bindings/usb/renesas,usbhs.yaml/openbmc/linux/Documentation/devicetree/bindings/usb/st,stusb160x.yaml/openbmc/linux/Documentation/devicetree/bindings/usb/ti,j721e-usb.yaml/openbmc/linux/Documentation/devicetree/bindings/usb/ti,keystone-dwc3.yaml/openbmc/linux/Documentation/devicetree/bindings/vendor-prefixes.yaml/openbmc/linux/Documentation/devicetree/bindings/writing-schema.rst/openbmc/linux/MAINTAINERS/openbmc/linux/drivers/of/fdt.c/openbmc/linux/drivers/of/unittest.c/openbmc/linux/include/dt-bindings/clock/alphascale,asm9260.h/openbmc/linux/include/dt-bindings/clock/axis,artpec6-clkctrl.h/openbmc/linux/include/dt-bindings/clock/boston-clock.h/openbmc/linux/include/dt-bindings/clock/marvell,mmp2.h/openbmc/linux/include/dt-bindings/clock/marvell,pxa168.h/openbmc/linux/include/dt-bindings/clock/marvell,pxa910.h/openbmc/linux/include/dt-bindings/clock/nuvoton,npcm7xx-clock.h/openbmc/linux/include/dt-bindings/clock/stm32fx-clock.h/openbmc/linux/include/dt-bindings/clock/stratix10-clock.h/openbmc/linux/scripts/Makefile.libMakefileupdate-dtc-source.sh |
8e4296c2 | 01-Feb-2022 |
Frank Rowand <frank.rowand@sony.com> |
of: unittest: add program to process EXPECT messages
If unittest detects a problem it will print a warning or error message to the console. Unittest also triggers warning and error messages from ot
of: unittest: add program to process EXPECT messages
If unittest detects a problem it will print a warning or error message to the console. Unittest also triggers warning and error messages from other kernel code as a result of intentionally bad unittest data. This has led to confusion as to whether the triggered messages are an expected result of a test or whether there is a real problem that is independent of unittest.
EXPECT messages were added to unittest to report each triggered message that is expected, resulting in verbose console output.
scripts/dtc/of_unittest is a new program that processes the EXPECT messages to determine whether the triggered messages occurred and also removes the excess verbosity of the EXPECT messages. More information is available from 'scripts/dtc/of_unittest_expect --help'.
Signed-off-by: Frank Rowand <frank.rowand@sony.com> Signed-off-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20220201181413.2719955-1-frowand.list@gmail.com
show more ...
/openbmc/linux/Documentation/devicetree/bindings/arm/cpu-capacity.txt/openbmc/linux/Documentation/devicetree/bindings/ata/cortina,gemini-sata-bridge.yaml/openbmc/linux/Documentation/devicetree/bindings/clock/ti/ti,clksel.yaml/openbmc/linux/Documentation/devicetree/bindings/crypto/atmel,at91sam9g46-aes.yaml/openbmc/linux/Documentation/devicetree/bindings/crypto/atmel,at91sam9g46-sha.yaml/openbmc/linux/Documentation/devicetree/bindings/crypto/atmel,at91sam9g46-tdes.yaml/openbmc/linux/Documentation/devicetree/bindings/display/bridge/toshiba,tc358768.yaml/openbmc/linux/Documentation/devicetree/bindings/display/panel/leadtek,ltk050h3146w.yaml/openbmc/linux/Documentation/devicetree/bindings/display/samsung/samsung,exynos-hdmi-ddc.yaml/openbmc/linux/Documentation/devicetree/bindings/display/samsung/samsung,exynos-hdmi.yaml/openbmc/linux/Documentation/devicetree/bindings/display/samsung/samsung,exynos-mixer.yaml/openbmc/linux/Documentation/devicetree/bindings/display/samsung/samsung,exynos5433-decon.yaml/openbmc/linux/Documentation/devicetree/bindings/display/samsung/samsung,exynos5433-mic.yaml/openbmc/linux/Documentation/devicetree/bindings/display/samsung/samsung,exynos7-decon.yaml/openbmc/linux/Documentation/devicetree/bindings/display/samsung/samsung,fimd.yaml/openbmc/linux/Documentation/devicetree/bindings/example-schema.yaml/openbmc/linux/Documentation/devicetree/bindings/i2c/samsung,s3c2410-i2c.yaml/openbmc/linux/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml/openbmc/linux/Documentation/devicetree/bindings/net/cortina,gemini-ethernet.yaml/openbmc/linux/Documentation/devicetree/bindings/net/ethernet-controller.yaml/openbmc/linux/Documentation/devicetree/bindings/phy/samsung,exynos-hdmi-phy.yaml/openbmc/linux/Documentation/devicetree/bindings/reserved-memory/shared-dma-pool.yaml/openbmc/linux/Documentation/devicetree/bindings/rng/atmel,at91-trng.yaml/openbmc/linux/Documentation/devicetree/bindings/timer/arm,armv7m-systick.yaml/openbmc/linux/Documentation/devicetree/bindings/timer/nuvoton,npcm7xx-timer.yaml/openbmc/linux/Documentation/devicetree/bindings/timer/sifive,clint.yaml/openbmc/linux/Documentation/devicetree/bindings/trivial-devices.yaml/openbmc/linux/Documentation/devicetree/bindings/usb/dwc3-cavium.txt/openbmc/linux/Documentation/devicetree/bindings/usb/ti,keystone-dwc3.yaml/openbmc/linux/Documentation/devicetree/bindings/vendor-prefixes.yaml/openbmc/linux/Documentation/devicetree/bindings/writing-schema.rst/openbmc/linux/Documentation/devicetree/of_unittest.rst/openbmc/linux/MAINTAINERS/openbmc/linux/drivers/of/unittest.cof_unittest_expect |
59b48a71 | 29-Jan-2021 |
Viresh Kumar <viresh.kumar@linaro.org> |
scripts: dtc: Remove the unused fdtdump.c file
This was copied from external DTC repository long back and isn't used anymore. Over that the dtc tool can be used to generate the dts source back from
scripts: dtc: Remove the unused fdtdump.c file
This was copied from external DTC repository long back and isn't used anymore. Over that the dtc tool can be used to generate the dts source back from the dtb. Remove the unused fdtdump.c file.
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> Signed-off-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/7ea1a9e7fd5d75b7adfc2a4c40dde2d4ea3fddf8.1611904394.git.viresh.kumar@linaro.org
show more ...
|
0da6bcd9 | 29-Jan-2021 |
Viresh Kumar <viresh.kumar@linaro.org> |
scripts: dtc: Build fdtoverlay tool
We will start building overlays for platforms soon in the kernel and would need fdtoverlay going forward. Lets start building it.
The fdtoverlay program applies
scripts: dtc: Build fdtoverlay tool
We will start building overlays for platforms soon in the kernel and would need fdtoverlay going forward. Lets start building it.
The fdtoverlay program applies one or more overlay dtb blobs to a base dtb blob. The kernel build system would later use fdtoverlay to generate the overlaid blobs based on platform specific configurations.
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> Signed-off-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/4a201dea3ba11a00cab7e936dfc1140dac1a1ae3.1611904394.git.viresh.kumar@linaro.org
show more ...
|
79edff12 | 03-Feb-2021 |
Rob Herring <robh@kernel.org> |
scripts/dtc: Update to upstream version v1.6.0-51-g183df9e9c2b9
This adds the following commits from upstream:
183df9e9c2b9 gitignore: Ignore the swp files 0db6d09584e1 gitignore: Add cscope files
scripts/dtc: Update to upstream version v1.6.0-51-g183df9e9c2b9
This adds the following commits from upstream:
183df9e9c2b9 gitignore: Ignore the swp files 0db6d09584e1 gitignore: Add cscope files 307afa1a7be8 Update Jon Loeliger's email ca16a723fa9d fdtdump: Fix gcc11 warning 64990a272e8f srcpos: increase MAX_SRCFILE_DEPTH 163f0469bf2e dtc: Allow overlays to have .dtbo extension 3b01518e688d Set last_comp_version correctly in new dtb and fix potential version issues in fdt_open_into f7e5737f26aa tests: Fix overlay_overlay_nosugar test case 7cd5d5fe43d5 libfdt: Tweak description of assume-aligned load helpers a7c404099349 libfdt: Internally perform potentially unaligned loads bab85e48a6f4 meson: increase default timeout for tests f8b46098824d meson: do not assume python is installed, skip tests 30a56bce4f0b meson: fix -Wall warning 5e735860c478 libfdt: Check for 8-byte address alignment in fdt_ro_probe_() 67849a327927 build-sys: add meson build 05874d08212d pylibfdt: allow build out of tree 3bc3a6b9fe0c dtc: Fix signedness comparisons warnings: Wrap (-1) e1147b159e92 dtc: Fix signedness comparisons warnings: change types 04cf1fdc0fcf convert-dtsv0: Fix signedness comparisons warning b30013edb878 libfdt: Fix kernel-doc comments
Signed-off-by: Rob Herring <robh@kernel.org>
show more ...
|