Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
awilliam
GitHub Repository: awilliam/linux-vfio
Path: blob/master/arch/m68k/platform/68EZ328/config.c
10818 views
1
/***************************************************************************/
2
3
/*
4
* linux/arch/m68knommu/platform/68EZ328/config.c
5
*
6
* Copyright (C) 1993 Hamish Macdonald
7
* Copyright (C) 1999 D. Jeff Dionne
8
*
9
* This file is subject to the terms and conditions of the GNU General Public
10
* License. See the file COPYING in the main directory of this archive
11
* for more details.
12
*/
13
14
/***************************************************************************/
15
16
#include <linux/types.h>
17
#include <linux/kernel.h>
18
#include <asm/system.h>
19
#include <asm/pgtable.h>
20
#include <asm/machdep.h>
21
#include <asm/MC68EZ328.h>
22
#ifdef CONFIG_UCSIMM
23
#include <asm/bootstd.h>
24
#endif
25
26
/***************************************************************************/
27
28
void m68328_timer_gettod(int *year, int *mon, int *day, int *hour, int *min, int *sec);
29
30
/***************************************************************************/
31
32
void m68ez328_reset(void)
33
{
34
local_irq_disable();
35
asm volatile (
36
"moveal #0x10c00000, %a0;\n"
37
"moveb #0, 0xFFFFF300;\n"
38
"moveal 0(%a0), %sp;\n"
39
"moveal 4(%a0), %a0;\n"
40
"jmp (%a0);\n"
41
);
42
}
43
44
/***************************************************************************/
45
46
unsigned char *cs8900a_hwaddr;
47
static int errno;
48
49
#ifdef CONFIG_UCSIMM
50
_bsc0(char *, getserialnum)
51
_bsc1(unsigned char *, gethwaddr, int, a)
52
_bsc1(char *, getbenv, char *, a)
53
#endif
54
55
void config_BSP(char *command, int len)
56
{
57
unsigned char *p;
58
59
printk(KERN_INFO "\n68EZ328 DragonBallEZ support (C) 1999 Rt-Control, Inc\n");
60
61
#ifdef CONFIG_UCSIMM
62
printk(KERN_INFO "uCsimm serial string [%s]\n",getserialnum());
63
p = cs8900a_hwaddr = gethwaddr(0);
64
printk(KERN_INFO "uCsimm hwaddr %.2x:%.2x:%.2x:%.2x:%.2x:%.2x\n",
65
p[0], p[1], p[2], p[3], p[4], p[5]);
66
67
p = getbenv("APPEND");
68
if (p) strcpy(p,command);
69
else command[0] = 0;
70
#endif
71
72
mach_gettod = m68328_timer_gettod;
73
mach_reset = m68ez328_reset;
74
}
75
76
/***************************************************************************/
77
78