serial: 8250_mid: Disable DMA for selected platforms

In accordance with Errata (specification updates)
HSUART May Stop Functioning when DMA is Active.

- Denverton document #572409, rev 3.4, DNV60
- Ice Lake Xeon D document #714070, ICXD65
- Snowridge document #731931, SNR44

For a quick fix just disable the respective callbacks during the device probe.
Depending on the future development we might remove them completely.

Reported-by: micas-opensource <[email protected]>
Closes: https://lore.kernel.org/linux-serial/[email protected]/
Fixes: 6ede6dcd87 ("serial: 8250_mid: add support for DMA engine handling from UART MMIO")
Cc: stable <[email protected]>
Signed-off-by: Andy Shevchenko <[email protected]>
Link: https://patch.msgid.link/[email protected]
Signed-off-by: Greg Kroah-Hartman <[email protected]>
This commit is contained in:
Andy Shevchenko authored and Greg Kroah-Hartman committed 2026-07-10 14:47:16 +02:00
1 parent 061b627ba5
commit b1b4efea05
1 file changed
+11 -2
+11 -2
View File
@@ -10,6 +10,7 @@
#include <linux/module.h>
#include <linux/pci.h>
#include <linux/rational.h>
#include <linux/util_macros.h>
#include <linux/dma/hsu.h>
@@ -368,8 +369,16 @@ static const struct mid8250_board dnv_board = {
.freq = 133333333,
.base_baud = 115200,
.bar = 1,
.setup = dnv_setup,
.exit = dnv_exit,
/*
* Errata:
* HSUART May Stop Functioning when DMA is Active.
*
* - Denverton document #572409, rev 3.4, DNV60
* - Ice Lake Xeon D document #714070, ICXD65
* - Snowridge document #731931, SNR44
*/
.setup = PTR_IF(false, dnv_setup),
.exit = PTR_IF(false, dnv_exit),
};
static const struct pci_device_id pci_ids[] = {