| Matt Porter | 2b0c28d | 2005-11-07 01:00:19 -0800 | [diff] [blame] | 1 | /* | 
|  | 2 | * RapidIO PPC32 support | 
|  | 3 | * | 
|  | 4 | * Copyright 2005 MontaVista Software, Inc. | 
|  | 5 | * Matt Porter <mporter@kernel.crashing.org> | 
|  | 6 | * | 
|  | 7 | * This program is free software; you can redistribute  it and/or modify it | 
|  | 8 | * under  the terms of  the GNU General  Public License as published by the | 
|  | 9 | * Free Software Foundation;  either version 2 of the  License, or (at your | 
|  | 10 | * option) any later version. | 
|  | 11 | */ | 
|  | 12 |  | 
|  | 13 | #include <linux/init.h> | 
|  | 14 | #include <linux/kernel.h> | 
|  | 15 | #include <linux/rio.h> | 
|  | 16 |  | 
|  | 17 | #include <asm/rio.h> | 
|  | 18 |  | 
|  | 19 | /** | 
|  | 20 | * platform_rio_init - Do platform specific RIO init | 
|  | 21 | * | 
|  | 22 | * Any platform specific initialization of RapdIO | 
|  | 23 | * hardware is done here as well as registration | 
|  | 24 | * of any active master ports in the system. | 
|  | 25 | */ | 
|  | 26 | void __attribute__ ((weak)) | 
|  | 27 | platform_rio_init(void) | 
|  | 28 | { | 
|  | 29 | printk(KERN_WARNING "RIO: No platform_rio_init() present\n"); | 
|  | 30 | } | 
|  | 31 |  | 
|  | 32 | /** | 
|  | 33 | * ppc_rio_init - Do PPC32 RIO init | 
|  | 34 | * | 
|  | 35 | * Calls platform-specific RIO init code and then calls | 
|  | 36 | * rio_init_mports() to initialize any master ports that | 
|  | 37 | * have been registered with the RIO subsystem. | 
|  | 38 | */ | 
|  | 39 | static int __init ppc_rio_init(void) | 
|  | 40 | { | 
|  | 41 | printk(KERN_INFO "RIO: RapidIO init\n"); | 
|  | 42 |  | 
|  | 43 | /* Platform specific initialization */ | 
|  | 44 | platform_rio_init(); | 
|  | 45 |  | 
|  | 46 | /* Enumerate all registered ports */ | 
|  | 47 | rio_init_mports(); | 
|  | 48 |  | 
|  | 49 | return 0; | 
|  | 50 | } | 
|  | 51 |  | 
|  | 52 | subsys_initcall(ppc_rio_init); |