1/* SPDX-License-Identifier: GPL-2.0 */
2/*
3 * Copyright (c) 2022, Intel Corporation. All rights reserved.
4 */
5#ifndef _LINUX_MEI_AUX_H
6#define _LINUX_MEI_AUX_H
7
8#include <linux/auxiliary_bus.h>
9
10/**
11 * struct mei_aux_device - mei auxiliary device
12 * @aux_dev: - auxiliary device object
13 * @irq: interrupt driving the mei auxiliary device
14 * @bar: mmio resource bar reserved to mei auxiliary device
15 * @ext_op_mem: resource for extend operational memory
16 *              used in graphics PXP mode.
17 * @slow_firmware: The device has slow underlying firmware.
18 *                 Such firmware will require to use larger operation timeouts.
19 */
20struct mei_aux_device {
21	struct auxiliary_device aux_dev;
22	int irq;
23	struct resource bar;
24	struct resource ext_op_mem;
25	bool slow_firmware;
26};
27
28#define auxiliary_dev_to_mei_aux_dev(auxiliary_dev) \
29	container_of(auxiliary_dev, struct mei_aux_device, aux_dev)
30
31#endif /* _LINUX_MEI_AUX_H */
32