Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1542475

Re: [PATCH 12/12] dma: Flexcard DMA ringbuffer demux driver

From Vinod Koul <vinod.koul@intel.com>
Newsgroups linux.kernel
Subject Re: [PATCH 12/12] dma: Flexcard DMA ringbuffer demux driver
Date 2016-12-15 05:50 +0100
Message-ID <sOw9r-1fR-1@gated-at.bofh.it> (permalink)
References <sO5sB-7Vh-5@gated-at.bofh.it> <sO5sC-7Vh-47@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Wed, Dec 14, 2016 at 01:11:53AM +0100, Holger Dengler wrote:
> The Flexcard interface design split packet receive and transmit. All
> received packets and card status information are multiplexed with a
> Flexcard specific protocol and handled through a DMA capable ringbuffer.
> The TX path has to poke each available component separate.
> 
> Add a Flexcard DMA ringbuffer driver and packet demultiplexer.

so the dma driver should only provide service and not do demuxing...

> +config FLEXCARD_DMA
> +	tristate "DMA support for Eberspaecher Flexcard PMC II Carrier Board"
> +	depends on MFD_FLEXCARD
> +	help
> +	  The Eberspaecher Flexcard PMC (PCI Mezzanine Card) II carrier
> +	  board support one DMA capable receive ringbuffer for all devices.
> +	  A card specific protocol is used to multiplex the received packets
> +	  through the ringbuffer. Enable DMA and Packet parser.
> +

This file is sorted alphabetically, so please add it it relavant place

> +#define DMA_TOTAL_BUF_SIZE		(2*FLEXCARD_DMA_BUF_SIZE)

space around * pls

> +#define FLEXCARD_DMA_BUF_SIZE		0x200000
> +#define FLEXCARD_DMA_BUF_MASK		(FLEXCARD_DMA_BUF_SIZE - 1)
> +
> +#define FLEXCARD_DMA_CTRL_DMA_ENA	(1 << 0)
> +#define FLEXCARD_DMA_CTRL_MAN_ENA	(1 << 1)
> +#define FLEXCARD_DMA_CTRL_STOP_REQ	(1 << 16)
> +#define FLEXCARD_DMA_CTRL_DMA_IDLE	(1 << 17)
> +#define FLEXCARD_DMA_CTRL_RST_DMA	(1 << 31)

BIT() and friends please

> +
> +#define FLEXCARD_DMA_STAT_BUSY		(1 << 15)
> +#define FLEXCARD_DMA_STAT_OFL		(1 << 31)
> +
> +#define FLEXCARD_MAX_PAKET_SIZE		0x200
> +
> +#define FLEXCARD_BUF_HEADER_LEN_SHIFT	15
> +#define FLEXCARD_BUF_HEADER_LEN_MASK	0xfe
> +
> +#define FLEXCARD_CANIF_OFFSET		0x20

Okay I have skipped over the parser and other stuff and still looking for
the dmaengine APIs. 

This driver _doesn't_ do that, and am not sure why.

Anyway, if this driver doesnt need dmaengine APIs it doesnt belong in
drivers/dma/. Otherwise please port to dmanegine APIs, possibly use parser
as a client. You cna use virt-channels as well for managing the transfers.

So I am not considering this submission

Thanks
-- 
~Vinod

Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH 00/12] Eberspaecher Flexcard PMC II base support Holger Dengler <dengler@linutronix.de> - 2016-12-14 01:20 +0100
  [PATCH 02/12] mfd: flexcard: add flexcard misc mfd-cell Holger Dengler <dengler@linutronix.de> - 2016-12-14 01:20 +0100
  [PATCH 12/12] dma: Flexcard DMA ringbuffer demux driver Holger Dengler <dengler@linutronix.de> - 2016-12-14 01:20 +0100
    Re: [PATCH 12/12] dma: Flexcard DMA ringbuffer demux driver Vinod Koul <vinod.koul@intel.com> - 2016-12-15 05:50 +0100
      Re: [PATCH 12/12] dma: Flexcard DMA ringbuffer demux driver Holger Dengler <dengler@linutronix.de> - 2016-12-19 12:00 +0100

csiph-web