xref: /linux/drivers/soundwire/amd_init.h (revision 36ec807b627b4c0a0a382f0ae48eac7187d14b2b)
1ed5e8741SVijendar Mukunda /* SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) */
2ed5e8741SVijendar Mukunda /*
3ed5e8741SVijendar Mukunda  * Copyright (C) 2024 Advanced Micro Devices, Inc. All rights reserved.
4ed5e8741SVijendar Mukunda  */
5ed5e8741SVijendar Mukunda 
6ed5e8741SVijendar Mukunda #ifndef __AMD_INIT_H
7ed5e8741SVijendar Mukunda #define __AMD_INIT_H
8ed5e8741SVijendar Mukunda 
9ed5e8741SVijendar Mukunda #include <linux/soundwire/sdw_amd.h>
10ed5e8741SVijendar Mukunda 
11ed5e8741SVijendar Mukunda int amd_sdw_manager_start(struct amd_sdw_manager *amd_manager);
12ed5e8741SVijendar Mukunda 
13*e05af1a4SVijendar Mukunda static inline void amd_updatel(void __iomem *mmio, int offset, u32 mask, u32 val)
14*e05af1a4SVijendar Mukunda {
15*e05af1a4SVijendar Mukunda 	u32 tmp;
16*e05af1a4SVijendar Mukunda 
17*e05af1a4SVijendar Mukunda 	tmp = readl(mmio + offset);
18*e05af1a4SVijendar Mukunda 	tmp = (tmp & ~mask) | val;
19*e05af1a4SVijendar Mukunda 	writel(tmp, mmio + offset);
20*e05af1a4SVijendar Mukunda }
21ed5e8741SVijendar Mukunda #endif
22