xref: /openbmc/linux/drivers/soundwire/intel.h (revision dc6a81c3)
1 /* SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) */
2 /* Copyright(c) 2015-17 Intel Corporation. */
3 
4 #ifndef __SDW_INTEL_LOCAL_H
5 #define __SDW_INTEL_LOCAL_H
6 
7 /**
8  * struct sdw_intel_link_res - Soundwire Intel link resource structure,
9  * typically populated by the controller driver.
10  * @pdev: platform_device
11  * @mmio_base: mmio base of SoundWire registers
12  * @registers: Link IO registers base
13  * @shim: Audio shim pointer
14  * @alh: ALH (Audio Link Hub) pointer
15  * @irq: Interrupt line
16  * @ops: Shim callback ops
17  * @dev: device implementing hw_params and free callbacks
18  */
19 struct sdw_intel_link_res {
20 	struct platform_device *pdev;
21 	void __iomem *mmio_base; /* not strictly needed, useful for debug */
22 	void __iomem *registers;
23 	void __iomem *shim;
24 	void __iomem *alh;
25 	int irq;
26 	const struct sdw_intel_ops *ops;
27 	struct device *dev;
28 };
29 
30 #endif /* __SDW_INTEL_LOCAL_H */
31