hathach 
							
						 
					 
					
						
						
							
						
						77e142ed76 
					 
					
						
						
							
							Merge branch 'master' into fork/HiFiPhile/async_io  
						
						
						
						
					 
					
						2025-06-30 21:09:40 +07:00 
						 
				 
			
				
					
						
							
							
								HiFiPhile 
							
						 
					 
					
						
						
							
						
						d789a87a7d 
					 
					
						
						
							
							Merge branch 'master' into async_io  
						
						... 
						
						
						
						Signed-off-by: HiFiPhile <admin@hifiphile.com > 
						
						
					 
					
						2025-06-22 17:19:08 +02:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						5c974cee23 
					 
					
						
						
							
							usbh make TU_API_SYNC() public, to implement sync() API, change return of sync API from uint8_t to tusb_xfer_result_t  
						
						
						
						
					 
					
						2025-06-20 12:51:29 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						9503883ba7 
					 
					
						
						
							
							usbh: add new API tuh_descriptor_get_device_local()  
						
						... 
						
						
						
						cdc host: remove the local desc_dev and the get_device descriptor call for ftdi and pl2303 
						
						
					 
					
						2025-06-18 23:44:03 +07:00 
						 
				 
			
				
					
						
							
							
								Cédric Berger 
							
						 
					 
					
						
						
							
						
						d533650105 
					 
					
						
						
							
							Fix TUH_EPSIZE_BULK_MPS macro  
						
						... 
						
						
						
						TUH_EPSIZE_BULK_MPS should be set based on TUH_OPT_HIGH_SPEED, not TUD_OPT_HIGH_SPEED 
						
						
					 
					
						2025-06-09 16:56:02 +02:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						e41a63c60d 
					 
					
						
						
							
							add usbh_spin_lock/unlock() use spinlock instead of atomic flag for hcd max3421  
						
						
						
						
					 
					
						2025-05-21 15:27:18 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						fe4446090e 
					 
					
						
						
							
							fix dual example for rp2350 conflict printf and cdc_printf  
						
						
						
						
					 
					
						2025-05-13 16:27:26 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						baf67539fc 
					 
					
						
						
							
							fix warnings, minor clean up  
						
						
						
						
					 
					
						2025-05-13 12:16:22 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						809af3e74c 
					 
					
						
						
							
							chore(usbh): change removing_hubs to array instead of bitmask  
						
						
						
						
					 
					
						2025-05-06 15:58:07 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						bc37ed6e3e 
					 
					
						
						
							
							usbh: force removed device in the same bus info, before setting address.  
						
						... 
						
						
						
						usbh: move code around
hub: queue status endpoint for detach/remove event 
						
						
					 
					
						2025-05-06 15:23:23 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						2abd3c54c4 
					 
					
						
						
							
							define hcd_devtree_info_t forr backward compatible  
						
						
						
						
					 
					
						2025-04-29 20:49:47 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						e7d4b5c9e7 
					 
					
						
						
							
							add enum for set addr recovery  
						
						
						
						
					 
					
						2025-04-29 20:16:50 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						42d4f7c81e 
					 
					
						
						
							
							remove the old attach duplicated logic, debouncing skip should take care of it.  
						
						
						
						
					 
					
						2025-04-28 15:10:03 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						2c1414b4c1 
					 
					
						
						
							
							usbh: add roothub debounncing flag to ignore attach/remove event on the roothub that is currently doing debouncing delay  
						
						
						
						
					 
					
						2025-04-28 14:59:32 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						b5b7a4be60 
					 
					
						
						
							
							hub check status before get 1st device descriptor  
						
						
						
						
					 
					
						2025-04-24 22:21:38 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						093720f60b 
					 
					
						
						
							
							fix build  
						
						
						
						
					 
					
						2025-04-24 18:08:00 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						0f784e8a07 
					 
					
						
						
							
							refactor hub driver and move port reset on connection change to usbh.  
						
						... 
						
						
						
						hub: add hub_port_get_status_local(), ignore resp in hub_port_get_status(pot != 0)
