mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-11 00:08:50 +00:00
74494b3321
For some SoCs, the controler's power will be off during the system suspend, and it needs some recovery operation to let the system back to workable. We add this support in this patch. Signed-off-by: Xu Yang <xu.yang_2@nxp.com> Acked-by: Peter Chen <peter.chen@kernel.org> Link: https://lore.kernel.org/r/20221013151442.3262951-2-xu.yang_2@nxp.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
26 lines
744 B
C
26 lines
744 B
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
/*
|
|
* Copyright (C) 2013-2014 Freescale Semiconductor, Inc.
|
|
*
|
|
* Author: Peter Chen
|
|
*/
|
|
|
|
#ifndef __DRIVERS_USB_CHIPIDEA_OTG_H
|
|
#define __DRIVERS_USB_CHIPIDEA_OTG_H
|
|
|
|
u32 hw_read_otgsc(struct ci_hdrc *ci, u32 mask);
|
|
void hw_write_otgsc(struct ci_hdrc *ci, u32 mask, u32 data);
|
|
int ci_hdrc_otg_init(struct ci_hdrc *ci);
|
|
void ci_hdrc_otg_destroy(struct ci_hdrc *ci);
|
|
enum ci_role ci_otg_role(struct ci_hdrc *ci);
|
|
void ci_handle_vbus_change(struct ci_hdrc *ci);
|
|
void ci_handle_id_switch(struct ci_hdrc *ci);
|
|
static inline void ci_otg_queue_work(struct ci_hdrc *ci)
|
|
{
|
|
disable_irq_nosync(ci->irq);
|
|
if (queue_work(ci->wq, &ci->work) == false)
|
|
enable_irq(ci->irq);
|
|
}
|
|
|
|
#endif /* __DRIVERS_USB_CHIPIDEA_OTG_H */
|