Skip to content

Commit

Permalink
ARM: dts: gta04: fix excess dma channel usage
Browse files Browse the repository at this point in the history
[ Upstream commit a622310 ]

OMAP processors support 32 channels but there is no check or
inspect this except booting a device and looking at dmesg reports
of not available channels.

Recently some more subsystems with DMA (aes1+2) were added filling
the list of dma channels beyond the limit of 32 (even if other
parameters indicate 96 or 128 channels). This leads to random
subsystem failures i(e.g. mcbsp for audio) after boot or boot
messages that DMA can not be initialized.

Another symptom is that

/sys/kernel/debug/dmaengine/summary

has 32 entries and does not show all required channels.

Fix by disabling unused (on the GTA04 hardware) mcspi1...4.
Each SPI channel allocates 4 DMA channels rapidly filling
the available ones.

Disabling unused SPI modules on the OMAP3 SoC may also save
some energy (has not been checked).

Fixes: c312f06 ("ARM: dts: omap3: Migrate AES from hwmods to sysc-omap2")
Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
[re-enabled aes2, improved commit subject line]
Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
Message-Id: <20230113211151.2314874-1-andreas@kemnade.info>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
  • Loading branch information
goldelico authored and gregkh committed May 11, 2023
1 parent 162e929 commit 7ba924c
Showing 1 changed file with 16 additions and 0 deletions.
16 changes: 16 additions & 0 deletions arch/arm/boot/dts/omap3-gta04.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -612,6 +612,22 @@
clock-frequency = <100000>;
};

&mcspi1 {
status = "disabled";
};

&mcspi2 {
status = "disabled";
};

&mcspi3 {
status = "disabled";
};

&mcspi4 {
status = "disabled";
};

&usb_otg_hs {
interface-type = <0>;
usb-phy = <&usb2_phy>;
Expand Down

0 comments on commit 7ba924c

Please sign in to comment.