mail archive of the barebox mailing list
 help / color / mirror / Atom feed
From: Lucas Stach <l.stach@pengutronix.de>
To: Peter Mamonov <pmamonov@gmail.com>
Cc: barebox@lists.infradead.org, Oleksij Rempel <linux@rempel-privat.de>
Subject: Re: [PATCH v2 05/13] net: ath79: add ag71xx Ethernet driver
Date: Tue, 08 Aug 2017 09:50:32 +0200	[thread overview]
Message-ID: <1502178632.2934.20.camel@pengutronix.de> (raw)
In-Reply-To: <20170807204505.3kbug5xotylgt5nu@zacate>

Hi Peter,

Am Montag, den 07.08.2017, 23:45 +0300 schrieb Peter Mamonov:
> On Mon, Aug 07, 2017 at 04:39:19PM +0200, Oleksij Rempel wrote:
> > From: Yegor Yefremov <yegorslists@googlemail.com>
> > 
> > Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
> > Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com>
> > ---
[...]
> > +static int ag71xx_ether_send(struct eth_device *edev, void *packet, int length)
> > +{
> > +	struct ag71xx *priv = edev->priv;
> > +	struct device_d *dev = priv->dev;
> > +	ag7240_desc_t *f = &priv->fifo_tx[priv->next_tx];
> > +	int i;
> > +
> 
> > +	/* flush */
> > +	dma_sync_single_for_device((unsigned long)packet, length, DMA_TO_DEVICE);
> > +
> > +	f->pkt_start_addr = virt_to_phys(packet);
> 
> A couple of remarks regarding this code:
> 
> Despite the fact that this code should work fine, it violates the Linux DMA 
> API, which the Barebox tends to conform to. The problem is that the Barebox is 
> missing dma_map_*() functions, which should be used instead of virt_to_phys() 
> here.
> 
> Another DMA-related Barebox issue is the type of the first argument to 
> dma_sync_*() functions, which should be dma_addr_t (just like the return value 
> of dma_map_*() functions), instead of unsigned long.  This is of no importance 
> for 32 bit  architectures, however it will break for 64 bit targets.

A slight correction: unsigned long will work fine for pure 64bit
targets, as it maps to a 64bit type there. The only way this could break
is on 32bit LPAE targets, where long is a 32bit type, but the DMA
addresses could be above the 4GB mark.

Regards,
Lucas


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

  reply	other threads:[~2017-08-08  7:51 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-08-07 14:39 [PATCH v2 01/13] MIPS: ath79: provide CONFIG_SOC_QCA_AR9331 option Oleksij Rempel
2017-08-07 14:39 ` [PATCH v2 02/13] MIPS: ath79: add initial QCA AR9344 SoC support Oleksij Rempel
2017-08-07 14:39 ` [PATCH v2 03/13] MIPS: ath79: add TP-Link WDR4300 board support Oleksij Rempel
2017-08-07 14:39 ` [PATCH v2 04/13] MIPS: add virt_to_phys() and phys_to_virt() Oleksij Rempel
2017-08-07 19:56   ` Peter Mamonov
2017-08-07 14:39 ` [PATCH v2 05/13] net: ath79: add ag71xx Ethernet driver Oleksij Rempel
2017-08-07 20:45   ` Peter Mamonov
2017-08-08  7:50     ` Lucas Stach [this message]
2017-08-07 14:39 ` [PATCH v2 06/13] net: ag71xx: bit 19 should be set to 1 for GE0 Oleksij Rempel
2017-08-07 14:39 ` [PATCH v2 07/13] MIPS: tplink-mr3020: pbl: move WMAC init after flash addr test Oleksij Rempel
2017-08-07 14:39 ` [PATCH v2 08/13] MIPS: tplink-mr3020: pbl: move hornet_mips24k_cp0_setup " Oleksij Rempel
2017-08-07 14:39 ` [PATCH v2 09/13] MIPS: tplink-mr3020_defconfig: enable more options Oleksij Rempel
2017-08-07 14:39 ` [PATCH v2 10/13] MIPS: tplink-mr3020.dts: add partition table Oleksij Rempel
2017-08-07 14:39 ` [PATCH v2 11/13] MIPS: ar9344.dtsi: add ag71xx Ethernet driver Oleksij Rempel
2017-08-07 14:39 ` [PATCH v2 12/13] MIPS: ath79: add barebox update handler Oleksij Rempel
2017-08-07 14:39 ` [PATCH v2 13/13] filetype: fix file type detection for Barebox MIPS Oleksij Rempel
2017-08-09 15:23 ` [PATCH v2 01/13] MIPS: ath79: provide CONFIG_SOC_QCA_AR9331 option Oleksij Rempel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1502178632.2934.20.camel@pengutronix.de \
    --to=l.stach@pengutronix.de \
    --cc=barebox@lists.infradead.org \
    --cc=linux@rempel-privat.de \
    --cc=pmamonov@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox