1
0
Fork 0
mirror of synced 2025-03-06 20:59:54 +01:00
linux/drivers/net/ethernet/stmicro/stmmac
Voon Weifeng 7cfc4486e7 stmmac: intel: Configure EHL PSE0 GbE and PSE1 GbE to 32 bits DMA addressing
Fix an issue where dump stack is printed and Reset Adapter occurs when
PSE0 GbE or/and PSE1 GbE is/are enabled. EHL PSE0 GbE and PSE1 GbE use
32 bits DMA addressing whereas EHL PCH GbE uses 64 bits DMA addressing.

[   25.535095] ------------[ cut here ]------------
[   25.540276] NETDEV WATCHDOG: enp0s29f2 (intel-eth-pci): transmit queue 2 timed out
[   25.548749] WARNING: CPU: 2 PID: 0 at net/sched/sch_generic.c:443 dev_watchdog+0x259/0x260
[   25.558004] Modules linked in: 8021q bnep bluetooth ecryptfs snd_hda_codec_hdmi intel_gpy marvell intel_ishtp_loader intel_ishtp_hid iTCO_wdt mei_hdcp iTCO_vendor_support x86_pkg_temp_thermal kvm_intel dwmac_intel stmmac kvm igb pcs_xpcs irqbypass phylink snd_hda_intel intel_rapl_msr pcspkr dca snd_hda_codec i915 i2c_i801 i2c_smbus libphy intel_ish_ipc snd_hda_core mei_me intel_ishtp mei spi_dw_pci 8250_lpss spi_dw thermal dw_dmac_core parport_pc tpm_crb tpm_tis parport tpm_tis_core tpm intel_pmc_core sch_fq_codel uhid fuse configfs snd_sof_pci snd_sof_intel_byt snd_sof_intel_ipc snd_sof_intel_hda_common snd_sof_xtensa_dsp snd_sof snd_soc_acpi_intel_match snd_soc_acpi snd_intel_dspcfg ledtrig_audio snd_soc_core snd_compress ac97_bus snd_pcm snd_timer snd soundcore
[   25.633795] CPU: 2 PID: 0 Comm: swapper/2 Tainted: G     U            5.11.0-rc4-intel-lts-MISMAIL5+ #5
[   25.644306] Hardware name: Intel Corporation Elkhart Lake Embedded Platform/ElkhartLake LPDDR4x T4 RVP1, BIOS EHLSFWI1.R00.2434.A00.2010231402 10/23/2020
[   25.659674] RIP: 0010:dev_watchdog+0x259/0x260
[   25.664650] Code: e8 3b 6b 60 ff eb 98 4c 89 ef c6 05 ec e7 bf 00 01 e8 fb e5 fa ff 89 d9 4c 89 ee 48 c7 c7 78 31 d2 9e 48 89 c2 e8 79 1b 18 00 <0f> 0b e9 77 ff ff ff 0f 1f 44 00 00 48 c7 47 08 00 00 00 00 48 c7
[   25.685647] RSP: 0018:ffffb7ca80160eb8 EFLAGS: 00010286
[   25.691498] RAX: 0000000000000000 RBX: 0000000000000002 RCX: 0000000000000103
[   25.699483] RDX: 0000000080000103 RSI: 00000000000000f6 RDI: 00000000ffffffff
[   25.707465] RBP: ffff985709ce0440 R08: 0000000000000000 R09: c0000000ffffefff
[   25.715455] R10: ffffb7ca80160cf0 R11: ffffb7ca80160ce8 R12: ffff985709ce039c
[   25.723438] R13: ffff985709ce0000 R14: 0000000000000008 R15: ffff9857068af940
[   25.731425] FS:  0000000000000000(0000) GS:ffff985864300000(0000) knlGS:0000000000000000
[   25.740481] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[   25.746913] CR2: 00005567f8bb76b8 CR3: 00000001f8e0a000 CR4: 0000000000350ee0
[   25.754900] Call Trace:
[   25.757631]  <IRQ>
[   25.759891]  ? qdisc_put_unlocked+0x30/0x30
[   25.764565]  ? qdisc_put_unlocked+0x30/0x30
[   25.769245]  call_timer_fn+0x2e/0x140
[   25.773346]  run_timer_softirq+0x1f3/0x430
[   25.777932]  ? __hrtimer_run_queues+0x12c/0x2c0
[   25.783005]  ? ktime_get+0x3e/0xa0
[   25.786812]  __do_softirq+0xa6/0x2ef
[   25.790816]  asm_call_irq_on_stack+0xf/0x20
[   25.795501]  </IRQ>
[   25.797852]  do_softirq_own_stack+0x5d/0x80
[   25.802538]  irq_exit_rcu+0x94/0xb0
[   25.806475]  sysvec_apic_timer_interrupt+0x42/0xc0
[   25.811836]  asm_sysvec_apic_timer_interrupt+0x12/0x20
[   25.817586] RIP: 0010:cpuidle_enter_state+0xd9/0x370
[   25.823142] Code: 85 c0 0f 8f 0a 02 00 00 31 ff e8 22 d5 7e ff 45 84 ff 74 12 9c 58 f6 c4 02 0f 85 47 02 00 00 31 ff e8 7b a0 84 ff fb 45 85 f6 <0f> 88 ab 00 00 00 49 63 ce 48 2b 2c 24 48 89 c8 48 6b d1 68 48 c1
[   25.844140] RSP: 0018:ffffb7ca800f7e80 EFLAGS: 00000206
[   25.849996] RAX: ffff985864300000 RBX: 0000000000000003 RCX: 000000000000001f
[   25.857975] RDX: 00000005f2028ea8 RSI: ffffffff9ec5907f RDI: ffffffff9ec62a5d
[   25.865961] RBP: 00000005f2028ea8 R08: 0000000000000000 R09: 0000000000029d00
[   25.873947] R10: 000000137b0e0508 R11: ffff9858643294e4 R12: ffff9858643336d0
[   25.881935] R13: ffffffff9ef74b00 R14: 0000000000000003 R15: 0000000000000000
[   25.889918]  cpuidle_enter+0x29/0x40
[   25.893922]  do_idle+0x24a/0x290
[   25.897536]  cpu_startup_entry+0x19/0x20
[   25.901930]  start_secondary+0x128/0x160
[   25.906326]  secondary_startup_64_no_verify+0xb0/0xbb
[   25.911983] ---[ end trace b4c0c8195d0ba61f ]---
[   25.917193] intel-eth-pci 0000:00:1d.2 enp0s29f2: Reset adapter.

