mirror of https://github.com/Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
51 lines
1.1 KiB
51 lines
1.1 KiB
// SPDX-License-Identifier: GPL-2.0 |
|
/* |
|
* linux/arch/parisc/kernel/pa7300lc.c |
|
* - PA7300LC-specific functions |
|
* |
|
* Copyright (C) 2000 Philipp Rumpf */ |
|
|
|
#include <linux/sched.h> |
|
#include <linux/sched/debug.h> |
|
#include <linux/smp.h> |
|
#include <linux/kernel.h> |
|
#include <asm/io.h> |
|
#include <asm/ptrace.h> |
|
#include <asm/machdep.h> |
|
|
|
/* CPU register indices */ |
|
|
|
#define MIOC_STATUS 0xf040 |
|
#define MIOC_CONTROL 0xf080 |
|
#define MDERRADD 0xf0e0 |
|
#define DMAERR 0xf0e8 |
|
#define DIOERR 0xf0ec |
|
#define HIDMAMEM 0xf0f4 |
|
|
|
/* this returns the HPA of the CPU it was called on */ |
|
static u32 cpu_hpa(void) |
|
{ |
|
return 0xfffb0000; |
|
} |
|
|
|
static void pa7300lc_lpmc(int code, struct pt_regs *regs) |
|
{ |
|
u32 hpa; |
|
printk(KERN_WARNING "LPMC on CPU %d\n", smp_processor_id()); |
|
|
|
show_regs(regs); |
|
|
|
hpa = cpu_hpa(); |
|
printk(KERN_WARNING |
|
"MIOC_CONTROL %08x\n" "MIOC_STATUS %08x\n" |
|
"MDERRADD %08x\n" "DMAERR %08x\n" |
|
"DIOERR %08x\n" "HIDMAMEM %08x\n", |
|
gsc_readl(hpa+MIOC_CONTROL), gsc_readl(hpa+MIOC_STATUS), |
|
gsc_readl(hpa+MDERRADD), gsc_readl(hpa+DMAERR), |
|
gsc_readl(hpa+DIOERR), gsc_readl(hpa+HIDMAMEM)); |
|
} |
|
|
|
void pa7300lc_init(void) |
|
{ |
|
cpu_lpmc = pa7300lc_lpmc; |
|
}
|
|
|