File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -564,12 +564,13 @@ static int eq_iir_reset(struct comp_dev *dev)
564564
565565static void eq_iir_cache (struct comp_dev * dev , int cmd )
566566{
567- struct comp_data * cd = comp_get_drvdata ( dev ) ;
567+ struct comp_data * cd ;
568568
569569 switch (cmd ) {
570570 case COMP_CACHE_WRITEBACK_INV :
571571 trace_eq ("wtb" );
572572
573+ cd = comp_get_drvdata (dev );
573574 if (cd -> config )
574575 dcache_writeback_invalidate_region (cd -> config ,
575576 cd -> config -> size );
@@ -586,6 +587,11 @@ static void eq_iir_cache(struct comp_dev *dev, int cmd)
586587 trace_eq ("inv" );
587588
588589 dcache_invalidate_region (dev , sizeof (* dev ));
590+
591+ /* Note: The component data need to be retrieved after
592+ * the dev data has been invalidated.
593+ */
594+ cd = comp_get_drvdata (dev );
589595 dcache_invalidate_region (cd , sizeof (* cd ));
590596
591597 if (cd -> iir_delay )
You can’t perform that action at this time.
0 commit comments