Skip to contentSkip to conversation

Exynos5 SoC FIMC-IS imaging subsystem driver

GIT PULL Sylwester Nawrocki 6 participants 8 messages Oct 18, 2013 – Nov 5, 2013 2 messages not in the archive Media (V4L/DVB)

lore
Share & tools
lore
#0 lore raw

Hi Mauro,

This change set is V4L2 driver for the Exynos5 series camera subsystem. There is also included a minimal driver for the s5k4e5 image sensor.

The FIMC-IS driver is pretty huge, even though there are some hardware similarities between FIMC-IS found on Exynos5 and Exynos4 SoCs, the firmwares are significantly different, which makes writing a common driver not quite sensible.
Anyway some of the exynos4 subdevs are already reused and some further code consolidation will likely be possible.

The following changes since commit 8ca5d2d8e58df7235b77ed435e63c484e123fede:

[media] uvcvideo: Fix data type for pan/tilt control (2013-10-17 06:55:29 -0300)

are available in the git repository at:

git://linuxtv.org/snawrocki/samsung.git for-v3.13-2

for you to fetch changes up to 6eb89d71b27e6731755ab5722f3cdc0f6e8273f2:

V4L: Add s5k4e5 sensor driver (2013-10-18 21:36:42 +0200)

----------------------------------------------------------------
Arun Kumar K (12):
exynos5-fimc-is: Add Exynos5 FIMC-IS device tree bindings documentation
exynos5-fimc-is: Add driver core files
exynos5-fimc-is: Add common driver header files
exynos5-fimc-is: Add register definition and context header
exynos5-fimc-is: Add isp subdev
exynos5-fimc-is: Add scaler subdev
exynos5-fimc-is: Add sensor interface
exynos5-fimc-is: Add the hardware pipeline control
exynos5-fimc-is: Add the hardware interface module
exynos5-is: Add Kconfig and Makefile
V4L: Add DT binding doc for s5k4e5 image sensor
V4L: Add s5k4e5 sensor driver

Shaik Ameer Basha (1):
exynos5-is: Add media device driver for exynos5 SoCs camera subsystem

 .../devicetree/bindings/media/exynos5-fimc-is.txt  |   84 +
 .../bindings/media/exynos5250-camera.txt           |  126 ++
 .../devicetree/bindings/media/samsung-s5k4e5.txt   |   45 +
 drivers/media/i2c/Kconfig                          |    8 +
 drivers/media/i2c/Makefile                         |    1 +
 drivers/media/i2c/s5k4e5.c                         |  344 ++++
 drivers/media/platform/Kconfig                     |    1 +
 drivers/media/platform/Makefile                    |    1 +
 drivers/media/platform/exynos5-is/Kconfig          |   20 +
 drivers/media/platform/exynos5-is/Makefile         |    7 +
 drivers/media/platform/exynos5-is/exynos5-mdev.c   | 1210 ++++++++++++++
 drivers/media/platform/exynos5-is/exynos5-mdev.h   |  126 ++
 drivers/media/platform/exynos5-is/fimc-is-cmd.h    |  187 +++
 drivers/media/platform/exynos5-is/fimc-is-core.c   |  410 +++++
 drivers/media/platform/exynos5-is/fimc-is-core.h   |  132 ++
 drivers/media/platform/exynos5-is/fimc-is-err.h    |  257 +++
 .../media/platform/exynos5-is/fimc-is-interface.c  |  810 ++++++++++
 .../media/platform/exynos5-is/fimc-is-interface.h  |  124 ++
 drivers/media/platform/exynos5-is/fimc-is-isp.c    |  534 ++++++
 drivers/media/platform/exynos5-is/fimc-is-isp.h    |   90 ++
 .../media/platform/exynos5-is/fimc-is-metadata.h   |  767 +++++++++
 drivers/media/platform/exynos5-is/fimc-is-param.h  | 1159 +++++++++++++
 .../media/platform/exynos5-is/fimc-is-pipeline.c   | 1699 ++++++++++++++++++++
 .../media/platform/exynos5-is/fimc-is-pipeline.h   |  129 ++
 drivers/media/platform/exynos5-is/fimc-is-regs.h   |  105 ++
 drivers/media/platform/exynos5-is/fimc-is-scaler.c |  476 ++++++
 drivers/media/platform/exynos5-is/fimc-is-scaler.h |  106 ++
 drivers/media/platform/exynos5-is/fimc-is-sensor.c |   45 +
 drivers/media/platform/exynos5-is/fimc-is-sensor.h |   65 +
 drivers/media/platform/exynos5-is/fimc-is.h        |  160 ++
 30 files changed, 9228 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/media/exynos5-fimc-is.txt
 create mode 100644 Documentation/devicetree/bindings/media/exynos5250-camera.txt
 create mode 100644 Documentation/devicetree/bindings/media/samsung-s5k4e5.txt
 create mode 100644 drivers/media/i2c/s5k4e5.c
 create mode 100644 drivers/media/platform/exynos5-is/Kconfig
 create mode 100644 drivers/media/platform/exynos5-is/Makefile
 create mode 100644 drivers/media/platform/exynos5-is/exynos5-mdev.c
 create mode 100644 drivers/media/platform/exynos5-is/exynos5-mdev.h
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-cmd.h
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-core.c
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-core.h
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-err.h
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-interface.c
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-interface.h
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-isp.c
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-isp.h
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-metadata.h
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-param.h
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-pipeline.c
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-pipeline.h
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-regs.h
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-scaler.c
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-scaler.h
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-sensor.c
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-sensor.h
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is.h

