misc: fs_loader: Replace label with DT phandle
In previously label which will be expanded to the node's full path was used, and now replacing label with most commonly used DT phandle. The codes were changed accordingly to the use of DT phandle and supporting multiple instances. Signed-off-by: Tien Fong Chee <tien.fong.chee@intel.com>
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
/*
|
||||
* Copyright (C) 2018 Intel Corporation <www.intel.com>
|
||||
* Copyright (C) 2018-2019 Intel Corporation <www.intel.com>
|
||||
*
|
||||
*/
|
||||
#include <common.h>
|
||||
@@ -219,32 +219,26 @@ int request_firmware_into_buf(struct udevice *dev,
|
||||
|
||||
static int fs_loader_ofdata_to_platdata(struct udevice *dev)
|
||||
{
|
||||
const char *fs_loader_path;
|
||||
u32 phandlepart[2];
|
||||
|
||||
fs_loader_path = ofnode_get_chosen_prop("firmware-loader");
|
||||
ofnode fs_loader_node = dev_ofnode(dev);
|
||||
|
||||
if (fs_loader_path) {
|
||||
ofnode fs_loader_node;
|
||||
if (ofnode_valid(fs_loader_node)) {
|
||||
struct device_platdata *plat;
|
||||
|
||||
fs_loader_node = ofnode_path(fs_loader_path);
|
||||
if (ofnode_valid(fs_loader_node)) {
|
||||
struct device_platdata *plat;
|
||||
plat = dev->platdata;
|
||||
|
||||
if (!ofnode_read_u32_array(fs_loader_node,
|
||||
"phandlepart",
|
||||
phandlepart, 2)) {
|
||||
plat->phandlepart.phandle = phandlepart[0];
|
||||
plat->phandlepart.partition = phandlepart[1];
|
||||
}
|
||||
|
||||
plat->mtdpart = (char *)ofnode_read_string(
|
||||
fs_loader_node, "mtdpart");
|
||||
|
||||
plat->ubivol = (char *)ofnode_read_string(
|
||||
fs_loader_node, "ubivol");
|
||||
plat = dev->platdata;
|
||||
if (!ofnode_read_u32_array(fs_loader_node,
|
||||
"phandlepart",
|
||||
phandlepart, 2)) {
|
||||
plat->phandlepart.phandle = phandlepart[0];
|
||||
plat->phandlepart.partition = phandlepart[1];
|
||||
}
|
||||
|
||||
plat->mtdpart = (char *)ofnode_read_string(
|
||||
fs_loader_node, "mtdpart");
|
||||
|
||||
plat->ubivol = (char *)ofnode_read_string(
|
||||
fs_loader_node, "ubivol");
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
Reference in New Issue
Block a user