
Applied my rmobile branch.
Thanks. Nobuhiro
On Thu, Jul 26, 2012 at 1:24 PM, Tetsuyuki Kobayshi koba@kmckk.co.jp wrote:
From: Tetsuyuki Kobayashi koba@kmckk.co.jp
According to SoC document, revision info is separated to integer part and fracton part. So I separete rmobile_get_cpu_rev() to rmobile_get_cpu_rev_integer() and rmobile_get_cpu_rev_fraction().
Signed-off-by: Tetsuyuki Kobayashi koba@kmckk.co.jp
arch/arm/cpu/armv7/rmobile/cpu_info-sh73a0.c | 16 ++++++++++++++-- arch/arm/cpu/armv7/rmobile/cpu_info.c | 23 ++++++++++++++++------- 2 files changed, 30 insertions(+), 9 deletions(-)
diff --git a/arch/arm/cpu/armv7/rmobile/cpu_info-sh73a0.c b/arch/arm/cpu/armv7/rmobile/cpu_info-sh73a0.c index a715efa..8239155 100644 --- a/arch/arm/cpu/armv7/rmobile/cpu_info-sh73a0.c +++ b/arch/arm/cpu/armv7/rmobile/cpu_info-sh73a0.c @@ -36,14 +36,26 @@ u32 rmobile_get_cpu_type(void) return type; }
-u32 rmobile_get_cpu_rev(void) +u32 rmobile_get_cpu_rev_integer(void) { u32 id; u32 rev; struct sh73a0_hpb *hpb = (struct sh73a0_hpb *)HPB_BASE;
id = readl(&hpb->cccr);
rev = (id >> 4) & 0xF;
rev = ((id >> 4) & 0xF) + 1;
return rev;
+}
+u32 rmobile_get_cpu_rev_fraction(void) +{
u32 id;
u32 rev;
struct sh73a0_hpb *hpb = (struct sh73a0_hpb *)HPB_BASE;
id = readl(&hpb->cccr);
rev = id & 0xF; return rev;
} diff --git a/arch/arm/cpu/armv7/rmobile/cpu_info.c b/arch/arm/cpu/armv7/rmobile/cpu_info.c index 957a4fc..87287ce 100644 --- a/arch/arm/cpu/armv7/rmobile/cpu_info.c +++ b/arch/arm/cpu/armv7/rmobile/cpu_info.c @@ -46,23 +46,32 @@ static u32 __rmobile_get_cpu_type(void) u32 rmobile_get_cpu_type(void) __attribute__((weak, alias("__rmobile_get_cpu_type")));
-static u32 __rmobile_get_cpu_rev(void) +static u32 __rmobile_get_cpu_rev_integer(void) { return 0; } -u32 rmobile_get_cpu_rev(void)
__attribute__((weak, alias("__rmobile_get_cpu_rev")));
+u32 rmobile_get_cpu_rev_integer(void)
__attribute__((weak, alias("__rmobile_get_cpu_rev_integer")));
+static u32 __rmobile_get_cpu_rev_fraction(void) +{
return 0;
+} +u32 rmobile_get_cpu_rev_fraction(void)
__attribute__((weak, alias("__rmobile_get_cpu_rev_fraction")));
int print_cpuinfo(void) { switch (rmobile_get_cpu_type()) { case 0x37:
printf("CPU: Renesas Electronics SH73A0 rev %d\n",
rmobile_get_cpu_rev());
printf("CPU: Renesas Electronics SH73A0 rev %d.%d\n",
rmobile_get_cpu_rev_integer(),
rmobile_get_cpu_rev_fraction()); break; default:
printf("CPU: Renesas Electronics CPU rev %d\n",
rmobile_get_cpu_rev());
printf("CPU: Renesas Electronics CPU rev %d.%d\n",
rmobile_get_cpu_rev_integer(),
rmobile_get_cpu_rev_fraction()); break; } return 0;
-- 1.7.9.5