Home | History | Annotate | Download | only in mach-rmobile
      1 // SPDX-License-Identifier: GPL-2.0+
      2 /*
      3  * (C) Copyright 2012 Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj (at) renesas.com>
      4  * (C) Copyright 2012 Renesas Solutions Corp.
      5  */
      6 #include <common.h>
      7 #include <asm/io.h>
      8 
      9 u32 rmobile_get_cpu_type(void)
     10 {
     11 	u32 id;
     12 	u32 type;
     13 	struct sh73a0_hpb *hpb = (struct sh73a0_hpb *)HPB_BASE;
     14 
     15 	id = readl(&hpb->cccr);
     16 	type = (id >> 8) & 0xFF;
     17 
     18 	return type;
     19 }
     20 
     21 u32 rmobile_get_cpu_rev_integer(void)
     22 {
     23 	u32 id;
     24 	u32 rev;
     25 	struct sh73a0_hpb *hpb = (struct sh73a0_hpb *)HPB_BASE;
     26 
     27 	id = readl(&hpb->cccr);
     28 	rev = ((id >> 4) & 0xF) + 1;
     29 
     30 	return rev;
     31 }
     32 
     33 u32 rmobile_get_cpu_rev_fraction(void)
     34 {
     35 	u32 id;
     36 	u32 rev;
     37 	struct sh73a0_hpb *hpb = (struct sh73a0_hpb *)HPB_BASE;
     38 
     39 	id = readl(&hpb->cccr);
     40 	rev = id & 0xF;
     41 
     42 	return rev;
     43 }
     44