LPCOpen Platform for LPC18XX/43XX microcontrollers: C:/w/lpcopen_docs/software/lpc_core/lpc_board/board_common/mem_tests.h Source File

| LPCOpen Platform for LPC18XX/43XX microcontrollers 18XX43XX LPCOpen Platform for the NXP LPC18XX/43XX family of Microcontrollers

- Main Page
- Modules
- Data Structures
- Files

- File List
- Globals

mem_tests.h
Go to the documentation of this file.
1 /*
2 * @brief Generic memory tests
3 * Various memory tests for testing external memory integrity. Includes
4 * inverse address, walking bit, and pattern tests.
5 *
6 * @note
7 * Copyright(C) NXP Semiconductors, 2012
8 * All rights reserved.
9 *
10 * @par
11 * Software that is described herein is for illustrative purposes only
12 * which provides customers with programming information regarding the
13 * LPC products. This software is supplied "AS IS" without any warranties of
14 * any kind, and NXP Semiconductors and its licensor disclaim any and
15 * all warranties, express or implied, including all implied warranties of
16 * merchantability, fitness for a particular purpose and non-infringement of
17 * intellectual property rights. NXP Semiconductors assumes no responsibility
18 * or liability for the use of the software, conveys no license or rights under any
19 * patent, copyright, mask work right, or any other intellectual property rights in
20 * or to any products. NXP Semiconductors reserves the right to make changes
21 * in the software without notification. NXP Semiconductors also makes no
22 * representation or warranty that such application will be suitable for the
23 * specified use without further testing or modification.
24 *
25 * @par
26 * Permission to use, copy, modify, and distribute this software and its
27 * documentation is hereby granted, under NXP Semiconductors' and its
28 * licensor's relevant copyrights in the software, without fee, provided that it
29 * is used in conjunction with NXP Semiconductors microcontrollers. This
30 * copyright, permission, and disclaimer notice must appear in all copies of
31 * this code.
32 */
33
34 #ifndef __MEM_TESTS_H_
35 #define __MEM_TESTS_H_
36
37 #include "lpc_types.h"
38
47 typedef struct {
48 uint32_t *start_addr;
49 uint32_t bytes;
50 uint32_t *fail_addr;
51 uint32_t is_val;
52 uint32_t ex_val;
53 } MEM_TEST_SETUP_T;
54
62 bool mem_test_walking0(MEM_TEST_SETUP_T *pMemSetup);
63
71 bool mem_test_walking1(MEM_TEST_SETUP_T *pMemSetup);
72
80 bool mem_test_address(MEM_TEST_SETUP_T *pMemSetup);
81
89 bool mem_test_invaddress(MEM_TEST_SETUP_T *pMemSetup);
90
98 bool mem_test_pattern(MEM_TEST_SETUP_T *pMemSetup);
99
110 bool mem_test_pattern_seed(MEM_TEST_SETUP_T *pMemSetup, uint32_t seed, uint32_t incr);
111
116 #endif /* __MEM_TESTS_H_ */