dm: core: Access device ofnode through functions

At present ofnode is present in the device even if it is never used. With
of-platdata this field is not used, so can be removed. In preparation for
this, change the access to go through inline functions.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass 2020-12-19 10:40:14 -07:00
parent 7d14ee443c
commit f10643cf8a
50 changed files with 113 additions and 82 deletions

View file

@ -81,7 +81,7 @@ static int stm32mp_pwr_bind(struct udevice *dev)
{
int children;
children = pmic_bind_children(dev, dev->node, pwr_children_info);
children = pmic_bind_children(dev, dev_ofnode(dev), pwr_children_info);
if (!children)
dev_dbg(dev, "no child found\n");

View file

@ -23,8 +23,8 @@ int soc_clk_ctl(const char *name, ulong *rate, enum clk_ctl_ops ctl)
/* Dummy fmeas device, just to be able to use standard clk_* api */
struct udevice fmeas = {
.name = "clk-fmeas",
.node = ofnode_path("/clk-fmeas"),
};
dev_set_ofnode(&fmeas, ofnode_path("/clk-fmeas"));
ret = clk_get_by_name(&fmeas, name, &clk);
if (ret) {

View file

@ -68,7 +68,8 @@ static int mtk_ahci_parse_property(struct ahci_uc_priv *hpriv,
SYS_CFG_SATA_MSK, SYS_CFG_SATA_EN);
}
ofnode_read_u32(dev->node, "ports-implemented", &hpriv->port_map);
ofnode_read_u32(dev_ofnode(dev), "ports-implemented",
&hpriv->port_map);
return 0;
}

View file

