[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <87h5zsgf45.fsf@BLaptop.bootlin.com>
Date: Fri, 04 Jul 2025 17:17:14 +0200
From: Gregory CLEMENT <gregory.clement@...tlin.com>
To: Thomas Bogendoerfer <tsbogend@...ha.franken.de>, Jiaxun Yang
<jiaxun.yang@...goat.com>
Cc: Vladimir Kondratiev <vladimir.kondratiev@...ileye.com>, Théo Lebrun
<theo.lebrun@...tlin.com>, Tawfik Bayouk <tawfik.bayouk@...ileye.com>,
Thomas Petazzoni <thomas.petazzoni@...tlin.com>,
"linux-mips@...r.kernel.org" <linux-mips@...r.kernel.org>,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] MIPS: disable MMID if GINVT is not usable
Thomas Bogendoerfer <tsbogend@...ha.franken.de> writes:
> On Wed, Jun 25, 2025 at 03:44:00PM +0100, Jiaxun Yang wrote:
>> 在2025年6月25日周三 下午2:27,Gregory CLEMENT写道:
>>
>> Hi Gregory,
>>
>> > If System-level Interconnect (aka Network on Chip) does not support
>> > the global invalidation, then MMID feature is not usable. Indeed the
>> > current implementation of MMID relies on the GINV* instruction.
>>
>> Yes, it is the case if the NoC IP can't handle AMBA ACE DVM requests.
>>
>> >
>> > Signed-off-by: Gregory CLEMENT <gregory.clement@...tlin.com>
>> > ---
>> > arch/mips/Kconfig | 6 ++++++
>> > arch/mips/include/asm/cpu-features.h | 5 ++++-
>> > arch/mips/mobileye/Kconfig | 2 ++
>> > 3 files changed, 12 insertions(+), 1 deletion(-)
>> >
>> > diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
>> > index
>> > 1e48184ecf1ec8e29c0a25de6452ece5da835e30..05ce008459b89f03fa71d94429607feb9d06526f
>> > 100644
>> > --- a/arch/mips/Kconfig
>> > +++ b/arch/mips/Kconfig
>> > @@ -2575,6 +2575,12 @@ config WAR_R10000_LLSC
>> > config WAR_MIPS34K_MISSED_ITLB
>> > bool
>> >
>> > +# Some I6500 based SoC do not support the global invalidation on their
>> > +# System-level Interconnect (aka Network on Chip), this have an
>> > +# influence on the MMID support.
>> > +config GINVT_UNSUPPORTED_NOC
>> > + bool
>> > +
>>
>> I believe this should be a DeviceTree property of CM node instead of Kconfig
>> hack.
>
> Either that or by a runtime check, if possible.
Unfortunately we can't detect at runtime this (lack of) feature on the
NoC, so it has to be a device tree property.
Gregory
>
> Thomas.
>
> --
> Crap can work. Given enough thrust pigs will fly, but it's not necessarily a
> good idea. [ RFC1925, 2.3 ]
--
Grégory CLEMENT, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
Powered by blists - more mailing lists