File tree Expand file tree Collapse file tree
drivers/media/platform/apple/isp Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -213,6 +213,7 @@ static int isp_reset_coproc(struct apple_isp *isp)
213213{
214214 int retries ;
215215 u32 status ;
216+ u32 val ;
216217
217218 isp_coproc_write32 (isp , ISP_COPROC_EDPRCR , 0x2 );
218219
@@ -228,6 +229,18 @@ static int isp_reset_coproc(struct apple_isp *isp)
228229 isp_coproc_write32 (isp , ISP_COPROC_IRQ_MASK_4 , 0xffffffff );
229230 isp_coproc_write32 (isp , ISP_COPROC_IRQ_MASK_5 , 0xffffffff );
230231
232+ for (retries = 0 ; retries < 128 ; retries ++ ) {
233+ val = isp_coproc_read32 (isp , 0x818 );
234+ if (val == 0 )
235+ break ;
236+ }
237+
238+ for (retries = 0 ; retries < 128 ; retries ++ ) {
239+ val = isp_coproc_read32 (isp , 0x81c );
240+ if (val == 0 )
241+ break ;
242+ }
243+
231244 for (retries = 0 ; retries < ISP_FIRMWARE_MAX_TRIES ; retries ++ ) {
232245 status = isp_coproc_read32 (isp , ISP_COPROC_STATUS );
233246 if (status & ISP_COPROC_IN_WFI ) {
You can’t perform that action at this time.
0 commit comments