uboot/arch/arm/cpu/armv7/rmobile/cpu_info.c
<<
>>
Prefs
   1/*
   2 * (C) Copyright 2012 Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
   3 * (C) Copyright 2012 Renesas Solutions Corp.
   4 *
   5 * SPDX-License-Identifier:     GPL-2.0+
   6 */
   7#include <common.h>
   8#include <asm/io.h>
   9
  10#ifdef CONFIG_ARCH_CPU_INIT
  11int arch_cpu_init(void)
  12{
  13        icache_enable();
  14        return 0;
  15}
  16#endif
  17
  18#ifndef CONFIG_SYS_DCACHE_OFF
  19void enable_caches(void)
  20{
  21        dcache_enable();
  22}
  23#endif
  24
  25#ifdef CONFIG_DISPLAY_CPUINFO
  26static u32 __rmobile_get_cpu_type(void)
  27{
  28        return 0x0;
  29}
  30u32 rmobile_get_cpu_type(void)
  31                __attribute__((weak, alias("__rmobile_get_cpu_type")));
  32
  33static u32 __rmobile_get_cpu_rev_integer(void)
  34{
  35        return 0;
  36}
  37u32 rmobile_get_cpu_rev_integer(void)
  38                __attribute__((weak, alias("__rmobile_get_cpu_rev_integer")));
  39
  40static u32 __rmobile_get_cpu_rev_fraction(void)
  41{
  42        return 0;
  43}
  44u32 rmobile_get_cpu_rev_fraction(void)
  45                __attribute__((weak, alias("__rmobile_get_cpu_rev_fraction")));
  46
  47/* CPU infomation table */
  48static const struct {
  49        u16 cpu_type;
  50        u8 cpu_name[10];
  51} rmobile_cpuinfo[] = {
  52        { 0x37, "SH73A0" },
  53        { 0x40, "R8A7740" },
  54        { 0x45, "R8A7790" },
  55        { 0x47, "R8A7791" },
  56        { 0x0, "CPU" },
  57};
  58
  59int print_cpuinfo(void)
  60{
  61        int i = 0;
  62        u32 cpu_type = rmobile_get_cpu_type();
  63        for (; i < ARRAY_SIZE(rmobile_cpuinfo); i++) {
  64                if (rmobile_cpuinfo[i].cpu_type == cpu_type) {
  65                        printf("CPU: Renesas Electronics %s rev %d.%d\n",
  66                               rmobile_cpuinfo[i].cpu_name,
  67                               rmobile_get_cpu_rev_integer(),
  68                               rmobile_get_cpu_rev_fraction());
  69                        break;
  70                }
  71        }
  72        return 0;
  73}
  74#endif /* CONFIG_DISPLAY_CPUINFO */
  75