--
Thanks,
Sylwester

#1 lore raw

Hi Sylwester,

Em Fri, 18 Oct 2013 22:13:50 +0200
Sylwester Nawrocki <[email protected]> escreveu:

Quoted 20 lines

Hi Mauro,

This change set is V4L2 driver for the Exynos5 series camera subsystem. There is also included a minimal driver for the s5k4e5 image sensor.

The FIMC-IS driver is pretty huge, even though there are some hardware similarities between FIMC-IS found on Exynos5 and Exynos4 SoCs, the firmwares are significantly different, which makes writing a common driver not quite sensible.
Anyway some of the exynos4 subdevs are already reused and some further code consolidation will likely be possible.

The following changes since commit 8ca5d2d8e58df7235b77ed435e63c484e123fede:

[media] uvcvideo: Fix data type for pan/tilt control (2013-10-17 06:55:29 -0300)

are available in the git repository at:

git://linuxtv.org/snawrocki/samsung.git for-v3.13-2

Quoted 7 lines

for you to fetch changes up to 6eb89d71b27e6731755ab5722f3cdc0f6e8273f2:

V4L: Add s5k4e5 sensor driver (2013-10-18 21:36:42 +0200)

----------------------------------------------------------------
Arun Kumar K (12):
exynos5-fimc-is: Add Exynos5 FIMC-IS device tree bindings documentation

As agreed during KS, the subsystem maintainers should wait for a documentation review on DT by the DT maintainers, at least for a while.

So, I'd like to see either their reviews on this patch:

	https://patchwork.linuxtv.org/patch/20439/

Or their ack for us to apply it.

Quoted 10 lines

exynos5-fimc-is: Add driver core files
exynos5-fimc-is: Add common driver header files
exynos5-fimc-is: Add register definition and context header
exynos5-fimc-is: Add isp subdev
exynos5-fimc-is: Add scaler subdev
exynos5-fimc-is: Add sensor interface
exynos5-fimc-is: Add the hardware pipeline control
exynos5-fimc-is: Add the hardware interface module
exynos5-is: Add Kconfig and Makefile
V4L: Add DT binding doc for s5k4e5 image sensor

Same applies to this patch:

	https://patchwork.linuxtv.org/patch/20448/

Grant,

I'd appreciate if you could fast track those, as there are lots of code depending on them.

Regards,
Mauro

Quoted 70 lines

V4L: Add s5k4e5 sensor driver

