Message ID | 20210623173243.7862-1-s-anna@ti.com |
---|---|
Headers | show |
Series | Add AM64x SoC support to PRU remoteproc driver | expand |
On 23/06/2021 20:32, Suman Anna wrote: > The K3 AM64x family of SoCs have a ICSSG IP that is similar to the > version on AM65x SR2.0 SoCs with some minor differences. The AM64x > SoCs contain two instances of this newer ICSSG IP. Each ICSSG processor > subsystem contains 2 primary PRU cores, 2 auxiliary PRU cores called > RTUs, and 2 new auxiliary cores called Transmit PRUs (Tx_PRUs). > > Enhance the existing PRU remoteproc driver to support all these PRU, > RTU and Tx_PRU cores by using specific compatibles. The cores have the > same memory copying limitations as on AM65x, so reuses the custom memcpy > function within the driver's ELF loader implementation. The initial > names for the firmware images for each PRU core are retrieved from > DT nodes, and can be adjusted through sysfs if required. > > Signed-off-by: Suman Anna <s-anna@ti.com> > --- > drivers/remoteproc/pru_rproc.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/drivers/remoteproc/pru_rproc.c b/drivers/remoteproc/pru_rproc.c > index e5778e476245..0ecf2675f5eb 100644 > --- a/drivers/remoteproc/pru_rproc.c > +++ b/drivers/remoteproc/pru_rproc.c > @@ -894,6 +894,9 @@ static const struct of_device_id pru_rproc_match[] = { > { .compatible = "ti,j721e-pru", .data = &k3_pru_data }, > { .compatible = "ti,j721e-rtu", .data = &k3_rtu_data }, > { .compatible = "ti,j721e-tx-pru", .data = &k3_tx_pru_data }, > + { .compatible = "ti,am642-pru", .data = &k3_pru_data }, > + { .compatible = "ti,am642-rtu", .data = &k3_rtu_data }, > + { .compatible = "ti,am642-tx-pru", .data = &k3_tx_pru_data }, > {}, > }; > MODULE_DEVICE_TABLE(of, pru_rproc_match); > Reviewed-by: Grygorii Strashko <grygorii.strashko@ti.com>
On Wed, Jun 23, 2021 at 12:32:42PM -0500, Suman Anna wrote: > The K3 AM64x family of SoCs have a ICSSG IP that is similar to the > version on AM65x SR2.0 SoCs with some minor differences. The AM64x > SoCs contain two instances of this newer ICSSG IP. Each ICSSG processor > subsystem contains 2 primary PRU cores, 2 auxiliary PRU cores called > RTUs, and 2 new auxiliary cores called Transmit PRUs (Tx_PRUs). > > Enhance the existing PRU remoteproc driver to support all these PRU, > RTU and Tx_PRU cores by using specific compatibles. The cores have the > same memory copying limitations as on AM65x, so reuses the custom memcpy > function within the driver's ELF loader implementation. The initial > names for the firmware images for each PRU core are retrieved from > DT nodes, and can be adjusted through sysfs if required. > > Signed-off-by: Suman Anna <s-anna@ti.com> > --- > drivers/remoteproc/pru_rproc.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/drivers/remoteproc/pru_rproc.c b/drivers/remoteproc/pru_rproc.c > index e5778e476245..0ecf2675f5eb 100644 > --- a/drivers/remoteproc/pru_rproc.c > +++ b/drivers/remoteproc/pru_rproc.c > @@ -894,6 +894,9 @@ static const struct of_device_id pru_rproc_match[] = { > { .compatible = "ti,j721e-pru", .data = &k3_pru_data }, > { .compatible = "ti,j721e-rtu", .data = &k3_rtu_data }, > { .compatible = "ti,j721e-tx-pru", .data = &k3_tx_pru_data }, > + { .compatible = "ti,am642-pru", .data = &k3_pru_data }, > + { .compatible = "ti,am642-rtu", .data = &k3_rtu_data }, > + { .compatible = "ti,am642-tx-pru", .data = &k3_tx_pru_data }, > {}, Reviewed-by: Mathieu Poirier <mathieu.poirier@linaro.org> > }; > MODULE_DEVICE_TABLE(of, pru_rproc_match); > -- > 2.30.1 >