10a7ce71fSopenharmony_ciroot { 20a7ce71fSopenharmony_ci module = "usbfn"; 30a7ce71fSopenharmony_ci acm_device_config { 40a7ce71fSopenharmony_ci match_attr = "usbfn_cdcacm_driver"; 50a7ce71fSopenharmony_ci udc_name = "100e0000.hidwc3_0"; 60a7ce71fSopenharmony_ci } 70a7ce71fSopenharmony_ci ecm_device_config { 80a7ce71fSopenharmony_ci match_attr = "usbfn_cdcecm_driver"; 90a7ce71fSopenharmony_ci udc_name = "100e0000.hidwc3_0"; 100a7ce71fSopenharmony_ci } 110a7ce71fSopenharmony_ci mtp_device_config { 120a7ce71fSopenharmony_ci match_attr = "usbfn_mtp_interface_driver"; 130a7ce71fSopenharmony_ci udc_name = "100e0000.hidwc3_0"; 140a7ce71fSopenharmony_ci } 150a7ce71fSopenharmony_ci usb_device_config { 160a7ce71fSopenharmony_ci match_attr = "usb_device_interface_driver"; 170a7ce71fSopenharmony_ci port_file_path = "/sys/kernel/debug/usb/100e0000.hidwc3_0/mode"; 180a7ce71fSopenharmony_ci } 190a7ce71fSopenharmony_ci usbfn_config { 200a7ce71fSopenharmony_ci match_attr = "usbfn_driver"; 210a7ce71fSopenharmony_ci use_hcs = 1; 220a7ce71fSopenharmony_ci udc_name = "100e0000.hidwc3_0"; 230a7ce71fSopenharmony_ci usb_dev_desc = "UsbDeviceDescriptor"; 240a7ce71fSopenharmony_ci usb_dev_string = "UsbDeviceStrings"; 250a7ce71fSopenharmony_ci usb_configuration = "UsbConfigs"; 260a7ce71fSopenharmony_ci UsbDeviceDescriptor { 270a7ce71fSopenharmony_ci bLength = 18; 280a7ce71fSopenharmony_ci bDescriptorType = 0x01; 290a7ce71fSopenharmony_ci bcdUSB = 0x0200; 300a7ce71fSopenharmony_ci bDeviceClass = 0; 310a7ce71fSopenharmony_ci bDeviceSubClass = 0; 320a7ce71fSopenharmony_ci bDeviceProtocol = 0; 330a7ce71fSopenharmony_ci bMaxPacketSize0 = 0x40; 340a7ce71fSopenharmony_ci idVendor = 0x12D1; 350a7ce71fSopenharmony_ci idProduct = 0x5000; 360a7ce71fSopenharmony_ci bcdDevice = 0x0223; 370a7ce71fSopenharmony_ci manufacturer = 0; 380a7ce71fSopenharmony_ci product = 1; 390a7ce71fSopenharmony_ci serialnumber = 2; 400a7ce71fSopenharmony_ci numConfigurations = 1; 410a7ce71fSopenharmony_ci } 420a7ce71fSopenharmony_ci UsbDeviceStrings { 430a7ce71fSopenharmony_ci stringTabList = ["string_1"]; 440a7ce71fSopenharmony_ci string_1 { 450a7ce71fSopenharmony_ci language = 0x0409; 460a7ce71fSopenharmony_ci stringList = ["str_1", "str_2","str_3", "str_4"]; 470a7ce71fSopenharmony_ci str_1 { 480a7ce71fSopenharmony_ci id = 0; 490a7ce71fSopenharmony_ci str = "HISILICON"; 500a7ce71fSopenharmony_ci } 510a7ce71fSopenharmony_ci str_2 { 520a7ce71fSopenharmony_ci id = 1; 530a7ce71fSopenharmony_ci str = "HDC Device"; 540a7ce71fSopenharmony_ci } 550a7ce71fSopenharmony_ci str_3 { 560a7ce71fSopenharmony_ci id = 2; 570a7ce71fSopenharmony_ci str = "0123456789POPLAR"; 580a7ce71fSopenharmony_ci } 590a7ce71fSopenharmony_ci str_4 { 600a7ce71fSopenharmony_ci id = 3; 610a7ce71fSopenharmony_ci str = "hdc"; 620a7ce71fSopenharmony_ci } 630a7ce71fSopenharmony_ci } 640a7ce71fSopenharmony_ci } 650a7ce71fSopenharmony_ci UsbConfigs { 660a7ce71fSopenharmony_ci configList = ["config_1"]; 670a7ce71fSopenharmony_ci config_1 { 680a7ce71fSopenharmony_ci configurationValue = 1; 690a7ce71fSopenharmony_ci iConfiguration = 3; 700a7ce71fSopenharmony_ci attributes = 0xC0; 710a7ce71fSopenharmony_ci maxPower = 500; 720a7ce71fSopenharmony_ci functionList = ["func_ecm"]; 730a7ce71fSopenharmony_ci func_ecm { 740a7ce71fSopenharmony_ci funcName = "f_generic.e"; 750a7ce71fSopenharmony_ci stringTabList = ["fnString_1"]; 760a7ce71fSopenharmony_ci fnString_1 { 770a7ce71fSopenharmony_ci language = 0x0409; 780a7ce71fSopenharmony_ci stringList = ["str_1", "str_2", "str_3", "str_4"]; 790a7ce71fSopenharmony_ci str_1 { 800a7ce71fSopenharmony_ci id = 0; 810a7ce71fSopenharmony_ci str = "CDC Ethernet Control Model (ECM)"; 820a7ce71fSopenharmony_ci } 830a7ce71fSopenharmony_ci str_2 { 840a7ce71fSopenharmony_ci id = 1; 850a7ce71fSopenharmony_ci str = "0ac75ae91c79"; 860a7ce71fSopenharmony_ci } 870a7ce71fSopenharmony_ci str_3 { 880a7ce71fSopenharmony_ci id = 2; 890a7ce71fSopenharmony_ci str = "CDC Ethernet Data"; 900a7ce71fSopenharmony_ci } 910a7ce71fSopenharmony_ci str_4 { 920a7ce71fSopenharmony_ci id = 3; 930a7ce71fSopenharmony_ci str = "CDC ECM"; 940a7ce71fSopenharmony_ci } 950a7ce71fSopenharmony_ci } 960a7ce71fSopenharmony_ci fsDescList = ["assoc_interface", "ControlInterface", "cdc_header", 970a7ce71fSopenharmony_ci "cdc_union", "cdc_ether", "FsNotify_endpoint", "DataNopInterface", 980a7ce71fSopenharmony_ci "DataInterface", "FsIn_endpoint", "FsOut_endpoint"]; 990a7ce71fSopenharmony_ci assoc_interface { 1000a7ce71fSopenharmony_ci bLength = 0x08; 1010a7ce71fSopenharmony_ci bDescriptorType = 0x0B; 1020a7ce71fSopenharmony_ci bFirstInterface = 0x00; 1030a7ce71fSopenharmony_ci bInterfaceCount = 0x02; 1040a7ce71fSopenharmony_ci bFunctionClass = 0x02; 1050a7ce71fSopenharmony_ci bFunctionSubClass = 0x06; 1060a7ce71fSopenharmony_ci bFunctionProtocol = 0x00; 1070a7ce71fSopenharmony_ci iFunction = 0x04; 1080a7ce71fSopenharmony_ci } 1090a7ce71fSopenharmony_ci ControlInterface { 1100a7ce71fSopenharmony_ci bLength = 0x09; 1110a7ce71fSopenharmony_ci bDescriptorType = 0x04; 1120a7ce71fSopenharmony_ci bInterfaceNumber = 0x00; 1130a7ce71fSopenharmony_ci bAlternateSetting = 0x00; 1140a7ce71fSopenharmony_ci bNumEndpoints = 0x01; 1150a7ce71fSopenharmony_ci bInterfaceClass = 0x02; 1160a7ce71fSopenharmony_ci bInterfaceSubClass = 0x06; 1170a7ce71fSopenharmony_ci bInterfaceProtocol = 0x00; 1180a7ce71fSopenharmony_ci iInterface = 0x1; 1190a7ce71fSopenharmony_ci } 1200a7ce71fSopenharmony_ci cdc_header { 1210a7ce71fSopenharmony_ci bLength = 0x05; 1220a7ce71fSopenharmony_ci bDescriptorType = 0x24; 1230a7ce71fSopenharmony_ci desc_data = [0x05, 0x24, 0x00, 0x10, 0x01]; 1240a7ce71fSopenharmony_ci } 1250a7ce71fSopenharmony_ci cdc_union { 1260a7ce71fSopenharmony_ci bLength = 0x05; 1270a7ce71fSopenharmony_ci bDescriptorType = 0x24; 1280a7ce71fSopenharmony_ci desc_data = [0x05, 0x24, 0x06, 0x00, 0x01]; 1290a7ce71fSopenharmony_ci } 1300a7ce71fSopenharmony_ci cdc_ether { 1310a7ce71fSopenharmony_ci bLength = 0x0D; 1320a7ce71fSopenharmony_ci bDescriptorType = 0x24; 1330a7ce71fSopenharmony_ci desc_data = [0x0D, 0x24, 0x0F, 0x06, 0x00, 0x00, 0x00, 0x00, 1340a7ce71fSopenharmony_ci 0xEA, 0x05, 0x00, 0x00, 0x00]; 1350a7ce71fSopenharmony_ci } 1360a7ce71fSopenharmony_ci DataNopInterface { 1370a7ce71fSopenharmony_ci bLength = 0x09; 1380a7ce71fSopenharmony_ci bDescriptorType = 0x04; 1390a7ce71fSopenharmony_ci bInterfaceNumber = 0x01; 1400a7ce71fSopenharmony_ci bAlternateSetting = 0x00; 1410a7ce71fSopenharmony_ci bNumEndpoints = 0x00; 1420a7ce71fSopenharmony_ci bInterfaceClass = 0x0A; 1430a7ce71fSopenharmony_ci bInterfaceSubClass = 0x00; 1440a7ce71fSopenharmony_ci bInterfaceProtocol = 0x06; 1450a7ce71fSopenharmony_ci iInterface = 0x00; 1460a7ce71fSopenharmony_ci } 1470a7ce71fSopenharmony_ci DataInterface { 1480a7ce71fSopenharmony_ci bLength = 0x09; 1490a7ce71fSopenharmony_ci bDescriptorType = 0x04; 1500a7ce71fSopenharmony_ci bInterfaceNumber = 0x01; 1510a7ce71fSopenharmony_ci bAlternateSetting = 0x01; 1520a7ce71fSopenharmony_ci bNumEndpoints = 0x02; 1530a7ce71fSopenharmony_ci bInterfaceClass = 0x0A; 1540a7ce71fSopenharmony_ci bInterfaceSubClass = 0x00; 1550a7ce71fSopenharmony_ci bInterfaceProtocol = 0x06; 1560a7ce71fSopenharmony_ci iInterface = 0x03; 1570a7ce71fSopenharmony_ci } 1580a7ce71fSopenharmony_ci FsNotify_endpoint { 1590a7ce71fSopenharmony_ci bLength = 0x07; 1600a7ce71fSopenharmony_ci bDescriptorType = 0x05; 1610a7ce71fSopenharmony_ci bEndpointAddress = 0x81; 1620a7ce71fSopenharmony_ci bmAttributes = 0x03; 1630a7ce71fSopenharmony_ci wMaxPacketSize = 16; 1640a7ce71fSopenharmony_ci bInterval = 32; 1650a7ce71fSopenharmony_ci } 1660a7ce71fSopenharmony_ci FsIn_endpoint { 1670a7ce71fSopenharmony_ci bLength = 0x07; 1680a7ce71fSopenharmony_ci bDescriptorType = 0x05; 1690a7ce71fSopenharmony_ci bEndpointAddress = 0x82; 1700a7ce71fSopenharmony_ci bmAttributes = 0x02; 1710a7ce71fSopenharmony_ci wMaxPacketSize = 0; 1720a7ce71fSopenharmony_ci bInterval = 0; 1730a7ce71fSopenharmony_ci } 1740a7ce71fSopenharmony_ci FsOut_endpoint { 1750a7ce71fSopenharmony_ci bLength = 0x07; 1760a7ce71fSopenharmony_ci bDescriptorType = 0x05; 1770a7ce71fSopenharmony_ci bEndpointAddress = 0x3; 1780a7ce71fSopenharmony_ci bmAttributes = 0x02; 1790a7ce71fSopenharmony_ci wMaxPacketSize = 0; 1800a7ce71fSopenharmony_ci bInterval = 0; 1810a7ce71fSopenharmony_ci } 1820a7ce71fSopenharmony_ci hsDescList = ["assoc_interface", "ControlInterface", "cdc_header", 1830a7ce71fSopenharmony_ci "cdc_union", "cdc_ether", "HsNotify_endpoint", "DataNopInterface", 1840a7ce71fSopenharmony_ci "DataInterface", "HsIn_endpoint", "HsOut_endpoint"]; 1850a7ce71fSopenharmony_ci HsNotify_endpoint { 1860a7ce71fSopenharmony_ci bLength = 0x07; 1870a7ce71fSopenharmony_ci bDescriptorType = 0x05; 1880a7ce71fSopenharmony_ci bEndpointAddress = 0x81; 1890a7ce71fSopenharmony_ci bmAttributes = 0x03; 1900a7ce71fSopenharmony_ci wMaxPacketSize = 16; 1910a7ce71fSopenharmony_ci bInterval = 9; 1920a7ce71fSopenharmony_ci } 1930a7ce71fSopenharmony_ci HsIn_endpoint { 1940a7ce71fSopenharmony_ci bLength = 0x07; 1950a7ce71fSopenharmony_ci bDescriptorType = 0x05; 1960a7ce71fSopenharmony_ci bEndpointAddress = 0x82; 1970a7ce71fSopenharmony_ci bmAttributes = 0x02; 1980a7ce71fSopenharmony_ci wMaxPacketSize = 512; 1990a7ce71fSopenharmony_ci bInterval = 0; 2000a7ce71fSopenharmony_ci } 2010a7ce71fSopenharmony_ci HsOut_endpoint { 2020a7ce71fSopenharmony_ci bLength = 0x07; 2030a7ce71fSopenharmony_ci bDescriptorType = 0x05; 2040a7ce71fSopenharmony_ci bEndpointAddress = 0x3; 2050a7ce71fSopenharmony_ci bmAttributes = 0x02; 2060a7ce71fSopenharmony_ci wMaxPacketSize = 512; 2070a7ce71fSopenharmony_ci bInterval = 0; 2080a7ce71fSopenharmony_ci } 2090a7ce71fSopenharmony_ci ssDescList = ["assoc_interface", "ControlInterface", "cdc_header", 2100a7ce71fSopenharmony_ci "cdc_union", "cdc_ether", "SsNotify_endpoint", "ss_ep_comp_0", 2110a7ce71fSopenharmony_ci "DataNopInterface", "DataInterface", "SsIn_endpoint", 2120a7ce71fSopenharmony_ci "ss_ep_comp", "SsOut_endpoint", "ss_ep_comp"]; 2130a7ce71fSopenharmony_ci SsNotify_endpoint { 2140a7ce71fSopenharmony_ci bLength = 0x07; 2150a7ce71fSopenharmony_ci bDescriptorType = 0x05; 2160a7ce71fSopenharmony_ci bEndpointAddress = 0x81; 2170a7ce71fSopenharmony_ci bmAttributes = 0x03; 2180a7ce71fSopenharmony_ci wMaxPacketSize = 16; 2190a7ce71fSopenharmony_ci bInterval = 9; 2200a7ce71fSopenharmony_ci } 2210a7ce71fSopenharmony_ci ss_ep_comp_0 { 2220a7ce71fSopenharmony_ci bLength = 0x06; 2230a7ce71fSopenharmony_ci bDescriptorType = 0x30; 2240a7ce71fSopenharmony_ci bMaxBurst = 0x00; 2250a7ce71fSopenharmony_ci bmAttributes = 0x00; 2260a7ce71fSopenharmony_ci wBytesPerInterval = 16; 2270a7ce71fSopenharmony_ci } 2280a7ce71fSopenharmony_ci ss_ep_comp { 2290a7ce71fSopenharmony_ci bLength = 0x06; 2300a7ce71fSopenharmony_ci bDescriptorType = 0x30; 2310a7ce71fSopenharmony_ci bMaxBurst = 0x00; 2320a7ce71fSopenharmony_ci bmAttributes = 0x00; 2330a7ce71fSopenharmony_ci wBytesPerInterval = 0x00; 2340a7ce71fSopenharmony_ci } 2350a7ce71fSopenharmony_ci SsIn_endpoint { 2360a7ce71fSopenharmony_ci bLength = 0x07; 2370a7ce71fSopenharmony_ci bDescriptorType = 0x05; 2380a7ce71fSopenharmony_ci bEndpointAddress = 0x82; 2390a7ce71fSopenharmony_ci bmAttributes = 0x02; 2400a7ce71fSopenharmony_ci wMaxPacketSize = 1024; 2410a7ce71fSopenharmony_ci bInterval = 0; 2420a7ce71fSopenharmony_ci } 2430a7ce71fSopenharmony_ci SsOut_endpoint { 2440a7ce71fSopenharmony_ci bLength = 0x07; 2450a7ce71fSopenharmony_ci bDescriptorType = 0x05; 2460a7ce71fSopenharmony_ci bEndpointAddress = 0x3; 2470a7ce71fSopenharmony_ci bmAttributes = 0x02; 2480a7ce71fSopenharmony_ci wMaxPacketSize = 1024; 2490a7ce71fSopenharmony_ci bInterval = 0; 2500a7ce71fSopenharmony_ci } 2510a7ce71fSopenharmony_ci } 2520a7ce71fSopenharmony_ci func_acm { 2530a7ce71fSopenharmony_ci funcName = "f_generic.a"; 2540a7ce71fSopenharmony_ci stringTabList = ["fnString_1"]; 2550a7ce71fSopenharmony_ci fnString_1 { 2560a7ce71fSopenharmony_ci language = 0x0409; 2570a7ce71fSopenharmony_ci stringList = ["str_1", "str_2", "str_3"]; 2580a7ce71fSopenharmony_ci str_1 { 2590a7ce71fSopenharmony_ci id = 0; 2600a7ce71fSopenharmony_ci str = "CDC Abstract Control Model (ACM)"; 2610a7ce71fSopenharmony_ci } 2620a7ce71fSopenharmony_ci str_2 { 2630a7ce71fSopenharmony_ci id = 1; 2640a7ce71fSopenharmony_ci str = "CDC ACM Data"; 2650a7ce71fSopenharmony_ci } 2660a7ce71fSopenharmony_ci str_3 { 2670a7ce71fSopenharmony_ci id = 2; 2680a7ce71fSopenharmony_ci str = "CDC Serial"; 2690a7ce71fSopenharmony_ci } 2700a7ce71fSopenharmony_ci } 2710a7ce71fSopenharmony_ci fsDescList = ["assoc_interface", "ControlInterface", "cdc_header", 2720a7ce71fSopenharmony_ci "cdc_call_mgmt", "cdc_acm", "cdc_union", "FsNotify_endpoint", 2730a7ce71fSopenharmony_ci "DataInterface", "FsIn_endpoint", "FsOut_endpoint"]; 2740a7ce71fSopenharmony_ci assoc_interface { 2750a7ce71fSopenharmony_ci bLength = 0x08; 2760a7ce71fSopenharmony_ci bDescriptorType = 0x0B; 2770a7ce71fSopenharmony_ci bFirstInterface = 0x00; 2780a7ce71fSopenharmony_ci bInterfaceCount = 0x02; 2790a7ce71fSopenharmony_ci bFunctionClass = 0x02; 2800a7ce71fSopenharmony_ci bFunctionSubClass = 0x02; 2810a7ce71fSopenharmony_ci bFunctionProtocol = 0x01; 2820a7ce71fSopenharmony_ci iFunction = 0x03; 2830a7ce71fSopenharmony_ci } 2840a7ce71fSopenharmony_ci ControlInterface { 2850a7ce71fSopenharmony_ci bLength = 0x09; 2860a7ce71fSopenharmony_ci bDescriptorType = 0x04; 2870a7ce71fSopenharmony_ci bInterfaceNumber = 0x00; 2880a7ce71fSopenharmony_ci bAlternateSetting = 0x00; 2890a7ce71fSopenharmony_ci bNumEndpoints = 0x01; 2900a7ce71fSopenharmony_ci bInterfaceClass = 0x02; 2910a7ce71fSopenharmony_ci bInterfaceSubClass = 0x02; 2920a7ce71fSopenharmony_ci bInterfaceProtocol = 0x01; 2930a7ce71fSopenharmony_ci iInterface = 0x01; 2940a7ce71fSopenharmony_ci } 2950a7ce71fSopenharmony_ci cdc_header { 2960a7ce71fSopenharmony_ci bLength = 0x05; 2970a7ce71fSopenharmony_ci bDescriptorType = 0x24; 2980a7ce71fSopenharmony_ci desc_data = [0x05, 0x24, 0x00, 0x10, 0x01]; 2990a7ce71fSopenharmony_ci } 3000a7ce71fSopenharmony_ci cdc_call_mgmt { 3010a7ce71fSopenharmony_ci bLength = 0x05; 3020a7ce71fSopenharmony_ci bDescriptorType = 0x24; 3030a7ce71fSopenharmony_ci desc_data = [0x05, 0x24, 0x01, 0x00, 0x01]; 3040a7ce71fSopenharmony_ci } 3050a7ce71fSopenharmony_ci cdc_acm { 3060a7ce71fSopenharmony_ci bLength = 0x04; 3070a7ce71fSopenharmony_ci bDescriptorType = 0x24; 3080a7ce71fSopenharmony_ci desc_data = [0x04, 0x24, 0x02, 0x02]; 3090a7ce71fSopenharmony_ci } 3100a7ce71fSopenharmony_ci cdc_union { 3110a7ce71fSopenharmony_ci bLength = 0x05; 3120a7ce71fSopenharmony_ci bDescriptorType = 0x24; 3130a7ce71fSopenharmony_ci desc_data = [0x05, 0x24, 0x06, 0x00, 0x01]; 3140a7ce71fSopenharmony_ci } 3150a7ce71fSopenharmony_ci FsNotify_endpoint { 3160a7ce71fSopenharmony_ci bLength = 0x07; 3170a7ce71fSopenharmony_ci bDescriptorType = 0x05; 3180a7ce71fSopenharmony_ci bEndpointAddress = 0x81; 3190a7ce71fSopenharmony_ci bmAttributes = 0x03; 3200a7ce71fSopenharmony_ci wMaxPacketSize = 10; 3210a7ce71fSopenharmony_ci bInterval = 32; 3220a7ce71fSopenharmony_ci } 3230a7ce71fSopenharmony_ci DataInterface { 3240a7ce71fSopenharmony_ci bLength = 0x09; 3250a7ce71fSopenharmony_ci bDescriptorType = 0x04; 3260a7ce71fSopenharmony_ci bInterfaceNumber = 0x01; 3270a7ce71fSopenharmony_ci bAlternateSetting = 0x00; 3280a7ce71fSopenharmony_ci bNumEndpoints = 0x02; 3290a7ce71fSopenharmony_ci bInterfaceClass = 0x0A; 3300a7ce71fSopenharmony_ci bInterfaceSubClass = 0x00; 3310a7ce71fSopenharmony_ci bInterfaceProtocol = 0x02; 3320a7ce71fSopenharmony_ci iInterface = 0x02; 3330a7ce71fSopenharmony_ci } 3340a7ce71fSopenharmony_ci FsIn_endpoint { 3350a7ce71fSopenharmony_ci bLength = 0x07; 3360a7ce71fSopenharmony_ci bDescriptorType = 0x05; 3370a7ce71fSopenharmony_ci bEndpointAddress = 0x82; 3380a7ce71fSopenharmony_ci bmAttributes = 0x02; 3390a7ce71fSopenharmony_ci wMaxPacketSize = 0; 3400a7ce71fSopenharmony_ci bInterval = 0; 3410a7ce71fSopenharmony_ci } 3420a7ce71fSopenharmony_ci FsOut_endpoint { 3430a7ce71fSopenharmony_ci bLength = 0x07; 3440a7ce71fSopenharmony_ci bDescriptorType = 0x05; 3450a7ce71fSopenharmony_ci bEndpointAddress = 0x3; 3460a7ce71fSopenharmony_ci bmAttributes = 0x02; 3470a7ce71fSopenharmony_ci wMaxPacketSize = 0; 3480a7ce71fSopenharmony_ci bInterval = 0; 3490a7ce71fSopenharmony_ci } 3500a7ce71fSopenharmony_ci hsDescList = ["assoc_interface", "ControlInterface", "cdc_header", 3510a7ce71fSopenharmony_ci "cdc_call_mgmt", "cdc_acm", "cdc_union", "HsNotify_endpoint", 3520a7ce71fSopenharmony_ci "DataInterface", "HsIn_endpoint", "HsOut_endpoint"]; 3530a7ce71fSopenharmony_ci HsNotify_endpoint { 3540a7ce71fSopenharmony_ci bLength = 0x07; 3550a7ce71fSopenharmony_ci bDescriptorType = 0x05; 3560a7ce71fSopenharmony_ci bEndpointAddress = 0x81; 3570a7ce71fSopenharmony_ci bmAttributes = 0x03; 3580a7ce71fSopenharmony_ci wMaxPacketSize = 10; 3590a7ce71fSopenharmony_ci bInterval = 9; 3600a7ce71fSopenharmony_ci } 3610a7ce71fSopenharmony_ci HsIn_endpoint { 3620a7ce71fSopenharmony_ci bLength = 0x07; 3630a7ce71fSopenharmony_ci bDescriptorType = 0x05; 3640a7ce71fSopenharmony_ci bEndpointAddress = 0x82; 3650a7ce71fSopenharmony_ci bmAttributes = 0x02; 3660a7ce71fSopenharmony_ci wMaxPacketSize = 512; 3670a7ce71fSopenharmony_ci bInterval = 0; 3680a7ce71fSopenharmony_ci } 3690a7ce71fSopenharmony_ci HsOut_endpoint { 3700a7ce71fSopenharmony_ci bLength = 0x07; 3710a7ce71fSopenharmony_ci bDescriptorType = 0x05; 3720a7ce71fSopenharmony_ci bEndpointAddress = 0x3; 3730a7ce71fSopenharmony_ci bmAttributes = 0x02; 3740a7ce71fSopenharmony_ci wMaxPacketSize = 512; 3750a7ce71fSopenharmony_ci bInterval = 0; 3760a7ce71fSopenharmony_ci } 3770a7ce71fSopenharmony_ci ssDescList = ["assoc_interface", "ControlInterface", "cdc_header", 3780a7ce71fSopenharmony_ci "cdc_call_mgmt", "cdc_acm", "cdc_union", "HsNotify_endpoint", 3790a7ce71fSopenharmony_ci "ss_ep_comp", "DataInterface", "SsIn_endpoint", 3800a7ce71fSopenharmony_ci "ss_ep_comp","SsOut_endpoint","ss_ep_comp"]; 3810a7ce71fSopenharmony_ci ss_ep_comp { 3820a7ce71fSopenharmony_ci bLength = 0x06; 3830a7ce71fSopenharmony_ci bDescriptorType = 0x30; 3840a7ce71fSopenharmony_ci bMaxBurst = 0x00; 3850a7ce71fSopenharmony_ci bmAttributes = 0x00; 3860a7ce71fSopenharmony_ci wBytesPerInterval = 0x00; 3870a7ce71fSopenharmony_ci } 3880a7ce71fSopenharmony_ci SsIn_endpoint { 3890a7ce71fSopenharmony_ci bLength = 0x07; 3900a7ce71fSopenharmony_ci bDescriptorType = 0x05; 3910a7ce71fSopenharmony_ci bEndpointAddress = 0x82; 3920a7ce71fSopenharmony_ci bmAttributes = 0x02; 3930a7ce71fSopenharmony_ci wMaxPacketSize = 1024; 3940a7ce71fSopenharmony_ci bInterval = 0; 3950a7ce71fSopenharmony_ci } 3960a7ce71fSopenharmony_ci SsOut_endpoint { 3970a7ce71fSopenharmony_ci bLength = 0x07; 3980a7ce71fSopenharmony_ci bDescriptorType = 0x05; 3990a7ce71fSopenharmony_ci bEndpointAddress = 0x3; 4000a7ce71fSopenharmony_ci bmAttributes = 0x02; 4010a7ce71fSopenharmony_ci wMaxPacketSize = 1024; 4020a7ce71fSopenharmony_ci bInterval = 0; 4030a7ce71fSopenharmony_ci } 4040a7ce71fSopenharmony_ci } 4050a7ce71fSopenharmony_ci } 4060a7ce71fSopenharmony_ci } 4070a7ce71fSopenharmony_ci custom_prop { 4080a7ce71fSopenharmony_ci propTable = ["propList_1", "propList_2"]; 4090a7ce71fSopenharmony_ci propList_1 { 4100a7ce71fSopenharmony_ci configNum = 1; 4110a7ce71fSopenharmony_ci interfaceNum = 0; 4120a7ce71fSopenharmony_ci propList = ["prop_1", "prop_2"]; 4130a7ce71fSopenharmony_ci prop_1 { 4140a7ce71fSopenharmony_ci name = "testx"; 4150a7ce71fSopenharmony_ci value = "xxxxxx"; 4160a7ce71fSopenharmony_ci } 4170a7ce71fSopenharmony_ci prop_2 { 4180a7ce71fSopenharmony_ci name = "testy"; 4190a7ce71fSopenharmony_ci value = "yyyyyy"; 4200a7ce71fSopenharmony_ci } 4210a7ce71fSopenharmony_ci } 4220a7ce71fSopenharmony_ci propList_2 { 4230a7ce71fSopenharmony_ci configNum = 1; 4240a7ce71fSopenharmony_ci interfaceNum = 1; 4250a7ce71fSopenharmony_ci propList = ["prop_1", "prop_2"]; 4260a7ce71fSopenharmony_ci prop_1 { 4270a7ce71fSopenharmony_ci name = "testm"; 4280a7ce71fSopenharmony_ci value = "mmmmm"; 4290a7ce71fSopenharmony_ci } 4300a7ce71fSopenharmony_ci prop_2 { 4310a7ce71fSopenharmony_ci name = "testn"; 4320a7ce71fSopenharmony_ci value = "nnnnn"; 4330a7ce71fSopenharmony_ci } 4340a7ce71fSopenharmony_ci } 4350a7ce71fSopenharmony_ci } 4360a7ce71fSopenharmony_ci } 4370a7ce71fSopenharmony_ci} 438