Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1/* SPDX-License-Identifier: GPL-2.0 */
2/*
3 * glue.h - DesignWare USB3 DRD glue header
4 */
5
6#ifndef __DRIVERS_USB_DWC3_GLUE_H
7#define __DRIVERS_USB_DWC3_GLUE_H
8
9#include <linux/types.h>
10#include "core.h"
11
12/**
13 * dwc3_probe_data: Initialization parameters passed to dwc3_core_probe()
14 * @dwc: Reference to dwc3 context structure
15 * @res: resource for the DWC3 core mmio region
16 * @ignore_clocks_and_resets: clocks and resets defined for the device should
17 * be ignored by the DWC3 core, as they are managed by the glue
18 */
19struct dwc3_probe_data {
20 struct dwc3 *dwc;
21 struct resource *res;
22 bool ignore_clocks_and_resets;
23};
24
25int dwc3_core_probe(const struct dwc3_probe_data *data);
26void dwc3_core_remove(struct dwc3 *dwc);
27
28int dwc3_runtime_suspend(struct dwc3 *dwc);
29int dwc3_runtime_resume(struct dwc3 *dwc);
30int dwc3_runtime_idle(struct dwc3 *dwc);
31int dwc3_pm_suspend(struct dwc3 *dwc);
32int dwc3_pm_resume(struct dwc3 *dwc);
33void dwc3_pm_complete(struct dwc3 *dwc);
34int dwc3_pm_prepare(struct dwc3 *dwc);
35
36#endif