Hi, On Fri, Apr 29, 2016 at 02:05:52AM +0200, Sebastian Reichel wrote: > On Wed, Apr 27, 2016 at 08:12:50PM +0300, Ивайло Димитров wrote: > > > The zImage + initrd works with the steps you described below. > > > > Great! > > I also got it working with the previously referenced branch with the > following built as modules: > > CONFIG_VIDEOBUF2_CORE=m > CONFIG_VIDEOBUF2_MEMOPS=m > CONFIG_VIDEOBUF2_DMA_CONTIG=m > CONFIG_VIDEO_OMAP3=m > CONFIG_VIDEO_BUS_SWITCH=m > CONFIG_VIDEO_SMIAPP_PLL=m > CONFIG_VIDEO_SMIAPP=m > CONFIG_VIDEO_SMIAREGS=m > CONFIG_VIDEO_ET8EK8=m Ok, I found the problem. CONFIG_VIDEO_OMAP3=y does not work, due to missing -EPROBE_DEFER handling for vdds_csib. I added it and just got a test image with builtin CONFIG_VIDEO_OMAP3. The below patch fixes the problem. commit 9d8333b29207de3a9b6ac99db2dfd91e2f8c0216 Author: Sebastian Reichel <sre@xxxxxxxxxx> Date: Fri Apr 29 19:23:02 2016 +0200 omap3isp: handle -EPROBE_DEFER for vdds_csib omap3isp may be initialized before the regulator's driver has been loaded resulting in vdds_csib=NULL. Fix this by handling -EPROBE_DEFER for vdds_csib. Signed-Off-By: Sebastian Reichel <sre@xxxxxxxxxx> diff --git a/drivers/media/platform/omap3isp/ispccp2.c b/drivers/media/platform/omap3isp/ispccp2.c index 833eed411886..2d1463a72d6a 100644 --- a/drivers/media/platform/omap3isp/ispccp2.c +++ b/drivers/media/platform/omap3isp/ispccp2.c @@ -1167,6 +1167,8 @@ int omap3isp_ccp2_init(struct isp_device *isp) if (isp->revision == ISP_REVISION_2_0) { ccp2->vdds_csib = devm_regulator_get(isp->dev, "vdds_csib"); if (IS_ERR(ccp2->vdds_csib)) { + if (PTR_ERR(ccp2->vdds_csib) == -EPROBE_DEFER) + return -EPROBE_DEFER; dev_dbg(isp->dev, "Could not get regulator vdds_csib\n"); ccp2->vdds_csib = NULL; -- Sebastian
Attachment:
signature.asc
Description: PGP signature