msm: camera: Create v4l2 subdevice for flash modules

All hardware module drivers except flash are created as v4l2
subdevices in msm camera architecture. This creates
inconsistencies in treating hardware drivers at msm media
controller layer. To have transparent framework and call flow,
Create v4l2 sudevice for flash modules and register with
msm mctl. Create drivers for individual flash modules and
trigger flash functionalities based on wrapper functions
initialized in function table. Create i2c driver for flash
modules driven by i2c and platform driver otherwise.

Change-Id: I15cf00f3f443edb2aeb8cf21ba41ce977c3d4c86
Signed-off-by: Sreesudhan Ramakrish Ramkumar <srramku@codeaurora.org>
23 files changed