usbh properly deboucning with hub/rootport accordingly to usb specs, also add 10ms of reset recovery 
						
						
					 
					
						2025-04-24 17:59:45 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						89f8d0cffb 
					 
					
						
						
							
							add tuh_address_set() API  
						
						... 
						
						
						
						minor rename and move code around 
						
						
					 
					
						2025-04-24 10:41:00 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						9a1f690ec4 
					 
					
						
						
							
							move usbh ctrl_xfer into usbh_data  
						
						
						
						
					 
					
						2025-04-23 16:50:58 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						a2da575793 
					 
					
						
						
							
							rename and expose tuh_bus_info_get() to application  
						
						
						
						
					 
					
						2025-04-23 16:03:40 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						741cb3cf02 
					 
					
						
						
							
							rename hcd_devtree_info_t to tuh_bus_info_t, hcd_devtree_get_info to hcd_bus_info_get  
						
						... 
						
						
						
						streamline bus info to usbh_devies, also replace dev0 (renamed to dev0_bus) 
						
						
					 
					
						2025-04-23 12:35:32 +07:00 
						 
				 
			
				
					
						
							
							
								HiFiPhile 
							
						 
					 
					
						
						
							
						
						b6170c965f 
					 
					
						
						
							
							Compile fix.  
						
						... 
						
						
						
						Signed-off-by: HiFiPhile <admin@hifiphile.com > 
						
						
					 
					
						2025-04-22 21:14:04 +02:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						8f9ef7dfbe 
					 
					
						
						
							
							reduce ENUM_DEBOUNCING_DELAY_MS to 200ms  
						
						... 
						
						
						
						replace dev0.enumerating by enumerating_daddr for better clean up on unplugging while enumerating
move controller_id & enumerating_daddr into _usbh_data struct 
						
						
					 
					
						2025-04-22 22:09:06 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						940fe43e68 
					 
					
						
						
							
							move removing dev0 to process_removing_device()  
						
						
						
						
					 
					
						2025-04-22 17:33:37 +07:00 
						 
				 
			
				
					
						
							
							
								HiFiPhile 
							
						 
					 
					
						
						
							
						
						7ba63a6302 
					 
					
						
						
							
							Also cleanup unaddressed device.  
						
						... 
						
						
						
						Signed-off-by: HiFiPhile <admin@hifiphile.com > 
						
						
					 
					
						2025-04-22 16:58:13 +07:00 
						 
				 
			
				
					
						
							
							
								HiFiPhile 
							
						 
					 
					
						
						
							
						
						3c4e6a779d 
					 
					
						
						
							
							Move decouncing delay before USB reset.  
						
						... 
						
						
						
						Signed-off-by: HiFiPhile <admin@hifiphile.com > 
						
						
					 
					
						2025-04-22 16:58:12 +07:00 
						 
				 
			
				
					
						
							
							
								HiFiPhile 
							
						 
					 
					
						
						
							
						
						9f096ac56b 
					 
					
						
						
							
							host: fix enumerate racing  
						
						... 
						
						
						
						- if a previous enumeration failed _ctrl_xfer status could stuck, it needs to be cleared before next attempt.
- after _dev0.enumerating is reset in hcd_event_handler(), if an attach event arrived before _ctrl_xfer clean up in remove event, a racing condition will happen.
Signed-off-by: HiFiPhile <admin@hifiphile.com > 
						
						
					 
					
						2025-04-22 16:58:10 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						5725d33121 
					 
					
						
						
							
							improve usbh stability with failed setup send, prevent control stage locked out  
						
						
						
						
					 
					
						2025-04-21 20:39:23 +07:00 
						 
				 
			
				
					
						
							
							
								HiFiPhile 
							
						 
					 
					
						
						
							
						
						b3d20442e2 
					 
					
						
						
							
							Fix usbh racing later.  
						
						... 
						
						
						
						Signed-off-by: HiFiPhile <admin@hifiphile.com > 
						
						
					 
					
						2025-04-18 14:57:53 +02:00 
						 
				 
			
				
					
						
							
							
								HiFiPhile 
							
						 
					 
					
						
						
							
						
						4c6736c277 
					 
					
						
						
							
							Merge branch 'master' into dwc2-proper-attach-debouncing  
						
						... 
						
						
						
						Signed-off-by: HiFiPhile <admin@hifiphile.com > 
						
						
					 
					
						2025-04-18 14:54:20 +02:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						e8a84f9076 
					 
					
						
						
							
							enum For string descriptor (langid, manufacturer product, serila): always get the first 2 bytes to determine the length first. otherwise, some device may have buffer overflow.  
						
						
						
						
					 
					
						2025-04-18 10:53:12 +07:00 
						 
				 
			
				
					
						
							
							
								HiFiPhile 
							
						 
					 
					
						
						
							
						
						459e2cd39e 
					 
					
						
						
							
							Merge remote-tracking branch 'upstream/master' into async_io  
						
						... 
						
						
						
						Signed-off-by: HiFiPhile <admin@hifiphile.com > 
						
						
					 
					
						2025-04-11 23:07:22 +02:00 
						 
				 
			
				
					
						
							
							
								Maxime Vincent 
							
						 
					 
					
						
						
							
						
						2064ee470d 
					 
					
						
						
							
							dwc2/host: attach debouncing fixes  
						
						
						
						
					 
					
						2025-04-11 12:26:36 +02:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						4787cd5f54 
					 
					
						
						
							
							fix(hcd) hcd_edpt_open() return true if endpoint is already opened.  
						
						
						
						
					 
					
						2025-04-03 18:11:33 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						901ce2ad93 
					 
					
						
						
							
							hcd/ehci: hcd_edpt_open() return false if ep is already opened. implement hcd_edpt_close()  
						
						
						
						
					 
					
						2025-03-26 21:32:18 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						65e01fff2e 
					 
					
						
						
							
							add tuh_edpt_close() API, it will abort any pending transfer  
						
						... 
						
						
						
						implement hcd_edpt_close() for pio-usb and max3421e, also move max3421e api into its own header. 
						
						
					 
					
						2025-03-25 16:15:58 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						9f541a3d96 
					 
					
						
						
							
							host: add tuh_enum_descriptor_device_cb() and tuh_enum_descriptor_configuration_cb() callback  
						
						... 
						
						
						
						host: support device with multiple configurations 
						
						
					 
					
						2025-03-24 22:55:04 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						e54753814b 
					 
					
						
						
							
							enable hil dual for metro m4 with max3421  
						
						
						
						
					 
					
						2025-03-21 00:11:18 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						ee234a84ca 
					 
					
						
						
							
							hack: force/overwrite endpoint mps to 64 for device that incorrectly report 512 bytes for bulk in fullspeed mode.  
						
						
						
						
					 
					
						2025-03-06 11:03:47 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						8c0c21189c 
					 
					
						
						
							
							Merge branch 'master' into fork/atoktoto/midihost  
						
						... 
						
						
						
						# Conflicts:
