Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/arch/powerpc/platforms/85xx/mvme2500.c
26481 views
1
// SPDX-License-Identifier: GPL-2.0-or-later
2
/*
3
* Board setup routines for the Emerson/Artesyn MVME2500
4
*
5
* Copyright 2014 Elettra-Sincrotrone Trieste S.C.p.A.
6
*
7
* Based on earlier code by:
8
*
9
* Xianghua Xiao ([email protected])
10
* Tom Armistead ([email protected])
11
* Copyright 2012 Emerson
12
*
13
* Author Alessio Igor Bogani <[email protected]>
14
*/
15
16
#include <linux/pci.h>
17
#include <asm/udbg.h>
18
#include <asm/mpic.h>
19
#include <sysdev/fsl_soc.h>
20
#include <sysdev/fsl_pci.h>
21
22
#include "mpc85xx.h"
23
24
static void __init mvme2500_pic_init(void)
25
{
26
struct mpic *mpic = mpic_alloc(NULL, 0,
27
MPIC_BIG_ENDIAN | MPIC_SINGLE_DEST_CPU,
28
0, 256, " OpenPIC ");
29
BUG_ON(mpic == NULL);
30
mpic_init(mpic);
31
}
32
33
/*
34
* Setup the architecture
35
*/
36
static void __init mvme2500_setup_arch(void)
37
{
38
if (ppc_md.progress)
39
ppc_md.progress("mvme2500_setup_arch()", 0);
40
fsl_pci_assign_primary();
41
pr_info("MVME2500 board from Artesyn\n");
42
}
43
44
machine_arch_initcall(mvme2500, mpc85xx_common_publish_devices);
45
46
define_machine(mvme2500) {
47
.name = "MVME2500",
48
.compatible = "artesyn,MVME2500",
49
.setup_arch = mvme2500_setup_arch,
50
.init_IRQ = mvme2500_pic_init,
51
#ifdef CONFIG_PCI
52
.pcibios_fixup_bus = fsl_pcibios_fixup_bus,
53
.pcibios_fixup_phb = fsl_pcibios_fixup_phb,
54
#endif
55
.get_irq = mpic_get_irq,
56
.progress = udbg_progress,
57
};
58
59