2019-05-27 09:55:01 +03:00
// SPDX-License-Identifier: GPL-2.0-or-later
2008-04-16 02:41:30 +04:00
/*
* SBC8641D board specific routines
*
* Copyright 2008 Wind River Systems Inc .
*
* By Paul Gortmaker ( see MAINTAINERS for contact information )
*
* Based largely on the 8641 HPCN support by Freescale Semiconductor Inc .
*/
# include <linux/stddef.h>
# include <linux/kernel.h>
# include <linux/pci.h>
# include <linux/kdev_t.h>
# include <linux/delay.h>
# include <linux/seq_file.h>
# include <linux/of_platform.h>
# include <asm/time.h>
# include <asm/machdep.h>
# include <asm/pci-bridge.h>
# include <asm/prom.h>
# include <mm/mmu_decl.h>
# include <asm/udbg.h>
# include <asm/mpic.h>
# include <sysdev/fsl_pci.h>
# include <sysdev/fsl_soc.h>
# include "mpc86xx.h"
static void __init
sbc8641_setup_arch ( void )
{
if ( ppc_md . progress )
ppc_md . progress ( " sbc8641_setup_arch() " , 0 ) ;
printk ( " SBC8641 board from Wind River \n " ) ;
# ifdef CONFIG_SMP
mpc86xx_smp_init ( ) ;
# endif
2012-08-28 11:44:08 +04:00
fsl_pci_assign_primary ( ) ;
2008-04-16 02:41:30 +04:00
}
static void
sbc8641_show_cpuinfo ( struct seq_file * m )
{
uint svid = mfspr ( SPRN_SVR ) ;
seq_printf ( m , " Vendor \t \t : Wind River Systems \n " ) ;
seq_printf ( m , " SVR \t \t : 0x%x \n " , svid ) ;
}
/*
* Called very early , device - tree isn ' t unflattened
*/
static int __init sbc8641_probe ( void )
{
2016-07-05 08:04:05 +03:00
if ( of_machine_is_compatible ( " wind,sbc8641 " ) )
2008-04-16 02:41:30 +04:00
return 1 ; /* Looks good */
return 0 ;
}
2016-02-11 17:38:46 +03:00
machine_arch_initcall ( sbc8641 , mpc86xx_common_publish_devices ) ;
2008-04-16 02:41:30 +04:00
define_machine ( sbc8641 ) {
. name = " SBC8641D " ,
. probe = sbc8641_probe ,
. setup_arch = sbc8641_setup_arch ,
2008-07-02 20:46:20 +04:00
. init_IRQ = mpc86xx_init_irq ,
2008-04-16 02:41:30 +04:00
. show_cpuinfo = sbc8641_show_cpuinfo ,
. get_irq = mpic_get_irq ,
. time_init = mpc86xx_time_init ,
. calibrate_decr = generic_calibrate_decr ,
. progress = udbg_progress ,
# ifdef CONFIG_PCI
. pcibios_fixup_bus = fsl_pcibios_fixup_bus ,
# endif
} ;