/* SPDX-License-Identifier: GPL-2.0+ */
/*
 * drivers/usb/gadget/dwc2_udc.h
 * Designware DWC2 on-chip full/high speed USB device controllers
 * Copyright (C) 2005 for Samsung Electronics
 */

#ifndef __DWC2_USB_GADGET
#define __DWC2_USB_GADGET

#include <dm/ofnode.h>

#define PHY0_SLEEP              (1 << 5)
#define DWC2_MAX_HW_ENDPOINTS	16

struct dwc2_plat_otg_data {
	void		*priv;
	ofnode		phy_of_node;
	int		(*phy_control)(int on);
	uintptr_t	regs_phy;
	uintptr_t	regs_otg;
	unsigned int    usb_phy_ctrl;
	unsigned int    usb_flags;
	unsigned int	usb_gusbcfg;
	unsigned int	rx_fifo_sz;
	unsigned int	np_tx_fifo_sz;
	unsigned int	tx_fifo_sz;
	unsigned int	tx_fifo_sz_array[DWC2_MAX_HW_ENDPOINTS];
	unsigned char   tx_fifo_sz_nb;
	bool		force_b_session_valid;
	bool		force_vbus_detection;
	bool		activate_stm_id_vb_detection;
};

int dwc2_udc_probe(struct dwc2_plat_otg_data *pdata);

int dwc2_udc_B_session_valid(struct udevice *dev);

#endif	/* __DWC2_USB_GADGET */
