]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
fdtdec: drop needlessly convoluted CONFIG_PHANDLE_CHECK_SEQ
authorRasmus Villemoes <rasmus.villemoes@prevas.dk>
Thu, 19 May 2022 09:10:43 +0000 (11:10 +0200)
committerTom Rini <trini@konsulko.com>
Mon, 6 Jun 2022 22:01:21 +0000 (18:01 -0400)
Asking if the alias we found actually points at the device tree node
we passed in (in the guise of its offset from blob) can be done simply
by asking if the fdt_path_offset() of the alias' path is identical to
offset.

In fact, the current method suffers from the possibility of false
negatives: dtc does not necessarily emit a phandle property for a node
just because it is referenced in /aliases; it only emits a phandle
property for a node if it is referenced in <angle brackets>
somewhere. So if both the node we passed in and the alias node we're
considering don't have phandles, fdt_get_phandle() returns 0 for both.

Since the proper check is so simple, there's no reason to hide that
behind a config option (and if one really wanted that, it should be
called something else because there's no need to involve phandle in
the check).

Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
Acked-by: Aswath Govindraju <a-govindraju@ti.com>
configs/am65x_evm_a53_defconfig
configs/evb-ast2600_defconfig
configs/sama7g5ek_mmc1_defconfig
configs/sama7g5ek_mmc_defconfig
lib/Kconfig
lib/fdtdec.c

index 9c088e1d02e42da5f271bdece90d9a530fe25b40..65e41e5b6afb93f802f76832c4477dad044e89e0 100644 (file)
@@ -180,4 +180,3 @@ CONFIG_USB_GADGET_VENDOR_NUM=0x0451
 CONFIG_USB_GADGET_PRODUCT_NUM=0x6162
 CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_OF_LIBFDT_OVERLAY=y
-CONFIG_PHANDLE_CHECK_SEQ=y
index 38d78d51924d5ce75aaf9398152da1a4aca6cf59..bfd0a5f2b10c8b9d9939d61c5a122fecaf4b6139 100644 (file)
@@ -86,4 +86,3 @@ CONFIG_WDT=y
 CONFIG_SHA384=y
 CONFIG_HEXDUMP=y
 # CONFIG_EFI_LOADER is not set
-CONFIG_PHANDLE_CHECK_SEQ=y
index 367cc48bba6bded1d39966bcc22436bec3d952e8..36343354945c7e6e0bc5409a90cc8635e5cada8e 100644 (file)
@@ -80,4 +80,3 @@ CONFIG_TIMER=y
 CONFIG_MCHP_PIT64B_TIMER=y
 CONFIG_OF_LIBFDT_OVERLAY=y
 # CONFIG_EFI_LOADER_HII is not set
-CONFIG_PHANDLE_CHECK_SEQ=y
index 1de21b74a46e763a66c70d90f7bf7d373a517404..e12bf28584559884030d5b0be0840c5f9e6503f7 100644 (file)
@@ -80,4 +80,3 @@ CONFIG_TIMER=y
 CONFIG_MCHP_PIT64B_TIMER=y
 CONFIG_OF_LIBFDT_OVERLAY=y
 # CONFIG_EFI_LOADER_HII is not set
-CONFIG_PHANDLE_CHECK_SEQ=y
index acc0ac081a4421a430b204c73c2260557a135c87..884569f9b154558129344d5424fd715dbe82b5ca 100644 (file)
@@ -958,11 +958,4 @@ config LMB_RESERVED_REGIONS
          Define the number of supported reserved regions in the library logical
          memory blocks.
 
-config PHANDLE_CHECK_SEQ
-       bool "Enable phandle check while getting sequence number"
-       help
-         When there are multiple device tree nodes with same name,
-          enable this config option to distinguish them using
-         phandles in fdtdec_get_alias_seq() function.
-
 endmenu
index e20f6aad9c2f1fa6f75594b25ef00ba110b19c67..ffa78f97ca0ad93ea7f0a86c376a163f61a6560b 100644 (file)
@@ -516,11 +516,8 @@ int fdtdec_get_alias_seq(const void *blob, const char *base, int offset,
                 * Adding an extra check to distinguish DT nodes with
                 * same name
                 */
-               if (IS_ENABLED(CONFIG_PHANDLE_CHECK_SEQ)) {
-                       if (fdt_get_phandle(blob, offset) !=
-                           fdt_get_phandle(blob, fdt_path_offset(blob, prop)))
-                               continue;
-               }
+               if (offset != fdt_path_offset(blob, prop))
+                       continue;
 
                val = trailing_strtol(name);
                if (val != -1) {