Lines Matching refs:ext_prop
1280 struct usb_os_desc_ext_prop *ext_prop = to_usb_os_desc_ext_prop(item);
1281 struct usb_os_desc *desc = to_usb_os_desc(ext_prop->item.ci_parent);
1295 if ((ext_prop->type == USB_EXT_PROP_BINARY ||
1296 ext_prop->type == USB_EXT_PROP_LE32 ||
1297 ext_prop->type == USB_EXT_PROP_BE32) &&
1301 ext_prop->data_len <<= 1;
1302 else if ((ext_prop->type == USB_EXT_PROP_UNICODE ||
1303 ext_prop->type == USB_EXT_PROP_UNICODE_ENV ||
1304 ext_prop->type == USB_EXT_PROP_UNICODE_LINK) &&
1308 ext_prop->data_len >>= 1;
1309 ext_prop->type = type;
1318 struct usb_os_desc_ext_prop *ext_prop = to_usb_os_desc_ext_prop(item);
1319 int len = ext_prop->data_len;
1321 if (ext_prop->type == USB_EXT_PROP_UNICODE ||
1322 ext_prop->type == USB_EXT_PROP_UNICODE_ENV ||
1323 ext_prop->type == USB_EXT_PROP_UNICODE_LINK)
1325 memcpy(page, ext_prop->data, len);
1333 struct usb_os_desc_ext_prop *ext_prop = to_usb_os_desc_ext_prop(item);
1334 struct usb_os_desc *desc = to_usb_os_desc(ext_prop->item.ci_parent);
1346 kfree(ext_prop->data);
1347 ext_prop->data = new_data;
1348 desc->ext_prop_len -= ext_prop->data_len;
1349 ext_prop->data_len = len;
1350 desc->ext_prop_len += ext_prop->data_len;
1351 if (ext_prop->type == USB_EXT_PROP_UNICODE ||
1352 ext_prop->type == USB_EXT_PROP_UNICODE_ENV ||
1353 ext_prop->type == USB_EXT_PROP_UNICODE_LINK) {
1354 desc->ext_prop_len -= ext_prop->data_len;
1355 ext_prop->data_len <<= 1;
1356 ext_prop->data_len += 2;
1357 desc->ext_prop_len += ext_prop->data_len;
1375 struct usb_os_desc_ext_prop *ext_prop = to_usb_os_desc_ext_prop(item);
1377 kfree(ext_prop); /* frees a whole chunk */
1388 struct usb_os_desc_ext_prop *ext_prop;
1394 vla_item(data_chunk, struct usb_os_desc_ext_prop, ext_prop, 1);
1401 ext_prop = vla_ptr(vlabuf, data_chunk, ext_prop);
1409 config_item_init_type_name(&ext_prop->item, name, ext_prop_type);
1411 ext_prop->name = kstrdup(name, GFP_KERNEL);
1412 if (!ext_prop->name) {
1417 ext_prop->name_len = 2 * strlen(ext_prop->name) + 2;
1420 desc->ext_prop_len += ext_prop->name_len;
1421 list_add_tail(&ext_prop->entry, &desc->ext_prop);
1426 return &ext_prop->item;
1431 struct usb_os_desc_ext_prop *ext_prop = to_usb_os_desc_ext_prop(item);
1436 list_del(&ext_prop->entry);
1438 kfree(ext_prop->name);
1439 desc->ext_prop_len -= (ext_prop->name_len + ext_prop->data_len + 14);