1/* arch/arm/plat-samsung/include/plat/devs.h 2 * 3 * Copyright (c) 2004 Simtec Electronics 4 * Ben Dooks <ben@simtec.co.uk> 5 * 6 * Header file for s3c2410 standard platform devices 7 * 8 * This program is free software; you can redistribute it and/or modify 9 * it under the terms of the GNU General Public License version 2 as 10 * published by the Free Software Foundation. 11*/ 12#include <linux/platform_device.h> 13 14struct s3c24xx_uart_resources { 15 struct resource *resources; 16 unsigned long nr_resources; 17}; 18 19extern struct s3c24xx_uart_resources s3c2410_uart_resources[]; 20extern struct s3c24xx_uart_resources s3c64xx_uart_resources[]; 21extern struct s3c24xx_uart_resources s5p_uart_resources[]; 22 23extern struct platform_device *s3c24xx_uart_devs[]; 24extern struct platform_device *s3c24xx_uart_src[]; 25 26extern struct platform_device s3c_device_timer[]; 27 28extern struct platform_device s3c64xx_device_iis0; 29extern struct platform_device s3c64xx_device_iis1; 30extern struct platform_device s3c64xx_device_iisv4; 31 32extern struct platform_device s3c64xx_device_spi0; 33extern struct platform_device s3c64xx_device_spi1; 34 35extern struct platform_device s3c64xx_device_pcm0; 36extern struct platform_device s3c64xx_device_pcm1; 37 38extern struct platform_device s3c64xx_device_ac97; 39 40extern struct platform_device s3c_device_ts; 41 42extern struct platform_device s3c_device_fb; 43extern struct platform_device s3c_device_ohci; 44extern struct platform_device s3c_device_lcd; 45extern struct platform_device s3c_device_wdt; 46extern struct platform_device s3c_device_i2c0; 47extern struct platform_device s3c_device_i2c1; 48extern struct platform_device s3c_device_i2c2; 49extern struct platform_device s3c_device_rtc; 50extern struct platform_device s3c_device_adc; 51extern struct platform_device s3c_device_sdi; 52extern struct platform_device s3c_device_iis; 53extern struct platform_device s3c_device_hwmon; 54extern struct platform_device s3c_device_hsmmc0; 55extern struct platform_device s3c_device_hsmmc1; 56extern struct platform_device s3c_device_hsmmc2; 57extern struct platform_device s3c_device_hsmmc3; 58extern struct platform_device s3c_device_cfcon; 59 60extern struct platform_device s3c_device_spi0; 61extern struct platform_device s3c_device_spi1; 62 63extern struct platform_device s5pc100_device_spi0; 64extern struct platform_device s5pc100_device_spi1; 65extern struct platform_device s5pc100_device_spi2; 66extern struct platform_device s5pv210_device_spi0; 67extern struct platform_device s5pv210_device_spi1; 68extern struct platform_device s5p6440_device_spi0; 69extern struct platform_device s5p6440_device_spi1; 70 71extern struct platform_device s3c_device_hwmon; 72 73extern struct platform_device s3c_device_nand; 74extern struct platform_device s3c_device_onenand; 75extern struct platform_device s3c64xx_device_onenand1; 76extern struct platform_device s5pc110_device_onenand; 77 78extern struct platform_device s3c_device_usbgadget; 79extern struct platform_device s3c_device_usb_hsotg; 80 81extern struct platform_device s5pv210_device_ac97; 82extern struct platform_device s5pv210_device_pcm0; 83extern struct platform_device s5pv210_device_pcm1; 84extern struct platform_device s5pv210_device_pcm2; 85extern struct platform_device s5pv210_device_iis0; 86extern struct platform_device s5pv210_device_iis1; 87extern struct platform_device s5pv210_device_iis2; 88 89extern struct platform_device s5p6442_device_pcm0; 90extern struct platform_device s5p6442_device_pcm1; 91extern struct platform_device s5p6442_device_iis0; 92extern struct platform_device s5p6442_device_iis1; 93extern struct platform_device s5p6442_device_spi; 94 95extern struct platform_device s5p6440_device_pcm; 96extern struct platform_device s5p6440_device_iis; 97 98extern struct platform_device s5pc100_device_ac97; 99extern struct platform_device s5pc100_device_pcm0; 100extern struct platform_device s5pc100_device_pcm1; 101extern struct platform_device s5pc100_device_iis0; 102extern struct platform_device s5pc100_device_iis1; 103extern struct platform_device s5pc100_device_iis2; 104 105extern struct platform_device samsung_device_keypad; 106 107extern struct platform_device s5p_device_fimc0; 108extern struct platform_device s5p_device_fimc1; 109extern struct platform_device s5p_device_fimc2; 110 111/* s3c2440 specific devices */ 112 113#ifdef CONFIG_CPU_S3C2440 114 115extern struct platform_device s3c_device_camif; 116extern struct platform_device s3c_device_ac97; 117 118#endif 119 120/** 121 * s3c_set_platdata() - helper for setting platform data 122 * @pd: The default platform data for this device. 123 * @pdsize: The size of the platform data. 124 * @pdev: Pointer to the device to fill in. 125 * 126 * This helper replaces a number of calls that copy and then set the 127 * platform data of the device. 128 */ 129extern void *s3c_set_platdata(void *pd, size_t pdsize, 130 struct platform_device *pdev); 131