<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/usb/mtu3, branch linux-5.16.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.16.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.16.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2021-12-21T08:05:45Z</updated>
<entry>
<title>usb: mtu3: set interval of FS intr and isoc endpoint</title>
<updated>2021-12-21T08:05:45Z</updated>
<author>
<name>Chunfeng Yun</name>
</author>
<published>2021-12-18T09:57:49Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=43f3b8cbcf93da7c2755af4a543280c31f4adf16'/>
<id>urn:sha1:43f3b8cbcf93da7c2755af4a543280c31f4adf16</id>
<content type='text'>
Add support to set interval also for FS intr and isoc endpoint.

Fixes: 4d79e042ed8b ("usb: mtu3: add support for usb3.1 IP")
Cc: stable@vger.kernel.org
Signed-off-by: Chunfeng Yun &lt;chunfeng.yun@mediatek.com&gt;
Link: https://lore.kernel.org/r/20211218095749.6250-4-chunfeng.yun@mediatek.com
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>usb: mtu3: fix list_head check warning</title>
<updated>2021-12-21T08:05:45Z</updated>
<author>
<name>Chunfeng Yun</name>
</author>
<published>2021-12-18T09:57:48Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8c313e3bfd9adae8d5c4ba1cc696dcbc86fbf9bf'/>
<id>urn:sha1:8c313e3bfd9adae8d5c4ba1cc696dcbc86fbf9bf</id>
<content type='text'>
This is caused by uninitialization of list_head.

BUG: KASAN: use-after-free in __list_del_entry_valid+0x34/0xe4

Call trace:
dump_backtrace+0x0/0x298
show_stack+0x24/0x34
dump_stack+0x130/0x1a8
print_address_description+0x88/0x56c
__kasan_report+0x1b8/0x2a0
kasan_report+0x14/0x20
__asan_load8+0x9c/0xa0
__list_del_entry_valid+0x34/0xe4
mtu3_req_complete+0x4c/0x300 [mtu3]
mtu3_gadget_stop+0x168/0x448 [mtu3]
usb_gadget_unregister_driver+0x204/0x3a0
unregister_gadget_item+0x44/0xa4

Fixes: 83374e035b62 ("usb: mtu3: add tracepoints to help debug")
Cc: stable@vger.kernel.org
Reported-by: Yuwen Ng &lt;yuwen.ng@mediatek.com&gt;
Signed-off-by: Chunfeng Yun &lt;chunfeng.yun@mediatek.com&gt;
Link: https://lore.kernel.org/r/20211218095749.6250-3-chunfeng.yun@mediatek.com
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>usb: mtu3: add memory barrier before set GPD's HWO</title>
<updated>2021-12-21T08:05:44Z</updated>
<author>
<name>Chunfeng Yun</name>
</author>
<published>2021-12-18T09:57:47Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a7aae769ca626819a7f9f078ebdc69a8a1b00c81'/>
<id>urn:sha1:a7aae769ca626819a7f9f078ebdc69a8a1b00c81</id>
<content type='text'>
There is a seldom issue that the controller access invalid address
and trigger devapc or emimpu violation. That is due to memory access
is out of order and cause gpd data is not correct.
Add mb() to prohibit compiler or cpu from reordering to make sure GPD
is fully written before setting its HWO.

Fixes: 48e0d3735aa5 ("usb: mtu3: supports new QMU format")
Cc: stable@vger.kernel.org
Reported-by: Eddie Hung &lt;eddie.hung@mediatek.com&gt;
Signed-off-by: Chunfeng Yun &lt;chunfeng.yun@mediatek.com&gt;
Link: https://lore.kernel.org/r/20211218095749.6250-2-chunfeng.yun@mediatek.com
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>usb: mtu3: fix interval value for intr and isoc</title>
<updated>2021-12-21T08:05:44Z</updated>
<author>
<name>Chunfeng Yun</name>
</author>
<published>2021-12-18T09:57:46Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e3d4621c22f90c33321ae6a6baab60cdb8e5a77c'/>
<id>urn:sha1:e3d4621c22f90c33321ae6a6baab60cdb8e5a77c</id>
<content type='text'>
Use the Interval value from isoc/intr endpoint descriptor, no need
minus one. The original code doesn't cause transfer error for
normal cases, but it may have side effect with respond time of ERDY
or tPingTimeout.

Signed-off-by: Chunfeng Yun &lt;chunfeng.yun@mediatek.com&gt;
Link: https://lore.kernel.org/r/20211218095749.6250-1-chunfeng.yun@mediatek.com
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>usb: mtu3: enable wake-up interrupt after runtime_suspend called</title>
<updated>2021-10-27T18:49:32Z</updated>
<author>
<name>Chunfeng Yun</name>
</author>
<published>2021-10-25T07:01:55Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7ddae8c779dacc83918e7c6e0e2463bdd71005dd'/>
<id>urn:sha1:7ddae8c779dacc83918e7c6e0e2463bdd71005dd</id>
<content type='text'>
Use the new API dev_pm_set_dedicated_wake_irq_reverse() to request
dedicated wake-up interrupt, due to we want to enable the wake IRQ
after running -&gt;runtime_suspend().

Signed-off-by: Chunfeng Yun &lt;chunfeng.yun@mediatek.com&gt;
Signed-off-by: Rafael J. Wysocki &lt;rafael.j.wysocki@intel.com&gt;
</content>
</entry>
<entry>
<title>usb: mtu3: fix random remote wakeup</title>
<updated>2021-08-26T11:41:52Z</updated>
<author>
<name>Chunfeng Yun</name>
</author>
<published>2021-08-26T08:36:37Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d98a30ccdc839947c9233369744341d1fa54439c'/>
<id>urn:sha1:d98a30ccdc839947c9233369744341d1fa54439c</id>
<content type='text'>
Some platforms, e.g. 8183/8192, use low level latch way to keep
wakeup signal, it may latch a wrong signal if debounce more time,
and enable wakeup earlier.
                   ____________________
ip_sleep      ____/                    \__________
                           ___________________
wakeup_signal ____________/                   \______
                      _______________________________
wakeup_en     _______/
                      ^     ^
                      |(1)  |(2)
latch wakeup_signal mistakenly at (1), should latch it at (2);

Workaround: delay about 100us to enable wakeup, meanwhile decrease
debounce time.

Fixes: b1a344589eea ("usb: mtu3: support ip-sleep wakeup for MT8183")
Cc: stable@vger.kernel.org
Signed-off-by: Chunfeng Yun &lt;chunfeng.yun@mediatek.com&gt;
Link: https://lore.kernel.org/r/20210826083637.33237-2-chunfeng.yun@mediatek.com
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>usb: mtu3: return successful suspend status</title>
<updated>2021-08-26T11:41:52Z</updated>
<author>
<name>Chunfeng Yun</name>
</author>
<published>2021-08-26T08:36:36Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=50fdcb56c41904c3535687a0e1e1dbd9423a8f9a'/>
<id>urn:sha1:50fdcb56c41904c3535687a0e1e1dbd9423a8f9a</id>
<content type='text'>
Forgot 'return 0;' when suspend successfully, make the mistake
when I split patches.

Fixes: 6b587394c65c ("usb: mtu3: support suspend/resume for dual-role mode")
Signed-off-by: Chunfeng Yun &lt;chunfeng.yun@mediatek.com&gt;
Link: https://lore.kernel.org/r/20210826083637.33237-1-chunfeng.yun@mediatek.com
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>usb: mtu3: fix the wrong HS mult value</title>
<updated>2021-08-13T11:05:50Z</updated>
<author>
<name>Chunfeng Yun</name>
</author>
<published>2021-08-13T06:30:49Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=44e4439d8f9f8d0e9da767d1f31e7c211081feca'/>
<id>urn:sha1:44e4439d8f9f8d0e9da767d1f31e7c211081feca</id>
<content type='text'>
usb_endpoint_maxp() returns actual max packet size, @mult will
always be zero, fix it by using usb_endpoint_maxp_mult() instead
to get mult.

Fixes: 4d79e042ed8b ("usb: mtu3: add support for usb3.1 IP")
Cc: stable@vger.kernel.org
Signed-off-by: Chunfeng Yun &lt;chunfeng.yun@mediatek.com&gt;
Link: https://lore.kernel.org/r/1628836253-7432-3-git-send-email-chunfeng.yun@mediatek.com
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>usb: mtu3: use @mult for HS isoc or intr</title>
<updated>2021-08-13T11:05:50Z</updated>
<author>
<name>Chunfeng Yun</name>
</author>
<published>2021-08-13T06:30:48Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=fd7cb394ec7efccc3985feb0978cee4d352e1817'/>
<id>urn:sha1:fd7cb394ec7efccc3985feb0978cee4d352e1817</id>
<content type='text'>
For HS isoc or intr, should use @mult but not @burst
to save mult value.

Fixes: 4d79e042ed8b ("usb: mtu3: add support for usb3.1 IP")
Cc: stable@vger.kernel.org
Signed-off-by: Chunfeng Yun &lt;chunfeng.yun@mediatek.com&gt;
Link: https://lore.kernel.org/r/1628836253-7432-2-git-send-email-chunfeng.yun@mediatek.com
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>usb: mtu3: restore HS function when set SS/SSP</title>
<updated>2021-08-13T11:05:50Z</updated>
<author>
<name>Chunfeng Yun</name>
</author>
<published>2021-08-13T06:30:47Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e88f28514065a6c48aadc367efb0ef6378a01543'/>
<id>urn:sha1:e88f28514065a6c48aadc367efb0ef6378a01543</id>
<content type='text'>
Due to HS function is disabled when set as FS, need restore
it when set as SS/SSP.

Fixes: dc4c1aa7eae9 ("usb: mtu3: add -&gt;udc_set_speed()")
Cc: stable@vger.kernel.org
Signed-off-by: Chunfeng Yun &lt;chunfeng.yun@mediatek.com&gt;
Link: https://lore.kernel.org/r/1628836253-7432-1-git-send-email-chunfeng.yun@mediatek.com
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
</feed>
