Lines Matching refs:pattern

107 		       u32 *pattern, u32 default_pattern)
113 *pattern = default_pattern;
121 *pattern = value;
123 *pattern = default_pattern;
189 * A non-zero result is the first pattern that failed.
194 u32 pattern;
198 for (pattern = 1; pattern != 0; pattern <<= 1) {
199 /* Write the test pattern. */
200 writel(pattern, address);
205 (u32)address, read_value, pattern);
207 if (read_value != pattern)
208 return pattern;
246 u32 pattern = 0xAAAAAAAA;
249 /* Write the default pattern at each of the power-of-two offsets. */
251 writel(pattern, &address[offset]);
260 (u32)&address[offset], read_value, pattern);
261 if (read_value != pattern)
265 writel(pattern, &address[test_offset]);
270 if (readl(&address[0]) != pattern)
274 if (readl(&address[offset]) != pattern &&
278 writel(pattern, &address[test_offset]);
310 u32 pattern;
313 puts("Fill with pattern");
314 /* Fill memory with a known pattern. */
315 for (pattern = 1, offset = 0; offset < nb_words; pattern++, offset++) {
316 writel(pattern, &address[offset]);
321 puts("\nCheck and invert pattern");
323 for (pattern = 1, offset = 0; offset < nb_words; pattern++, offset++) {
324 if (readl(&address[offset]) != pattern)
327 antipattern = ~pattern;
333 puts("\nCheck inverted pattern");
334 /* Check each location for the inverted pattern and zero it. */
335 for (pattern = 1, offset = 0; offset < nb_words; pattern++, offset++) {
336 antipattern = ~pattern;
537 /* write pattern. */
571 sprintf(string, "error for pattern 0x%x @0x%x",
649 * for pattern and inversed pattern
652 void do_noise(u32 addr, u32 pattern, u32 *result)
656 __asm__("mov r1, %0" : : "r" (pattern));
690 u32 addr, pattern;
695 if (get_pattern(string, argc, argv, 0, &pattern, 0xFFFFFFFF))
700 printf("running noise for 0x%x at 0x%x\n", pattern, addr);
702 do_noise(addr, pattern, result);
705 if (check_addr((u32)&result[i++], pattern))
707 if (check_addr((u32)&result[i++], ~pattern))
720 * for pattern and inversed pattern
723 void do_noise_burst(u32 addr, u32 pattern, size_t bufsize)
727 __asm__("mov r1, %0" : : "r" (pattern));
754 u32 addr, offset, pattern;
761 if (get_pattern(string, argc, argv, 1, &pattern, 0xFFFFFFFF))
767 pattern, addr, bufsize);
775 do_noise_burst(offset, pattern, size);
785 if (check_addr(addr + i, pattern))
788 if (check_addr(addr + i, ~pattern))
803 * Function: pattern test
805 * Description: optimized loop for read/write pattern (array of 8 u32)
809 static enum test_result test_loop(const u32 *pattern, u32 *address,
823 __asm__("mov r0, %0" : : "r" (pattern));
848 if (check_addr((u32)address, pattern[j])) {
950 printf("running test pattern at 0x%08x length 0x%x width = %d\n",
957 printf("test data pattern %s:", patterns_comments[i]);
971 * Function: pattern test with size
973 * Description: loop for write pattern
977 static enum test_result test_loop_size(const u32 *pattern, u32 size,
987 *p = pattern[j];
998 if (check_addr((u32)p, pattern[j])) {
1070 printf("pattern = %08x", value);
1108 printf("pattern = %08x", value);
1146 printf("pattern = %08x", value);
1192 printf("pattern = %08x", bitspread[0]);
1234 printf("pattern = %08x", bitflip[0]);
1253 * Description: continuous read the same pattern at the same address
1276 printf("running at 0x%08x with pattern=0x%08x\n",
1303 * Description: continuous write the same pattern at the same address
1326 printf("running at 0x%08x with pattern 0x%08x\n",
1388 !strncmp("[pattern]", &test[i].usage[j],
1457 {test_noise, "Noise", "[pattern] [addr]",
1461 {test_noise_burst, "NoiseBurst", "[size] [pattern] [addr]",
1474 "test incremental pattern",
1478 "test checker pattern",
1482 "test Bit Spread pattern",
1486 "test Bit Flip pattern",
1490 "test Walking Ones pattern",
1494 "test Walking Zeroes pattern",
1498 {test_read, "infinite read", "[addr] [pattern]",
1500 {test_write, "infinite write", "[addr] [pattern]",