ARM: OMAP: omap camera builds again; Mistral init and mux
Support the camera connector on the OSK Mistral add-on board: - define muxing for both camera controllers - mux both of them for Mistral - teach ov9640 glue about mistral powerup/powerdown Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Tony Lindgren <tony@atomide.com>
This commit is contained in:
parent
6017e29536
commit
c72d8950ba
3 changed files with 79 additions and 0 deletions
|
@ -342,6 +342,38 @@ static void __init osk_mistral_init(void)
|
|||
* can't talk to the ads or even the i2c eeprom.
|
||||
*/
|
||||
|
||||
/* parallel camera interface */
|
||||
omap_cfg_reg(J15_1610_CAM_LCLK);
|
||||
omap_cfg_reg(J18_1610_CAM_D7);
|
||||
omap_cfg_reg(J19_1610_CAM_D6);
|
||||
omap_cfg_reg(J14_1610_CAM_D5);
|
||||
omap_cfg_reg(K18_1610_CAM_D4);
|
||||
omap_cfg_reg(K19_1610_CAM_D3);
|
||||
omap_cfg_reg(K15_1610_CAM_D2);
|
||||
omap_cfg_reg(K14_1610_CAM_D1);
|
||||
omap_cfg_reg(L19_1610_CAM_D0);
|
||||
omap_cfg_reg(L18_1610_CAM_VS);
|
||||
omap_cfg_reg(L15_1610_CAM_HS);
|
||||
omap_cfg_reg(M19_1610_CAM_RSTZ);
|
||||
omap_cfg_reg(Y15_1610_CAM_OUTCLK);
|
||||
|
||||
/* serial camera interface */
|
||||
omap_cfg_reg(H19_1610_CAM_EXCLK);
|
||||
omap_cfg_reg(W13_1610_CCP_CLKM);
|
||||
omap_cfg_reg(Y12_1610_CCP_CLKP);
|
||||
/* CCP_DATAM CONFLICTS WITH UART1.TX (and serial console) */
|
||||
// omap_cfg_reg(Y14_1610_CCP_DATAM);
|
||||
omap_cfg_reg(W14_1610_CCP_DATAP);
|
||||
|
||||
/* CAM_PWDN */
|
||||
if (omap_request_gpio(11) == 0) {
|
||||
omap_cfg_reg(N20_1610_GPIO11);
|
||||
omap_set_gpio_direction(11, 0 /* out */);
|
||||
omap_set_gpio_dataout(11, 0 /* off */);
|
||||
} else
|
||||
pr_debug("OSK+Mistral: CAM_PWDN is awol\n");
|
||||
|
||||
|
||||
// omap_cfg_reg(P19_1610_GPIO6); // BUSY
|
||||
omap_cfg_reg(P20_1610_GPIO4); // PENIRQ
|
||||
set_irq_type(OMAP_GPIO_IRQ(4), IRQT_FALLING);
|
||||
|
|
|
@ -283,6 +283,30 @@ MUX_CFG("R11_1610_CF_IOIS16", B, 0, 3, 2, 16, 1, 2, 1, 1)
|
|||
MUX_CFG("V10_1610_CF_IREQ", A, 24, 3, 2, 14, 0, 2, 0, 1)
|
||||
MUX_CFG("W10_1610_CF_RESET", A, 18, 3, 2, 12, 1, 2, 1, 1)
|
||||
MUX_CFG("W11_1610_CF_CD1", 10, 15, 3, 3, 8, 1, 3, 1, 1)
|
||||
|
||||
/* parallel camera */
|
||||
MUX_CFG("J15_1610_CAM_LCLK", 4, 24, 0, 0, 18, 1, 0, 0, 0)
|
||||
MUX_CFG("J18_1610_CAM_D7", 4, 27, 0, 0, 19, 1, 0, 0, 0)
|
||||
MUX_CFG("J19_1610_CAM_D6", 5, 0, 0, 0, 20, 1, 0, 0, 0)
|
||||
MUX_CFG("J14_1610_CAM_D5", 5, 3, 0, 0, 21, 1, 0, 0, 0)
|
||||
MUX_CFG("K18_1610_CAM_D4", 5, 6, 0, 0, 22, 1, 0, 0, 0)
|
||||
MUX_CFG("K19_1610_CAM_D3", 5, 9, 0, 0, 23, 1, 0, 0, 0)
|
||||
MUX_CFG("K15_1610_CAM_D2", 5, 12, 0, 0, 24, 1, 0, 0, 0)
|
||||
MUX_CFG("K14_1610_CAM_D1", 5, 15, 0, 0, 25, 1, 0, 0, 0)
|
||||
MUX_CFG("L19_1610_CAM_D0", 5, 18, 0, 0, 26, 1, 0, 0, 0)
|
||||
MUX_CFG("L18_1610_CAM_VS", 5, 21, 0, 0, 27, 1, 0, 0, 0)
|
||||
MUX_CFG("L15_1610_CAM_HS", 5, 24, 0, 0, 28, 1, 0, 0, 0)
|
||||
MUX_CFG("M19_1610_CAM_RSTZ", 5, 27, 0, 0, 29, 0, 0, 0, 0)
|
||||
MUX_CFG("Y15_1610_CAM_OUTCLK", A, 0, 6, 2, 6, 0, 2, 0, 0)
|
||||
|
||||
/* serial camera */
|
||||
MUX_CFG("H19_1610_CAM_EXCLK", 4, 21, 0, 0, 17, 0, 0, 0, 0)
|
||||
/* REVISIT 5912 spec sez CCP_* can't pullup or pulldown ... ? */
|
||||
MUX_CFG("Y12_1610_CCP_CLKP", 8, 18, 6, 1, 24, 1, 1, 0, 0)
|
||||
MUX_CFG("W13_1610_CCP_CLKM", 9, 0, 6, 1, 28, 1, 1, 0, 0)
|
||||
MUX_CFG("W14_1610_CCP_DATAP", 9, 24, 6, 2, 4, 1, 2, 0, 0)
|
||||
MUX_CFG("Y14_1610_CCP_DATAM", 9, 21, 6, 2, 3, 1, 2, 0, 0)
|
||||
|
||||
};
|
||||
#endif /* CONFIG_ARCH_OMAP15XX || CONFIG_ARCH_OMAP16XX */
|
||||
|
||||
|
|
|
@ -406,6 +406,29 @@ enum omap1xxx_index {
|
|||
V10_1610_CF_IREQ,
|
||||
W10_1610_CF_RESET,
|
||||
W11_1610_CF_CD1,
|
||||
|
||||
/* parallel camera */
|
||||
J15_1610_CAM_LCLK,
|
||||
J18_1610_CAM_D7,
|
||||
J19_1610_CAM_D6,
|
||||
J14_1610_CAM_D5,
|
||||
K18_1610_CAM_D4,
|
||||
K19_1610_CAM_D3,
|
||||
K15_1610_CAM_D2,
|
||||
K14_1610_CAM_D1,
|
||||
L19_1610_CAM_D0,
|
||||
L18_1610_CAM_VS,
|
||||
L15_1610_CAM_HS,
|
||||
M19_1610_CAM_RSTZ,
|
||||
Y15_1610_CAM_OUTCLK,
|
||||
|
||||
/* serial camera */
|
||||
H19_1610_CAM_EXCLK,
|
||||
Y12_1610_CCP_CLKP,
|
||||
W13_1610_CCP_CLKM,
|
||||
W14_1610_CCP_DATAP,
|
||||
Y14_1610_CCP_DATAM,
|
||||
|
||||
};
|
||||
|
||||
enum omap24xx_index {
|
||||
|
|
Loading…
Reference in a new issue