From: Albert Wang <twang13@marvell.com>
To: corbet@lwn.net, g.liakhovetski@gmx.de
Cc: linux-media@vger.kernel.org, Albert Wang <twang13@marvell.com>,
Libin Yang <lbyang@marvell.com>
Subject: [PATCH V3 13/15] [media] marvell-ccic: add dma burst mode support in marvell-ccic driver
Date: Sat, 15 Dec 2012 17:58:02 +0800 [thread overview]
Message-ID: <1355565484-15791-14-git-send-email-twang13@marvell.com> (raw)
In-Reply-To: <1355565484-15791-1-git-send-email-twang13@marvell.com>
This patch adds the dma burst size config support for marvell-ccic.
Developer can set the dma burst size in specified board driver.
Signed-off-by: Albert Wang <twang13@marvell.com>
Signed-off-by: Libin Yang <lbyang@marvell.com>
---
.../media/platform/marvell-ccic/mcam-core-soc.c | 2 +-
drivers/media/platform/marvell-ccic/mcam-core.h | 7 ++++---
drivers/media/platform/marvell-ccic/mmp-driver.c | 11 +++++++++++
include/media/mmp-camera.h | 1 +
4 files changed, 17 insertions(+), 4 deletions(-)
diff --git a/drivers/media/platform/marvell-ccic/mcam-core-soc.c b/drivers/media/platform/marvell-ccic/mcam-core-soc.c
index 9016dc6..5b1dcfe 100644
--- a/drivers/media/platform/marvell-ccic/mcam-core-soc.c
+++ b/drivers/media/platform/marvell-ccic/mcam-core-soc.c
@@ -83,7 +83,7 @@ static int mcam_camera_add_device(struct soc_camera_device *icd)
mcam_ctlr_stop(mcam);
mcam_set_config_needed(mcam, 1);
mcam_reg_write(mcam, REG_CTRL1,
- C1_RESERVED | C1_DMAPOSTED);
+ mcam->burst | C1_RESERVED | C1_DMAPOSTED);
mcam_reg_write(mcam, REG_CLKCTRL,
(mcam->mclk_src << 29) | mcam->mclk_div);
cam_dbg(mcam, "camera: set sensor mclk = %dMHz\n", mcam->mclk_min);
diff --git a/drivers/media/platform/marvell-ccic/mcam-core.h b/drivers/media/platform/marvell-ccic/mcam-core.h
index 57442e0..e1025f2 100755
--- a/drivers/media/platform/marvell-ccic/mcam-core.h
+++ b/drivers/media/platform/marvell-ccic/mcam-core.h
@@ -126,6 +126,7 @@ struct mcam_camera {
short int use_smbus; /* SMBUS or straight I2c? */
enum mcam_buffer_mode buffer_mode;
+ int burst;
int mclk_min;
int mclk_src;
int mclk_div;
@@ -411,9 +412,9 @@ int mcam_soc_camera_host_register(struct mcam_camera *mcam);
#define C1_DESC_3WORD 0x00000200 /* Three-word descriptors used */
#define C1_444ALPHA 0x00f00000 /* Alpha field in RGB444 */
#define C1_ALPHA_SHFT 20
-#define C1_DMAB32 0x00000000 /* 32-byte DMA burst */
-#define C1_DMAB16 0x02000000 /* 16-byte DMA burst */
-#define C1_DMAB64 0x04000000 /* 64-byte DMA burst */
+#define C1_DMAB64 0x00000000 /* 64-byte DMA burst */
+#define C1_DMAB128 0x02000000 /* 128-byte DMA burst */
+#define C1_DMAB256 0x04000000 /* 256-byte DMA burst */
#define C1_DMAB_MASK 0x06000000
#define C1_TWOBUFS 0x08000000 /* Use only two DMA buffers */
#define C1_PWRDWN 0x10000000 /* Power down */
diff --git a/drivers/media/platform/marvell-ccic/mmp-driver.c b/drivers/media/platform/marvell-ccic/mmp-driver.c
index cd850f4..3469f02 100755
--- a/drivers/media/platform/marvell-ccic/mmp-driver.c
+++ b/drivers/media/platform/marvell-ccic/mmp-driver.c
@@ -400,6 +400,17 @@ static int mmpcam_probe(struct platform_device *pdev)
mcam->dphy = pdata->dphy;
mcam->mipi_enabled = 0;
mcam->lane = pdata->lane;
+ switch (pdata->dma_burst) {
+ case 128:
+ mcam->burst = C1_DMAB128;
+ break;
+ case 256:
+ mcam->burst = C1_DMAB256;
+ break;
+ default:
+ mcam->burst = C1_DMAB64;
+ break;
+ }
INIT_LIST_HEAD(&mcam->buffers);
/*
diff --git a/include/media/mmp-camera.h b/include/media/mmp-camera.h
index ec4f21f..4da0df7 100755
--- a/include/media/mmp-camera.h
+++ b/include/media/mmp-camera.h
@@ -13,6 +13,7 @@ struct mmp_camera_platform_data {
int mclk_src;
int mclk_div;
int chip_id;
+ int dma_burst;
/*
* MIPI support
*/
--
1.7.9.5
next prev parent reply other threads:[~2012-12-15 10:00 UTC|newest]
Thread overview: 71+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-12-15 9:57 [PATCH V3 00/15] [media] marvell-ccic: add soc camera support on marvell-ccic Albert Wang
2012-12-15 9:57 ` [PATCH V3 01/15] [media] marvell-ccic: use internal variable replace global frame stats variable Albert Wang
2012-12-16 15:36 ` Jonathan Corbet
2012-12-27 20:07 ` Mauro Carvalho Chehab
2013-01-01 14:56 ` Guennadi Liakhovetski
2012-12-15 9:57 ` [PATCH V3 02/15] [media] marvell-ccic: add MIPI support for marvell-ccic driver Albert Wang
2012-12-16 15:54 ` Jonathan Corbet
2012-12-16 21:45 ` Albert Wang
2013-01-01 15:28 ` Guennadi Liakhovetski
2013-01-01 19:31 ` Albert Wang
2012-12-15 9:57 ` [PATCH V3 03/15] [media] marvell-ccic: add clock tree " Albert Wang
2012-12-16 16:03 ` Jonathan Corbet
2012-12-16 21:51 ` Albert Wang
2013-01-03 17:37 ` Nicolas THERY
2013-01-03 19:27 ` Albert Wang
2013-01-01 16:05 ` Guennadi Liakhovetski
2013-01-01 19:36 ` Albert Wang
2013-01-04 5:42 ` Libin Yang
2013-01-04 10:25 ` Guennadi Liakhovetski
2013-01-05 3:12 ` Libin Yang
2012-12-15 9:57 ` [PATCH V3 04/15] [media] marvell-ccic: reset ccic phy when stop streaming for stability Albert Wang
2012-12-16 16:04 ` Jonathan Corbet
2013-01-01 16:13 ` Guennadi Liakhovetski
2012-12-15 9:57 ` [PATCH V3 05/15] [media] marvell-ccic: refine mcam_set_contig_buffer function Albert Wang
2012-12-16 16:06 ` Jonathan Corbet
2012-12-16 21:54 ` Albert Wang
2012-12-15 9:57 ` [PATCH V3 06/15] [media] marvell-ccic: add new formats support for marvell-ccic driver Albert Wang
2012-12-16 16:16 ` Jonathan Corbet
2012-12-16 21:58 ` Albert Wang
2013-01-01 16:56 ` Guennadi Liakhovetski
2013-01-01 19:42 ` Albert Wang
2013-01-01 20:03 ` Guennadi Liakhovetski
2013-01-04 9:32 ` Libin Yang
2013-01-10 7:53 ` Libin Yang
2012-12-15 9:57 ` [PATCH V3 07/15] [media] marvell-ccic: add SOF / EOF pair check " Albert Wang
2012-12-16 16:19 ` Jonathan Corbet
2012-12-16 22:00 ` Albert Wang
2013-01-02 7:48 ` Guennadi Liakhovetski
2012-12-15 9:57 ` [PATCH V3 08/15] [media] marvell-ccic: switch to resource managed allocation and request Albert Wang
2012-12-16 16:20 ` Jonathan Corbet
2013-01-02 8:00 ` Guennadi Liakhovetski
2012-12-15 9:57 ` [PATCH V3 09/15] [media] marvell-ccic: add get_mcam function for marvell-ccic driver Albert Wang
2012-12-16 16:24 ` Jonathan Corbet
2012-12-16 22:04 ` Albert Wang
2013-01-02 8:16 ` Guennadi Liakhovetski
2012-12-15 9:57 ` [PATCH V3 10/15] [media] marvell-ccic: split mcam-core into 2 parts for soc_camera support Albert Wang
2012-12-16 16:37 ` Jonathan Corbet
2012-12-16 22:12 ` Albert Wang
2012-12-17 15:28 ` Jonathan Corbet
2012-12-18 3:04 ` Albert Wang
2012-12-18 19:15 ` Jonathan Corbet
2012-12-18 20:48 ` Albert Wang
2013-01-31 8:29 ` Albert Wang
2013-02-05 3:14 ` Jonathan Corbet
2013-02-06 3:21 ` Albert Wang
2012-12-15 9:58 ` [PATCH V3 11/15] [media] marvell-ccic: add soc_camera support in mcam core Albert Wang
2012-12-15 9:58 ` [PATCH V3 12/15] [media] marvell-ccic: add soc_camera support in mmp driver Albert Wang
2012-12-16 16:46 ` Jonathan Corbet
2012-12-16 22:19 ` Albert Wang
2012-12-15 9:58 ` Albert Wang [this message]
2012-12-16 16:49 ` [PATCH V3 13/15] [media] marvell-ccic: add dma burst mode support in marvell-ccic driver Jonathan Corbet
2012-12-16 22:22 ` Albert Wang
2012-12-15 9:58 ` [PATCH V3 14/15] [media] marvell-ccic: use unsigned int type replace int type Albert Wang
2012-12-16 16:50 ` Jonathan Corbet
2012-12-15 9:58 ` [PATCH V3 15/15] [media] marvell-ccic: add 3 frame buffers support in DMA_CONTIG mode Albert Wang
2012-12-16 16:56 ` Jonathan Corbet
2012-12-16 22:34 ` Albert Wang
2012-12-16 22:55 ` Jonathan Corbet
2012-12-17 5:06 ` Albert Wang
2012-12-16 16:57 ` [PATCH V3 00/15] [media] marvell-ccic: add soc camera support on marvell-ccic Jonathan Corbet
2012-12-16 22:34 ` Albert Wang
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=1355565484-15791-14-git-send-email-twang13@marvell.com \
--to=twang13@marvell.com \
--cc=corbet@lwn.net \
--cc=g.liakhovetski@gmx.de \
--cc=lbyang@marvell.com \
--cc=linux-media@vger.kernel.org \
/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;
as well as URLs for NNTP newsgroup(s).