usb: fix descriptor set length and DeviceInterfaceGUIDs
This commit is contained in:
		@@ -205,7 +205,7 @@ impl<'a> DeviceDescriptorSetBuilder<'a> {
 | 
			
		||||
        let used = self.builder.used;
 | 
			
		||||
        let buf = self.builder.buf;
 | 
			
		||||
        // Update length in header with final length
 | 
			
		||||
        let total_len = &mut buf[4..6];
 | 
			
		||||
        let total_len = &mut buf[8..10];
 | 
			
		||||
        total_len.copy_from_slice((used as u16).to_le_bytes().as_slice());
 | 
			
		||||
 | 
			
		||||
        MsOsDescriptorSet {
 | 
			
		||||
@@ -528,7 +528,7 @@ impl<'a> RegistryPropertyFeatureDescriptor<'a> {
 | 
			
		||||
        unsafe { core::slice::from_raw_parts(s.as_ptr() as *const u8, (s.len() + 1) * 2) }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /// A registry property that sets the DeviceInterfaceGUID to the device interface class for USB devices which are
 | 
			
		||||
    /// A registry property that sets the DeviceInterfaceGUIDs to the device interface class for USB devices which are
 | 
			
		||||
    /// attached to a USB hub.
 | 
			
		||||
    pub fn new_usb_deviceinterfaceguid() -> Self {
 | 
			
		||||
        // Can't use defmt::panic in constant expressions (inside u16cstr!)
 | 
			
		||||
@@ -540,9 +540,9 @@ impl<'a> RegistryPropertyFeatureDescriptor<'a> {
 | 
			
		||||
            };
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        Self::new_string(
 | 
			
		||||
            u16cstr!("DeviceInterfaceGUID"),
 | 
			
		||||
            u16cstr!("{A5DCBF10-6530-11D2-901F-00C04FB951ED}"),
 | 
			
		||||
        Self::new_multi_string(
 | 
			
		||||
            u16cstr!("DeviceInterfaceGUIDs"),
 | 
			
		||||
            u16cstr!("{A5DCBF10-6530-11D2-901F-00C04FB951ED}").as_slice_with_nul(),
 | 
			
		||||
        )
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user