mirror of https://gitee.com/openkylin/linux.git
usb: fixes for v4.16-rc4
Just small fixes now. The two most important are a fix for a a lock up on USB ID pin change during system suspend/resume on dwc3 and a use-after-free fix in ffs_fs_kill_sb(). Apart from that, some DT compatible fixes. -----BEGIN PGP SIGNATURE----- iQJRBAABCgA7FiEElLzh7wn96CXwjh2IzL64meEamQYFAlqg90IdHGZlbGlwZS5i YWxiaUBsaW51eC5pbnRlbC5jb20ACgkQzL64meEamQYnpBAAo6o11eE+yA3pRx5W FaJCPsdn4Q7YkXbCSTa/gYqNLG9aHjW47KM/lHkr+xdVHLtLBHsePwf5UE8tEirk Rd2flg0G+BdbvHs7Ps6bNAgs3f1B36uXwWqmJ+Hi+jniXmmWjlDoqeoyZXe5x6tZ /90fDEoGDYaPzY3HH3G6euADgdBzH0IdBrQYzJdU6m44TgWSwFA1UaTRRsWBWuQQ CtxRJUlOl1ZGVqCNWjzLfMfhTMoKYAy3fF08jMYUI4rpS9Cf0pi33hteFRZCaG8F 2Q0N8ksvxJfqmRQZXKSPfSTFh8HQR7bRq+PzD32z+IUa+aJdTtIjPOj42roa7s8+ h76xouI76u/88rDwTTtP6F5S7POBXSCY8M2Hgh6JHmIfiOXLe7M/i65UsKbkrzQ6 +f5gUt9k0r2pXP+aoL0JaGOdkev9mzlt9qra0K7BWMHOICxS+rX0n4fFkf8oToPr GoFlByHt/0n5boXTqw4TudJ9R0rKUuNGo89G5XVMpRtT6s2nX6Xq9c0V0R2CSg1m auWmoh18QdLPKDkij/Ygh6ANccGNR6c+9JT16YZ6Cq+FhgptLxkvMpARKGU0VkB1 Dpj779RQHmj9dMuKL5wWUN7lKMBrs0MOm7Thb0kcQdorG9uOTJPjEskuPByW+Ej8 dV4GgPKow0C3Lkp3G75j9xPRrQU= =/rNB -----END PGP SIGNATURE----- Merge tag 'fixes-for-v4.16-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb into usb-linus Felipe writes: usb: fixes for v4.16-rc4 Just small fixes now. The two most important are a fix for a a lock up on USB ID pin change during system suspend/resume on dwc3 and a use-after-free fix in ffs_fs_kill_sb(). Apart from that, some DT compatible fixes.
This commit is contained in:
commit
7b4d930e0d
|
@ -19,7 +19,7 @@ Required properties:
|
||||||
configured in FS mode;
|
configured in FS mode;
|
||||||
- "st,stm32f4x9-hsotg": The DWC2 USB HS controller instance in STM32F4x9 SoCs
|
- "st,stm32f4x9-hsotg": The DWC2 USB HS controller instance in STM32F4x9 SoCs
|
||||||
configured in HS mode;
|
configured in HS mode;
|
||||||
- "st,stm32f7xx-hsotg": The DWC2 USB HS controller instance in STM32F7xx SoCs
|
- "st,stm32f7-hsotg": The DWC2 USB HS controller instance in STM32F7 SoCs
|
||||||
configured in HS mode;
|
configured in HS mode;
|
||||||
- reg : Should contain 1 register range (address and length)
|
- reg : Should contain 1 register range (address and length)
|
||||||
- interrupts : Should contain 1 interrupt
|
- interrupts : Should contain 1 interrupt
|
||||||
|
|
|
@ -4,6 +4,7 @@ Required properties:
|
||||||
- compatible: Must contain one of the following:
|
- compatible: Must contain one of the following:
|
||||||
- "renesas,r8a7795-usb3-peri"
|
- "renesas,r8a7795-usb3-peri"
|
||||||
- "renesas,r8a7796-usb3-peri"
|
- "renesas,r8a7796-usb3-peri"
|
||||||
|
- "renesas,r8a77965-usb3-peri"
|
||||||
- "renesas,rcar-gen3-usb3-peri" for a generic R-Car Gen3 compatible
|
- "renesas,rcar-gen3-usb3-peri" for a generic R-Car Gen3 compatible
|
||||||
device
|
device
|
||||||
|
|
||||||
|
|
|
@ -12,6 +12,7 @@ Required properties:
|
||||||
- "renesas,usbhs-r8a7794" for r8a7794 (R-Car E2) compatible device
|
- "renesas,usbhs-r8a7794" for r8a7794 (R-Car E2) compatible device
|
||||||
- "renesas,usbhs-r8a7795" for r8a7795 (R-Car H3) compatible device
|
- "renesas,usbhs-r8a7795" for r8a7795 (R-Car H3) compatible device
|
||||||
- "renesas,usbhs-r8a7796" for r8a7796 (R-Car M3-W) compatible device
|
- "renesas,usbhs-r8a7796" for r8a7796 (R-Car M3-W) compatible device
|
||||||
|
- "renesas,usbhs-r8a77965" for r8a77965 (R-Car M3-N) compatible device
|
||||||
- "renesas,usbhs-r8a77995" for r8a77995 (R-Car D3) compatible device
|
- "renesas,usbhs-r8a77995" for r8a77995 (R-Car D3) compatible device
|
||||||
- "renesas,usbhs-r7s72100" for r7s72100 (RZ/A1) compatible device
|
- "renesas,usbhs-r7s72100" for r7s72100 (RZ/A1) compatible device
|
||||||
- "renesas,rcar-gen2-usbhs" for R-Car Gen2 or RZ/G1 compatible devices
|
- "renesas,rcar-gen2-usbhs" for R-Car Gen2 or RZ/G1 compatible devices
|
||||||
|
|
|
@ -137,7 +137,7 @@ static void dwc2_set_stm32f4x9_fsotg_params(struct dwc2_hsotg *hsotg)
|
||||||
p->activate_stm_fs_transceiver = true;
|
p->activate_stm_fs_transceiver = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void dwc2_set_stm32f7xx_hsotg_params(struct dwc2_hsotg *hsotg)
|
static void dwc2_set_stm32f7_hsotg_params(struct dwc2_hsotg *hsotg)
|
||||||
{
|
{
|
||||||
struct dwc2_core_params *p = &hsotg->params;
|
struct dwc2_core_params *p = &hsotg->params;
|
||||||
|
|
||||||
|
@ -164,8 +164,8 @@ const struct of_device_id dwc2_of_match_table[] = {
|
||||||
{ .compatible = "st,stm32f4x9-fsotg",
|
{ .compatible = "st,stm32f4x9-fsotg",
|
||||||
.data = dwc2_set_stm32f4x9_fsotg_params },
|
.data = dwc2_set_stm32f4x9_fsotg_params },
|
||||||
{ .compatible = "st,stm32f4x9-hsotg" },
|
{ .compatible = "st,stm32f4x9-hsotg" },
|
||||||
{ .compatible = "st,stm32f7xx-hsotg",
|
{ .compatible = "st,stm32f7-hsotg",
|
||||||
.data = dwc2_set_stm32f7xx_hsotg_params },
|
.data = dwc2_set_stm32f7_hsotg_params },
|
||||||
{},
|
{},
|
||||||
};
|
};
|
||||||
MODULE_DEVICE_TABLE(of, dwc2_of_match_table);
|
MODULE_DEVICE_TABLE(of, dwc2_of_match_table);
|
||||||
|
|
|
@ -175,7 +175,7 @@ void dwc3_set_mode(struct dwc3 *dwc, u32 mode)
|
||||||
dwc->desired_dr_role = mode;
|
dwc->desired_dr_role = mode;
|
||||||
spin_unlock_irqrestore(&dwc->lock, flags);
|
spin_unlock_irqrestore(&dwc->lock, flags);
|
||||||
|
|
||||||
queue_work(system_power_efficient_wq, &dwc->drd_work);
|
queue_work(system_freezable_wq, &dwc->drd_work);
|
||||||
}
|
}
|
||||||
|
|
||||||
u32 dwc3_core_fifo_space(struct dwc3_ep *dep, u8 type)
|
u32 dwc3_core_fifo_space(struct dwc3_ep *dep, u8 type)
|
||||||
|
|
|
@ -1538,7 +1538,6 @@ ffs_fs_kill_sb(struct super_block *sb)
|
||||||
if (sb->s_fs_info) {
|
if (sb->s_fs_info) {
|
||||||
ffs_release_dev(sb->s_fs_info);
|
ffs_release_dev(sb->s_fs_info);
|
||||||
ffs_data_closed(sb->s_fs_info);
|
ffs_data_closed(sb->s_fs_info);
|
||||||
ffs_data_put(sb->s_fs_info);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue