i3c: ast2600: Add AST2600 platform-specific driver
authorJeremy Kerr <jk@codeconstruct.com.au>
Fri, 31 Mar 2023 09:15:01 +0000 (17:15 +0800)
committerAlexandre Belloni <alexandre.belloni@bootlin.com>
Fri, 28 Apr 2023 06:19:01 +0000 (08:19 +0200)
commit5844564143575a8dbcbcece0084da059faeca5df
tree3faff951d9b82b68215279b1648479f41a5dcebc
parent21203e098cd3c1760de8112d750ceeedf09a6dad
i3c: ast2600: Add AST2600 platform-specific driver

Now that we have platform-specific infrastructure for the dw i3c driver,
add platform support for the ASPEED AST2600 SoC.

The AST2600 has a small set of "i3c global" registers, providing
platform-level i3c configuration outside of the i3c core.

For the ast2600, we need a couple of extra setup operations:

 - on probe: find the i3c global register set and parse the SDA pullup
   resistor values

 - on init: set the pullups accordingly, and set the i3c instance IDs

Signed-off-by: Jeremy Kerr <jk@codeconstruct.com.au>
Reviewed-by: Joel Stanley <joel@jms.id.au>
Link: https://lore.kernel.org/r/20230331091501.3800299-4-jk@codeconstruct.com.au
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
MAINTAINERS
drivers/i3c/master/Kconfig
drivers/i3c/master/Makefile
drivers/i3c/master/ast2600-i3c-master.c [new file with mode: 0644]