Shaik Ameer Basha (1):
exynos5-is: Add media device driver for exynos5 SoCs camera subsystem

 .../devicetree/bindings/media/exynos5-fimc-is.txt  |   84 +
 .../bindings/media/exynos5250-camera.txt           |  126 ++
 .../devicetree/bindings/media/samsung-s5k4e5.txt   |   45 +
 drivers/media/i2c/Kconfig                          |    8 +
 drivers/media/i2c/Makefile                         |    1 +
 drivers/media/i2c/s5k4e5.c                         |  344 ++++
 drivers/media/platform/Kconfig                     |    1 +
 drivers/media/platform/Makefile                    |    1 +
 drivers/media/platform/exynos5-is/Kconfig          |   20 +
 drivers/media/platform/exynos5-is/Makefile         |    7 +
 drivers/media/platform/exynos5-is/exynos5-mdev.c   | 1210 ++++++++++++++
 drivers/media/platform/exynos5-is/exynos5-mdev.h   |  126 ++
 drivers/media/platform/exynos5-is/fimc-is-cmd.h    |  187 +++
 drivers/media/platform/exynos5-is/fimc-is-core.c   |  410 +++++
 drivers/media/platform/exynos5-is/fimc-is-core.h   |  132 ++
 drivers/media/platform/exynos5-is/fimc-is-err.h    |  257 +++
 .../media/platform/exynos5-is/fimc-is-interface.c  |  810 ++++++++++
 .../media/platform/exynos5-is/fimc-is-interface.h  |  124 ++
 drivers/media/platform/exynos5-is/fimc-is-isp.c    |  534 ++++++
 drivers/media/platform/exynos5-is/fimc-is-isp.h    |   90 ++
 .../media/platform/exynos5-is/fimc-is-metadata.h   |  767 +++++++++
 drivers/media/platform/exynos5-is/fimc-is-param.h  | 1159 +++++++++++++
 .../media/platform/exynos5-is/fimc-is-pipeline.c   | 1699 ++++++++++++++++++++
 .../media/platform/exynos5-is/fimc-is-pipeline.h   |  129 ++
 drivers/media/platform/exynos5-is/fimc-is-regs.h   |  105 ++
 drivers/media/platform/exynos5-is/fimc-is-scaler.c |  476 ++++++
 drivers/media/platform/exynos5-is/fimc-is-scaler.h |  106 ++
 drivers/media/platform/exynos5-is/fimc-is-sensor.c |   45 +
 drivers/media/platform/exynos5-is/fimc-is-sensor.h |   65 +
 drivers/media/platform/exynos5-is/fimc-is.h        |  160 ++
 30 files changed, 9228 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/media/exynos5-fimc-is.txt
 create mode 100644 Documentation/devicetree/bindings/media/exynos5250-camera.txt
 create mode 100644 Documentation/devicetree/bindings/media/samsung-s5k4e5.txt
 create mode 100644 drivers/media/i2c/s5k4e5.c
 create mode 100644 drivers/media/platform/exynos5-is/Kconfig
 create mode 100644 drivers/media/platform/exynos5-is/Makefile
 create mode 100644 drivers/media/platform/exynos5-is/exynos5-mdev.c
 create mode 100644 drivers/media/platform/exynos5-is/exynos5-mdev.h
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-cmd.h
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-core.c
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-core.h
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-err.h
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-interface.c
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-interface.h
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-isp.c
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-isp.h
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-metadata.h
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-param.h
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-pipeline.c
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-pipeline.h
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-regs.h
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-scaler.c
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-scaler.h
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-sensor.c
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is-sensor.h
 create mode 100644 drivers/media/platform/exynos5-is/fimc-is.h

--
Thanks,
Sylwester
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html

Signature · 2 lines
Cheers,
Mauro
#2 lore raw

Hi Mauro,

Quoted 16 lines · Mauro Carvalho Chehab
Quoted 15 lines

The following changes since commit 8ca5d2d8e58df7235b77ed435e63c484e123fede:

Quoted 14 lines
    [media] uvcvideo: Fix data type for pan/tilt control (2013-10-17 06:55:29 -0300)

are available in the git repository at:

    git://linuxtv.org/snawrocki/samsung.git for-v3.13-2

for you to fetch changes up to 6eb89d71b27e6731755ab5722f3cdc0f6e8273f2:

    V4L: Add s5k4e5 sensor driver (2013-10-18 21:36:42 +0200)

----------------------------------------------------------------
Arun Kumar K (12):
exynos5-fimc-is: Add Exynos5 FIMC-IS device tree bindings documentation

Quoted 7 lines

As agreed during KS, the subsystem maintainers should wait for a documentation review on DT by the DT maintainers, at least for a while.