@ -289,7 +289,7 @@ static int meson_clk_probe(struct udevice *dev)
{
struct meson_clk *priv = dev_get_priv(dev);
priv->map = syscon_node_to_regmap(dev_get_parent(dev)->node);
priv->map = syscon_node_to_regmap(dev_ofnode(dev_get_parent(dev)));
if (IS_ERR(priv->map))
return PTR_ERR(priv->map);

View file

@ -979,7 +979,7 @@ static int meson_clk_probe(struct udevice *dev)
{
struct meson_clk *priv = dev_get_priv(dev);
priv->map = syscon_node_to_regmap(dev_get_parent(dev)->node);
priv->map = syscon_node_to_regmap(dev_ofnode(dev_get_parent(dev)));
if (IS_ERR(priv->map))
return PTR_ERR(priv->map);

View file

@ -885,7 +885,7 @@ static int meson_clk_probe(struct udevice *dev)
{
struct meson_clk *priv = dev_get_priv(dev);
priv->map = syscon_node_to_regmap(dev_get_parent(dev)->node);
priv->map = syscon_node_to_regmap(dev_ofnode(dev_get_parent(dev)));
if (IS_ERR(priv->map))
return PTR_ERR(priv->map);

View file

@ -68,7 +68,7 @@ static int device_bind_common(struct udevice *parent, const struct driver *drv,
dev_set_plat(dev, plat);
dev->driver_data = driver_data;
dev->name = name;
dev->node = node;
dev_set_ofnode(dev, node);
dev->parent = parent;
dev->driver = drv;
dev->uclass = uc;

View file

@ -148,7 +148,7 @@ int dm_init(bool of_live)
if (ret)
return ret;
if (CONFIG_IS_ENABLED(OF_CONTROL))
DM_ROOT_NON_CONST->node = ofnode_root();
dev_set_ofnode(DM_ROOT_NON_CONST, ofnode_root());
ret = device_probe(DM_ROOT_NON_CONST);
if (ret)
return ret;

View file

@ -191,7 +191,7 @@ static int mpc8xxx_gpio_of_to_plat(struct udevice *dev)
u32 i;
u32 reg[4];
if (ofnode_read_bool(dev->node, "little-endian"))
if (ofnode_read_bool(dev_ofnode(dev), "little-endian"))
data->little_endian = true;
if (data->little_endian)
@ -257,7 +257,7 @@ static int mpc8xxx_gpio_probe(struct udevice *dev)
if (!str)
return -ENOMEM;
if (ofnode_device_is_compatible(dev->node, "fsl,qoriq-gpio")) {
if (ofnode_device_is_compatible(dev_ofnode(dev), "fsl,qoriq-gpio")) {
unsigned long gpibe = data->addr + sizeof(struct ccsr_gpio)
- sizeof(u32);

View file

@ -190,7 +190,7 @@ static int octeon_gpio_probe(struct udevice *dev)
GPIO_CONST_GPIOS_MASK;
} else {
priv->base = dev_remap_addr(dev);
uc_priv->gpio_count = ofnode_read_u32_default(dev->node,
uc_priv->gpio_count = ofnode_read_u32_default(dev_ofnode(dev),
"nr-gpios", 32);
}

View file

@ -54,7 +54,7 @@ struct swap_case_priv {
static int sandbox_swap_case_use_ea(const struct udevice *dev)
{
return !!ofnode_get_property(dev->node, "use-ea", NULL);
return !!ofnode_get_property(dev_ofnode(dev), "use-ea", NULL);
}
/* Please keep these macros in sync with ea_regs below */

View file

@ -3439,7 +3439,7 @@ static u32 xlate_voltage(u32 voltage)
*/
static bool octeontx_mmc_get_valid(struct udevice *dev)
{
const char *stat = ofnode_read_string(dev->node, "status");
const char *stat = ofnode_read_string(dev_ofnode(dev), "status");
if (!stat || !strncmp(stat, "ok", 2))
return true;
@ -3461,14 +3461,15 @@ static int octeontx_mmc_get_config(struct udevice *dev)
uint low, high;
char env_name[32];
int err;
ofnode node = dev->node;
ofnode node = dev_ofnode(dev);
int bus_width = 1;
ulong new_max_freq;
debug("%s(%s)", __func__, dev->name);
slot->cfg.name = dev->name;
slot->cfg.f_max = ofnode_read_s32_default(dev->node, "max-frequency",
slot->cfg.f_max = ofnode_read_s32_default(dev_ofnode(dev),
"max-frequency",
26000000);
snprintf(env_name, sizeof(env_name), "mmc_max_frequency%d",
slot->bus_id);
@ -3486,25 +3487,26 @@ static int octeontx_mmc_get_config(struct udevice *dev)
if (IS_ENABLED(CONFIG_ARCH_OCTEONTX2)) {
slot->hs400_tuning_block =
ofnode_read_s32_default(dev->node,
ofnode_read_s32_default(dev_ofnode(dev),
"marvell,hs400-tuning-block",
-1);
debug("%s(%s): mmc HS400 tuning block: %d\n", __func__,
dev->name, slot->hs400_tuning_block);
slot->hs200_tap_adj =
ofnode_read_s32_default(dev->node,
ofnode_read_s32_default(dev_ofnode(dev),
"marvell,hs200-tap-adjust", 0);
debug("%s(%s): hs200-tap-adjust: %d\n", __func__, dev->name,
slot->hs200_tap_adj);
slot->hs400_tap_adj =
ofnode_read_s32_default(dev->node,
ofnode_read_s32_default(dev_ofnode(dev),
"marvell,hs400-tap-adjust", 0);
debug("%s(%s): hs400-tap-adjust: %d\n", __func__, dev->name,
slot->hs400_tap_adj);
}
err = ofnode_read_u32_array(dev->node, "voltage-ranges", voltages, 2);
err = ofnode_read_u32_array(dev_ofnode(dev), "voltage-ranges",
voltages, 2);
if (err) {
slot->cfg.voltages = MMC_VDD_32_33 | MMC_VDD_33_34;
} else {
@ -3756,14 +3758,15 @@ static int octeontx_mmc_host_probe(struct udevice *dev)
pr_err("%s: No device tree information found\n", __func__);
return -1;
}
host->node = dev->node;
host->node = dev_ofnode(dev);
host->last_slotid = -1;
if (otx_is_platform(PLATFORM_ASIM))
host->is_asim = true;
if (otx_is_platform(PLATFORM_EMULATOR))
host->is_emul = true;
host->dma_wait_delay =
ofnode_read_u32_default(dev->node, "marvell,dma-wait-delay", 1);
ofnode_read_u32_default(dev_ofnode(dev),
"marvell,dma-wait-delay", 1);
/* Force reset of eMMC */
writeq(0, host->base_addr + MIO_EMM_CFG());
debug("%s: Clearing MIO_EMM_CFG\n", __func__);
@ -3824,7 +3827,7 @@ static int octeontx_mmc_host_child_pre_probe(struct udevice *dev)
struct octeontx_mmc_host *host = dev_get_priv(dev_get_parent(dev));
struct octeontx_mmc_slot *slot;
struct mmc_uclass_priv *upriv;
ofnode node = dev->node;
ofnode node = dev_ofnode(dev);
u32 bus_id;
char name[16];
int err;

View file

@ -1999,7 +1999,7 @@ static int octeontx_nfc_chip_init(struct octeontx_nfc *tn, struct udevice *dev,
static int octeontx_nfc_chips_init(struct octeontx_nfc *tn)
{
struct udevice *dev = tn->dev;
ofnode node = dev->node;
ofnode node = dev_ofnode(dev);
ofnode nand_node;
int nr_chips = of_get_child_count(node);
int ret;

View file

@ -1173,7 +1173,7 @@ static int spinand_probe(struct udevice *dev)
return -ENOMEM;
sprintf(mtd->name, "spi-nand%d", spi_nand_idx++);
spinand->slave = slave;
spinand_set_ofnode(spinand, dev->node);
spinand_set_ofnode(spinand, dev_ofnode(dev));
#endif
ret = spinand_init(spinand);

View file

@ -957,7 +957,7 @@ phy_interface_t fman_read_sys_if(struct udevice *dev)
{
const char *if_str;
if_str = ofnode_read_string(dev->node, "phy-connection-type");
if_str = ofnode_read_string(dev_ofnode(dev), "phy-connection-type");
debug("MAC system interface mode %s\n", if_str);
return phy_get_interface_by_name(if_str);
@ -969,7 +969,7 @@ static int fm_eth_bind(struct udevice *dev)
char mac_name[11];
u32 fm, num;
if (ofnode_read_u32(ofnode_get_parent(dev->node), "cell-index", &fm)) {
if (ofnode_read_u32(ofnode_get_parent(dev_ofnode(dev)), "cell-index", &fm)) {
printf("FMan node property cell-index missing\n");
return -EINVAL;
}

View file

@ -99,7 +99,7 @@ static int enetc_bind(struct udevice *dev)
* and some are not, use different naming scheme - enetc-N based on
* PCI function # and enetc#N based on interface count
*/
if (ofnode_valid(dev->node))
if (ofnode_valid(dev_ofnode(dev)))
sprintf(name, "enetc-%u", PCI_FUNC(pci_get_devfn(dev)));
else
sprintf(name, "enetc#%u", eth_num_devices++);
@ -253,12 +253,12 @@ static void enetc_start_pcs(struct udevice *dev)
mdio_register(&priv->imdio);
}
if (!ofnode_valid(dev->node)) {
if (!ofnode_valid(dev_ofnode(dev))) {
enetc_dbg(dev, "no enetc ofnode found, skipping PCS set-up\n");
return;
}
if_str = ofnode_read_string(dev->node, "phy-mode");
if_str = ofnode_read_string(dev_ofnode(dev), "phy-mode");
if (if_str)
priv->if_type = phy_get_interface_by_name(if_str);
else
@ -306,7 +306,7 @@ static int enetc_probe(struct udevice *dev)
{
struct enetc_priv *priv = dev_get_priv(dev);
if (ofnode_valid(dev->node) && !ofnode_is_available(dev->node)) {
if (ofnode_valid(dev_ofnode(dev)) && !ofnode_is_available(dev_ofnode(dev))) {
enetc_dbg(dev, "interface disabled\n");
return -ENODEV;
}

View file

@ -112,7 +112,7 @@ static int enetc_mdio_bind(struct udevice *dev)
* and some are not, use different naming scheme - enetc-N based on
* PCI function # and enetc#N based on interface count
*/
if (ofnode_valid(dev->node))
if (ofnode_valid(dev_ofnode(dev)))
sprintf(name, "emdio-%u", PCI_FUNC(pci_get_devfn(dev)));
else
sprintf(name, "emdio#%u", eth_num_devices++);

View file

@ -107,8 +107,8 @@ static const struct mdio_ops ipq4019_mdio_ops = {
static int ipq4019_mdio_bind(struct udevice *dev)
{
if (ofnode_valid(dev->node))
device_set_name(dev, ofnode_get_name(dev->node));
if (ofnode_valid(dev_ofnode(dev)))
device_set_name(dev, ofnode_get_name(dev_ofnode(dev)));
return 0;
}

View file

@ -61,7 +61,7 @@ static int mdio_mux_i2creg_probe(struct udevice *dev)
}
/* parent should be an I2C chip, grandparent should be an I2C bus */
chip_node = ofnode_get_parent(dev->node);
chip_node = ofnode_get_parent(dev_ofnode(dev));
bus_node = ofnode_get_parent(chip_node);
err = uclass_get_device_by_ofnode(UCLASS_I2C, bus_node, &i2c_bus);

View file

@ -197,8 +197,8 @@ static int mvmdio_write(struct udevice *dev, int addr, int devad, int reg,
*/
static int mvmdio_bind(struct udevice *dev)
{
if (ofnode_valid(dev->node))
device_set_name(dev, ofnode_get_name(dev->node));
if (ofnode_valid(dev_ofnode(dev)))
device_set_name(dev, ofnode_get_name(dev_ofnode(dev)));
return 0;
}

View file

@ -313,7 +313,7 @@ read_error:
int octeontx_smi_probe(struct udevice *dev)
{
int ret, subnode, cnt = 0, node = dev->node.of_offset;
int ret, subnode, cnt = 0, node = dev_ofnode(dev).of_offset;
struct mii_dev *bus;
struct octeontx_smi_priv *priv;
pci_dev_t bdf = dm_pci_get_bdf(dev);

View file

@ -707,7 +707,8 @@ static int init_phy(struct tsec_private *priv)
tsec_configure_serdes(priv);
#if defined(CONFIG_DM_ETH) && defined(CONFIG_DM_MDIO)
if (ofnode_valid(ofnode_find_subnode(priv->dev->node, "fixed-link")))
if (ofnode_valid(ofnode_find_subnode(dev_ofnode(priv->dev),
"fixed-link")))
phydev = phy_connect(NULL, 0, priv->dev, priv->interface);
else
phydev = dm_eth_phy_connect(priv->dev);

View file

@ -344,7 +344,7 @@ static int serdes_am654_bind(struct udevice *dev)
ret = device_bind_driver_to_node(dev->parent,
"ti-serdes-am654-mux-clk",
dev_read_name(dev), dev->node,
dev_read_name(dev), dev_ofnode(dev),
NULL);
if (ret) {
dev_err(dev, "%s: not able to bind clock driver\n", __func__);

View file

@ -397,11 +397,11 @@ static int meson_ee_pwrc_probe(struct udevice *dev)
if (!priv->data)
return -EINVAL;
priv->regmap_hhi = syscon_node_to_regmap(dev_get_parent(dev)->node);
priv->regmap_hhi = syscon_node_to_regmap(dev_ofnode(dev_get_parent(dev)));
if (IS_ERR(priv->regmap_hhi))
return PTR_ERR(priv->regmap_hhi);
ret = ofnode_read_u32(dev->node, "amlogic,ao-sysctrl",
ret = ofnode_read_u32(dev_ofnode(dev), "amlogic,ao-sysctrl",
&ao_phandle);
if (ret)
return ret;

View file

@ -300,11 +300,11 @@ static int meson_gx_pwrc_vpu_probe(struct udevice *dev)
ofnode hhi_node;
int ret;
priv->regmap_ao = syscon_node_to_regmap(dev_get_parent(dev)->node);
priv->regmap_ao = syscon_node_to_regmap(dev_ofnode(dev_get_parent(dev)));
if (IS_ERR(priv->regmap_ao))
return PTR_ERR(priv->regmap_ao);
ret = ofnode_read_u32(dev->node, "amlogic,hhi-sysctrl",
ret = ofnode_read_u32(dev_ofnode(dev), "amlogic,hhi-sysctrl",
&hhi_phandle);
if (ret)
return ret;

View file

@ -103,7 +103,8 @@ static int pbias_bind(struct udevice *dev)
{
int children;
children = pmic_bind_children(dev, dev->node, pmic_children_info);
children = pmic_bind_children(dev, dev_ofnode(dev),
pmic_children_info);
if (!children)
debug("%s: %s - no child found\n", __func__, dev->name);

View file

@ -304,13 +304,14 @@ static int meson_pwm_probe(struct udevice *dev)
if (strcmp(cdev->driver->name, "fixed_rate_clock"))
continue;
str = ofnode_read_string(cdev->node, "clock-output-names");
str = ofnode_read_string(dev_ofnode(cdev),
"clock-output-names");
if (!str)
continue;
if (!strcmp(str, "xtal")) {
err = uclass_get_device_by_ofnode(UCLASS_CLK,
cdev->node,
dev_ofnode(cdev),
&cdev);
if (err) {
printf("%s%d: Failed to get xtal clk\n", __func__, i);
@ -345,7 +346,9 @@ static int meson_pwm_probe(struct udevice *dev)
return -EINVAL;
}
err = uclass_get_device_by_ofnode(UCLASS_CLK, cdev->node, &cdev);
err = uclass_get_device_by_ofnode(UCLASS_CLK,
dev_ofnode(cdev),
&cdev);
if (err) {
printf("%s%d: Failed to get clk controller\n", __func__, i);
return err;

View file

@ -148,7 +148,7 @@ static int socfpga_reset_bind(struct udevice *dev)
* Bind it to the node, too, so that it can get its base address.
*/
ret = device_bind_driver_to_node(dev, "socfpga_sysreset", "sysreset",
dev->node, &sys_child);
dev_ofnode(dev), &sys_child);
if (ret)
debug("Warning: No sysreset driver: ret=%d\n", ret);

View file

@ -460,8 +460,10 @@ static int fsl_dspi_child_pre_probe(struct udevice *dev)
return -EINVAL;
}
ofnode_read_u32(dev->node, "fsl,spi-cs-sck-delay", &cs_sck_delay);
ofnode_read_u32(dev->node, "fsl,spi-sck-cs-delay", &sck_cs_delay);
ofnode_read_u32(dev_ofnode(dev), "fsl,spi-cs-sck-delay",
&cs_sck_delay);
ofnode_read_u32(dev_ofnode(dev), "fsl,spi-sck-cs-delay",
&sck_cs_delay);
/* Set PCS to SCK delay scale values */
ns_delay_scale(&pcssck, &cssck, cs_sck_delay, priv->bus_clk);

View file

@ -592,7 +592,7 @@ static optee_invoke_fn *get_invoke_func(struct udevice *dev)
const char *method;
debug("optee: looking for conduit method in DT.\n");
method = ofnode_get_property(dev->node, "method", NULL);
method = ofnode_get_property(dev_ofnode(dev), "method", NULL);
if (!method) {
debug("optee: missing \"method\" property\n");
return ERR_PTR(-ENXIO);

View file

@ -110,7 +110,7 @@ static int cdns3_core_init_role(struct cdns3 *cdns)
enum usb_dr_mode dr_mode;
int ret = 0;
dr_mode = usb_get_dr_mode(dev->node);
dr_mode = usb_get_dr_mode(dev_ofnode(dev));
cdns->role = USB_ROLE_NONE;
/*
@ -393,7 +393,7 @@ int cdns3_bind(struct udevice *parent)
ofnode node;
int ret;
node = ofnode_by_compatible(parent->node, "cdns,usb3");
node = ofnode_by_compatible(dev_ofnode(parent), "cdns,usb3");
if (!ofnode_valid(node)) {
ret = -ENODEV;
goto fail;

View file

@ -905,7 +905,7 @@ void dwc3_of_parse(struct dwc3 *dwc)
*/
hird_threshold = 12;
dwc->hsphy_mode = usb_get_phy_mode(dev->node);
dwc->hsphy_mode = usb_get_phy_mode(dev_ofnode(dev));
dwc->has_lpm_erratum = dev_read_bool(dev,
"snps,has-lpm-erratum");

View file

@ -108,7 +108,7 @@ static int dwc3_generic_remove(struct udevice *dev,
static int dwc3_generic_of_to_plat(struct udevice *dev)
{
struct dwc3_generic_plat *plat = dev_get_plat(dev);
ofnode node = dev->node;
ofnode node = dev_ofnode(dev);
plat->base = dev_read_addr(dev);
@ -301,7 +301,7 @@ static int dwc3_glue_bind(struct udevice *parent)
ofnode node;
int ret;
ofnode_for_each_subnode(node, parent->node) {
ofnode_for_each_subnode(node, dev_ofnode(parent)) {
const char *name = ofnode_get_name(node);
enum usb_dr_mode dr_mode;
struct udevice *dev;
@ -418,7 +418,7 @@ static int dwc3_glue_probe(struct udevice *dev)
while (child) {
enum usb_dr_mode dr_mode;
dr_mode = usb_get_dr_mode(child->node);
dr_mode = usb_get_dr_mode(dev_ofnode(child));
device_find_next_child(&child);
if (ops && ops->select_dr_mode)
ops->select_dr_mode(dev, index, dr_mode);

View file

@ -395,7 +395,7 @@ static int dwc3_meson_g12a_probe(struct udevice *dev)
}
#endif
priv->otg_mode = usb_get_dr_mode(dev->node);
priv->otg_mode = usb_get_dr_mode(dev_ofnode(dev));
ret = dwc3_meson_g12a_usb_init(priv);
if (ret)

View file

@ -338,7 +338,7 @@ static int dwc3_meson_gxl_probe(struct udevice *dev)
if (ret)
return ret;
priv->otg_mode = usb_get_dr_mode(dev->node);
priv->otg_mode = usb_get_dr_mode(dev_ofnode(dev));
if (priv->otg_mode == USB_DR_MODE_PERIPHERAL)
priv->otg_phy_mode = USB_DR_MODE_PERIPHERAL;

View file

@ -987,8 +987,8 @@ static int dwc2_udc_otg_of_to_plat(struct udevice *dev)
void (*set_params)(struct dwc2_plat_otg_data *data);
int ret;
if (usb_get_dr_mode(dev->node) != USB_DR_MODE_PERIPHERAL &&
usb_get_dr_mode(dev->node) != USB_DR_MODE_OTG) {
if (usb_get_dr_mode(dev_ofnode(dev)) != USB_DR_MODE_PERIPHERAL &&
usb_get_dr_mode(dev_ofnode(dev)) != USB_DR_MODE_OTG) {
dev_dbg(dev, "Invalid mode\n");
return -ENODEV;
}

View file

@ -366,7 +366,7 @@ static int octeon_dwc3_glue_bind(struct udevice *dev)
/* Find snps,dwc3 node from subnode */
dwc3_node = ofnode_null();
ofnode_for_each_subnode(node, dev->node) {
ofnode_for_each_subnode(node, dev_ofnode(dev)) {
if (ofnode_device_is_compatible(node, "snps,dwc3"))
dwc3_node = node;
}

View file

@ -108,7 +108,8 @@ static int sti_dwc3_glue_of_to_plat(struct udevice *dev)
int ret;
u32 reg[4];
ret = ofnode_read_u32_array(dev->node, "reg", reg, ARRAY_SIZE(reg));
ret = ofnode_read_u32_array(dev_ofnode(dev), "reg", reg,
ARRAY_SIZE(reg));
if (ret) {
pr_err("unable to find st,stih407-dwc3 reg property(%d)\n", ret);
return ret;
@ -154,7 +155,7 @@ static int sti_dwc3_glue_bind(struct udevice *dev)
ofnode node, dwc3_node;
/* Find snps,dwc3 node from subnode */
ofnode_for_each_subnode(node, dev->node) {
ofnode_for_each_subnode(node, dev_ofnode(dev)) {
if (ofnode_device_is_compatible(node, "snps,dwc3"))
dwc3_node = node;
}

View file

@ -523,7 +523,7 @@ static int ehci_usb_of_to_plat(struct udevice *dev)
struct usb_plat *plat = dev_get_plat(dev);
enum usb_dr_mode dr_mode;
dr_mode = usb_get_dr_mode(dev->node);
dr_mode = usb_get_dr_mode(dev_ofnode(dev));
switch (dr_mode) {
case USB_DR_MODE_HOST:

View file

@ -155,7 +155,7 @@ static int xhci_dwc3_probe(struct udevice *dev)
writel(reg, &dwc3_reg->g_usb2phycfg[0]);
dr_mode = usb_get_dr_mode(dev->node);
dr_mode = usb_get_dr_mode(dev_ofnode(dev));
if (dr_mode == USB_DR_MODE_UNKNOWN)
/* by default set dual role mode to HOST */
dr_mode = USB_DR_MODE_HOST;

View file

@ -802,7 +802,7 @@ int ssusb_gadget_init(struct ssusb_mtk *ssusb)
mtu->ippc_base = ssusb->ippc_base;
mtu->mac_base = ssusb->mac_base;
mtu->ssusb = ssusb;
mtu->max_speed = usb_get_maximum_speed(dev->node);
mtu->max_speed = usb_get_maximum_speed(dev_ofnode(dev));
mtu->force_vbus = dev_read_bool(dev, "mediatek,force-vbus");
ret = mtu3_hw_init(mtu);

View file

@ -173,7 +173,7 @@ static int get_ssusb_rscs(struct udevice *dev, struct ssusb_mtk *ssusb)
return -ENODEV;
}
ssusb->dr_mode = usb_get_dr_mode(child->node);
ssusb->dr_mode = usb_get_dr_mode(dev_ofnode(child));
if (ssusb->dr_mode == USB_DR_MODE_UNKNOWN ||
ssusb->dr_mode == USB_DR_MODE_OTG)
@ -313,7 +313,7 @@ static int mtu3_glue_bind(struct udevice *parent)
ofnode node;
int ret;
node = ofnode_by_compatible(parent->node, "mediatek,ssusb");
node = ofnode_by_compatible(dev_ofnode(parent), "mediatek,ssusb");
if (!ofnode_valid(node))
return -ENODEV;

View file

@ -289,7 +289,7 @@ static int ti_musb_wrapper_bind(struct udevice *parent)
ofnode node;
int ret;
ofnode_for_each_subnode(node, parent->node) {
ofnode_for_each_subnode(node, dev_ofnode(parent)) {
struct udevice *dev;
const char *name = ofnode_get_name(node);
enum usb_dr_mode dr_mode;

View file

@ -416,7 +416,7 @@ static struct nx_display_dev *nx_display_setup(void)
__func__);
return NULL;
}
node = dev->node.of_offset;
node = dev_ofnode(dev).of_offset;
if (CONFIG_IS_ENABLED(OF_CONTROL)) {
ret = nx_display_parse_dt(dev, dp, plat);

View file

@ -119,7 +119,7 @@ int rk_mipi_dsi_enable(struct udevice *dev,
rk_mipi_dsi_write(regs, VID_PKT_SIZE, 0x4b0);
/* Set dpi color coding depth 24 bit */
timing_node = ofnode_find_subnode(dev->node, "display-timings");
timing_node = ofnode_find_subnode(dev_ofnode(dev), "display-timings");
node = ofnode_first_subnode(timing_node);
val = ofnode_read_u32_default(node, "bits-per-pixel", -1);

View file

@ -200,7 +200,11 @@ static inline void dev_bic_flags(struct udevice *dev, u32 bic)
*/
static inline ofnode dev_ofnode(const struct udevice *dev)
{
#if !CONFIG_IS_ENABLED(OF_PLATDATA)
return dev->node;
#else
return ofnode_null();
#endif
}
/* Returns non-zero if the device is active (probed and not removed) */
@ -208,12 +212,27 @@ static inline ofnode dev_ofnode(const struct udevice *dev)
static inline int dev_of_offset(const struct udevice *dev)
{
return ofnode_to_offset(dev->node);
#if !CONFIG_IS_ENABLED(OF_PLATDATA)
return ofnode_to_offset(dev_ofnode(dev));
#else
return -1;
#endif
}
static inline bool dev_has_ofnode(const struct udevice *dev)
{
return ofnode_valid(dev->node);
#if !CONFIG_IS_ENABLED(OF_PLATDATA)
return ofnode_valid(dev_ofnode(dev));
#else
return false;
#endif
}
static inline void dev_set_ofnode(struct udevice *dev, ofnode node)
{
#if !CONFIG_IS_ENABLED(OF_PLATDATA)
dev->node = node;
#endif
}
static inline int dev_seq(const struct udevice *dev)

View file

@ -21,7 +21,7 @@ struct resource;
#if CONFIG_IS_ENABLED(OF_LIVE)
static inline const struct device_node *dev_np(const struct udevice *dev)
{
return ofnode_to_np(dev->node);
return ofnode_to_np(dev_ofnode(dev));
}
#else
static inline const struct device_node *dev_np(const struct udevice *dev)

View file

@ -334,12 +334,12 @@ struct mtd_info {
#if IS_ENABLED(CONFIG_DM)
static inline void mtd_set_ofnode(struct mtd_info *mtd, ofnode node)
{
mtd->dev->node = node;
dev_set_ofnode(mtd->dev, node);
}
static inline const ofnode mtd_get_ofnode(struct mtd_info *mtd)
{
return mtd->dev->node;
return dev_ofnode(mtd->dev);
}
#else
struct device_node;

View file

@ -163,7 +163,7 @@ static int dm_mdio_mux_post_bind(struct udevice *mux)
ofnode ch_node;
int err, first_err = 0;
if (!ofnode_valid(mux->node)) {
if (!dev_has_ofnode(mux)) {
debug("%s: no mux node found, no child MDIO busses set up\n",
__func__);
return 0;

View file

@ -40,8 +40,8 @@ static int dm_mdio_post_bind(struct udevice *dev)
const char *dt_name;
/* set a custom name for the MDIO device, if present in DT */
if (ofnode_valid(dev->node)) {
dt_name = ofnode_read_string(dev->node, "device-name");
if (dev_has_ofnode(dev)) {
dt_name = dev_read_string(dev, "device-name");
if (dt_name) {
debug("renaming dev %s to %s\n", dev->name, dt_name);
device_set_name(dev, dt_name);
@ -182,14 +182,14 @@ struct phy_device *dm_eth_phy_connect(struct udevice *ethdev)
struct phy_device *phy;
int i;
if (!ofnode_valid(ethdev->node)) {
if (!dev_has_ofnode(ethdev)) {
debug("%s: supplied eth dev has no DT node!\n", ethdev->name);
return NULL;
}
interface = PHY_INTERFACE_MODE_NONE;
for (i = 0; i < PHY_MODE_STR_CNT; i++) {
if_str = ofnode_read_string(ethdev->node, phy_mode_str[i]);
if_str = dev_read_string(ethdev, phy_mode_str[i]);
if (if_str) {
interface = phy_get_interface_by_name(if_str);
break;