fdt_support: Remove FDT_STATUS_FAIL_ERROR_CODE

Since no one uses this feature and I am not aware of any parsers of this
in Linux, remove it.

Signed-off-by: Marek Behún <marek.behun@nic.cz>
Reviewed-by: Stefan Roese <sr@denx.de>
Cc: Simon Glass <sjg@chromium.org>
Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Cc: Pratyush Yadav <p.yadav@ti.com>
Cc: Tim Harvey <tharvey@gateworks.com>
Cc: Michael Walle <michael@walle.cc>
Cc: Priyanka Jain <priyanka.jain@nxp.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Marek Behún 2021-11-26 14:57:08 +01:00 committed by Stefan Roese
parent 76f5a72835
commit 2105cd0421
7 changed files with 26 additions and 39 deletions

View file

@ -184,13 +184,13 @@ void ft_cpu_setup(void *blob, struct bd_info *bd)
#if defined(CONFIG_QSPI_BOOT) || defined(CONFIG_SD_BOOT_QSPI) #if defined(CONFIG_QSPI_BOOT) || defined(CONFIG_SD_BOOT_QSPI)
off = fdt_node_offset_by_compat_reg(blob, FSL_IFC_COMPAT, off = fdt_node_offset_by_compat_reg(blob, FSL_IFC_COMPAT,
CONFIG_SYS_IFC_ADDR); CONFIG_SYS_IFC_ADDR);
fdt_set_node_status(blob, off, FDT_STATUS_DISABLED, 0); fdt_set_node_status(blob, off, FDT_STATUS_DISABLED);
#else #else
off = fdt_node_offset_by_compat_reg(blob, FSL_QSPI_COMPAT, off = fdt_node_offset_by_compat_reg(blob, FSL_QSPI_COMPAT,
QSPI0_BASE_ADDR); QSPI0_BASE_ADDR);
fdt_set_node_status(blob, off, FDT_STATUS_DISABLED, 0); fdt_set_node_status(blob, off, FDT_STATUS_DISABLED);
off = fdt_node_offset_by_compat_reg(blob, FSL_DSPI_COMPAT, off = fdt_node_offset_by_compat_reg(blob, FSL_DSPI_COMPAT,
DSPI1_BASE_ADDR); DSPI1_BASE_ADDR);
fdt_set_node_status(blob, off, FDT_STATUS_DISABLED, 0); fdt_set_node_status(blob, off, FDT_STATUS_DISABLED);
#endif #endif
} }

View file

@ -1681,8 +1681,7 @@ void ft_early_fixup(void *blob, int board_type)
* disable serial2 node for GW54xx for compatibility with older * disable serial2 node for GW54xx for compatibility with older
* 3.10.x kernel that improperly had this node enabled in the DT * 3.10.x kernel that improperly had this node enabled in the DT
*/ */
fdt_set_status_by_alias(blob, "serial2", FDT_STATUS_DISABLED, fdt_set_status_by_alias(blob, "serial2", FDT_STATUS_DISABLED);
0);
/* GW54xx-E adds WDOG2_B external reset */ /* GW54xx-E adds WDOG2_B external reset */
if (rev < 'E') if (rev < 'E')

View file

@ -75,7 +75,7 @@ int ft_board_setup(void *blob, struct bd_info *bd)
if (CONFIG_IS_ENABLED(SL28_SPL_LOADS_OPTEE_BL32)) { if (CONFIG_IS_ENABLED(SL28_SPL_LOADS_OPTEE_BL32)) {
node = fdt_node_offset_by_compatible(blob, -1, "linaro,optee-tz"); node = fdt_node_offset_by_compatible(blob, -1, "linaro,optee-tz");
if (node) if (node)
fdt_set_node_status(blob, node, FDT_STATUS_OKAY, 0); fdt_set_node_status(blob, node, FDT_STATUS_OKAY);
} }
return 0; return 0;

View file