So, I'd like to see either their reviews on this patch:

	https://patchwork.linuxtv.org/patch/20439/

Or their ack for us to apply it.

I agree with you on that. Just please note the first version of this patch has been posted *5 months* ago https://patchwork.linuxtv.org/patch/18684

Stephen has reviewed subsequent version about 3 months ago:
https://patchwork.linuxtv.org/patch/19521

Then we got no more comments from DT maintainers, I have reviewed this patch multiple times on the mailing lists:
https://patchwork.linuxtv.org/patch/19715
https://patchwork.linuxtv.org/patch/19749

And explicitly asked for an Ack:
https://patchwork.linuxtv.org/patch/19832

Then those 2 versions passed silently:
https://patchwork.linuxtv.org/patch/20055
https://patchwork.linuxtv.org/patch/20225

And...huh...we got another review, I didn't notice it until now:
https://patchwork.linuxtv.org/patch/20439 Thanks Mark.

Arun, care to address those review comments and send us an updated binding documentation patch ?

Hence I think we have waited for a while. ;)

Quoted 11 lines
Quoted 10 lines
Quoted 10 lines

exynos5-fimc-is: Add driver core files
exynos5-fimc-is: Add common driver header files
exynos5-fimc-is: Add register definition and context header
exynos5-fimc-is: Add isp subdev
exynos5-fimc-is: Add scaler subdev
exynos5-fimc-is: Add sensor interface
exynos5-fimc-is: Add the hardware pipeline control
exynos5-fimc-is: Add the hardware interface module
exynos5-is: Add Kconfig and Makefile
V4L: Add DT binding doc for s5k4e5 image sensor

Quoted 2 lines

Same applies to this patch:

	https://patchwork.linuxtv.org/patch/20448/

This one also have been on the mailing list for quite some time and it uses already standard bindings, so I assumed it is OK to merge it.

https://patchwork.linuxtv.org/project/linux-media/list/?state=*&q=s5k4e5

But if there must be an Ack then we shall wait, it will probably won't make a big difference now, if this patch is postponed by 3 more months.

--
Thanks,
Sylwester

A message that is not in the archive (sent off-list or not yet received): [email protected]

#4 lore raw

Em Tue, 29 Oct 2013 01:06:30 +0100
Sylwester Nawrocki <[email protected]> escreveu:

Quoted 67 lines

Hi Mauro,

Quoted 16 lines · Mauro Carvalho Chehab
Quoted 15 lines

The following changes since commit 8ca5d2d8e58df7235b77ed435e63c484e123fede:

Quoted 14 lines
    [media] uvcvideo: Fix data type for pan/tilt control (2013-10-17 06:55:29 -0300)

are available in the git repository at:

    git://linuxtv.org/snawrocki/samsung.git for-v3.13-2

for you to fetch changes up to 6eb89d71b27e6731755ab5722f3cdc0f6e8273f2:

    V4L: Add s5k4e5 sensor driver (2013-10-18 21:36:42 +0200)

----------------------------------------------------------------
Arun Kumar K (12):
exynos5-fimc-is: Add Exynos5 FIMC-IS device tree bindings documentation

Quoted 7 lines

As agreed during KS, the subsystem maintainers should wait for a documentation review on DT by the DT maintainers, at least for a while.

So, I'd like to see either their reviews on this patch:

	https://patchwork.linuxtv.org/patch/20439/

Or their ack for us to apply it.

I agree with you on that. Just please note the first version of this patch has been posted *5 months* ago https://patchwork.linuxtv.org/patch/18684

Stephen has reviewed subsequent version about 3 months ago:
https://patchwork.linuxtv.org/patch/19521

Then we got no more comments from DT maintainers, I have reviewed this patch multiple times on the mailing lists:
https://patchwork.linuxtv.org/patch/19715
https://patchwork.linuxtv.org/patch/19749

And explicitly asked for an Ack:
https://patchwork.linuxtv.org/patch/19832

Then those 2 versions passed silently:
https://patchwork.linuxtv.org/patch/20055
https://patchwork.linuxtv.org/patch/20225

And...huh...we got another review, I didn't notice it until now:
https://patchwork.linuxtv.org/patch/20439 Thanks Mark.

