Lines Matching +full:data +full:- +full:lines
1 // SPDX-License-Identifier: GPL-2.0+
12 * o The recommended test sequence is to test the data lines: if they are
14 * lines. Finally, test the cells in the memory now that the test
15 * program knows that the address and data lines work properly.
20 * walk through a field of zeros on the address lines and the highest
26 * write will charge the residual capacitance on the data bus so the
43 * Data line test:
44 * ---------------
45 * This tests data lines for shorts and opens by forcing adjacent data
46 * to opposite states. Because the data lines could be routed in an
70 * written to a different address in case the data lines are floating.
77 * ------------------
78 * This function performs a test to verify that all the address lines
85 * To test all address lines, we start with the given base address and
95 * 0000 <- base
96 * 0001 <- test 1
97 * 0010 <- test 2
98 * 0100 <- test 3
99 * 1000 <- test 4
101 * 0010 <- base
102 * 0011 <- test 1
103 * 0000 <- (below the base address, skipped)
104 * 0110 <- test 2
105 * 1010 <- test 3
112 * Memory tests 1-4:
113 * -----------------
124 * 2) bit-flip pattern ((1 << (offset % 32))
130 * RAM the following areas are verified: 0x00000000-0x00000800,
131 * 0x000ff800-0x00100800, 0x001ff800-0x00200800, ..., 0x03fff800-
132 * 0x04000000. If the test is run in slow-test mode, it verifies
151 #warning "Injecting data line errors for testing purposes"
160 * This function performs a double word move from the data at
163 * wide data bus.
180 * The "otherpattern" is written to drive the data bus to values other
181 * than the test pattern. This is for detecting floating bus lines.
212 * Put a different pattern on the data lines: otherwise they in memory_post_dataline()
215 move64(&otherpattern, pmem--); in memory_post_dataline()
229 post_log("Memory (data line) error at %08x, " in memory_post_dataline()
232 ret = -1; in memory_post_dataline()
260 post_log("Memory (address line) error at %08x<->%08x, " in memory_post_addrline()
263 ret = -1; in memory_post_addrline()
292 ret = -1; in memory_post_test1()
322 ret = -1; in memory_post_test2()
352 ret = -1; in memory_post_test3()
382 ret = -1; in memory_post_test4()
403 ret = memory_post_addrline((ulong *)(start+size-8), in memory_post_test_lines()
472 bd_t *bd = gd->bd; in arch_memory_test_prepare()
475 *size = (gd->ram_size >= 256 << 20 ? in arch_memory_test_prepare()
476 256 << 20 : gd->ram_size) - (1 << 20); in arch_memory_test_prepare()
480 *size = (ulong)bd - *vstart; in arch_memory_test_prepare()