1 | /* SPDX-License-Identifier: GPL-2.0-only */ |
2 | /* |
3 | * TI DaVinci AEMIF platform glue. |
4 | * |
5 | * Copyright (C) 2017 BayLibre SAS |
6 | * |
7 | * Author: |
8 | * Bartosz Golaszewski <bgolaszewski@baylibre.com> |
9 | */ |
10 | |
11 | #ifndef __TI_DAVINCI_AEMIF_DATA_H__ |
12 | #define __TI_DAVINCI_AEMIF_DATA_H__ |
13 | |
14 | #include <linux/of_platform.h> |
15 | |
16 | /** |
17 | * struct aemif_abus_data - Async bus configuration parameters. |
18 | * |
19 | * @cs - Chip-select number. |
20 | */ |
21 | struct aemif_abus_data { |
22 | u32 cs; |
23 | }; |
24 | |
25 | /** |
26 | * struct aemif_platform_data - Data to set up the TI aemif driver. |
27 | * |
28 | * @dev_lookup: of_dev_auxdata passed to of_platform_populate() for aemif |
29 | * subdevices. |
30 | * @cs_offset: Lowest allowed chip-select number. |
31 | * @abus_data: Array of async bus configuration entries. |
32 | * @num_abus_data: Number of abus entries. |
33 | * @sub_devices: Array of platform subdevices. |
34 | * @num_sub_devices: Number of subdevices. |
35 | */ |
36 | struct aemif_platform_data { |
37 | struct of_dev_auxdata *dev_lookup; |
38 | u32 cs_offset; |
39 | struct aemif_abus_data *abus_data; |
40 | size_t num_abus_data; |
41 | struct platform_device *sub_devices; |
42 | size_t num_sub_devices; |
43 | }; |
44 | |
45 | #endif /* __TI_DAVINCI_AEMIF_DATA_H__ */ |
46 | |