@ -1541,14 +1541,10 @@ unsigned int fdt_create_phandle(void *fdt, int nodeoffset)
* *
* @fdt: ptr to device tree * @fdt: ptr to device tree
* @nodeoffset: node to update * @nodeoffset: node to update
* @status: FDT_STATUS_OKAY, FDT_STATUS_DISABLED, * @status: FDT_STATUS_OKAY, FDT_STATUS_DISABLED, FDT_STATUS_FAIL
* FDT_STATUS_FAIL, FDT_STATUS_FAIL_ERROR_CODE
* @error_code: optional, only used if status is FDT_STATUS_FAIL_ERROR_CODE
*/ */
int fdt_set_node_status(void *fdt, int nodeoffset, int fdt_set_node_status(void *fdt, int nodeoffset, enum fdt_status status)
enum fdt_status status, unsigned int error_code)
{ {
char buf[16];
int ret = 0; int ret = 0;
if (nodeoffset < 0) if (nodeoffset < 0)
@ -1564,10 +1560,6 @@ int fdt_set_node_status(void *fdt, int nodeoffset,
case FDT_STATUS_FAIL: case FDT_STATUS_FAIL:
ret = fdt_setprop_string(fdt, nodeoffset, "status", "fail"); ret = fdt_setprop_string(fdt, nodeoffset, "status", "fail");
break; break;
case FDT_STATUS_FAIL_ERROR_CODE:
sprintf(buf, "fail-%d", error_code);
ret = fdt_setprop_string(fdt, nodeoffset, "status", buf);
break;
default: default:
printf("Invalid fdt status: %x\n", status); printf("Invalid fdt status: %x\n", status);
ret = -1; ret = -1;
@ -1582,16 +1574,14 @@ int fdt_set_node_status(void *fdt, int nodeoffset,
* *
* @fdt: ptr to device tree * @fdt: ptr to device tree
* @alias: alias of node to update * @alias: alias of node to update
* @status: FDT_STATUS_OKAY, FDT_STATUS_DISABLED, * @status: FDT_STATUS_OKAY, FDT_STATUS_DISABLED, FDT_STATUS_FAIL
* FDT_STATUS_FAIL, FDT_STATUS_FAIL_ERROR_CODE
* @error_code: optional, only used if status is FDT_STATUS_FAIL_ERROR_CODE
*/ */
int fdt_set_status_by_alias(void *fdt, const char* alias, int fdt_set_status_by_alias(void *fdt, const char* alias,
enum fdt_status status, unsigned int error_code) enum fdt_status status)
{ {
int offset = fdt_path_offset(fdt, alias); int offset = fdt_path_offset(fdt, alias);
return fdt_set_node_status(fdt, offset, status, error_code); return fdt_set_node_status(fdt, offset, status);
} }
#if defined(CONFIG_VIDEO) || defined(CONFIG_LCD) #if defined(CONFIG_VIDEO) || defined(CONFIG_LCD)

View file

@ -584,9 +584,9 @@ static void ft_pcie_rc_fix(void *blob, struct ls_pcie_rc *pcie_rc)
return; return;
if (pcie_rc->enabled && pcie->mode == PCI_HEADER_TYPE_BRIDGE) if (pcie_rc->enabled && pcie->mode == PCI_HEADER_TYPE_BRIDGE)
fdt_set_node_status(blob, off, FDT_STATUS_OKAY, 0); fdt_set_node_status(blob, off, FDT_STATUS_OKAY);
else else
fdt_set_node_status(blob, off, FDT_STATUS_DISABLED, 0); fdt_set_node_status(blob, off, FDT_STATUS_DISABLED);
} }
static void ft_pcie_ep_fix(void *blob, struct ls_pcie_rc *pcie_rc) static void ft_pcie_ep_fix(void *blob, struct ls_pcie_rc *pcie_rc)
@ -600,9 +600,9 @@ static void ft_pcie_ep_fix(void *blob, struct ls_pcie_rc *pcie_rc)
return; return;
if (pcie_rc->enabled && pcie->mode == PCI_HEADER_TYPE_NORMAL) if (pcie_rc->enabled && pcie->mode == PCI_HEADER_TYPE_NORMAL)
fdt_set_node_status(blob, off, FDT_STATUS_OKAY, 0); fdt_set_node_status(blob, off, FDT_STATUS_OKAY);
else else
fdt_set_node_status(blob, off, FDT_STATUS_DISABLED, 0); fdt_set_node_status(blob, off, FDT_STATUS_DISABLED);
} }
static void ft_pcie_ls_setup(void *blob, struct ls_pcie_rc *pcie_rc) static void ft_pcie_ls_setup(void *blob, struct ls_pcie_rc *pcie_rc)

View file

