xref: /freebsd/sys/dev/bhnd/cores/pmu/bhnd_pmu.h (revision f90f4b65)
1f90f4b65SLandon J. Fuller /*-
2f90f4b65SLandon J. Fuller  * Copyright (c) 2016 Landon Fuller <landonf@FreeBSD.org>
3f90f4b65SLandon J. Fuller  * All rights reserved.
4f90f4b65SLandon J. Fuller  *
5f90f4b65SLandon J. Fuller  * Redistribution and use in source and binary forms, with or without
6f90f4b65SLandon J. Fuller  * modification, are permitted provided that the following conditions
7f90f4b65SLandon J. Fuller  * are met:
8f90f4b65SLandon J. Fuller  * 1. Redistributions of source code must retain the above copyright
9f90f4b65SLandon J. Fuller  *    notice, this list of conditions and the following disclaimer,
10f90f4b65SLandon J. Fuller  *    without modification.
11f90f4b65SLandon J. Fuller  * 2. Redistributions in binary form must reproduce at minimum a disclaimer
12f90f4b65SLandon J. Fuller  *    similar to the "NO WARRANTY" disclaimer below ("Disclaimer") and any
13f90f4b65SLandon J. Fuller  *    redistribution must be conditioned upon including a substantially
14f90f4b65SLandon J. Fuller  *    similar Disclaimer requirement for further binary redistribution.
15f90f4b65SLandon J. Fuller  *
16f90f4b65SLandon J. Fuller  * NO WARRANTY
17f90f4b65SLandon J. Fuller  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
18f90f4b65SLandon J. Fuller  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
19f90f4b65SLandon J. Fuller  * LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTIBILITY
20f90f4b65SLandon J. Fuller  * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
21f90f4b65SLandon J. Fuller  * THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY,
22f90f4b65SLandon J. Fuller  * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23f90f4b65SLandon J. Fuller  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24f90f4b65SLandon J. Fuller  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
25f90f4b65SLandon J. Fuller  * IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26f90f4b65SLandon J. Fuller  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
27f90f4b65SLandon J. Fuller  * THE POSSIBILITY OF SUCH DAMAGES.
28f90f4b65SLandon J. Fuller  *
29f90f4b65SLandon J. Fuller  * $FreeBSD$
30f90f4b65SLandon J. Fuller  */
31f90f4b65SLandon J. Fuller 
32f90f4b65SLandon J. Fuller #ifndef _BHND_CORES_PMU_BHND_PMU_H_
33f90f4b65SLandon J. Fuller #define _BHND_CORES_PMU_BHND_PMU_H_
34f90f4b65SLandon J. Fuller 
35f90f4b65SLandon J. Fuller #include <sys/types.h>
36f90f4b65SLandon J. Fuller 
37f90f4b65SLandon J. Fuller #include "bhnd_pmu_if.h"
38f90f4b65SLandon J. Fuller 
39f90f4b65SLandon J. Fuller /**
40f90f4b65SLandon J. Fuller  * Per-core PMU register information.
41f90f4b65SLandon J. Fuller  */
42f90f4b65SLandon J. Fuller struct bhnd_core_pmu_info {
43f90f4b65SLandon J. Fuller 	device_t		 pm_dev;	/**< core device */
44f90f4b65SLandon J. Fuller 	device_t		 pm_pmu;	/**< PMU device */
45f90f4b65SLandon J. Fuller 	struct bhnd_resource	*pm_res;	/**< Resource containing PMU
46f90f4b65SLandon J. Fuller 						     register block for this
47f90f4b65SLandon J. Fuller 						     device (if any). */
48f90f4b65SLandon J. Fuller 	bus_size_t		 pm_regs;	/**< Offset to PMU register
49f90f4b65SLandon J. Fuller 						  *  block in @p pm_res */
50f90f4b65SLandon J. Fuller };
51f90f4b65SLandon J. Fuller 
52f90f4b65SLandon J. Fuller #endif /* _BHND_CORES_PMU_BHND_PMU_H_ */
53