Path: blob/master/arch/powerpc/platforms/512x/mpc5121_ads.c
10820 views
/*1* Copyright (C) 2007, 2008 Freescale Semiconductor, Inc. All rights reserved.2*3* Author: John Rigby, <[email protected]>, Thur Mar 29 20074*5* Description:6* MPC5121 ADS board setup7*8* This is free software; you can redistribute it and/or modify it9* under the terms of the GNU General Public License as published by10* the Free Software Foundation; either version 2 of the License, or11* (at your option) any later version.12*13*/1415#include <linux/kernel.h>16#include <linux/io.h>17#include <linux/of_platform.h>1819#include <asm/machdep.h>20#include <asm/ipic.h>21#include <asm/prom.h>22#include <asm/time.h>2324#include <sysdev/fsl_pci.h>2526#include "mpc512x.h"27#include "mpc5121_ads.h"2829static void __init mpc5121_ads_setup_arch(void)30{31#ifdef CONFIG_PCI32struct device_node *np;33#endif34printk(KERN_INFO "MPC5121 ADS board from Freescale Semiconductor\n");35/*36* cpld regs are needed early37*/38mpc5121_ads_cpld_map();3940#ifdef CONFIG_PCI41for_each_compatible_node(np, "pci", "fsl,mpc5121-pci")42mpc83xx_add_bridge(np);43#endif44mpc512x_setup_diu();45}4647static void __init mpc5121_ads_init_IRQ(void)48{49mpc512x_init_IRQ();50mpc5121_ads_cpld_pic_init();51}5253/*54* Called very early, MMU is off, device-tree isn't unflattened55*/56static int __init mpc5121_ads_probe(void)57{58unsigned long root = of_get_flat_dt_root();5960return of_flat_dt_is_compatible(root, "fsl,mpc5121ads");61}6263define_machine(mpc5121_ads) {64.name = "MPC5121 ADS",65.probe = mpc5121_ads_probe,66.setup_arch = mpc5121_ads_setup_arch,67.init = mpc512x_init,68.init_early = mpc512x_init_diu,69.init_IRQ = mpc5121_ads_init_IRQ,70.get_irq = ipic_get_irq,71.calibrate_decr = generic_calibrate_decr,72.restart = mpc512x_restart,73};747576