blob: 0ee86ff7d30754c1bb9caae433d4595c80317834 [file] [log] [blame]
Robert Mustacchi047043c2020-04-08 21:35:09 -07001/*
2 * This file and its contents are supplied under the terms of the
3 * Common Development and Distribution License ("CDDL"), version 1.0.
4 * You may only use this file in accordance with the terms of version
5 * 1.0 of the CDDL.
6 *
7 * A full copy of the text of the CDDL should have accompanied this
8 * source. A copy of the CDDL is also available via the Internet at
9 * http://www.illumos.org/license/CDDL.
10 */
11
12/*
Keith M Wesolowski4adf43b2022-11-09 07:00:30 +000013 * Copyright 2022 Oxide Computer Company
Robert Mustacchi047043c2020-04-08 21:35:09 -070014 */
15
16#ifndef _USMN_H
17#define _USMN_H
18
19/*
20 * Private ioctls for interfacing with the usmn driver.
21 */
22
23#ifdef __cplusplus
24extern "C" {
25#endif
26
27#define USMN_IOCTL (('u' << 24) | ('s' << 16) | ('m' << 8))
28
29#define USMN_READ (USMN_IOCTL | 0x01)
30#define USMN_WRITE (USMN_IOCTL | 0x02)
31
32typedef struct usmn_reg {
33 uint32_t usr_addr;
34 uint32_t usr_data;
Keith M Wesolowski4adf43b2022-11-09 07:00:30 +000035 uint32_t usr_size;
Robert Mustacchi047043c2020-04-08 21:35:09 -070036} usmn_reg_t;
37
38#ifdef __cplusplus
39}
40#endif
41
42#endif /* _USMN_H */