xref: /openbmc/linux/arch/sparc/include/asm/device.h (revision 75bf465f0bc33e9b776a46d6a1b9b990f5fb7c37)
1*55716d26SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */
2a439fe51SSam Ravnborg /*
3a439fe51SSam Ravnborg  * Arch specific extensions to struct device
4a439fe51SSam Ravnborg  */
5a439fe51SSam Ravnborg #ifndef _ASM_SPARC_DEVICE_H
6a439fe51SSam Ravnborg #define _ASM_SPARC_DEVICE_H
7a439fe51SSam Ravnborg 
81636f8acSGrant Likely #include <asm/openprom.h>
91636f8acSGrant Likely 
10a439fe51SSam Ravnborg struct device_node;
11b505ff5eSGrant Likely struct platform_device;
12a439fe51SSam Ravnborg 
13a439fe51SSam Ravnborg struct dev_archdata {
14a439fe51SSam Ravnborg 	void			*iommu;
15a439fe51SSam Ravnborg 	void			*stc;
16a439fe51SSam Ravnborg 	void			*host_controller;
17b505ff5eSGrant Likely 	struct platform_device	*op;
18a439fe51SSam Ravnborg 	int			numa_node;
19a439fe51SSam Ravnborg };
20a439fe51SSam Ravnborg 
21f05a6865SSam Ravnborg void of_propagate_archdata(struct platform_device *bus);
2229596042SGrant Likely 
23d7aacaddSMagnus Damm struct pdev_archdata {
241636f8acSGrant Likely 	struct resource		resource[PROMREG_MAX];
251636f8acSGrant Likely 	unsigned int		irqs[PROMINTR_MAX];
261636f8acSGrant Likely 	int			num_irqs;
27d7aacaddSMagnus Damm };
28d7aacaddSMagnus Damm 
29a439fe51SSam Ravnborg #endif /* _ASM_SPARC_DEVICE_H */
30