Commit | Line | Data |
---|---|---|
1a59d1b8 | 1 | /* SPDX-License-Identifier: GPL-2.0-or-later */ |
b786af11 SN |
2 | /* |
3 | * (c) Copyright 2006 Benjamin Herrenschmidt, IBM Corp. | |
4 | * <benh@kernel.crashing.org> | |
b786af11 SN |
5 | */ |
6 | ||
7 | #ifndef _ASM_POWERPC_DCR_GENERIC_H | |
8 | #define _ASM_POWERPC_DCR_GENERIC_H | |
9 | #ifdef __KERNEL__ | |
10 | #ifndef __ASSEMBLY__ | |
11 | ||
12 | enum host_type_t {DCR_HOST_MMIO, DCR_HOST_NATIVE, DCR_HOST_INVALID}; | |
13 | ||
14 | typedef struct { | |
15 | enum host_type_t type; | |
16 | union { | |
17 | dcr_host_mmio_t mmio; | |
18 | dcr_host_native_t native; | |
19 | } host; | |
20 | } dcr_host_t; | |
21 | ||
22 | extern bool dcr_map_ok_generic(dcr_host_t host); | |
23 | ||
24 | extern dcr_host_t dcr_map_generic(struct device_node *dev, unsigned int dcr_n, | |
25 | unsigned int dcr_c); | |
26 | extern void dcr_unmap_generic(dcr_host_t host, unsigned int dcr_c); | |
27 | ||
28 | extern u32 dcr_read_generic(dcr_host_t host, unsigned int dcr_n); | |
29 | ||
30 | extern void dcr_write_generic(dcr_host_t host, unsigned int dcr_n, u32 value); | |
31 | ||
32 | #endif /* __ASSEMBLY__ */ | |
33 | #endif /* __KERNEL__ */ | |
34 | #endif /* _ASM_POWERPC_DCR_GENERIC_H */ | |
35 | ||
36 |