mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 18:51:56 -04:00
Devicetree updates for 4.20:
- Sync dtc with upstream version v1.4.7-14-gc86da84d30e4
- Work to get rid of direct accesses to struct device_node name and
type pointers in preparation for removing them. New helpers for
parsing DT cpu nodes and conversions to use the helpers. printk
conversions to %pOFn for printing DT node names. Most went thru
subystem trees, so this is the remainder.
- Fixes to DT child node lookups to actually be restricted to child
nodes instead of treewide.
- Refactoring of dtb targets out of arch code. This makes the support
more uniform and enables building all dtbs on c6x, microblaze, and
powerpc.
- Various DT binding updates for Renesas r8a7744 SoC
- Vendor prefixes for Facebook, OLPC
- Restructuring of some ARM binding docs moving some peripheral bindings
out of board/SoC binding files
- New "secure-chosen" binding for secure world settings on ARM
- Dual licensing of 2 DT IRQ binding headers
-----BEGIN PGP SIGNATURE-----
iQJEBAABCgAuFiEEktVUI4SxYhzZyEuo+vtdtY28YcMFAlvTKWYQHHJvYmhAa2Vy
bmVsLm9yZwAKCRD6+121jbxhw8J5EACMAnrTxWQmXfQXOZEVxztcFavH6LP8mh2e
7FZIZ38jzHXXvl81tAg1nBhzFUU/qtvqW8NDCZ9OBxKvp6PFDNhWu241ZodSB1Kw
MZWy2A9QC+qbHYCC+SB5gOT0+Py3v7LNCBa5/TxhbFd35THJM8X0FP7gmcCGX593
9Ml1rqawT4mK5XmCpczT0cXxyC4TgVtpfDWZH2KgJTR/kwXVQlOQOGZ8a1y/wrt7
8TLIe7Qy4SFRzjhwbSta1PUehyYfe4uTSsXIJ84kMvNMxinLXQtvd7t9TfsK8p/R
WjYUneJskVjtxVrMQfdV4MxyFL1YEt2mYcr0PMKIWxMCgGDAZsHPoUZmjyh/PrCI
uiZtEHn3fXpUZAV/xEHHNirJxYyQfHGiksAT+lPrUXYYLCcZ3ZmqiTEYhGoQAfH5
CQPMuxA6yXxp6bov6zJwZSTZtkXciju8aQRhUhlxIfHTqezmGYeql/bnWd+InNuR
upANLZBh6D2jTWzDyobconkCCLlVkSqDoqOx725mMl6hIcdH9d2jVX7hwRf077VI
5i3CyPSJOkSOLSdB8bAPYfBoaDtH2bthxieUrkkSbIjbwHO1H6a2lxPeG/zah0a3
ePMGhi7J84UM4VpJEi000cP+bhPumJtJrG7zxP7ldXdfAF436sQ6KRptlcpLpj5i
IwMhUQNH+g==
=335v
-----END PGP SIGNATURE-----
Merge tag 'devicetree-for-4.20' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux
Pull Devicetree updates from Rob Herring:
"A bit bigger than normal as I've been busy this cycle.
There's a few things with dependencies and a few things subsystem
maintainers didn't pick up, so I'm taking them thru my tree.
The fixes from Johan didn't get into linux-next, but they've been
waiting for some time now and they are what's left of what subsystem
maintainers didn't pick up.
Summary:
- Sync dtc with upstream version v1.4.7-14-gc86da84d30e4
- Work to get rid of direct accesses to struct device_node name and
type pointers in preparation for removing them. New helpers for
parsing DT cpu nodes and conversions to use the helpers. printk
conversions to %pOFn for printing DT node names. Most went thru
subystem trees, so this is the remainder.
- Fixes to DT child node lookups to actually be restricted to child
nodes instead of treewide.
- Refactoring of dtb targets out of arch code. This makes the support
more uniform and enables building all dtbs on c6x, microblaze, and
powerpc.
- Various DT binding updates for Renesas r8a7744 SoC
- Vendor prefixes for Facebook, OLPC
- Restructuring of some ARM binding docs moving some peripheral
bindings out of board/SoC binding files
- New "secure-chosen" binding for secure world settings on ARM
- Dual licensing of 2 DT IRQ binding headers"
* tag 'devicetree-for-4.20' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (78 commits)
ARM: dt: relicense two DT binding IRQ headers
power: supply: twl4030-charger: fix OF sibling-node lookup
NFC: nfcmrvl_uart: fix OF child-node lookup
net: stmmac: dwmac-sun8i: fix OF child-node lookup
net: bcmgenet: fix OF child-node lookup
drm/msm: fix OF child-node lookup
drm/mediatek: fix OF sibling-node lookup
of: Add missing exports of node name compare functions
dt-bindings: Add OLPC vendor prefix
dt-bindings: misc: bk4: Add device tree binding for Liebherr's BK4 SPI bus
dt-bindings: thermal: samsung: Add SPDX license identifier
dt-bindings: clock: samsung: Add SPDX license identifiers
dt-bindings: timer: ostm: Add R7S9210 support
dt-bindings: phy: rcar-gen2: Add r8a7744 support
dt-bindings: can: rcar_can: Add r8a7744 support
dt-bindings: timer: renesas, cmt: Document r8a7744 CMT support
dt-bindings: watchdog: renesas-wdt: Document r8a7744 support
dt-bindings: thermal: rcar: Add device tree support for r8a7744
Documentation: dt: Add binding for /secure-chosen/stdout-path
dt-bindings: arm: zte: Move sysctrl bindings to their own doc
...
This commit is contained in:
commit
b27186abb3
140 changed files with 1736 additions and 1043 deletions
|
|
@ -383,7 +383,7 @@ int __init dove_init_pmu(void)
|
|||
|
||||
domains_node = of_get_child_by_name(np_pmu, "domains");
|
||||
if (!domains_node) {
|
||||
pr_err("%s: failed to find domains sub-node\n", np_pmu->name);
|
||||
pr_err("%pOFn: failed to find domains sub-node\n", np_pmu);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
@ -396,7 +396,7 @@ int __init dove_init_pmu(void)
|
|||
pmu->pmc_base = of_iomap(pmu->of_node, 0);
|
||||
pmu->pmu_base = of_iomap(pmu->of_node, 1);
|
||||
if (!pmu->pmc_base || !pmu->pmu_base) {
|
||||
pr_err("%s: failed to map PMU\n", np_pmu->name);
|
||||
pr_err("%pOFn: failed to map PMU\n", np_pmu);
|
||||
iounmap(pmu->pmu_base);
|
||||
iounmap(pmu->pmc_base);
|
||||
kfree(pmu);
|
||||
|
|
@ -414,7 +414,7 @@ int __init dove_init_pmu(void)
|
|||
break;
|
||||
|
||||
domain->pmu = pmu;
|
||||
domain->base.name = kstrdup(np->name, GFP_KERNEL);
|
||||
domain->base.name = kasprintf(GFP_KERNEL, "%pOFn", np);
|
||||
if (!domain->base.name) {
|
||||
kfree(domain);
|
||||
break;
|
||||
|
|
@ -444,7 +444,7 @@ int __init dove_init_pmu(void)
|
|||
/* Loss of the interrupt controller is not a fatal error. */
|
||||
parent_irq = irq_of_parse_and_map(pmu->of_node, 0);
|
||||
if (!parent_irq) {
|
||||
pr_err("%s: no interrupt specified\n", np_pmu->name);
|
||||
pr_err("%pOFn: no interrupt specified\n", np_pmu);
|
||||
} else {
|
||||
ret = dove_init_pmu_irq(pmu, parent_irq);
|
||||
if (ret)
|
||||
|
|
|
|||
|
|
@ -131,7 +131,7 @@ int ucc_of_parse_tdm(struct device_node *np, struct ucc_tdm *utdm,
|
|||
|
||||
pdev = of_find_device_by_node(np2);
|
||||
if (!pdev) {
|
||||
pr_err("%s: failed to lookup pdev\n", np2->name);
|
||||
pr_err("%pOFn: failed to lookup pdev\n", np2);
|
||||
of_node_put(np2);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
|
@ -153,7 +153,7 @@ int ucc_of_parse_tdm(struct device_node *np, struct ucc_tdm *utdm,
|
|||
pdev = of_find_device_by_node(np2);
|
||||
if (!pdev) {
|
||||
ret = -EINVAL;
|
||||
pr_err("%s: failed to lookup pdev\n", np2->name);
|
||||
pr_err("%pOFn: failed to lookup pdev\n", np2);
|
||||
of_node_put(np2);
|
||||
goto err_miss_siram_property;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -219,7 +219,7 @@ static int apr_add_device(struct device *dev, struct device_node *np,
|
|||
adev->domain_id = id->domain_id;
|
||||
adev->version = id->svc_version;
|
||||
if (np)
|
||||
strncpy(adev->name, np->name, APR_NAME_SIZE);
|
||||
snprintf(adev->name, APR_NAME_SIZE, "%pOFn", np);
|
||||
else
|
||||
strncpy(adev->name, id->name, APR_NAME_SIZE);
|
||||
|
||||
|
|
|
|||
|
|
@ -392,21 +392,21 @@ static int rockchip_pm_add_one_domain(struct rockchip_pmu *pmu,
|
|||
error = of_property_read_u32(node, "reg", &id);
|
||||
if (error) {
|
||||
dev_err(pmu->dev,
|
||||
"%s: failed to retrieve domain id (reg): %d\n",
|
||||
node->name, error);
|
||||
"%pOFn: failed to retrieve domain id (reg): %d\n",
|
||||
node, error);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (id >= pmu->info->num_domains) {
|
||||
dev_err(pmu->dev, "%s: invalid domain id %d\n",
|
||||
node->name, id);
|
||||
dev_err(pmu->dev, "%pOFn: invalid domain id %d\n",
|
||||
node, id);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
pd_info = &pmu->info->domain_info[id];
|
||||
if (!pd_info) {
|
||||
dev_err(pmu->dev, "%s: undefined domain id %d\n",
|
||||
node->name, id);
|
||||
dev_err(pmu->dev, "%pOFn: undefined domain id %d\n",
|
||||
node, id);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
|
|
@ -424,8 +424,8 @@ static int rockchip_pm_add_one_domain(struct rockchip_pmu *pmu,
|
|||
if (!pd->clks)
|
||||
return -ENOMEM;
|
||||
} else {
|
||||
dev_dbg(pmu->dev, "%s: doesn't have clocks: %d\n",
|
||||
node->name, pd->num_clks);
|
||||
dev_dbg(pmu->dev, "%pOFn: doesn't have clocks: %d\n",
|
||||
node, pd->num_clks);
|
||||
pd->num_clks = 0;
|
||||
}
|
||||
|
||||
|
|
@ -434,8 +434,8 @@ static int rockchip_pm_add_one_domain(struct rockchip_pmu *pmu,
|
|||
if (IS_ERR(pd->clks[i].clk)) {
|
||||
error = PTR_ERR(pd->clks[i].clk);
|
||||
dev_err(pmu->dev,
|
||||
"%s: failed to get clk at index %d: %d\n",
|
||||
node->name, i, error);
|
||||
"%pOFn: failed to get clk at index %d: %d\n",
|
||||
node, i, error);
|
||||
return error;
|
||||
}
|
||||
}
|
||||
|
|
@ -486,8 +486,8 @@ static int rockchip_pm_add_one_domain(struct rockchip_pmu *pmu,
|
|||
error = rockchip_pd_power(pd, true);
|
||||
if (error) {
|
||||
dev_err(pmu->dev,
|
||||
"failed to power on domain '%s': %d\n",
|
||||
node->name, error);
|
||||
"failed to power on domain '%pOFn': %d\n",
|
||||
node, error);
|
||||
goto err_unprepare_clocks;
|
||||
}
|
||||
|
||||
|
|
@ -575,24 +575,24 @@ static int rockchip_pm_add_subdomain(struct rockchip_pmu *pmu,
|
|||
error = of_property_read_u32(parent, "reg", &idx);
|
||||
if (error) {
|
||||
dev_err(pmu->dev,
|
||||
"%s: failed to retrieve domain id (reg): %d\n",
|
||||
parent->name, error);
|
||||
"%pOFn: failed to retrieve domain id (reg): %d\n",
|
||||
parent, error);
|
||||
goto err_out;
|
||||
}
|
||||
parent_domain = pmu->genpd_data.domains[idx];
|
||||
|
||||
error = rockchip_pm_add_one_domain(pmu, np);
|
||||
if (error) {
|
||||
dev_err(pmu->dev, "failed to handle node %s: %d\n",
|
||||
np->name, error);
|
||||
dev_err(pmu->dev, "failed to handle node %pOFn: %d\n",
|
||||
np, error);
|
||||
goto err_out;
|
||||
}
|
||||
|
||||
error = of_property_read_u32(np, "reg", &idx);
|
||||
if (error) {
|
||||
dev_err(pmu->dev,
|
||||
"%s: failed to retrieve domain id (reg): %d\n",
|
||||
np->name, error);
|
||||
"%pOFn: failed to retrieve domain id (reg): %d\n",
|
||||
np, error);
|
||||
goto err_out;
|
||||
}
|
||||
child_domain = pmu->genpd_data.domains[idx];
|
||||
|
|
@ -683,16 +683,16 @@ static int rockchip_pm_domain_probe(struct platform_device *pdev)
|
|||
for_each_available_child_of_node(np, node) {
|
||||
error = rockchip_pm_add_one_domain(pmu, node);
|
||||
if (error) {
|
||||
dev_err(dev, "failed to handle node %s: %d\n",
|
||||
node->name, error);
|
||||
dev_err(dev, "failed to handle node %pOFn: %d\n",
|
||||
node, error);
|
||||
of_node_put(node);
|
||||
goto err_out;
|
||||
}
|
||||
|
||||
error = rockchip_pm_add_subdomain(pmu, node);
|
||||
if (error < 0) {
|
||||
dev_err(dev, "failed to handle subdomain node %s: %d\n",
|
||||
node->name, error);
|
||||
dev_err(dev, "failed to handle subdomain node %pOFn: %d\n",
|
||||
node, error);
|
||||
of_node_put(node);
|
||||
goto err_out;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -796,7 +796,7 @@ static void tegra_powergate_add(struct tegra_pmc *pmc, struct device_node *np)
|
|||
|
||||
id = tegra_powergate_lookup(pmc, np->name);
|
||||
if (id < 0) {
|
||||
pr_err("powergate lookup failed for %s: %d\n", np->name, id);
|
||||
pr_err("powergate lookup failed for %pOFn: %d\n", np, id);
|
||||
goto free_mem;
|
||||
}
|
||||
|
||||
|
|
@ -816,13 +816,13 @@ static void tegra_powergate_add(struct tegra_pmc *pmc, struct device_node *np)
|
|||
|
||||
err = tegra_powergate_of_get_clks(pg, np);
|
||||
if (err < 0) {
|
||||
pr_err("failed to get clocks for %s: %d\n", np->name, err);
|
||||
pr_err("failed to get clocks for %pOFn: %d\n", np, err);
|
||||
goto set_available;
|
||||
}
|
||||
|
||||
err = tegra_powergate_of_get_resets(pg, np, off);
|
||||
if (err < 0) {
|
||||
pr_err("failed to get resets for %s: %d\n", np->name, err);
|
||||
pr_err("failed to get resets for %pOFn: %d\n", np, err);
|
||||
goto remove_clks;
|
||||
}
|
||||
|
||||
|
|
@ -851,15 +851,15 @@ static void tegra_powergate_add(struct tegra_pmc *pmc, struct device_node *np)
|
|||
|
||||
err = pm_genpd_init(&pg->genpd, NULL, off);
|
||||
if (err < 0) {
|
||||
pr_err("failed to initialise PM domain %s: %d\n", np->name,
|
||||
pr_err("failed to initialise PM domain %pOFn: %d\n", np,
|
||||
err);
|
||||
goto remove_resets;
|
||||
}
|
||||
|
||||
err = of_genpd_add_provider_simple(np, &pg->genpd);
|
||||
if (err < 0) {
|
||||
pr_err("failed to add PM domain provider for %s: %d\n",
|
||||
np->name, err);
|
||||
pr_err("failed to add PM domain provider for %pOFn: %d\n",
|
||||
np, err);
|
||||
goto remove_genpd;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -544,15 +544,15 @@ static void __iomem *pktdma_get_regs(struct knav_dma_device *dma,
|
|||
|
||||
ret = of_address_to_resource(node, index, &res);
|
||||
if (ret) {
|
||||
dev_err(dev, "Can't translate of node(%s) address for index(%d)\n",
|
||||
node->name, index);
|
||||
dev_err(dev, "Can't translate of node(%pOFn) address for index(%d)\n",
|
||||
node, index);
|
||||
return ERR_PTR(ret);
|
||||
}
|
||||
|
||||
regs = devm_ioremap_resource(kdev->dev, &res);
|
||||
if (IS_ERR(regs))
|
||||
dev_err(dev, "Failed to map register base for index(%d) node(%s)\n",
|
||||
index, node->name);
|
||||
dev_err(dev, "Failed to map register base for index(%d) node(%pOFn)\n",
|
||||
index, node);
|
||||
if (_size)
|
||||
*_size = resource_size(&res);
|
||||
|
||||
|
|
|
|||
|
|
@ -1382,15 +1382,15 @@ static void __iomem *knav_queue_map_reg(struct knav_device *kdev,
|
|||
|
||||
ret = of_address_to_resource(node, index, &res);
|
||||
if (ret) {
|
||||
dev_err(kdev->dev, "Can't translate of node(%s) address for index(%d)\n",
|
||||
node->name, index);
|
||||
dev_err(kdev->dev, "Can't translate of node(%pOFn) address for index(%d)\n",
|
||||
node, index);
|
||||
return ERR_PTR(ret);
|
||||
}
|
||||
|
||||
regs = devm_ioremap_resource(kdev->dev, &res);
|
||||
if (IS_ERR(regs))
|
||||
dev_err(kdev->dev, "Failed to map register base for index(%d) node(%s)\n",
|
||||
index, node->name);
|
||||
dev_err(kdev->dev, "Failed to map register base for index(%d) node(%pOFn)\n",
|
||||
index, node);
|
||||
return regs;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue