<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-dev/drivers/net/wwan/t7xx, branch master</title>
<subtitle>Linux kernel development work - see feature branches</subtitle>
<id>https://git.zx2c4.com/linux-dev/atom/drivers/net/wwan/t7xx?h=master</id>
<link rel='self' href='https://git.zx2c4.com/linux-dev/atom/drivers/net/wwan/t7xx?h=master'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/'/>
<updated>2022-09-20T01:28:50Z</updated>
<entry>
<title>net: wwan: t7xx: Fix return type of t7xx_ccmni_start_xmit</title>
<updated>2022-09-20T01:28:50Z</updated>
<author>
<name>Nathan Huckleberry</name>
<email>nhuck@google.com</email>
</author>
<published>2022-09-12T21:45:10Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=73c99e26036529e633a0f2d628ad7ddff6594668'/>
<id>urn:sha1:73c99e26036529e633a0f2d628ad7ddff6594668</id>
<content type='text'>
The ndo_start_xmit field in net_device_ops is expected to be of type
netdev_tx_t (*ndo_start_xmit)(struct sk_buff *skb, struct net_device *dev).

The mismatched return type breaks forward edge kCFI since the underlying
function definition does not match the function hook definition.

The return type of t7xx_ccmni_start_xmit should be changed from int to
netdev_tx_t.

Reported-by: Dan Carpenter &lt;error27@gmail.com&gt;
Link: https://github.com/ClangBuiltLinux/linux/issues/1703
Cc: llvm@lists.linux.dev
Signed-off-by: Nathan Huckleberry &lt;nhuck@google.com&gt;
Acked-by: Sergey Ryazanov &lt;ryazanov.s.a@gmail.com&gt;
Link: https://lore.kernel.org/r/20220912214510.929070-1-nhuck@google.com
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
</content>
</entry>
<entry>
<title>Revert "Merge branch 'wwan-t7xx-fw-flashing-and-coredump-support'"</title>
<updated>2022-08-19T22:30:05Z</updated>
<author>
<name>Jakub Kicinski</name>
<email>kuba@kernel.org</email>
</author>
<published>2022-08-19T22:29:38Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=bf294c3feafebe59a8ad67daa69784258d48ad72'/>
<id>urn:sha1:bf294c3feafebe59a8ad67daa69784258d48ad72</id>
<content type='text'>
This reverts commit 5417197dd516a8e115aa69f62a7b7554b0c3829c, reversing
changes made to 0630f64d25a0f0a8c6a9ce9fde8750b3b561e6f5.

Reverting to allow addressing review comments.

Link: https://lore.kernel.org/all/4c5dbea0-52a9-1c3d-7547-00ea54c90550@linux.intel.com/
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
</content>
</entry>
<entry>
<title>net: wwan: t7xx: Enable devlink based fw flashing and coredump collection</title>
<updated>2022-08-17T10:53:53Z</updated>
<author>
<name>M Chetan Kumar</name>
<email>m.chetan.kumar@linux.intel.com</email>
</author>
<published>2022-08-16T04:24:05Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=87dae9e70bf7be2bd8a3c561fe3ddf666eb8a7a4'/>
<id>urn:sha1:87dae9e70bf7be2bd8a3c561fe3ddf666eb8a7a4</id>
<content type='text'>
This patch brings-in support for t7xx wwan device firmware flashing &amp;
coredump collection using devlink.

Driver Registers with Devlink framework.
Implements devlink ops flash_update callback that programs modem firmware.
Creates region &amp; snapshot required for device coredump log collection.
On early detection of wwan device in fastboot mode driver sets up CLDMA0 HW
tx/rx queues for raw data transfer then registers with devlink framework.
Upon receiving firmware image &amp; partition details driver sends fastboot
commands for flashing the firmware.

In this flow the fastboot command &amp; response gets exchanged between driver
and device. Once firmware flashing is success completion status is reported
to user space application.

Below is the devlink command usage for firmware flashing

$devlink dev flash pci/$BDF file ABC.img component ABC

Note: ABC.img is the firmware to be programmed to "ABC" partition.

In case of coredump collection when wwan device encounters an exception
it reboots &amp; stays in fastboot mode for coredump collection by host driver.
On detecting exception state driver collects the core dump, creates the
devlink region &amp; reports an event to user space application for dump
collection. The user space application invokes devlink region read command
for dump collection.

Below are the devlink commands used for coredump collection.

devlink region new pci/$BDF/mr_dump
devlink region read pci/$BDF/mr_dump snapshot $ID address $ADD length $LEN
devlink region del pci/$BDF/mr_dump snapshot $ID

Signed-off-by: M Chetan Kumar &lt;m.chetan.kumar@linux.intel.com&gt;
Signed-off-by: Devegowda Chandrashekar &lt;chandrashekar.devegowda@intel.com&gt;
Signed-off-by: Mishra Soumya Prakash &lt;soumya.prakash.mishra@intel.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: wwan: t7xx: PCIe reset rescan</title>
<updated>2022-08-17T10:53:53Z</updated>
<author>
<name>Haijun Liu</name>
<email>haijun.liu@mediatek.com</email>
</author>
<published>2022-08-16T04:23:53Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=140424d90165d83c75b23ead7c3573bb6dd74f50'/>
<id>urn:sha1:140424d90165d83c75b23ead7c3573bb6dd74f50</id>
<content type='text'>
PCI rescan module implements "rescan work queue". In firmware flashing
or coredump collection procedure WWAN device is programmed to boot in
fastboot mode and a work item is scheduled for removal &amp; detection.
The WWAN device is reset using APCI call as part driver removal flow.
Work queue rescans pci bus at fixed interval for device detection,
later when device is detect work queue exits.

Signed-off-by: Haijun Liu &lt;haijun.liu@mediatek.com&gt;
Co-developed-by: Madhusmita Sahu &lt;madhusmita.sahu@intel.com&gt;
Signed-off-by: Madhusmita Sahu &lt;madhusmita.sahu@intel.com&gt;
Signed-off-by: Ricardo Martinez &lt;ricardo.martinez@linux.intel.com&gt;
Signed-off-by: M Chetan Kumar &lt;m.chetan.kumar@linux.intel.com&gt;
Signed-off-by: Devegowda Chandrashekar &lt;chandrashekar.devegowda@intel.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: wwan: t7xx: Infrastructure for early port configuration</title>
<updated>2022-08-17T10:53:53Z</updated>
<author>
<name>Haijun Liu</name>
<email>haijun.liu@mediatek.com</email>
</author>
<published>2022-08-16T04:23:40Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=007f26f0d68e28509d369fe0e71845e095bdd955'/>
<id>urn:sha1:007f26f0d68e28509d369fe0e71845e095bdd955</id>
<content type='text'>
To support cases such as FW update or Core dump, the t7xx device
is capable of signaling the host that a special port needs
to be created before the handshake phase.

This patch adds the infrastructure required to create the
early ports which also requires a different configuration of
CLDMA queues.

Signed-off-by: Haijun Liu &lt;haijun.liu@mediatek.com&gt;
Co-developed-by: Madhusmita Sahu &lt;madhusmita.sahu@intel.com&gt;
Signed-off-by: Madhusmita Sahu &lt;madhusmita.sahu@intel.com&gt;
Signed-off-by: Ricardo Martinez &lt;ricardo.martinez@linux.intel.com&gt;
Signed-off-by: Devegowda Chandrashekar &lt;chandrashekar.devegowda@intel.com&gt;
Signed-off-by: M Chetan Kumar &lt;m.chetan.kumar@linux.intel.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: wwan: t7xx: Add AP CLDMA</title>
<updated>2022-08-17T10:53:53Z</updated>
<author>
<name>Haijun Liu</name>
<email>haijun.liu@mediatek.com</email>
</author>
<published>2022-08-16T04:23:28Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=d20ef656f9942950d67e29418512a6929682ad60'/>
<id>urn:sha1:d20ef656f9942950d67e29418512a6929682ad60</id>
<content type='text'>
The t7xx device contains two Cross Layer DMA (CLDMA) interfaces to
communicate with AP and Modem processors respectively. So far only
MD-CLDMA was being used, this patch enables AP-CLDMA.

Rename small Application Processor (sAP) to AP.

Signed-off-by: Haijun Liu &lt;haijun.liu@mediatek.com&gt;
Co-developed-by: Madhusmita Sahu &lt;madhusmita.sahu@intel.com&gt;
Signed-off-by: Madhusmita Sahu &lt;madhusmita.sahu@intel.com&gt;
Signed-off-by: Moises Veleta &lt;moises.veleta@linux.intel.com&gt;
Signed-off-by: Devegowda Chandrashekar &lt;chandrashekar.devegowda@intel.com&gt;
Signed-off-by: M Chetan Kumar &lt;m.chetan.kumar@linux.intel.com&gt;
Reviewed-by: Ilpo Järvinen &lt;ilpo.jarvinen@linux.intel.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: wwan: t7xx: use GFP_ATOMIC under spin lock in t7xx_cldma_gpd_set_next_ptr()</title>
<updated>2022-05-21T00:19:19Z</updated>
<author>
<name>Yang Yingliang</name>
<email>yangyingliang@huawei.com</email>
</author>
<published>2022-05-19T03:21:08Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=9ee152ee3ee3568b1a3302f2bb816d5440e6f5f1'/>
<id>urn:sha1:9ee152ee3ee3568b1a3302f2bb816d5440e6f5f1</id>
<content type='text'>
Sometimes t7xx_cldma_gpd_set_next_ptr() is called under spin lock,
so add 'gfp_mask' parameter in t7xx_cldma_gpd_set_next_ptr() to pass
the flag.

Fixes: 39d439047f1d ("net: wwan: t7xx: Add control DMA interface")
Reported-by: Hulk Robot &lt;hulkci@huawei.com&gt;
Signed-off-by: Yang Yingliang &lt;yangyingliang@huawei.com&gt;
Reviewed-by: Loic Poulain &lt;loic.poulain@linaro.org&gt;
Link: https://lore.kernel.org/r/20220519032108.2996400-1-yangyingliang@huawei.com
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
</content>
</entry>
<entry>
<title>net: wwan: t7xx: Fix smatch errors</title>
<updated>2022-05-20T01:37:09Z</updated>
<author>
<name>Ricardo Martinez</name>
<email>ricardo.martinez@linux.intel.com</email>
</author>
<published>2022-05-18T19:55:29Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=86afd5a0e78eb9b84b158b33d85f711c5f748fd1'/>
<id>urn:sha1:86afd5a0e78eb9b84b158b33d85f711c5f748fd1</id>
<content type='text'>
t7xx_request_irq() error: uninitialized symbol 'ret'.

t7xx_core_hk_handler() error: potentially dereferencing uninitialized 'event'.
If the condition to enter the loop that waits for the handshake event
is false on the first iteration then the uninitialized 'event' will be
dereferenced, fix this by initializing 'event' to NULL.

t7xx_port_proxy_recv_skb() warn: variable dereferenced before check 'skb'.
No need to check skb at t7xx_port_proxy_recv_skb() since we know it
is always called with a valid skb by t7xx_cldma_gpd_rx_from_q().

Reported-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Signed-off-by: Ricardo Martinez &lt;ricardo.martinez@linux.intel.com&gt;
Link: https://lore.kernel.org/r/20220518195529.126246-1-ricardo.martinez@linux.intel.com
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
</content>
</entry>
<entry>
<title>net: wwan: t7xx: Avoid calls to skb_data_area_size()</title>
<updated>2022-05-16T20:45:26Z</updated>
<author>
<name>Ricardo Martinez</name>
<email>ricardo.martinez@linux.intel.com</email>
</author>
<published>2022-05-13T17:33:59Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=262d98b1193fec68c66f3d57772b72240fc4b9da'/>
<id>urn:sha1:262d98b1193fec68c66f3d57772b72240fc4b9da</id>
<content type='text'>
skb_data_area_size() helper was used to calculate the size of the
DMA mapped buffer passed to the HW. Instead of doing this, use the
size passed to allocate the skbs.

Signed-off-by: Ricardo Martinez &lt;ricardo.martinez@linux.intel.com&gt;
Reviewed-by: Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;
Reviewed-by: Sergey Ryazanov &lt;ryazanov.s.a@gmail.com&gt;
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
</content>
</entry>
<entry>
<title>net: wwan: t7xx: Fix return type of t7xx_dl_add_timedout()</title>
<updated>2022-05-16T10:41:50Z</updated>
<author>
<name>YueHaibing</name>
<email>yuehaibing@huawei.com</email>
</author>
<published>2022-05-13T07:56:11Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=b321dfafb0b99e285d14bcaae00b4f9093556eb6'/>
<id>urn:sha1:b321dfafb0b99e285d14bcaae00b4f9093556eb6</id>
<content type='text'>
t7xx_dl_add_timedout() now return int 'ret', but the return type
is bool. Change the return type to int for furthor errcode upstream.

Signed-off-by: YueHaibing &lt;yuehaibing@huawei.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
