44 lines
		
	
	
	
		
			959 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
		
		
			
		
	
	
			44 lines
		
	
	
	
		
			959 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
|   | /*
 | ||
|  |  * This file is subject to the terms and conditions of the GNU General Public | ||
|  |  * License.  See the file "COPYING" in the main directory of this archive | ||
|  |  * for more details. | ||
|  |  * | ||
|  |  * Copyright (C) 2012 MIPS Technologies, Inc.  All rights reserved. | ||
|  |  */ | ||
|  | #include <linux/init.h>
 | ||
|  | #include <linux/platform_device.h>
 | ||
|  | 
 | ||
|  | static struct resource __initdata sead3_lcd_resource = { | ||
|  | 		.start	= 0x1f000400, | ||
|  | 		.end	= 0x1f00041f, | ||
|  | 		.flags	= IORESOURCE_MEM, | ||
|  | }; | ||
|  | 
 | ||
|  | static __init int sead3_lcd_add(void) | ||
|  | { | ||
|  | 	struct platform_device *pdev; | ||
|  | 	int retval; | ||
|  | 
 | ||
|  | 	/* SEAD-3 and Cobalt platforms use same display type. */ | ||
|  | 	pdev = platform_device_alloc("cobalt-lcd", -1); | ||
|  | 	if (!pdev) | ||
|  | 		return -ENOMEM; | ||
|  | 
 | ||
|  | 	retval = platform_device_add_resources(pdev, &sead3_lcd_resource, 1); | ||
|  | 	if (retval) | ||
|  | 		goto err_free_device; | ||
|  | 
 | ||
|  | 	retval = platform_device_add(pdev); | ||
|  | 	if (retval) | ||
|  | 		goto err_free_device; | ||
|  | 
 | ||
|  | 	return 0; | ||
|  | 
 | ||
|  | err_free_device: | ||
|  | 	platform_device_put(pdev); | ||
|  | 
 | ||
|  | 	return retval; | ||
|  | } | ||
|  | 
 | ||
|  | device_initcall(sead3_lcd_add); |