built-in or a loadable driver.
>
> Fixes: 9bc5f4f660ff ("i2c: pasemi: Split pci driver to its own file")
> Signed-off-by: Arnd Bergmann
> ---
Reviewed-by: Sven Peter
thanks, totally forgot about this!
Sven
> drivers/i2c/busses/Makefile | 6 ++
> drivers/i2c/bus
and this all looks good
to me. Given that Janne already reviewed it in detail:
Acked-by: Sven Peter
Thanks,
Sven
> Regards,
>
>Joerg
ransactions.
>
> Signed-off-by: Arminder Singh
Thanks for following up on this! This looks good to me now.
Reviewed-by: Sven Peter
Best,
Sven
Hi,
> On 7. Oct 2022, at 02:43, Arminder Singh wrote:
>
> This patch adds IRQ support to the PASemi I2C controller driver to
> increase the performace of I2C transactions on platforms with PASemi I2C
> controllers. While primarily intended for Apple silicon platforms, this
> patch should
Hi,
On Sun, Oct 2, 2022, at 16:07, Arminder Singh wrote:
> Hi,
>
>> #define REG_MTXFIFO 0x00
>> #define REG_MRXFIFO 0x04
>> #define REG_SMSTA 0x14
>> +#define REG_IMASK 0x18
>
>> This doesn't seem to be aligned correctly, this file seems to use a tab
>> to separate the register name and
Hi,
Looks almost good to me, just a few minor things:
On Sun, Oct 2, 2022, at 00:25, Arminder Singh wrote:
> Hello,
>
> This is v2 of the PASemi I2C controller IRQ enablement patch.
This shouldn't be inside the commit description.
>
> This patch adds IRQ support to the PASemi I2C controller
Hi,
Thanks for the patch! Some additional comments:
On Sat, Aug 20, 2022, at 21:45, Arminder Singh wrote:
> 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
On Sat, Oct 9, 2021, at 15:57, Christian Zigotzky wrote:
> On 09 October 2021 at 12:10 pm, Wolfram Sang wrote:
>>> I still don't have access to any old PASemi hardware but the changes from
>>> v1 are pretty small and I expect them to still work. Would still be nice
>>> if someone with access to
On Sat, Oct 9, 2021, at 12:10, Wolfram Sang wrote:
>> I still don't have access to any old PASemi hardware but the changes from
>> v1 are pretty small and I expect them to still work. Would still be nice
>> if someone with access to such hardware could give this a quick test.
>
> Looks good to me.
On Sat, Oct 9, 2021, at 12:09, Wolfram Sang wrote:
>> F: arch/arm64/boot/dts/apple/
>> +F: drivers/i2c/busses/i2c-pasemi-platform.c
>
> We have no dedicated maintainer for PASEMI. Are maybe you or your
> project interested in maintaining the pasemi-core, too? I guess not many
> patches will
Some later revisions after the original PASemi I2C controller introduce
what likely is an enable bit to the CTL register. Without setting it the
actual i2c transmission is never started.
Reviewed-by: Arnd Bergmann
Signed-off-by: Sven Peter
---
v1 -> v2: no changes
drivers/i2c/busses/
With all the previous preparations we can now finally add
the platform driver to support the PASemi-based controllers
in Apple SoCs. This does not work on the M1 yet but should
work on the early iPhones already.
Reviewed-by: Arnd Bergmann
Signed-off-by: Sven Peter
---
v1 -> v2:
- renamed
Using managed device resources means there's nothing left to be done in
pasemi_smb_pci_remove and also allows to remove base and size from
struct pasemi_smbus.
Reviewed-by: Arnd Bergmann
Signed-off-by: Sven Peter
---
v1 -> v2: no changes
drivers/i2c/busses/i2c-pasemi-core.c |
Right now the bus frequency has always been hardcoded as
100 KHz with the specific reference clock used in the PASemi
PCI controllers. Make this configurable to prepare for the
platform driver.
Reviewed-by: Arnd Bergmann
Signed-off-by: Sven Peter
---
v1 -> v2: no changes
drivers/i2c/bus
Split out common reset call to its own function so that we
can later add support for selecting the clock frequency
and an additional enable bit found in newer revisions.
Reviewed-by: Arnd Bergmann
Signed-off-by: Sven Peter
---
v1 -> v2: no changes
drivers/i2c/busses/i2c-pasemi-core.c |
Split off the PCI driver so that we can reuse common code for the
platform driver.
Reviewed-by: Arnd Bergmann
Signed-off-by: Sven Peter
---
v1 -> v2: no changes
drivers/i2c/busses/Makefile | 1 +
.../{i2c-pasemi.c => i2c-pasemi-core.c} | 88 +
d
Split off common probing code that will be used by both the PCI and the
platform device.
Reviewed-by: Arnd Bergmann
Signed-off-by: Sven Peter
---
v1 -> v2: no changes
drivers/i2c/busses/i2c-pasemi.c | 39 +
1 file changed, 25 insertions(+), 14 deleti
Prepare to create a platform driver by removing all usages of pci_dev we
can.
Reviewed-by: Arnd Bergmann
Signed-off-by: Sven Peter
---
v1 -> v2: no changes
drivers/i2c/busses/i2c-pasemi.c | 12 ++--
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/drivers/i2c/busses/
Right now the i2c adapter name includes the port number which can
indirectly be used to identify the device. Replace that with dev_name
to directly identify the device and to also allow this to work correctly
once we add platform support.
Signed-off-by: Sven Peter
---
v1 -> v2: new com
In preparation for splitting this driver up into a platform_driver
and a pci_driver, replace outl/inl usage with pci_iomap and
ioread32/iowrite32.
Reviewed-by: Arnd Bergmann
Signed-off-by: Sven Peter
---
v1 -> v2: replaced ioport_map with pci_iomap
drivers/i2c/busses/i2c-pasemi.c |
The Apple I2C controller is based on the PASemi I2C controller.
It is present on Apple SoCs such as the M1.
Reviewed-by: Arnd Bergmann
Reviewed-by: Rob Herring
Signed-off-by: Sven Peter
---
v1 -> v2: no changes
.../devicetree/bindings/i2c/apple,i2c.yaml|
the octeon (mips)/thunderx(arm64) approach to do the
split: I created a -core.c file which contains the shared logic and just
compile that one for both the PASemi and the new Apple driver.
Best,
Sven
Sven Peter (11):
dt-bindings: i2c: Add Apple I2C controller bindings
i2c: pasemi: Use io
On Mon, Oct 4, 2021, at 13:20, Arnd Bergmann wrote:
> On Mon, Oct 4, 2021 at 11:55 AM Wolfram Sang wrote:
>>
>>
>> > i2c-8 i2c PA Semi SMBus adapter at 0x(ptrval) I2C
>> > adapter
>> > i2c-9 i2c PA Semi SMBus adapter at 0x(ptrval) I2C
>> >
On Wed, Sep 29, 2021, at 22:33, Wolfram Sang wrote:
>> drivers/i2c/busses/i2c-pasemi-apple.c | 122 ++
>
> Can't we name it 'i2c-pasemi-platform.c' instead? Makes more sense to me
> because the other instance is named -pci.
Sure, that's more consistent. I'll change the
Hi,
On Fri, Oct 1, 2021, at 06:47, Christian Zigotzky wrote:
> On 27 September 2021 at 07:39 am, Sven Peter wrote:
> > Hi Christian,
> >
> > Thanks already for volunteering to test this!
> >
> Hello Sven,
>
> Damian (Hypex) has successfully tested the RC3
On Mon, Sep 27, 2021, at 09:39, Arnd Bergmann wrote:
> On Sun, Sep 26, 2021 at 12:00 PM Sven Peter wrote:
>>
>> In preparation for splitting this driver up into a platform_driver
>> and a pci_driver, replace outl/inl usage with ioport_map and
>> ioread32/iowrite32.
>
Hi Christian,
Thanks already for volunteering to test this!
On Sun, Sep 26, 2021, at 22:27, Christian Zigotzky wrote:
> Hi Sven,
>
> I can't apply your patch 5 (i2c: pasemi: Split pci driver to its own
> file). [1]
That's strange because it should apply cleanly. I'll double check
after to work
The Apple I2C controller is based on the PASemi I2C controller.
It is present on Apple SoCs such as the M1.
Signed-off-by: Sven Peter
---
.../devicetree/bindings/i2c/apple,i2c.yaml| 61 +++
MAINTAINERS | 1 +
2 files changed, 62 insertions
Right now the bus frequency has always been hardcoded as
100 KHz with the specific reference clock used in the PASemi
PCI controllers. Make this configurable to prepare for the
platform driver.
Signed-off-by: Sven Peter
---
drivers/i2c/busses/i2c-pasemi-core.c | 8 +++-
drivers/i2c/busses
Prepare to create a platform driver by removing all usages of pci_dev we
can.
Signed-off-by: Sven Peter
---
drivers/i2c/busses/i2c-pasemi.c | 12 ++--
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/drivers/i2c/busses/i2c-pasemi.c b/drivers/i2c/busses/i2c-pasemi.c
index
In preparation for splitting this driver up into a platform_driver
and a pci_driver, replace outl/inl usage with ioport_map and
ioread32/iowrite32.
Signed-off-by: Sven Peter
---
drivers/i2c/busses/i2c-pasemi.c | 16 +---
1 file changed, 13 insertions(+), 3 deletions(-)
diff --git
Split off common probing code that will be used by both the PCI and the
platform device.
Signed-off-by: Sven Peter
---
drivers/i2c/busses/i2c-pasemi.c | 39 +
1 file changed, 25 insertions(+), 14 deletions(-)
diff --git a/drivers/i2c/busses/i2c-pasemi.c b
Using managed device resources means there's nothing left to be done in
pasemi_smb_pci_remove and also allows to remove base and size from
struct pasemi_smbus.
Signed-off-by: Sven Peter
---
drivers/i2c/busses/i2c-pasemi-core.c | 10 +++
drivers/i2c/busses/i2c-pasemi-core.h | 2 --
drivers
With all the previous preparations we can now finally add
the platform driver to support the PASemi-based controllers
in Apple SoCs. This does not work on the M1 yet but should
work on the early iPhones already.
Signed-off-by: Sven Peter
---
MAINTAINERS | 1
Split off the PCI driver so that we can reuse common code for the
platform driver.
Signed-off-by: Sven Peter
---
drivers/i2c/busses/Makefile | 1 +
.../{i2c-pasemi.c => i2c-pasemi-core.c} | 88 +
drivers/i2c/busses/i2c-pasemi-core.h |
Some later revisions after the original PASemi I2C controller introduce
what likely is an enable bit to the CTL register. Without setting it the
actual i2c transmission is never started.
Signed-off-by: Sven Peter
---
drivers/i2c/busses/i2c-pasemi-core.c | 8
drivers/i2c/busses/i2c
Split out common reset call to its own function so that we
can later add support for selecting the clock frequency
and an additional enable bit found in newer revisions.
Signed-off-by: Sven Peter
---
drivers/i2c/busses/i2c-pasemi-core.c | 15 +--
1 file changed, 9 insertions(+), 6
might still have an old machine on which he could
test this.
I'd very much appreciate if he (or anyone else for that matter :-))
could give this series a quick test on the old PASemi machines.
Best,
Sven
Sven Peter (10):
dt-bindings: i2c: Add Apple I2C controller bindings
i2c: pasemi: Use io
38 matches
Mail list logo