blob: daa6a8a5e9cd0d5dfa102ca89639d3eda8d53f5c [file] [log] [blame]
Benjamin Herrenschmidtc6dbaef2006-11-11 17:18:39 +11001/*
2 * Arch specific extensions to struct device
3 *
4 * This file is released under the GPLv2
5 */
David S. Millere865f3e2007-07-18 20:59:54 -07006#ifndef _ASM_SPARC_DEVICE_H
7#define _ASM_SPARC_DEVICE_H
8
Grant Likely1636f8a2010-06-18 11:09:58 -06009#include <asm/openprom.h>
10
David S. Millere865f3e2007-07-18 20:59:54 -070011struct device_node;
Grant Likelyb505ff52010-06-18 11:09:59 -060012struct platform_device;
David S. Millere865f3e2007-07-18 20:59:54 -070013
14struct dev_archdata {
David S. Millerad7ad572007-07-27 22:39:14 -070015 void *iommu;
16 void *stc;
17 void *host_controller;
Grant Likelyb505ff52010-06-18 11:09:59 -060018 struct platform_device *op;
David S. Millerc1b1a5f2008-03-19 04:52:48 -070019 int numa_node;
David S. Millere865f3e2007-07-18 20:59:54 -070020};
21
Grant Likely29596042010-06-29 11:15:54 -060022extern void of_propagate_archdata(struct platform_device *bus);
23
Magnus Dammd7aacad2009-07-08 13:21:31 +020024struct pdev_archdata {
Grant Likely1636f8a2010-06-18 11:09:58 -060025 struct resource resource[PROMREG_MAX];
26 unsigned int irqs[PROMINTR_MAX];
27 int num_irqs;
Magnus Dammd7aacad2009-07-08 13:21:31 +020028};
29
David S. Millere865f3e2007-07-18 20:59:54 -070030#endif /* _ASM_SPARC_DEVICE_H */