diff options
author | Alex White <alex.white@oarcorp.com> | 2021-12-23 17:33:39 -0600 |
---|---|---|
committer | Joel Sherrill <joel@rtems.org> | 2022-02-01 16:58:24 -0600 |
commit | 37543e196813e552fa316cf595f26e1ac612e34a (patch) | |
tree | 3f700b07df48cb9ce23ae607648c227313dc067a /bsps/microblaze/microblaze_fpga/start/microblaze_invalidate_icache.S | |
parent | microblaze: Add support for libbsd. (diff) | |
download | rtems-37543e196813e552fa316cf595f26e1ac612e34a.tar.bz2 |
microblaze: Add support for libbsd networking
This includes fixes and improvements necessary to get libbsd networking
running.
Diffstat (limited to 'bsps/microblaze/microblaze_fpga/start/microblaze_invalidate_icache.S')
-rw-r--r-- | bsps/microblaze/microblaze_fpga/start/microblaze_invalidate_icache.S | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/bsps/microblaze/microblaze_fpga/start/microblaze_invalidate_icache.S b/bsps/microblaze/microblaze_fpga/start/microblaze_invalidate_icache.S new file mode 100644 index 0000000000..d75a800560 --- /dev/null +++ b/bsps/microblaze/microblaze_fpga/start/microblaze_invalidate_icache.S @@ -0,0 +1,28 @@ +/****************************************************************************** +* Copyright (c) 2008 - 2020 Xilinx, Inc. All rights reserved. +* SPDX-License-Identifier: MIT +******************************************************************************/ + +#include <bspopts.h> + + .text + .globl microblaze_invalidate_icache + .ent microblaze_invalidate_icache + .align 2 + +microblaze_invalidate_icache: + addik r5, r0, BSP_MICROBLAZE_FPGA_ICACHE_BASE & (-(4 * BSP_MICROBLAZE_FPGA_ICACHE_LINE_LEN)) /* Align to cache line */ + addik r6, r5, BSP_MICROBLAZE_FPGA_ICACHE_SIZE & (-(4 * BSP_MICROBLAZE_FPGA_ICACHE_LINE_LEN)) /* Compute end */ + +L_start: + wic r5, r0 /* Invalidate the Cache */ + + cmpu r18, r5, r6 /* Are we at the end? */ + blei r18, L_done + + brid L_start /* Branch to the beginning of the loop */ + addik r5, r5, (BSP_MICROBLAZE_FPGA_ICACHE_LINE_LEN * 4) /* Increment the address by 4 (delay slot) */ +L_done: + rtsd r15, 8 /* Return */ + nop + .end microblaze_invalidate_icache
\ No newline at end of file |