Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/arch/powerpc/platforms/85xx/mpc8536_ds.c
26481 views
1
// SPDX-License-Identifier: GPL-2.0-or-later
2
/*
3
* MPC8536 DS Board Setup
4
*
5
* Copyright 2008 Freescale Semiconductor, Inc.
6
*/
7
8
#include <linux/stddef.h>
9
#include <linux/kernel.h>
10
#include <linux/pci.h>
11
#include <linux/kdev_t.h>
12
#include <linux/delay.h>
13
#include <linux/seq_file.h>
14
#include <linux/interrupt.h>
15
#include <linux/of.h>
16
17
#include <asm/time.h>
18
#include <asm/machdep.h>
19
#include <asm/pci-bridge.h>
20
#include <mm/mmu_decl.h>
21
#include <asm/udbg.h>
22
#include <asm/mpic.h>
23
#include <asm/swiotlb.h>
24
25
#include <sysdev/fsl_soc.h>
26
#include <sysdev/fsl_pci.h>
27
28
#include "mpc85xx.h"
29
30
static void __init mpc8536_ds_pic_init(void)
31
{
32
struct mpic *mpic = mpic_alloc(NULL, 0, MPIC_BIG_ENDIAN,
33
0, 256, " OpenPIC ");
34
BUG_ON(mpic == NULL);
35
mpic_init(mpic);
36
}
37
38
/*
39
* Setup the architecture
40
*/
41
static void __init mpc8536_ds_setup_arch(void)
42
{
43
if (ppc_md.progress)
44
ppc_md.progress("mpc8536_ds_setup_arch()", 0);
45
46
fsl_pci_assign_primary();
47
48
swiotlb_detect_4g();
49
50
printk("MPC8536 DS board from Freescale Semiconductor\n");
51
}
52
53
machine_arch_initcall(mpc8536_ds, mpc85xx_common_publish_devices);
54
55
define_machine(mpc8536_ds) {
56
.name = "MPC8536 DS",
57
.compatible = "fsl,mpc8536ds",
58
.setup_arch = mpc8536_ds_setup_arch,
59
.init_IRQ = mpc8536_ds_pic_init,
60
#ifdef CONFIG_PCI
61
.pcibios_fixup_bus = fsl_pcibios_fixup_bus,
62
.pcibios_fixup_phb = fsl_pcibios_fixup_phb,
63
#endif
64
.get_irq = mpic_get_irq,
65
.progress = udbg_progress,
66
};
67
68