xref: /openbmc/linux/drivers/soundwire/intel.h (revision 23859465)
123859465SPierre-Louis Bossart /* SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) */
223859465SPierre-Louis Bossart /* Copyright(c) 2015-17 Intel Corporation. */
371bb8a1bSVinod Koul 
471bb8a1bSVinod Koul #ifndef __SDW_INTEL_LOCAL_H
571bb8a1bSVinod Koul #define __SDW_INTEL_LOCAL_H
671bb8a1bSVinod Koul 
771bb8a1bSVinod Koul /**
871bb8a1bSVinod Koul  * struct sdw_intel_res - Soundwire link resources
971bb8a1bSVinod Koul  * @registers: Link IO registers base
1071bb8a1bSVinod Koul  * @shim: Audio shim pointer
1171bb8a1bSVinod Koul  * @alh: ALH (Audio Link Hub) pointer
1271bb8a1bSVinod Koul  * @irq: Interrupt line
13c46302ecSVinod Koul  * @ops: Shim callback ops
14c46302ecSVinod Koul  * @arg: Shim callback ops argument
1571bb8a1bSVinod Koul  *
1671bb8a1bSVinod Koul  * This is set as pdata for each link instance.
1771bb8a1bSVinod Koul  */
1871bb8a1bSVinod Koul struct sdw_intel_link_res {
1971bb8a1bSVinod Koul 	void __iomem *registers;
2071bb8a1bSVinod Koul 	void __iomem *shim;
2171bb8a1bSVinod Koul 	void __iomem *alh;
2271bb8a1bSVinod Koul 	int irq;
23c46302ecSVinod Koul 	const struct sdw_intel_ops *ops;
24c46302ecSVinod Koul 	void *arg;
2571bb8a1bSVinod Koul };
2671bb8a1bSVinod Koul 
2771bb8a1bSVinod Koul #endif /* __SDW_INTEL_LOCAL_H */
28