summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2018-04-05 11:09:02 +0200
committerArnd Bergmann <arnd@arndb.de>2018-04-05 11:09:02 +0200
commit04a2c2efbfefa492eb7e00187dc8848924230dca (patch)
tree8b1cb27a82dad451b5192df932c9ff7b8fa3c897 /arch
parentbc52497a595d2246923749177d99e4216703b0f4 (diff)
parentf6adc9fd1ff9bbe766cbb68e84a0d97f54a4f436 (diff)
Merge tag 'davinci-for-v4.17/soc-2' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci into next/soc
Pull "DaVinci SoC update fixes for v4.17" from Sekhar Nori: A fix and a clean-up patch for content previously queued for v4.17. * tag 'davinci-for-v4.17/soc-2' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci: ARM: davinci: da8xx: simplify CFGCHIP regmap_config ARM: davinci: da8xx: fix oops in USB PHY driver due to stack allocated platform_data
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/mach-davinci/devices-da8xx.c5
-rw-r--r--arch/arm/mach-davinci/usb-da8xx.c8
2 files changed, 5 insertions, 8 deletions
diff --git a/arch/arm/mach-davinci/devices-da8xx.c b/arch/arm/mach-davinci/devices-da8xx.c
index 24422ba07cc7..78390c64e6ca 100644
--- a/arch/arm/mach-davinci/devices-da8xx.c
+++ b/arch/arm/mach-davinci/devices-da8xx.c
@@ -1106,11 +1106,8 @@ int __init da850_register_sata(unsigned long refclkpn)
static struct regmap *da8xx_cfgchip;
-/* regmap doesn't make a copy of this, so we need to keep the pointer around */
-static const char da8xx_cfgchip_name[] = "cfgchip";
-
static const struct regmap_config da8xx_cfgchip_config __initconst = {
- .name = da8xx_cfgchip_name,
+ .name = "cfgchip",
.reg_bits = 32,
.val_bits = 32,
.reg_stride = 4,
diff --git a/arch/arm/mach-davinci/usb-da8xx.c b/arch/arm/mach-davinci/usb-da8xx.c
index 4d89d86ce7e5..50445f0e98de 100644
--- a/arch/arm/mach-davinci/usb-da8xx.c
+++ b/arch/arm/mach-davinci/usb-da8xx.c
@@ -26,6 +26,8 @@
static struct clk *usb20_clk;
+static struct da8xx_usb_phy_platform_data da8xx_usb_phy_pdata;
+
static struct platform_device da8xx_usb_phy = {
.name = "da8xx-usb-phy",
.id = -1,
@@ -36,15 +38,13 @@ static struct platform_device da8xx_usb_phy = {
* registered yet.
*/
.init_name = "da8xx-usb-phy",
+ .platform_data = &da8xx_usb_phy_pdata,
},
};
int __init da8xx_register_usb_phy(void)
{
- struct da8xx_usb_phy_platform_data pdata;
-
- pdata.cfgchip = da8xx_get_cfgchip();
- da8xx_usb_phy.dev.platform_data = &pdata;
+ da8xx_usb_phy_pdata.cfgchip = da8xx_get_cfgchip();
return platform_device_register(&da8xx_usb_phy);
}