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 u32 rmobile_get_cpu_type(void)
11 {
12 	u32 id;
13 	u32 type;
14 	struct sh73a0_hpb *hpb = (struct sh73a0_hpb *)HPB_BASE;
15 
16 	id = readl(&hpb->cccr);
17 	type = (id >> 8) & 0xFF;
18 
19 	return type;
20 }
21 
22 u32 rmobile_get_cpu_rev_integer(void)
23 {
24 	u32 id;
25 	u32 rev;
26 	struct sh73a0_hpb *hpb = (struct sh73a0_hpb *)HPB_BASE;
27 
28 	id = readl(&hpb->cccr);
29 	rev = ((id >> 4) & 0xF) + 1;
30 
31 	return rev;
32 }
33 
34 u32 rmobile_get_cpu_rev_fraction(void)
35 {
36 	u32 id;
37 	u32 rev;
38 	struct sh73a0_hpb *hpb = (struct sh73a0_hpb *)HPB_BASE;
39 
40 	id = readl(&hpb->cccr);
41 	rev = id & 0xF;
42 
43 	return rev;
44 }
45