Merge tag 'devicetree-for-4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux
Pull Devicetree updates from Rob Herring: "The biggest highlight here is the start of using json-schema for DT bindings. Being able to validate bindings has been discussed for years with little progress. - Initial support for DT bindings using json-schema language. This is the start of converting DT bindings from free-form text to a structured format. - Reworking of initrd address initialization. This moves to using the phys address instead of virt addr in the DT parsing code. This rework was motivated by CONFIG_DEV_BLK_INITRD causing unnecessary rebuilding of lots of files. - Fix stale phandle entries in phandle cache - DT overlay validation improvements. This exposed several memory leak bugs which have been fixed. - Use node name and device_type helper functions in DT code - Last remaining conversions to using %pOFn printk specifier instead of device_node.name directly - Create new common RTC binding doc and move all trivial RTC devices out of trivial-devices.txt. - New bindings for Freescale MAG3110 magnetometer, Cadence Sierra PHY, and Xen shared memory - Update dtc to upstream version v1.4.7-57-gf267e674d145" * tag 'devicetree-for-4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (68 commits) of: __of_detach_node() - remove node from phandle cache of: of_node_get()/of_node_put() nodes held in phandle cache gpio-omap.txt: add reg and interrupts properties dt-bindings: mrvl,intc: fix a trivial typo dt-bindings: iio: magnetometer: add dt-bindings for freescale mag3110 dt-bindings: Convert trivial-devices.txt to json-schema dt-bindings: arm: mrvl: amend Browstone compatible string dt-bindings: arm: Convert Tegra board/soc bindings to json-schema dt-bindings: arm: Convert ZTE board/soc bindings to json-schema dt-bindings: arm: Add missing Xilinx boards dt-bindings: arm: Convert Xilinx board/soc bindings to json-schema dt-bindings: arm: Convert VIA board/soc bindings to json-schema dt-bindings: arm: Convert ST STi board/soc bindings to json-schema dt-bindings: arm: Convert SPEAr board/soc bindings to json-schema dt-bindings: arm: Convert CSR SiRF board/soc bindings to json-schema dt-bindings: arm: Convert QCom board/soc bindings to json-schema dt-bindings: arm: Convert TI nspire board/soc bindings to json-schema dt-bindings: arm: Convert TI davinci board/soc bindings to json-schema dt-bindings: arm: Convert Calxeda board/soc bindings to json-schema dt-bindings: arm: Convert Altera board/soc bindings to json-schema ...
This commit is contained in:
@@ -2146,8 +2146,8 @@ static int gpmc_probe_generic_child(struct platform_device *pdev,
|
||||
gpmc_s.device_width = GPMC_DEVWIDTH_16BIT;
|
||||
break;
|
||||
default:
|
||||
dev_err(&pdev->dev, "%s: invalid 'nand-bus-width'\n",
|
||||
child->name);
|
||||
dev_err(&pdev->dev, "%pOFn: invalid 'nand-bus-width'\n",
|
||||
child);
|
||||
ret = -EINVAL;
|
||||
goto err;
|
||||
}
|
||||
@@ -2188,8 +2188,8 @@ static int gpmc_probe_generic_child(struct platform_device *pdev,
|
||||
|
||||
ret = gpmc_cs_set_timings(cs, &gpmc_t, &gpmc_s);
|
||||
if (ret) {
|
||||
dev_err(&pdev->dev, "failed to set gpmc timings for: %s\n",
|
||||
child->name);
|
||||
dev_err(&pdev->dev, "failed to set gpmc timings for: %pOFn\n",
|
||||
child);
|
||||
goto err_cs;
|
||||
}
|
||||
|
||||
@@ -2217,7 +2217,7 @@ no_timings:
|
||||
|
||||
err_child_fail:
|
||||
|
||||
dev_err(&pdev->dev, "failed to create gpmc child %s\n", child->name);
|
||||
dev_err(&pdev->dev, "failed to create gpmc child %pOFn\n", child);
|
||||
ret = -ENODEV;
|
||||
|
||||
err_cs:
|
||||
@@ -2267,14 +2267,10 @@ static void gpmc_probe_dt_children(struct platform_device *pdev)
|
||||
struct device_node *child;
|
||||
|
||||
for_each_available_child_of_node(pdev->dev.of_node, child) {
|
||||
|
||||
if (!child->name)
|
||||
continue;
|
||||
|
||||
ret = gpmc_probe_generic_child(pdev, child);
|
||||
if (ret) {
|
||||
dev_err(&pdev->dev, "failed to probe DT child '%s': %d\n",
|
||||
child->name, ret);
|
||||
dev_err(&pdev->dev, "failed to probe DT child '%pOFn': %d\n",
|
||||
child, ret);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -139,8 +139,8 @@ static int exynos_srom_probe(struct platform_device *pdev)
|
||||
for_each_child_of_node(np, child) {
|
||||
if (exynos_srom_configure_bank(srom, child)) {
|
||||
dev_err(dev,
|
||||
"Could not decode bank configuration for %s\n",
|
||||
child->name);
|
||||
"Could not decode bank configuration for %pOFn\n",
|
||||
child);
|
||||
bad_bank_config = true;
|
||||
}
|
||||
}
|
||||
|
@@ -345,7 +345,7 @@ static int load_one_timing(struct tegra_mc *mc,
|
||||
err = of_property_read_u32(node, "clock-frequency", &tmp);
|
||||
if (err) {
|
||||
dev_err(mc->dev,
|
||||
"timing %s: failed to read rate\n", node->name);
|
||||
"timing %pOFn: failed to read rate\n", node);
|
||||
return err;
|
||||
}
|
||||
|
||||
@@ -360,8 +360,8 @@ static int load_one_timing(struct tegra_mc *mc,
|
||||
mc->soc->num_emem_regs);
|
||||
if (err) {
|
||||
dev_err(mc->dev,
|
||||
"timing %s: failed to read EMEM configuration\n",
|
||||
node->name);
|
||||
"timing %pOFn: failed to read EMEM configuration\n",
|
||||
node);
|
||||
return err;
|
||||
}
|
||||
|
||||
|
@@ -888,8 +888,8 @@ static int load_one_timing_from_dt(struct tegra_emc *emc,
|
||||
|
||||
err = of_property_read_u32(node, "clock-frequency", &value);
|
||||
if (err) {
|
||||
dev_err(emc->dev, "timing %s: failed to read rate: %d\n",
|
||||
node->name, err);
|
||||
dev_err(emc->dev, "timing %pOFn: failed to read rate: %d\n",
|
||||
node, err);
|
||||
return err;
|
||||
}
|
||||
|
||||
@@ -900,16 +900,16 @@ static int load_one_timing_from_dt(struct tegra_emc *emc,
|
||||
ARRAY_SIZE(timing->emc_burst_data));
|
||||
if (err) {
|
||||
dev_err(emc->dev,
|
||||
"timing %s: failed to read emc burst data: %d\n",
|
||||
node->name, err);
|
||||
"timing %pOFn: failed to read emc burst data: %d\n",
|
||||
node, err);
|
||||
return err;
|
||||
}
|
||||
|
||||
#define EMC_READ_PROP(prop, dtprop) { \
|
||||
err = of_property_read_u32(node, dtprop, &timing->prop); \
|
||||
if (err) { \
|
||||
dev_err(emc->dev, "timing %s: failed to read " #prop ": %d\n", \
|
||||
node->name, err); \
|
||||
dev_err(emc->dev, "timing %pOFn: failed to read " #prop ": %d\n", \
|
||||
node, err); \
|
||||
return err; \
|
||||
} \
|
||||
}
|
||||
|
Reference in New Issue
Block a user