Version:  2.0.40 2.2.26 2.4.37 3.11 3.12 3.13 3.14 3.15 3.16 3.17 3.18 3.19 4.0 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8

Linux/arch/powerpc/platforms/85xx/p1010rdb.c

  1 /*
  2  * P1010RDB Board Setup
  3  *
  4  * Copyright 2011 Freescale Semiconductor Inc.
  5  *
  6  * This program is free software; you can redistribute  it and/or modify it
  7  * under  the terms of  the GNU General  Public License as published by the
  8  * Free Software Foundation;  either version 2 of the  License, or (at your
  9  * option) any later version.
 10  */
 11 
 12 #include <linux/stddef.h>
 13 #include <linux/kernel.h>
 14 #include <linux/pci.h>
 15 #include <linux/delay.h>
 16 #include <linux/interrupt.h>
 17 #include <linux/of_platform.h>
 18 
 19 #include <asm/time.h>
 20 #include <asm/machdep.h>
 21 #include <asm/pci-bridge.h>
 22 #include <mm/mmu_decl.h>
 23 #include <asm/prom.h>
 24 #include <asm/udbg.h>
 25 #include <asm/mpic.h>
 26 
 27 #include <sysdev/fsl_soc.h>
 28 #include <sysdev/fsl_pci.h>
 29 
 30 #include "mpc85xx.h"
 31 
 32 void __init p1010_rdb_pic_init(void)
 33 {
 34         struct mpic *mpic = mpic_alloc(NULL, 0, MPIC_BIG_ENDIAN |
 35           MPIC_SINGLE_DEST_CPU,
 36           0, 256, " OpenPIC  ");
 37 
 38         BUG_ON(mpic == NULL);
 39 
 40         mpic_init(mpic);
 41 }
 42 
 43 
 44 /*
 45  * Setup the architecture
 46  */
 47 static void __init p1010_rdb_setup_arch(void)
 48 {
 49         if (ppc_md.progress)
 50                 ppc_md.progress("p1010_rdb_setup_arch()", 0);
 51 
 52         fsl_pci_assign_primary();
 53 
 54         printk(KERN_INFO "P1010 RDB board from Freescale Semiconductor\n");
 55 }
 56 
 57 machine_arch_initcall(p1010_rdb, mpc85xx_common_publish_devices);
 58 machine_arch_initcall(p1010_rdb, swiotlb_setup_bus_notifier);
 59 
 60 /*
 61  * Called very early, device-tree isn't unflattened
 62  */
 63 static int __init p1010_rdb_probe(void)
 64 {
 65         if (of_machine_is_compatible("fsl,P1010RDB"))
 66                 return 1;
 67         if (of_machine_is_compatible("fsl,P1010RDB-PB"))
 68                 return 1;
 69         return 0;
 70 }
 71 
 72 define_machine(p1010_rdb) {
 73         .name                   = "P1010 RDB",
 74         .probe                  = p1010_rdb_probe,
 75         .setup_arch             = p1010_rdb_setup_arch,
 76         .init_IRQ               = p1010_rdb_pic_init,
 77 #ifdef CONFIG_PCI
 78         .pcibios_fixup_bus      = fsl_pcibios_fixup_bus,
 79         .pcibios_fixup_phb      = fsl_pcibios_fixup_phb,
 80 #endif
 81         .get_irq                = mpic_get_irq,
 82         .restart                = fsl_rstcr_restart,
 83         .calibrate_decr         = generic_calibrate_decr,
 84         .progress               = udbg_progress,
 85 };
 86 

This page was automatically generated by LXR 0.3.1 (source).  •  Linux is a registered trademark of Linus Torvalds  •  Contact us