Deleted Added
full compact
ofw_bus_subr.h (186128) ofw_bus_subr.h (194138)
1/*-
2 * Copyright (c) 2005 Marius Strobl <marius@FreeBSD.org>
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 11 unchanged lines hidden (view full) ---

20 * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26 * SUCH DAMAGE.
27 *
1/*-
2 * Copyright (c) 2005 Marius Strobl <marius@FreeBSD.org>
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 11 unchanged lines hidden (view full) ---

20 * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26 * SUCH DAMAGE.
27 *
28 * $FreeBSD: head/sys/dev/ofw/ofw_bus_subr.h 186128 2008-12-15 15:31:10Z nwhitehorn $
28 * $FreeBSD: head/sys/dev/ofw/ofw_bus_subr.h 194138 2009-06-14 00:05:38Z marius $
29 */
30
31#ifndef _DEV_OFW_OFW_BUS_SUBR_H_
32#define _DEV_OFW_OFW_BUS_SUBR_H_
33
34#include <sys/bus.h>
35
36#include <dev/ofw/openfirm.h>
37
38#include "ofw_bus_if.h"
39
40#define ORIP_NOINT -1
41#define ORIR_NOTFOUND 0xffffffff
42
43struct ofw_bus_iinfo {
29 */
30
31#ifndef _DEV_OFW_OFW_BUS_SUBR_H_
32#define _DEV_OFW_OFW_BUS_SUBR_H_
33
34#include <sys/bus.h>
35
36#include <dev/ofw/openfirm.h>
37
38#include "ofw_bus_if.h"
39
40#define ORIP_NOINT -1
41#define ORIR_NOTFOUND 0xffffffff
42
43struct ofw_bus_iinfo {
44 u_int8_t *opi_imap;
45 u_int8_t *opi_imapmsk;
44 uint8_t *opi_imap;
45 uint8_t *opi_imapmsk;
46 int opi_imapsz;
47 pcell_t opi_addrc;
48};
49
46 int opi_imapsz;
47 pcell_t opi_addrc;
48};
49
50/* Generic implementation of ofw_bus_if.m methods and helper routines */
50int ofw_bus_gen_setup_devinfo(struct ofw_bus_devinfo *, phandle_t);
51void ofw_bus_gen_destroy_devinfo(struct ofw_bus_devinfo *);
52
51int ofw_bus_gen_setup_devinfo(struct ofw_bus_devinfo *, phandle_t);
52void ofw_bus_gen_destroy_devinfo(struct ofw_bus_devinfo *);
53
54ofw_bus_get_compat_t ofw_bus_gen_get_compat;
55ofw_bus_get_model_t ofw_bus_gen_get_model;
56ofw_bus_get_name_t ofw_bus_gen_get_name;
57ofw_bus_get_node_t ofw_bus_gen_get_node;
58ofw_bus_get_type_t ofw_bus_gen_get_type;
59
53/* Helper method to report interesting OF properties in pnpinfo */
60/* Helper method to report interesting OF properties in pnpinfo */
54int ofw_bus_gen_child_pnpinfo_str(device_t, device_t, char *, size_t);
61bus_child_pnpinfo_str_t ofw_bus_gen_child_pnpinfo_str;
55
56/* Routines for processing firmware interrupt maps */
62
63/* Routines for processing firmware interrupt maps */
57
58void ofw_bus_setup_iinfo(phandle_t, struct ofw_bus_iinfo *, int);
59int ofw_bus_lookup_imap(phandle_t, struct ofw_bus_iinfo *, void *, int,
60 void *, int, void *, int, void *);
61int ofw_bus_search_intrmap(void *, int, void *, int, void *, int, void *,
62 void *, void *, int);
63
64void ofw_bus_setup_iinfo(phandle_t, struct ofw_bus_iinfo *, int);
65int ofw_bus_lookup_imap(phandle_t, struct ofw_bus_iinfo *, void *, int,
66 void *, int, void *, int, void *);
67int ofw_bus_search_intrmap(void *, int, void *, int, void *, int, void *,
68 void *, void *, int);
69
64ofw_bus_get_compat_t ofw_bus_gen_get_compat;
65ofw_bus_get_model_t ofw_bus_gen_get_model;
66ofw_bus_get_name_t ofw_bus_gen_get_name;
67ofw_bus_get_node_t ofw_bus_gen_get_node;
68ofw_bus_get_type_t ofw_bus_gen_get_type;
69
70#endif /* !_DEV_OFW_OFW_BUS_SUBR_H_ */
70#endif /* !_DEV_OFW_OFW_BUS_SUBR_H_ */