mirror of
https://github.com/torvalds/linux.git
synced 2024-12-27 05:11:48 +00:00
uwb: dont tranmit identification IEs
The current identification IE doesn't include any useful information (the vendor ID is from the EUI-48) and it causes problems with certain hardware/firmware so don't transmit one. Signed-off-by: David Vrabel <david.vrabel@csr.com>
This commit is contained in:
parent
b5784f10d5
commit
b63795fa3a
@ -539,32 +539,3 @@ int uwb_rc_ie_rm(struct uwb_rc *uwb_rc, enum uwb_ie element_id)
|
||||
return result;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(uwb_rc_ie_rm);
|
||||
|
||||
|
||||
/**
|
||||
* Create and set new Identification IE
|
||||
*
|
||||
* Currently only sets the Vendor ID. The Vendor ID is set from the OUI,
|
||||
* which is obtained from the first three bytes from the MAC address.
|
||||
*/
|
||||
int uwb_rc_set_identification_ie(struct uwb_rc *uwb_rc)
|
||||
{
|
||||
struct {
|
||||
struct uwb_identification_ie id_ie;
|
||||
struct uwb_dev_info dev_info;
|
||||
struct uwb_vendor_id vendor_id;
|
||||
} ie_data;
|
||||
|
||||
ie_data.id_ie.hdr.element_id = UWB_IDENTIFICATION_IE;
|
||||
ie_data.id_ie.hdr.length = sizeof(struct uwb_dev_info) +
|
||||
sizeof(struct uwb_vendor_id);
|
||||
|
||||
ie_data.dev_info.type = UWB_DEV_INFO_VENDOR_ID;
|
||||
ie_data.dev_info.length = sizeof(struct uwb_vendor_id);
|
||||
|
||||
ie_data.vendor_id.data[0] = uwb_rc->uwb_dev.mac_addr.data[0];
|
||||
ie_data.vendor_id.data[1] = uwb_rc->uwb_dev.mac_addr.data[1];
|
||||
ie_data.vendor_id.data[2] = uwb_rc->uwb_dev.mac_addr.data[2];
|
||||
|
||||
return uwb_rc_ie_add(uwb_rc, &ie_data.id_ie.hdr, sizeof(ie_data));
|
||||
}
|
||||
|
@ -211,12 +211,6 @@ static int uwb_rc_setup(struct uwb_rc *rc)
|
||||
dev_err(dev, "cannot setup IE subsystem: %d\n", result);
|
||||
goto error_ie_setup;
|
||||
}
|
||||
result = uwb_rc_set_identification_ie(rc);
|
||||
if (result < 0) {
|
||||
dev_err(dev, "cannot set Identification IE: %d\n",
|
||||
result);
|
||||
goto error_set_id_ie;
|
||||
}
|
||||
result = uwb_rsv_setup(rc);
|
||||
if (result < 0) {
|
||||
dev_err(dev, "cannot setup reservation subsystem: %d\n", result);
|
||||
|
@ -74,7 +74,6 @@ extern void uwb_rc_ie_release(struct uwb_rc *);
|
||||
extern int uwb_rc_ie_add(struct uwb_rc *,
|
||||
const struct uwb_ie_hdr *, size_t);
|
||||
extern int uwb_rc_ie_rm(struct uwb_rc *, enum uwb_ie);
|
||||
extern int uwb_rc_set_identification_ie(struct uwb_rc *);
|
||||
|
||||
extern const char *uwb_rc_strerror(unsigned code);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user