Loading...
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
17struct s3c24xx_uart_resources {
18 struct resource *resources;
19 unsigned long nr_resources;
20};
21
22extern struct s3c24xx_uart_resources s3c2410_uart_resources[];
23extern struct s3c24xx_uart_resources s3c64xx_uart_resources[];
24
25extern struct platform_device *s3c24xx_uart_devs[];
26extern struct platform_device *s3c24xx_uart_src[];
27
28extern struct platform_device s3c64xx_device_iis0;
29extern struct platform_device s3c64xx_device_iis1;
30extern struct platform_device s3c64xx_device_spi0;
31
32extern struct platform_device s3c_device_fb;
33extern struct platform_device s3c_device_hsmmc0;
34extern struct platform_device s3c_device_hsmmc1;
35extern struct platform_device s3c_device_hsmmc2;
36extern struct platform_device s3c_device_hsmmc3;
37extern struct platform_device s3c_device_i2c0;
38extern struct platform_device s3c_device_i2c1;
39extern struct platform_device s3c_device_ohci;
40extern struct platform_device s3c_device_usb_hsotg;
41
42extern struct platform_device samsung_device_keypad;
43extern 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 */
54extern void *s3c_set_platdata(void *pd, size_t pdsize,
55 struct platform_device *pdev);
56
57#endif /* __PLAT_DEVS_H */
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
17struct s3c24xx_uart_resources {
18 struct resource *resources;
19 unsigned long nr_resources;
20};
21
22extern struct s3c24xx_uart_resources s3c2410_uart_resources[];
23extern struct s3c24xx_uart_resources s3c64xx_uart_resources[];
24
25extern struct platform_device *s3c24xx_uart_devs[];
26extern struct platform_device *s3c24xx_uart_src[];
27
28extern struct platform_device s3c64xx_device_ac97;
29extern struct platform_device s3c64xx_device_iis0;
30extern struct platform_device s3c64xx_device_iis1;
31extern struct platform_device s3c64xx_device_iisv4;
32extern struct platform_device s3c64xx_device_onenand1;
33extern struct platform_device s3c64xx_device_pcm0;
34extern struct platform_device s3c64xx_device_pcm1;
35extern struct platform_device s3c64xx_device_spi0;
36
37extern struct platform_device s3c_device_adc;
38extern struct platform_device s3c_device_cfcon;
39extern struct platform_device s3c_device_fb;
40extern struct platform_device s3c_device_hwmon;
41extern struct platform_device s3c_device_hsmmc0;
42extern struct platform_device s3c_device_hsmmc1;
43extern struct platform_device s3c_device_hsmmc2;
44extern struct platform_device s3c_device_hsmmc3;
45extern struct platform_device s3c_device_i2c0;
46extern struct platform_device s3c_device_i2c1;
47extern struct platform_device s3c_device_i2c2;
48extern struct platform_device s3c_device_i2c3;
49extern struct platform_device s3c_device_i2c4;
50extern struct platform_device s3c_device_i2c5;
51extern struct platform_device s3c_device_i2c6;
52extern struct platform_device s3c_device_i2c7;
53extern struct platform_device s3c_device_iis;
54extern struct platform_device s3c_device_lcd;
55extern struct platform_device s3c_device_nand;
56extern struct platform_device s3c_device_ohci;
57extern struct platform_device s3c_device_onenand;
58extern struct platform_device s3c_device_rtc;
59extern struct platform_device s3c_device_sdi;
60extern struct platform_device s3c_device_spi0;
61extern struct platform_device s3c_device_spi1;
62extern struct platform_device s3c_device_ts;
63extern struct platform_device s3c_device_timer[];
64extern struct platform_device s3c_device_usbgadget;
65extern struct platform_device s3c_device_usb_hsotg;
66extern struct platform_device s3c_device_usb_hsudc;
67extern struct platform_device s3c_device_wdt;
68
69extern struct platform_device samsung_asoc_idma;
70extern struct platform_device samsung_device_keypad;
71extern struct platform_device samsung_device_pwm;
72
73/* s3c2440 specific devices */
74
75#ifdef CONFIG_CPU_S3C2440
76
77extern struct platform_device s3c_device_camif;
78extern struct platform_device s3c_device_ac97;
79
80#endif
81
82/**
83 * s3c_set_platdata() - helper for setting platform data
84 * @pd: The default platform data for this device.
85 * @pdsize: The size of the platform data.
86 * @pdev: Pointer to the device to fill in.
87 *
88 * This helper replaces a number of calls that copy and then set the
89 * platform data of the device.
90 */
91extern void *s3c_set_platdata(void *pd, size_t pdsize,
92 struct platform_device *pdev);
93
94#endif /* __PLAT_DEVS_H */