Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752053AbcKFNhQ (ORCPT ); Sun, 6 Nov 2016 08:37:16 -0500 Received: from up.free-electrons.com ([163.172.77.33]:58782 "EHLO mail.free-electrons.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751764AbcKFNhP (ORCPT ); Sun, 6 Nov 2016 08:37:15 -0500 Date: Sun, 6 Nov 2016 14:37:11 +0100 From: Maxime Ripard To: Hao Zhang Cc: wens@csie.org, dan.j.williams@intel.com, vinod.koul@intel.com, dmaengine@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH v2 1/1] ARM: dmaengine: sun6i: share the dma driver with sun50i Message-ID: <20161106133711.np2hm77myfd75sn2@lukather> References: <20161105080548.GA32546@arx12> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="xsb6bfmpbntpj7is" Content-Disposition: inline In-Reply-To: <20161105080548.GA32546@arx12> User-Agent: Mutt/1.6.2-neo (2016-08-21) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3179 Lines: 95 --xsb6bfmpbntpj7is Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sat, Nov 05, 2016 at 04:05:48PM +0800, Hao Zhang wrote: > Add soc a64 dma support. >=20 > Signed-off-by: Hao Zhang > --- > drivers/dma/sun6i-dma.c | 19 +++++++++++++++++++ > 1 file changed, 19 insertions(+) >=20 > diff --git a/drivers/dma/sun6i-dma.c b/drivers/dma/sun6i-dma.c > index 8346199..00fcfc7 100644 > --- a/drivers/dma/sun6i-dma.c > +++ b/drivers/dma/sun6i-dma.c > @@ -1028,11 +1028,23 @@ static struct sun6i_dma_config sun8i_h3_dma_cfg = =3D { > .nr_max_vchans =3D 34, > }; > =20 > +/* > + * The A64 has 8 physical channels, a maximum DRQ port id of 27, > + * and a total of 38 usable source and destination endpoints. > + */ > + > +static struct sun6i_dma_config sun50i_a64_dma_cfg =3D { > + .nr_max_channels =3D 8, > + .nr_max_requests =3D 27, > + .nr_max_vchans =3D 38, > +}; > + > static const struct of_device_id sun6i_dma_match[] =3D { > { .compatible =3D "allwinner,sun6i-a31-dma", .data =3D &sun6i_a31_dma_c= fg }, > { .compatible =3D "allwinner,sun8i-a23-dma", .data =3D &sun8i_a23_dma_c= fg }, > { .compatible =3D "allwinner,sun8i-a83t-dma", .data =3D &sun8i_a83t_dma= _cfg }, > { .compatible =3D "allwinner,sun8i-h3-dma", .data =3D &sun8i_h3_dma_cfg= }, > + { .compatible =3D "allwinner,sun50i-a64-dma", .data =3D &sun50i_a64_dma= _cfg }, You need to add that compatible to the DT binding documentation. > { /* sentinel */ } > }; > MODULE_DEVICE_TABLE(of, sun6i_dma_match); > @@ -1110,6 +1122,13 @@ static int sun6i_dma_probe(struct platform_device = *pdev) > sdc->slave.dst_addr_widths =3D BIT(DMA_SLAVE_BUSWIDTH_1_BYTE) | > BIT(DMA_SLAVE_BUSWIDTH_2_BYTES) | > BIT(DMA_SLAVE_BUSWIDTH_4_BYTES); > + > + if (of_device_is_compatible(pdev->dev.of_node, > + "allwinner,sun50i-a64-dma")) { > + sdc->slave.src_addr_widths |=3D BIT(DMA_SLAVE_BUSWIDTH_8_BYTES); > + sdc->slave.dst_addr_widths |=3D BIT(DMA_SLAVE_BUSWIDTH_8_BYTES); > + } > + You'll also need to change convert_buswidth, it will reject any width higher than 4 bytes. Maxime --=20 Maxime Ripard, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com --xsb6bfmpbntpj7is Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIcBAEBCAAGBQJYHzIDAAoJEBx+YmzsjxAgdmwP/Ryq0Q8XZKhUd8n3MsVrWHgP 2ijnFtE7VH1LUozbt/7nlkYs4GWDTHOZWVxRy6PyvER4zGtj9rn6wE4c4BOjM1uW 5PjE3pCMsDQcerpjPUJ1hH9kswgHetED/wtzu/Z3AwWrIfLhqqKvgYLhUxpiCRxa CPO6SVZ3g7DGPxQPGRIPSxHK7/io6Z78Bz4Ua9UFEjbR+VLWYCOnFEzYwCUkk1jq OqfjdGNYmyqkxP77xMZls2BXFHZGadNWUn5fv98JrcdBBhpAOWrRMGmhn6I2eH9M ZJ9TnXg4v4eFWj1AftVjrdeZTySBeUJXgtk8UcbWwN+Zk16v74okDQFaXO9LZdFq DuFrIwXfGJQZIMj6PiYu8HsDhZ0n5WEnVj1uwCZll/fP5ExTkUvFhUKTgpuibWrA 2+psi518vQIqzav6LnUSRye493eUO1K/AIuL7DFxxe6DgGymFZYjuBAjj9VRDV3M fjvSB3ojk0Z/Ke5lC1cLAdneh8OMJ/gDvncOqXZShhX9qs7wYalEkK07KQFDPxlE W337H0izMsSmCLenji47SNPwTXHneiTtSKHSxT8J+YZmTOgjlY/a9MLtQA8LkP6M YAnxhJfTpgDWIqqDu17S7tM+IBk8DBzmeV1EGq1pSHQtZxvrm+Y+NNJrwdkGQziz PF4PDgLB8z1EalZlZKwm =42DZ -----END PGP SIGNATURE----- --xsb6bfmpbntpj7is--