mirror of
https://github.com/lkl/linux.git
synced 2025-12-19 08:03:01 +09:00
Merge tag 'usb-5.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb
Pull USB / Thunderbolt updates from Greg KH: "Here is the big set of USB and Thunderbolt patches for 5.14-rc1. Nothing major here just lots of little changes for new hardware and features. Highlights are: - more USB 4 support added to the thunderbolt core - build warning fixes all over the place - usb-serial driver updates and new device support - mtu3 driver updates - gadget driver updates - dwc3 driver updates - dwc2 driver updates - isp1760 host driver updates - musb driver updates - lots of other tiny things. Full details are in the shortlog. All of these have been in linux-next for a while now with no reported issues" * tag 'usb-5.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (223 commits) phy: qcom-qusb2: Add configuration for SM4250 and SM6115 dt-bindings: phy: qcom,qusb2: document sm4250/6115 compatible dt-bindings: usb: qcom,dwc3: Add bindings for sm6115/4250 USB: cdc-acm: blacklist Heimann USB Appset device usb: xhci-mtk: allow multiple Start-Split in a microframe usb: ftdi-elan: remove redundant continue statement in a while-loop usb: class: cdc-wdm: return the correct errno code xhci: remove redundant continue statement usb: dwc3: Fix debugfs creation flow usb: gadget: hid: fix error return code in hid_bind() usb: gadget: eem: fix echo command packet response issue usb: gadget: f_hid: fix endianness issue with descriptors Revert "USB: misc: Add onboard_usb_hub driver" Revert "of/platform: Add stubs for of_platform_device_create/destroy()" Revert "usb: host: xhci-plat: Create platform device for onboard hubs in probe()" Revert "arm64: dts: qcom: sc7180-trogdor: Add nodes for onboard USB hub" xhci: solve a double free problem while doing s4 xhci: handle failed buffer copy to URB sg list and fix a W=1 copiler warning xhci: Add adaptive interrupt rate for isoch TRBs with XHCI_AVOID_BEI quirk xhci: Remove unused defines for ERST_SIZE and ERST_ENTRIES ...
This commit is contained in:
@@ -341,6 +341,22 @@ enum dl_dev_state {
|
||||
DL_DEV_UNBINDING,
|
||||
};
|
||||
|
||||
/**
|
||||
* enum device_removable - Whether the device is removable. The criteria for a
|
||||
* device to be classified as removable is determined by its subsystem or bus.
|
||||
* @DEVICE_REMOVABLE_NOT_SUPPORTED: This attribute is not supported for this
|
||||
* device (default).
|
||||
* @DEVICE_REMOVABLE_UNKNOWN: Device location is Unknown.
|
||||
* @DEVICE_FIXED: Device is not removable by the user.
|
||||
* @DEVICE_REMOVABLE: Device is removable by the user.
|
||||
*/
|
||||
enum device_removable {
|
||||
DEVICE_REMOVABLE_NOT_SUPPORTED = 0, /* must be 0 */
|
||||
DEVICE_REMOVABLE_UNKNOWN,
|
||||
DEVICE_FIXED,
|
||||
DEVICE_REMOVABLE,
|
||||
};
|
||||
|
||||
/**
|
||||
* struct dev_links_info - Device data related to device links.
|
||||
* @suppliers: List of links to supplier devices.
|
||||
@@ -422,6 +438,9 @@ struct dev_links_info {
|
||||
* device (i.e. the bus driver that discovered the device).
|
||||
* @iommu_group: IOMMU group the device belongs to.
|
||||
* @iommu: Per device generic IOMMU runtime data
|
||||
* @removable: Whether the device can be removed from the system. This
|
||||
* should be set by the subsystem / bus driver that discovered
|
||||
* the device.
|
||||
*
|
||||
* @offline_disabled: If set, the device is permanently online.
|
||||
* @offline: Set after successful invocation of bus type's .offline().
|
||||
@@ -535,6 +554,8 @@ struct device {
|
||||
struct iommu_group *iommu_group;
|
||||
struct dev_iommu *iommu;
|
||||
|
||||
enum device_removable removable;
|
||||
|
||||
bool offline_disabled:1;
|
||||
bool offline:1;
|
||||
bool of_node_reused:1;
|
||||
@@ -771,6 +792,22 @@ static inline bool dev_has_sync_state(struct device *dev)
|
||||
return false;
|
||||
}
|
||||
|
||||
static inline void dev_set_removable(struct device *dev,
|
||||
enum device_removable removable)
|
||||
{
|
||||
dev->removable = removable;
|
||||
}
|
||||
|
||||
static inline bool dev_is_removable(struct device *dev)
|
||||
{
|
||||
return dev->removable == DEVICE_REMOVABLE;
|
||||
}
|
||||
|
||||
static inline bool dev_removable_is_valid(struct device *dev)
|
||||
{
|
||||
return dev->removable != DEVICE_REMOVABLE_NOT_SUPPORTED;
|
||||
}
|
||||
|
||||
/*
|
||||
* High level routines for use by the bus drivers
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user