OpenCores
URL https://opencores.org/ocsvn/or1k_soc_on_altera_embedded_dev_kit/or1k_soc_on_altera_embedded_dev_kit/trunk

Subversion Repositories or1k_soc_on_altera_embedded_dev_kit

[/] [or1k_soc_on_altera_embedded_dev_kit/] [trunk/] [linux-2.6/] [linux-2.6.24/] [arch/] [powerpc/] [platforms/] [83xx/] [mpc8313_rdb.c] - Blame information for rev 3

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 3 xianfeng
/*
2
 * arch/powerpc/platforms/83xx/mpc8313_rdb.c
3
 *
4
 * Description: MPC8313x RDB board specific routines.
5
 * This file is based on mpc834x_sys.c
6
 * Author: Lo Wlison <r43300@freescale.com>
7
 *
8
 * Copyright (C) Freescale Semiconductor, Inc. 2006. All rights reserved.
9
 *
10
 * This program is free software; you can redistribute  it and/or modify it
11
 * under  the terms of  the GNU General  Public License as published by the
12
 * Free Software Foundation;  either version 2 of the  License, or (at your
13
 * option) any later version.
14
 */
15
 
16
#include <linux/pci.h>
17
 
18
#include <asm/time.h>
19
#include <asm/ipic.h>
20
#include <asm/udbg.h>
21
 
22
#include "mpc83xx.h"
23
 
24
#undef DEBUG
25
#ifdef DEBUG
26
#define DBG(fmt...) udbg_printf(fmt)
27
#else
28
#define DBG(fmt...)
29
#endif
30
 
31
/* ************************************************************************
32
 *
33
 * Setup the architecture
34
 *
35
 */
36
static void __init mpc8313_rdb_setup_arch(void)
37
{
38
#ifdef CONFIG_PCI
39
        struct device_node *np;
40
#endif
41
 
42
        if (ppc_md.progress)
43
                ppc_md.progress("mpc8313_rdb_setup_arch()", 0);
44
 
45
#ifdef CONFIG_PCI
46
        for_each_compatible_node(np, "pci", "fsl,mpc8349-pci")
47
                mpc83xx_add_bridge(np);
48
#endif
49
        mpc831x_usb_cfg();
50
}
51
 
52
void __init mpc8313_rdb_init_IRQ(void)
53
{
54
        struct device_node *np;
55
 
56
        np = of_find_node_by_type(NULL, "ipic");
57
        if (!np)
58
                return;
59
 
60
        ipic_init(np, 0);
61
 
62
        /* Initialize the default interrupt mapping priorities,
63
         * in case the boot rom changed something on us.
64
         */
65
        ipic_set_default_priority();
66
}
67
 
68
/*
69
 * Called very early, MMU is off, device-tree isn't unflattened
70
 */
71
static int __init mpc8313_rdb_probe(void)
72
{
73
        unsigned long root = of_get_flat_dt_root();
74
 
75
        return of_flat_dt_is_compatible(root, "MPC8313ERDB");
76
}
77
 
78
define_machine(mpc8313_rdb) {
79
        .name                   = "MPC8313 RDB",
80
        .probe                  = mpc8313_rdb_probe,
81
        .setup_arch             = mpc8313_rdb_setup_arch,
82
        .init_IRQ               = mpc8313_rdb_init_IRQ,
83
        .get_irq                = ipic_get_irq,
84
        .restart                = mpc83xx_restart,
85
        .time_init              = mpc83xx_time_init,
86
        .calibrate_decr         = generic_calibrate_decr,
87
        .progress               = udbg_progress,
88
};

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.