@ -193,9 +193,9 @@ static void ft_pcie_ep_layerscape_gen4_fix(void *blob, struct ls_pcie_g4 *pcie)
} }
if (pcie->enabled && pcie->mode == PCI_HEADER_TYPE_NORMAL) if (pcie->enabled && pcie->mode == PCI_HEADER_TYPE_NORMAL)
fdt_set_node_status(blob, off, FDT_STATUS_OKAY, 0); fdt_set_node_status(blob, off, FDT_STATUS_OKAY);
else else
fdt_set_node_status(blob, off, FDT_STATUS_DISABLED, 0); fdt_set_node_status(blob, off, FDT_STATUS_DISABLED);
} }
static void ft_pcie_rc_layerscape_gen4_fix(void *blob, struct ls_pcie_g4 *pcie) static void ft_pcie_rc_layerscape_gen4_fix(void *blob, struct ls_pcie_g4 *pcie)
@ -214,9 +214,9 @@ static void ft_pcie_rc_layerscape_gen4_fix(void *blob, struct ls_pcie_g4 *pcie)
} }
if (pcie->enabled && pcie->mode == PCI_HEADER_TYPE_BRIDGE) if (pcie->enabled && pcie->mode == PCI_HEADER_TYPE_BRIDGE)
fdt_set_node_status(blob, off, FDT_STATUS_OKAY, 0); fdt_set_node_status(blob, off, FDT_STATUS_OKAY);
else else
fdt_set_node_status(blob, off, FDT_STATUS_DISABLED, 0); fdt_set_node_status(blob, off, FDT_STATUS_DISABLED);
} }
static void ft_pcie_layerscape_gen4_setup(void *blob, struct ls_pcie_g4 *pcie) static void ft_pcie_layerscape_gen4_setup(void *blob, struct ls_pcie_g4 *pcie)

View file

@ -299,36 +299,34 @@ enum fdt_status {
FDT_STATUS_OKAY, FDT_STATUS_OKAY,
FDT_STATUS_DISABLED, FDT_STATUS_DISABLED,
FDT_STATUS_FAIL, FDT_STATUS_FAIL,
FDT_STATUS_FAIL_ERROR_CODE,
}; };
int fdt_set_node_status(void *fdt, int nodeoffset, int fdt_set_node_status(void *fdt, int nodeoffset, enum fdt_status status);
enum fdt_status status, unsigned int error_code);
static inline int fdt_status_okay(void *fdt, int nodeoffset) static inline int fdt_status_okay(void *fdt, int nodeoffset)
{ {
return fdt_set_node_status(fdt, nodeoffset, FDT_STATUS_OKAY, 0); return fdt_set_node_status(fdt, nodeoffset, FDT_STATUS_OKAY);
} }
static inline int fdt_status_disabled(void *fdt, int nodeoffset) static inline int fdt_status_disabled(void *fdt, int nodeoffset)
{ {
return fdt_set_node_status(fdt, nodeoffset, FDT_STATUS_DISABLED, 0); return fdt_set_node_status(fdt, nodeoffset, FDT_STATUS_DISABLED);
} }
static inline int fdt_status_fail(void *fdt, int nodeoffset) static inline int fdt_status_fail(void *fdt, int nodeoffset)
{ {
return fdt_set_node_status(fdt, nodeoffset, FDT_STATUS_FAIL, 0); return fdt_set_node_status(fdt, nodeoffset, FDT_STATUS_FAIL);
} }
int fdt_set_status_by_alias(void *fdt, const char *alias, int fdt_set_status_by_alias(void *fdt, const char *alias,
enum fdt_status status, unsigned int error_code); enum fdt_status status);
static inline int fdt_status_okay_by_alias(void *fdt, const char *alias) static inline int fdt_status_okay_by_alias(void *fdt, const char *alias)
{ {
return fdt_set_status_by_alias(fdt, alias, FDT_STATUS_OKAY, 0); return fdt_set_status_by_alias(fdt, alias, FDT_STATUS_OKAY);
} }
static inline int fdt_status_disabled_by_alias(void *fdt, const char *alias) static inline int fdt_status_disabled_by_alias(void *fdt, const char *alias)
{ {
return fdt_set_status_by_alias(fdt, alias, FDT_STATUS_DISABLED, 0); return fdt_set_status_by_alias(fdt, alias, FDT_STATUS_DISABLED);
} }
static inline int fdt_status_fail_by_alias(void *fdt, const char *alias) static inline int fdt_status_fail_by_alias(void *fdt, const char *alias)
{ {
return fdt_set_status_by_alias(fdt, alias, FDT_STATUS_FAIL, 0); return fdt_set_status_by_alias(fdt, alias, FDT_STATUS_FAIL);
} }
/* Helper to read a big number; size is in cells (not bytes) */ /* Helper to read a big number; size is in cells (not bytes) */