#	src/host/usbh.c 
						
						
					 
					
						2025-03-05 18:25:31 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						5f447b76ad 
					 
					
						
						
							
							- add tuh_descriptor_get_string_langid() API  
						
						... 
						
						
						
						- host enumeration always get language id, manufacturer, product and serial string. Which is required by some device such as 8bitdo 
						
						
					 
					
						2025-03-03 23:22:23 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						d132044b75 
					 
					
						
						
							
							add tuh_midi_mount_cb_t struct for tuh_midi_mount_cb()  
						
						... 
						
						
						
						change tuh_midi_rx/tx_cb() to have xferred_bytes
rename tuh_midi_get_num_rx/tx_cables() to tuh_midi_get_rx/tx_cable_count()
use default empty callback instead of weak null to be compatible with keil compiler 
						
						
					 
					
						2025-02-24 16:05:31 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						6ebd362cfd 
					 
					
						
						
							
							Merge branch 'master' into fork/atoktoto/midihost  
						
						... 
						
						
						
						# Conflicts:
#	src/host/usbh.c 
						
						
					 
					
						2025-02-21 10:59:40 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						70ddb7a867 
					 
					
						
						
							
							more hub improve, handle more failed transfer with polling interrupt status endpoint  
						
						
						
						
					 
					
						2025-02-19 15:50:42 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						27a4895b79 
					 
					
						
						
							
							complete separate hub epbuf from itf  
						
						... 
						
						
						
						add hub_get_status(), hub_clear_feature() 
						
						
					 
					
						2025-02-19 12:58:03 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						48a43a675c 
					 
					
						
						
							
							move status_change to epbuf  
						
						... 
						
						
						
						improve hub_xfer_cb()
rename internal complete function 
						
						
					 
					
						2025-02-19 11:27:33 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						792a446405 
					 
					
						
						
							
							usbh always retry control transfer (max 3) in case of XFER_RESULT_FAILED.  
						
						... 
						
						
						
						added tuh_connected() 
						
						
					 
					
						2025-02-17 22:40:19 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						18d566b94c 
					 
					
						
						
							
							improve hub: retry if hub interrupt endpoint failed  
						
						... 
						
						
						
						bump up pio-usb to latest 
						
						
					 
					
						2025-02-17 17:06:51 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						bad6cbe489 
					 
					
						
						
							
							update midi host to use endpoint stream API  
						
						
						
						
					 
					
						2025-02-13 15:54:31 +07:00 
						 
				 
			
				
					
						
							
							
								hathach 
							
						 
					 
					
						
						
							
						
						e0b192b633 
					 
					
						
						
							
							- use CFG_TUH_MIDI as number of midi host instance  
						
						... 
						
						
						
						- comment out tuh_descriptor_device_cb/tuh_desc_configuration_cb since it is unrelated to this PR 
						
						
					 
					
						2025-02-12 22:16:08 +07:00