1  /* SPDX-License-Identifier: GPL-2.0 */
2  /*
3   * Copyright (c) 2011 Samsung Electronics Co., Ltd.
4   *		http://www.samsung.com
5   *
6   * Copyright (c) 2004 Simtec Electronics
7   * Ben Dooks <ben@simtec.co.uk>
8   *
9   * Header file for s3c2410 standard platform devices
10   */
11  
12  #ifndef __PLAT_DEVS_H
13  #define __PLAT_DEVS_H __FILE__
14  
15  #include <linux/platform_device.h>
16  
17  struct s3c24xx_uart_resources {
18  	struct resource		*resources;
19  	unsigned long		 nr_resources;
20  };
21  
22  extern struct s3c24xx_uart_resources s3c2410_uart_resources[];
23  extern struct s3c24xx_uart_resources s3c64xx_uart_resources[];
24  
25  extern struct platform_device *s3c24xx_uart_devs[];
26  extern struct platform_device *s3c24xx_uart_src[];
27  
28  extern struct platform_device s3c64xx_device_iis0;
29  extern struct platform_device s3c64xx_device_iis1;
30  extern struct platform_device s3c64xx_device_spi0;
31  
32  extern struct platform_device s3c_device_fb;
33  extern struct platform_device s3c_device_hsmmc0;
34  extern struct platform_device s3c_device_hsmmc1;
35  extern struct platform_device s3c_device_hsmmc2;
36  extern struct platform_device s3c_device_hsmmc3;
37  extern struct platform_device s3c_device_i2c0;
38  extern struct platform_device s3c_device_i2c1;
39  extern struct platform_device s3c_device_ohci;
40  extern struct platform_device s3c_device_usb_hsotg;
41  
42  extern struct platform_device samsung_device_keypad;
43  extern struct platform_device samsung_device_pwm;
44  
45  /**
46   * s3c_set_platdata() - helper for setting platform data
47   * @pd: The default platform data for this device.
48   * @pdsize: The size of the platform data.
49   * @pdev: Pointer to the device to fill in.
50   *
51   * This helper replaces a number of calls that copy and then set the
52   * platform data of the device.
53   */
54  extern void *s3c_set_platdata(void *pd, size_t pdsize,
55  			      struct platform_device *pdev);
56  
57  #endif /* __PLAT_DEVS_H */
58