of/fdt: Remove dead code and mark functions with __init
Some functions in here are never called, and others are only called during __init. Remove the dead code and some dead exports for functions that don't exist (I'm looking at you of_fdt_get_string!). Mark some functions with __init so we can throw them away after we boot up and poke at the FDT blob too. Cc: Hsin-Yi Wang <hsinyi@chromium.org> Signed-off-by: Stephen Boyd <swboyd@chromium.org> Signed-off-by: Rob Herring <robh@kernel.org>
This commit is contained in:
parent
253a41c6fb
commit
9b4d2b635b
2 changed files with 5 additions and 43 deletions
|
@ -38,7 +38,7 @@
|
||||||
* memory entries in the /memory node. This function may be called
|
* memory entries in the /memory node. This function may be called
|
||||||
* any time after initial_boot_param is set.
|
* any time after initial_boot_param is set.
|
||||||
*/
|
*/
|
||||||
void of_fdt_limit_memory(int limit)
|
void __init of_fdt_limit_memory(int limit)
|
||||||
{
|
{
|
||||||
int memory;
|
int memory;
|
||||||
int len;
|
int len;
|
||||||
|
@ -110,25 +110,6 @@ static int of_fdt_is_compatible(const void *blob,
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* of_fdt_is_big_endian - Return true if given node needs BE MMIO accesses
|
|
||||||
* @blob: A device tree blob
|
|
||||||
* @node: node to test
|
|
||||||
*
|
|
||||||
* Returns true if the node has a "big-endian" property, or if the kernel
|
|
||||||
* was compiled for BE *and* the node has a "native-endian" property.
|
|
||||||
* Returns false otherwise.
|
|
||||||
*/
|
|
||||||
bool of_fdt_is_big_endian(const void *blob, unsigned long node)
|
|
||||||
{
|
|
||||||
if (fdt_getprop(blob, node, "big-endian", NULL))
|
|
||||||
return true;
|
|
||||||
if (IS_ENABLED(CONFIG_CPU_BIG_ENDIAN) &&
|
|
||||||
fdt_getprop(blob, node, "native-endian", NULL))
|
|
||||||
return true;
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
static bool of_fdt_device_is_available(const void *blob, unsigned long node)
|
static bool of_fdt_device_is_available(const void *blob, unsigned long node)
|
||||||
{
|
{
|
||||||
const char *status = fdt_getprop(blob, node, "status", NULL);
|
const char *status = fdt_getprop(blob, node, "status", NULL);
|
||||||
|
@ -145,7 +126,7 @@ static bool of_fdt_device_is_available(const void *blob, unsigned long node)
|
||||||
/**
|
/**
|
||||||
* of_fdt_match - Return true if node matches a list of compatible values
|
* of_fdt_match - Return true if node matches a list of compatible values
|
||||||
*/
|
*/
|
||||||
int of_fdt_match(const void *blob, unsigned long node,
|
static int __init of_fdt_match(const void *blob, unsigned long node,
|
||||||
const char *const *compat)
|
const char *const *compat)
|
||||||
{
|
{
|
||||||
unsigned int tmp, score = 0;
|
unsigned int tmp, score = 0;
|
||||||
|
@ -758,7 +739,7 @@ int __init of_scan_flat_dt_subnodes(unsigned long parent,
|
||||||
* @return offset of the subnode, or -FDT_ERR_NOTFOUND if there is none
|
* @return offset of the subnode, or -FDT_ERR_NOTFOUND if there is none
|
||||||
*/
|
*/
|
||||||
|
|
||||||
int of_get_flat_dt_subnode_by_name(unsigned long node, const char *uname)
|
int __init of_get_flat_dt_subnode_by_name(unsigned long node, const char *uname)
|
||||||
{
|
{
|
||||||
return fdt_subnode_offset(initial_boot_params, node, uname);
|
return fdt_subnode_offset(initial_boot_params, node, uname);
|
||||||
}
|
}
|
||||||
|
@ -771,14 +752,6 @@ unsigned long __init of_get_flat_dt_root(void)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* of_get_flat_dt_size - Return the total size of the FDT
|
|
||||||
*/
|
|
||||||
int __init of_get_flat_dt_size(void)
|
|
||||||
{
|
|
||||||
return fdt_totalsize(initial_boot_params);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* of_get_flat_dt_prop - Given a node in the flat blob, return the property ptr
|
* of_get_flat_dt_prop - Given a node in the flat blob, return the property ptr
|
||||||
*
|
*
|
||||||
|
@ -804,7 +777,7 @@ int __init of_flat_dt_is_compatible(unsigned long node, const char *compat)
|
||||||
/**
|
/**
|
||||||
* of_flat_dt_match - Return true if node matches a list of compatible values
|
* of_flat_dt_match - Return true if node matches a list of compatible values
|
||||||
*/
|
*/
|
||||||
int __init of_flat_dt_match(unsigned long node, const char *const *compat)
|
static int __init of_flat_dt_match(unsigned long node, const char *const *compat)
|
||||||
{
|
{
|
||||||
return of_fdt_match(initial_boot_params, node, compat);
|
return of_fdt_match(initial_boot_params, node, compat);
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,15 +23,6 @@
|
||||||
struct device_node;
|
struct device_node;
|
||||||
|
|
||||||
/* For scanning an arbitrary device-tree at any time */
|
/* For scanning an arbitrary device-tree at any time */
|
||||||
extern char *of_fdt_get_string(const void *blob, u32 offset);
|
|
||||||
extern void *of_fdt_get_property(const void *blob,
|
|
||||||
unsigned long node,
|
|
||||||
const char *name,
|
|
||||||
int *size);
|
|
||||||
extern bool of_fdt_is_big_endian(const void *blob,
|
|
||||||
unsigned long node);
|
|
||||||
extern int of_fdt_match(const void *blob, unsigned long node,
|
|
||||||
const char *const *compat);
|
|
||||||
extern void *of_fdt_unflatten_tree(const unsigned long *blob,
|
extern void *of_fdt_unflatten_tree(const unsigned long *blob,
|
||||||
struct device_node *dad,
|
struct device_node *dad,
|
||||||
struct device_node **mynodes);
|
struct device_node **mynodes);
|
||||||
|
@ -64,9 +55,7 @@ extern int of_get_flat_dt_subnode_by_name(unsigned long node,
|
||||||
extern const void *of_get_flat_dt_prop(unsigned long node, const char *name,
|
extern const void *of_get_flat_dt_prop(unsigned long node, const char *name,
|
||||||
int *size);
|
int *size);
|
||||||
extern int of_flat_dt_is_compatible(unsigned long node, const char *name);
|
extern int of_flat_dt_is_compatible(unsigned long node, const char *name);
|
||||||
extern int of_flat_dt_match(unsigned long node, const char *const *matches);
|
|
||||||
extern unsigned long of_get_flat_dt_root(void);
|
extern unsigned long of_get_flat_dt_root(void);
|
||||||
extern int of_get_flat_dt_size(void);
|
|
||||||
extern uint32_t of_get_flat_dt_phandle(unsigned long node);
|
extern uint32_t of_get_flat_dt_phandle(unsigned long node);
|
||||||
|
|
||||||
extern int early_init_dt_scan_chosen(unsigned long node, const char *uname,
|
extern int early_init_dt_scan_chosen(unsigned long node, const char *uname,
|
||||||
|
|
Loading…
Add table
Reference in a new issue