cache.c 594 B

1234567891011121314151617181920212223242526
  1. /*
  2. * U-boot - cache.c
  3. *
  4. * Copyright (c) 2005-2008 Analog Devices Inc.
  5. *
  6. * (C) Copyright 2000-2004
  7. * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
  8. *
  9. * Licensed under the GPL-2 or later.
  10. */
  11. #include <common.h>
  12. #include <asm/blackfin.h>
  13. void flush_cache(unsigned long addr, unsigned long size)
  14. {
  15. /* no need to flush stuff in on chip memory (L1/L2/etc...) */
  16. if (addr >= 0xE0000000)
  17. return;
  18. if (icache_status())
  19. blackfin_icache_flush_range((void *)addr, (void *)(addr + size));
  20. if (dcache_status())
  21. blackfin_dcache_flush_range((void *)addr, (void *)(addr + size));
  22. }