mirror of
				https://github.com/smaeul/u-boot.git
				synced 2025-11-03 21:48:15 +00:00 
			
		
		
		
	On some board, the ID pin is not connected so the B session must be overridden with "u-boot,force_b_session_valid" but the VBus sensing must continue to be handle. To managed it, this patch adds a new DT field "u-boot,force-vbus-detection" to use with "u-boot,force_b_session_valid" Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
		
			
				
	
	
		
			40 lines
		
	
	
		
			973 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			973 B
		
	
	
	
		
			C
		
	
	
	
	
	
/* 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 */
 |