Arun, care to address those review comments and send us an updated binding documentation patch ?

Hence I think we have waited for a while. ;)

Quoted 11 lines
Quoted 10 lines
Quoted 10 lines

exynos5-fimc-is: Add driver core files
exynos5-fimc-is: Add common driver header files
exynos5-fimc-is: Add register definition and context header
exynos5-fimc-is: Add isp subdev
exynos5-fimc-is: Add scaler subdev
exynos5-fimc-is: Add sensor interface
exynos5-fimc-is: Add the hardware pipeline control
exynos5-fimc-is: Add the hardware interface module
exynos5-is: Add Kconfig and Makefile
V4L: Add DT binding doc for s5k4e5 image sensor

Quoted 2 lines

Same applies to this patch:

	https://patchwork.linuxtv.org/patch/20448/
Quoted 7 lines

This one also have been on the mailing list for quite some time and it uses already standard bindings, so I assumed it is OK to merge it.

https://patchwork.linuxtv.org/project/linux-media/list/?state=*&q=s5k4e5

But if there must be an Ack then we shall wait, it will probably won't make a big difference now, if this patch is postponed by 3 more months.

Yeah, it seems that we've waited for a long time to get an ack there.

So, let's do this:

Please send a new version with Mark's comments. Also, please split Doc changes from the code changes on the new series. I'll wait for a couple days for DT people to review it. If we don't have any reply, I'll review and apply it for Kernel 3.13, if I don't see anything really weird on it.

Regards,
Mauro
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html

#5 lore raw

On 10/29/2013 01:54 PM, Mauro Carvalho Chehab wrote:
[...]

Quoted 8 lines

Yeah, it seems that we've waited for a long time to get an ack there.

So, let's do this:

Please send a new version with Mark's comments. Also, please split Doc changes from the code changes on the new series. I'll wait for a couple days for DT people to review it. If we don't have any reply, I'll review and apply it for Kernel 3.13, if I don't see anything really weird on it.

Ok, I will make sure all DT binding documentation is in separate patches, actually only one patch needs to be reworked.

Since Mark already reviewed the FIMC-IS and the S5K4E5 image sensor DT binding patches the only one which may need further review is this one:
https://patchwork.linuxtv.org/patch/20237

Arun, could you send us the updated series ? Unfortunately I might not be able to find time to address those comments myself until Friday.

--
Thanks,
Sylwester

#6 lore raw

Hi Sylwester,

Sorry for the delayed response as I was on leave.
I will address the comments from Mark today itself and post those DT binding patches.

Regards
Arun

Quoted 31 lines · Sylwester Nawrocki

On 10/29/2013 01:54 PM, Mauro Carvalho Chehab wrote:
[...]

Quoted 8 lines

Yeah, it seems that we've waited for a long time to get an ack there.

So, let's do this:

Please send a new version with Mark's comments. Also, please split Doc changes from the code changes on the new series. I'll wait for a couple days for DT people to review it. If we don't have any reply, I'll review and apply it for Kernel 3.13, if I don't see anything really weird on it.

Ok, I will make sure all DT binding documentation is in separate patches, actually only one patch needs to be reworked.

Since Mark already reviewed the FIMC-IS and the S5K4E5 image sensor DT binding patches the only one which may need further review is this one:
https://patchwork.linuxtv.org/patch/20237

Arun, could you send us the updated series ? Unfortunately I might not be able to find time to address those comments myself until Friday.

--
Thanks,
Sylwester

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html

A message that is not in the archive (sent off-list or not yet received): [email protected]

#9 lore raw

Hi Sylwester,
Ok will resend the media-dev patch after splitting.

Thanks
Arun

Quoted 9 lines · Sylwester Nawrocki
Quoted 5 lines · Arun Kumar K

Hi Sylwester,

Sorry for the delayed response as I was on leave.
I will address the comments from Mark today itself and post those DT binding patches.

Hi Arun,

Quoted 8 lines

Thanks, could you also split this patch [1] in two so the DT binding documentation and the driver are separate and resend it ?

Regards,
Sylwester

[1]
http://git.linuxtv.org/snawrocki/samsung.git/commit/4e4cf315ebf98f2553f32cbfe21789126c4ec22c

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html