
HW vote and unvote is currently called from multiple
clients leading to synchronization issues
during SSR/PDR scenarios. Synchronize all the vote requests
by using digital codec resource manager.
Change-Id: I7e63f69ab5d761a3bb4c7ce70bbef2e8bfd76cfb
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
(cherry picked from commit 31aa875405
)
46 line
966 B
C
46 line
966 B
C
/* SPDX-License-Identifier: GPL-2.0-only */
|
|
/*
|
|
* Copyright (c) 2020, The Linux Foundation. All rights reserved.
|
|
*/
|
|
|
|
#ifndef DIGITAL_CDC_RSC_MGR_H
|
|
#define DIGITAL_CDC_RSC_MGR_H
|
|
|
|
#include <linux/clk.h>
|
|
|
|
#ifdef CONFIG_DIGITAL_CDC_RSC_MGR
|
|
|
|
int digital_cdc_rsc_mgr_hw_vote_enable(struct clk* vote_handle);
|
|
void digital_cdc_rsc_mgr_hw_vote_disable(struct clk* vote_handle);
|
|
void digital_cdc_rsc_mgr_hw_vote_reset(struct clk* vote_handle);
|
|
|
|
void digital_cdc_rsc_mgr_init(void);
|
|
void digital_cdc_rsc_mgr_exit(void);
|
|
|
|
#else
|
|
|
|
static inline int digital_cdc_rsc_mgr_hw_vote_enable(struct clk* vote_handle)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
static inline void digital_cdc_rsc_mgr_hw_vote_disable(struct clk* vote_handle)
|
|
{
|
|
}
|
|
|
|
static inline void digital_cdc_rsc_mgr_hw_vote_reset(struct clk* vote_handle)
|
|
{
|
|
}
|
|
|
|
static inline void digital_cdc_rsc_mgr_init(void)
|
|
{
|
|
}
|
|
|
|
static inline void digital_cdc_rsc_mgr_exit(void)
|
|
{
|
|
}
|
|
|
|
#endif /* CONFIG_DIGITAL_CDC_RSC_MGR */
|
|
|
|
#endif /* DIGITAL_CDC_RSC_MGR_H */
|