Fixes: 67c08ac414 ("net: stmmac: add EHL PSE0 & PSE1 1Gbps PCI info and PCI ID")
Signed-off-by: Voon Weifeng <weifeng.voon@intel.com>
Co-developed-by: Mohammad Athari Bin Ismail <mohammad.athari.ismail@intel.com>
Signed-off-by: Mohammad Athari Bin Ismail <mohammad.athari.ismail@intel.com>
Link: https://lore.kernel.org/r/20210126100844.30326-1-mohammad.athari.ismail@intel.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2021-01-28 13:07:28 -08:00
..
altr_tse_pcs.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 234 2019-06-19 17:09:07 +02:00
altr_tse_pcs.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 234 2019-06-19 17:09:07 +02:00
chain_mode.c net: stmmac: Add support to Ethtool get/set ring parameters 2020-09-16 15:22:52 -07:00
common.h net: stmmac: Enable EEE HW LPI timer with auto SW/HW switching 2020-10-30 09:59:26 -07:00
descs.h net: stmmac: Initial support for TBS 2020-01-13 18:31:48 -08:00
descs_com.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 291 2019-06-05 17:36:38 +02:00
dwmac-anarion.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
dwmac-dwc-qos-eth.c net: stmmac: dwc-qos: Change the dwc_eth_dwmac_data's .probe prototype 2020-11-11 15:15:02 -08:00
dwmac-generic.c net: stmmac: Add the bindings parsing for XGMAC2 2018-08-09 11:16:28 -07:00
dwmac-imx.c net: stmmac: overwrite the dma_cap.addr64 according to HW design 2020-12-08 14:52:29 -08:00
dwmac-intel-plat.c net: stmmac: dwmac-intel-plat: remove config data on error 2021-01-22 18:25:36 -08:00
dwmac-intel.c stmmac: intel: Configure EHL PSE0 GbE and PSE1 GbE to 32 bits DMA addressing 2021-01-28 13:07:28 -08:00
dwmac-intel.h net: stmmac: Enable SERDES power up/down sequence 2020-04-21 15:54:45 -07:00
dwmac-ipq806x.c net: ethernet: stmmac: Disable hardware multicast filter 2020-08-12 13:12:52 -07:00
dwmac-lpc18xx.c net: ethernet: stmmac: fix of-node and fixed-link-phydev leaks 2016-12-02 10:42:47 -05:00
dwmac-mediatek.c net-next: stmmac: mediatek: add more support for RMII 2019-12-17 13:48:30 -08:00
dwmac-meson.c net: stmmac: dwmac-meson: use devm_platform_ioremap_resource() to simplify code 2019-08-21 13:52:33 -07:00
dwmac-meson8b.c net: stmmac: dwmac-meson8b: ignore the second clock input 2020-12-22 18:38:31 -08:00
dwmac-oxnas.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 446 2019-06-05 17:37:18 +02:00
dwmac-qcom-ethqos.c net: stmmac: fix num_por initialization 2020-05-14 12:48:15 -07:00
dwmac-rk.c drivers/net/ethernet: clean up mis-targeted comments 2020-09-25 16:29:00 -07:00
dwmac-socfpga.c net: stmmac: fix enabling socfpga's ptp_ref_clock 2020-04-18 15:02:18 -07:00
dwmac-sti.c net: of_get_phy_mode: Change API to solve int/unit warnings 2019-11-04 11:21:25 -08:00
dwmac-stm32.c net: ethernet: stmmac: simplify phy modes management for stm32 2020-05-01 15:17:32 -07:00
dwmac-sun8i.c net: stmmac: dwmac-sun8i: Balance syscon (de)initialization 2021-01-05 16:32:08 -08:00
dwmac-sunxi.c net: stmmac: dwmac-sunxi: Provide TX and RX fifo sizes 2020-04-16 13:47:53 -07:00
dwmac4.h net: stmmac: Enable EEE HW LPI timer with auto SW/HW switching 2020-10-30 09:59:26 -07:00
dwmac4_core.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2020-11-27 18:25:27 -08:00
dwmac4_descs.c net: stmmac: set get_rx_header_len() as void for it didn't have any error code to return 2020-09-11 14:37:34 -07:00
dwmac4_descs.h net: stmmac: gmac4+: Add TBS support 2020-01-13 18:31:48 -08:00
dwmac4_dma.c net: stmmac: gmac4+: Add TBS support 2020-01-13 18:31:48 -08:00
dwmac4_dma.h net: stmmac: gmac4+: Add TBS support 2020-01-13 18:31:48 -08:00
dwmac4_lib.c net: stmmac: increase the timeout for dma reset 2020-12-08 14:52:29 -08:00
dwmac5.c net: stmmac: fix taprio schedule configuration 2021-01-14 10:49:42 -08:00
dwmac5.h net: stmmac: Add option for VLAN filter fail queue enable 2020-09-25 16:48:33 -07:00
dwmac100.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 291 2019-06-05 17:36:38 +02:00
dwmac100_core.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2019-06-17 20:20:36 -07:00
dwmac100_dma.c net: stmmac: Fix descriptors address being in > 32 bits address space 2019-07-09 12:20:08 -07:00
dwmac1000.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2019-06-17 20:20:36 -07:00
dwmac1000_core.c net: stmmac: dwmac1000: provide multicast filter fallback 2020-08-12 13:12:52 -07:00
dwmac1000_dma.c net: stmmac: Fix descriptors address being in > 32 bits address space 2019-07-09 12:20:08 -07:00
dwmac_dma.h net: stmmac: Let TX and RX interrupts be independently enabled/disabled 2019-12-18 12:14:08 -08:00
dwmac_lib.c net: stmmac: dwmac_lib: enlarge dma reset timeout 2020-11-14 16:04:02 -08:00
dwxgmac2.h net: stmmac: xgmac: Add TBS support 2020-01-13 18:31:48 -08:00
dwxgmac2_core.c net: stmmac: xgmac: Fix VLAN register handling 2020-04-02 07:04:45 -07:00
dwxgmac2_descs.c net: stmmac: set get_rx_header_len() as void for it didn't have any error code to return 2020-09-11 14:37:34 -07:00
dwxgmac2_dma.c net: stmmac: xgmac: Add TBS support 2020-01-13 18:31:48 -08:00
dwxlgmac2.h net: stmmac: Add support for Enterprise MAC version 2020-03-17 21:37:25 -07:00
enh_desc.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 291 2019-06-05 17:36:38 +02:00
hwif.c net: stmmac: Add support for Enterprise MAC version 2020-03-17 21:37:25 -07:00
hwif.h net: stmmac: Enable EEE HW LPI timer with auto SW/HW switching 2020-10-30 09:59:26 -07:00
Kconfig net: pcs: Move XPCS into new PCS subdirectory 2020-08-27 06:55:50 -07:00
Makefile net: stmmac: Add dwmac-intel-plat for GBE driver 2020-08-26 15:52:30 -07:00
mmc.h net: stmmac: xgmac: Implement MMC counters 2019-08-08 22:20:18 -07:00
mmc_core.c net: stmmac: mmc: Add Frame Preemption counters on GMAC5+ cores 2019-12-18 12:17:11 -08:00
norm_desc.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 291 2019-06-05 17:36:38 +02:00
ring_mode.c net: stmmac: Add support to Ethtool get/set ring parameters 2020-09-16 15:22:52 -07:00
stmmac.h net: stmmac: Use hrtimer for TX coalescing 2020-11-24 08:47:44 -08:00
stmmac_ethtool.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2020-10-05 18:40:01 -07:00
stmmac_hwtstamp.c net: stmmac: Fix sub-second increment 2020-04-18 15:02:18 -07:00
stmmac_main.c net: stmmac: Fixed mtu channged by cache aligned 2021-01-13 20:09:26 -08:00
stmmac_mdio.c net: stmmac: allow stmmac to probe for C45 PHY devices 2020-12-09 19:40:09 -08:00
stmmac_pci.c stmmac: intel: Fix clock handling on error and remove paths 2020-04-30 12:50:15 -07:00
stmmac_pcs.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
stmmac_platform.c net: stmmac: platform: use optional clk/reset get APIs 2020-11-13 16:31:52 -08:00
stmmac_platform.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 291 2019-06-05 17:36:38 +02:00
stmmac_ptp.c net: reject PTP periodic output requests with unsupported flags 2019-11-15 12:48:32 -08:00
stmmac_ptp.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 291 2019-06-05 17:36:38 +02:00
stmmac_selftests.c net: stmmac: Add support to Ethtool get/set ring parameters 2020-09-16 15:22:52 -07:00
stmmac_tc.c net: stmmac: fix taprio configuration when base_time is in the past 2021-01-14 10:49:42 -08:00