mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-02 07:04:24 +00:00
Merge branch 'rmobile-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6
* 'rmobile-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: ARM: arch-shmobile: only run FSI init on respective boards ARM: arch-shmobile: only run HDMI init on respective boards ARM: mach-shmobile: Correctly check for CONFIG_MACH_MACKEREL
This commit is contained in:
commit
174457391a
4 changed files with 13 additions and 20 deletions
|
@ -947,7 +947,7 @@ static struct platform_device *ap4evb_devices[] __initdata = {
|
||||||
&ap4evb_camera,
|
&ap4evb_camera,
|
||||||
};
|
};
|
||||||
|
|
||||||
static int __init hdmi_init_pm_clock(void)
|
static void __init hdmi_init_pm_clock(void)
|
||||||
{
|
{
|
||||||
struct clk *hdmi_ick = clk_get(&hdmi_device.dev, "ick");
|
struct clk *hdmi_ick = clk_get(&hdmi_device.dev, "ick");
|
||||||
int ret;
|
int ret;
|
||||||
|
@ -988,20 +988,15 @@ static int __init hdmi_init_pm_clock(void)
|
||||||
pr_debug("PLLC2 set frequency %lu\n", rate);
|
pr_debug("PLLC2 set frequency %lu\n", rate);
|
||||||
|
|
||||||
ret = clk_set_parent(hdmi_ick, &sh7372_pllc2_clk);
|
ret = clk_set_parent(hdmi_ick, &sh7372_pllc2_clk);
|
||||||
if (ret < 0) {
|
if (ret < 0)
|
||||||
pr_err("Cannot set HDMI parent: %d\n", ret);
|
pr_err("Cannot set HDMI parent: %d\n", ret);
|
||||||
goto out;
|
|
||||||
}
|
|
||||||
|
|
||||||
out:
|
out:
|
||||||
if (!IS_ERR(hdmi_ick))
|
if (!IS_ERR(hdmi_ick))
|
||||||
clk_put(hdmi_ick);
|
clk_put(hdmi_ick);
|
||||||
return ret;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
device_initcall(hdmi_init_pm_clock);
|
static void __init fsi_init_pm_clock(void)
|
||||||
|
|
||||||
static int __init fsi_init_pm_clock(void)
|
|
||||||
{
|
{
|
||||||
struct clk *fsia_ick;
|
struct clk *fsia_ick;
|
||||||
int ret;
|
int ret;
|
||||||
|
@ -1010,7 +1005,7 @@ static int __init fsi_init_pm_clock(void)
|
||||||
if (IS_ERR(fsia_ick)) {
|
if (IS_ERR(fsia_ick)) {
|
||||||
ret = PTR_ERR(fsia_ick);
|
ret = PTR_ERR(fsia_ick);
|
||||||
pr_err("Cannot get FSI ICK: %d\n", ret);
|
pr_err("Cannot get FSI ICK: %d\n", ret);
|
||||||
return ret;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
ret = clk_set_parent(fsia_ick, &sh7372_fsiack_clk);
|
ret = clk_set_parent(fsia_ick, &sh7372_fsiack_clk);
|
||||||
|
@ -1018,10 +1013,7 @@ static int __init fsi_init_pm_clock(void)
|
||||||
pr_err("Cannot set FSI-A parent: %d\n", ret);
|
pr_err("Cannot set FSI-A parent: %d\n", ret);
|
||||||
|
|
||||||
clk_put(fsia_ick);
|
clk_put(fsia_ick);
|
||||||
|
|
||||||
return ret;
|
|
||||||
}
|
}
|
||||||
device_initcall(fsi_init_pm_clock);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* FIXME !!
|
* FIXME !!
|
||||||
|
@ -1348,6 +1340,9 @@ static void __init ap4evb_init(void)
|
||||||
__raw_writel(srcr4 & ~(1 << 13), SRCR4);
|
__raw_writel(srcr4 & ~(1 << 13), SRCR4);
|
||||||
|
|
||||||
platform_add_devices(ap4evb_devices, ARRAY_SIZE(ap4evb_devices));
|
platform_add_devices(ap4evb_devices, ARRAY_SIZE(ap4evb_devices));
|
||||||
|
|
||||||
|
hdmi_init_pm_clock();
|
||||||
|
fsi_init_pm_clock();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void __init ap4evb_timer_init(void)
|
static void __init ap4evb_timer_init(void)
|
||||||
|
|
|
@ -423,7 +423,7 @@ static struct platform_device fsi_hdmi_device = {
|
||||||
.name = "sh_fsi2_b_hdmi",
|
.name = "sh_fsi2_b_hdmi",
|
||||||
};
|
};
|
||||||
|
|
||||||
static int __init hdmi_init_pm_clock(void)
|
static void __init hdmi_init_pm_clock(void)
|
||||||
{
|
{
|
||||||
struct clk *hdmi_ick = clk_get(&hdmi_device.dev, "ick");
|
struct clk *hdmi_ick = clk_get(&hdmi_device.dev, "ick");
|
||||||
int ret;
|
int ret;
|
||||||
|
@ -467,17 +467,13 @@ static int __init hdmi_init_pm_clock(void)
|
||||||
pr_debug("PLLC2 set frequency %lu\n", rate);
|
pr_debug("PLLC2 set frequency %lu\n", rate);
|
||||||
|
|
||||||
ret = clk_set_parent(hdmi_ick, &sh7372_pllc2_clk);
|
ret = clk_set_parent(hdmi_ick, &sh7372_pllc2_clk);
|
||||||
if (ret < 0) {
|
if (ret < 0)
|
||||||
pr_err("Cannot set HDMI parent: %d\n", ret);
|
pr_err("Cannot set HDMI parent: %d\n", ret);
|
||||||
goto out;
|
|
||||||
}
|
|
||||||
|
|
||||||
out:
|
out:
|
||||||
if (!IS_ERR(hdmi_ick))
|
if (!IS_ERR(hdmi_ick))
|
||||||
clk_put(hdmi_ick);
|
clk_put(hdmi_ick);
|
||||||
return ret;
|
|
||||||
}
|
}
|
||||||
device_initcall(hdmi_init_pm_clock);
|
|
||||||
|
|
||||||
/* USB1 (Host) */
|
/* USB1 (Host) */
|
||||||
static void usb1_host_port_power(int port, int power)
|
static void usb1_host_port_power(int port, int power)
|
||||||
|
@ -1218,6 +1214,8 @@ static void __init mackerel_init(void)
|
||||||
sh7372_add_standard_devices();
|
sh7372_add_standard_devices();
|
||||||
|
|
||||||
platform_add_devices(mackerel_devices, ARRAY_SIZE(mackerel_devices));
|
platform_add_devices(mackerel_devices, ARRAY_SIZE(mackerel_devices));
|
||||||
|
|
||||||
|
hdmi_init_pm_clock();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void __init mackerel_timer_init(void)
|
static void __init mackerel_timer_init(void)
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
|
|
||||||
#ifdef CONFIG_MACH_AP4EVB
|
#ifdef CONFIG_MACH_AP4EVB
|
||||||
#include "mach/mmc-ap4eb.h"
|
#include "mach/mmc-ap4eb.h"
|
||||||
#elif CONFIG_MACH_MACKEREL
|
#elif defined(CONFIG_MACH_MACKEREL)
|
||||||
#include "mach/mmc-mackerel.h"
|
#include "mach/mmc-mackerel.h"
|
||||||
#else
|
#else
|
||||||
#error "unsupported board."
|
#error "unsupported board."
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
#ifdef CONFIG_MACH_AP4EVB
|
#ifdef CONFIG_MACH_AP4EVB
|
||||||
#define MACH_TYPE MACH_TYPE_AP4EVB
|
#define MACH_TYPE MACH_TYPE_AP4EVB
|
||||||
#include "mach/head-ap4evb.txt"
|
#include "mach/head-ap4evb.txt"
|
||||||
#elif CONFIG_MACH_MACKEREL
|
#elif defined(CONFIG_MACH_MACKEREL)
|
||||||
#define MACH_TYPE MACH_TYPE_MACKEREL
|
#define MACH_TYPE MACH_TYPE_MACKEREL
|
||||||
#include "mach/head-mackerel.txt"
|
#include "mach/head-mackerel.txt"
|
||||||
#else
|
#else
|
||||||
|
|
Loading…
Reference in a new issue