[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <d0ecd68c-e786-625e-47ac-cee3e13e6bec@xenosoft.de>
Date: Thu, 25 Aug 2022 16:45:45 +0200
From: Christian Zigotzky <chzigotzky@...osoft.de>
To: Michael Ellerman <mpe@...erman.id.au>,
Arminder Singh <arminders208@...look.com>,
linux-kernel@...r.kernel.org
Cc: Sven Peter <sven@...npeter.dev>,
Alyssa Rosenzweig <alyssa@...enzweig.io>,
Hector Martin <marcan@...can.st>,
Benjamin Herrenschmidt <benh@...nel.crashing.org>,
Paul Mackerras <paulus@...ba.org>,
linux-arm-kernel@...ts.infradead.org,
linuxppc-dev@...ts.ozlabs.org, linux-i2c@...r.kernel.org,
Darren Stevens <darren@...vens-zone.net>,
"R.T.Dickinson" <rtd2@...a.co.nz>,
Christian Zigotzky <info@...osoft.de>
Subject: Re: [PATCH] i2c: pasemi: Add IRQ support for Apple Silicon
On 23 August 2022 at 03:50 am, Michael Ellerman wrote:
> Arminder Singh <arminders208@...look.com> writes:
>> This is the first time I'm interacting with the Linux mailing lists, so
>> please don't eviscerate me *too much* if I get the formatting wrong.
>> Of course I'm always willing to take criticism and improve my formatting
>> in the future.
>>
>> This patch adds support for IRQs to the PASemi I2C controller driver.
>> This will allow for faster performing I2C transactions on Apple Silicon
>> hardware, as previously, the driver was forced to poll the SMSTA register
>> for a set amount of time.
>>
>> With this patchset the driver on Apple silicon hardware will instead wait
>> for an interrupt which will signal the completion of the I2C transaction.
>> The timeout value for this completion will be the same as the current
>> amount of time the I2C driver polls for.
>>
>> This will result in some performance improvement since the driver will be
>> waiting for less time than it does right now on Apple Silicon hardware.
>>
>> The patch right now will only enable IRQs for Apple Silicon I2C chips,
>> and only if it's able to successfully request the IRQ from the kernel.
>>
>> === Testing ===
>>
>> This patch has been tested on both the mainline Linux kernel tree and
>> the Asahi branch (https://github.com/AsahiLinux/linux.git) on both an
>> M1 and M2 MacBook Air, and it compiles successfully as both a module and
>> built-in to the kernel itself. The patch in both trees successfully boots
>> to userspace without any hitch.
>>
>> I do not have PASemi hardware on hand unfortunately, so I'm unable to test
>> the impact of this patch on old PASemi hardware. This is also why I've
>> elected to do the IRQ request and enablement on the Apple platform driver
>> and not in the common file, as I'm not sure if PASemi hardware supports
>> IRQs.
> I've added Darren and Christian to Cc, they have helped with PASemi
> development and testing in the past, and may be able to help test this
> series on PASemi hardware.
>
> cheers
Tested-by: Christian Zigotzky <chzigotzky at xenosoft.de>
on an A-EON AmigaOne X1000 with a PASemi PWRficient PA6T-1682 processor.
Powered by blists - more mailing lists