Lines Matching refs:test_data

211     const AspeedSMCTestData *test_data = (const AspeedSMCTestData *)data;  in aspeed_smc_test_read_jedec()  local
214 spi_conf(test_data, 1 << (CONF_ENABLE_W0 + test_data->cs)); in aspeed_smc_test_read_jedec()
216 spi_ctrl_start_user(test_data); in aspeed_smc_test_read_jedec()
217 flash_writeb(test_data, 0, JEDEC_READ); in aspeed_smc_test_read_jedec()
218 jedec |= flash_readb(test_data, 0) << 16; in aspeed_smc_test_read_jedec()
219 jedec |= flash_readb(test_data, 0) << 8; in aspeed_smc_test_read_jedec()
220 jedec |= flash_readb(test_data, 0); in aspeed_smc_test_read_jedec()
221 spi_ctrl_stop_user(test_data); in aspeed_smc_test_read_jedec()
223 flash_reset(test_data); in aspeed_smc_test_read_jedec()
225 g_assert_cmphex(jedec, ==, test_data->jedec_id); in aspeed_smc_test_read_jedec()
230 const AspeedSMCTestData *test_data = (const AspeedSMCTestData *)data; in aspeed_smc_test_erase_sector() local
231 uint32_t some_page_addr = test_data->page_addr; in aspeed_smc_test_erase_sector()
235 spi_conf(test_data, 1 << (CONF_ENABLE_W0 + test_data->cs)); in aspeed_smc_test_erase_sector()
241 read_page(test_data, some_page_addr - FLASH_PAGE_SIZE, page); in aspeed_smc_test_erase_sector()
246 spi_ctrl_start_user(test_data); in aspeed_smc_test_erase_sector()
247 flash_writeb(test_data, 0, EN_4BYTE_ADDR); in aspeed_smc_test_erase_sector()
248 flash_writeb(test_data, 0, WREN); in aspeed_smc_test_erase_sector()
249 flash_writeb(test_data, 0, PP); in aspeed_smc_test_erase_sector()
250 flash_writel(test_data, 0, make_be32(some_page_addr)); in aspeed_smc_test_erase_sector()
254 flash_writel(test_data, 0, make_be32(some_page_addr + i * 4)); in aspeed_smc_test_erase_sector()
256 spi_ctrl_stop_user(test_data); in aspeed_smc_test_erase_sector()
259 read_page(test_data, some_page_addr, page); in aspeed_smc_test_erase_sector()
264 spi_ctrl_start_user(test_data); in aspeed_smc_test_erase_sector()
265 flash_writeb(test_data, 0, WREN); in aspeed_smc_test_erase_sector()
266 flash_writeb(test_data, 0, EN_4BYTE_ADDR); in aspeed_smc_test_erase_sector()
267 flash_writeb(test_data, 0, ERASE_SECTOR); in aspeed_smc_test_erase_sector()
268 flash_writel(test_data, 0, make_be32(some_page_addr)); in aspeed_smc_test_erase_sector()
269 spi_ctrl_stop_user(test_data); in aspeed_smc_test_erase_sector()
272 read_page(test_data, some_page_addr, page); in aspeed_smc_test_erase_sector()
277 flash_reset(test_data); in aspeed_smc_test_erase_sector()
282 const AspeedSMCTestData *test_data = (const AspeedSMCTestData *)data; in aspeed_smc_test_erase_all() local
283 uint32_t some_page_addr = test_data->page_addr; in aspeed_smc_test_erase_all()
287 spi_conf(test_data, 1 << (CONF_ENABLE_W0 + test_data->cs)); in aspeed_smc_test_erase_all()
293 read_page(test_data, some_page_addr - FLASH_PAGE_SIZE, page); in aspeed_smc_test_erase_all()
298 spi_ctrl_start_user(test_data); in aspeed_smc_test_erase_all()
299 flash_writeb(test_data, 0, EN_4BYTE_ADDR); in aspeed_smc_test_erase_all()
300 flash_writeb(test_data, 0, WREN); in aspeed_smc_test_erase_all()
301 flash_writeb(test_data, 0, PP); in aspeed_smc_test_erase_all()
302 flash_writel(test_data, 0, make_be32(some_page_addr)); in aspeed_smc_test_erase_all()
306 flash_writel(test_data, 0, make_be32(some_page_addr + i * 4)); in aspeed_smc_test_erase_all()
308 spi_ctrl_stop_user(test_data); in aspeed_smc_test_erase_all()
311 read_page(test_data, some_page_addr, page); in aspeed_smc_test_erase_all()
316 spi_ctrl_start_user(test_data); in aspeed_smc_test_erase_all()
317 flash_writeb(test_data, 0, WREN); in aspeed_smc_test_erase_all()
318 flash_writeb(test_data, 0, BULK_ERASE); in aspeed_smc_test_erase_all()
319 spi_ctrl_stop_user(test_data); in aspeed_smc_test_erase_all()
322 read_page(test_data, some_page_addr, page); in aspeed_smc_test_erase_all()
327 flash_reset(test_data); in aspeed_smc_test_erase_all()
332 const AspeedSMCTestData *test_data = (const AspeedSMCTestData *)data; in aspeed_smc_test_write_page() local
333 uint32_t my_page_addr = test_data->page_addr; in aspeed_smc_test_write_page()
338 spi_conf(test_data, 1 << (CONF_ENABLE_W0 + test_data->cs)); in aspeed_smc_test_write_page()
340 spi_ctrl_start_user(test_data); in aspeed_smc_test_write_page()
341 flash_writeb(test_data, 0, EN_4BYTE_ADDR); in aspeed_smc_test_write_page()
342 flash_writeb(test_data, 0, WREN); in aspeed_smc_test_write_page()
343 flash_writeb(test_data, 0, PP); in aspeed_smc_test_write_page()
344 flash_writel(test_data, 0, make_be32(my_page_addr)); in aspeed_smc_test_write_page()
348 flash_writel(test_data, 0, make_be32(my_page_addr + i * 4)); in aspeed_smc_test_write_page()
350 spi_ctrl_stop_user(test_data); in aspeed_smc_test_write_page()
353 read_page(test_data, my_page_addr, page); in aspeed_smc_test_write_page()
359 read_page(test_data, some_page_addr, page); in aspeed_smc_test_write_page()
364 flash_reset(test_data); in aspeed_smc_test_write_page()
369 const AspeedSMCTestData *test_data = (const AspeedSMCTestData *)data; in aspeed_smc_test_read_page_mem() local
370 uint32_t my_page_addr = test_data->page_addr; in aspeed_smc_test_read_page_mem()
378 spi_ce_ctrl(test_data, 1 << (CRTL_EXTENDED0 + test_data->cs)); in aspeed_smc_test_read_page_mem()
381 spi_conf(test_data, 1 << (CONF_ENABLE_W0 + test_data->cs)); in aspeed_smc_test_read_page_mem()
382 spi_ctrl_start_user(test_data); in aspeed_smc_test_read_page_mem()
383 flash_writeb(test_data, 0, EN_4BYTE_ADDR); in aspeed_smc_test_read_page_mem()
384 flash_writeb(test_data, 0, WREN); in aspeed_smc_test_read_page_mem()
385 flash_writeb(test_data, 0, PP); in aspeed_smc_test_read_page_mem()
386 flash_writel(test_data, 0, make_be32(my_page_addr)); in aspeed_smc_test_read_page_mem()
390 flash_writel(test_data, 0, make_be32(my_page_addr + i * 4)); in aspeed_smc_test_read_page_mem()
392 spi_ctrl_stop_user(test_data); in aspeed_smc_test_read_page_mem()
393 spi_conf_remove(test_data, 1 << (CONF_ENABLE_W0 + test_data->cs)); in aspeed_smc_test_read_page_mem()
396 read_page_mem(test_data, my_page_addr, page); in aspeed_smc_test_read_page_mem()
402 read_page_mem(test_data, some_page_addr, page); in aspeed_smc_test_read_page_mem()
407 flash_reset(test_data); in aspeed_smc_test_read_page_mem()
412 const AspeedSMCTestData *test_data = (const AspeedSMCTestData *)data; in aspeed_smc_test_write_page_mem() local
413 uint32_t my_page_addr = test_data->page_addr; in aspeed_smc_test_write_page_mem()
420 spi_ce_ctrl(test_data, 1 << (CRTL_EXTENDED0 + test_data->cs)); in aspeed_smc_test_write_page_mem()
423 spi_conf(test_data, 1 << (CONF_ENABLE_W0 + test_data->cs)); in aspeed_smc_test_write_page_mem()
424 spi_ctrl_start_user(test_data); in aspeed_smc_test_write_page_mem()
425 flash_writeb(test_data, 0, EN_4BYTE_ADDR); in aspeed_smc_test_write_page_mem()
426 flash_writeb(test_data, 0, WREN); in aspeed_smc_test_write_page_mem()
427 spi_ctrl_stop_user(test_data); in aspeed_smc_test_write_page_mem()
430 spi_ctrl_setmode(test_data, CTRL_WRITEMODE, PP); in aspeed_smc_test_write_page_mem()
433 flash_writel(test_data, my_page_addr + i * 4, in aspeed_smc_test_write_page_mem()
438 read_page_mem(test_data, my_page_addr, page); in aspeed_smc_test_write_page_mem()
443 flash_reset(test_data); in aspeed_smc_test_write_page_mem()
448 const AspeedSMCTestData *test_data = (const AspeedSMCTestData *)data; in aspeed_smc_test_read_status_reg() local
451 spi_conf(test_data, 1 << (CONF_ENABLE_W0 + test_data->cs)); in aspeed_smc_test_read_status_reg()
453 spi_ctrl_start_user(test_data); in aspeed_smc_test_read_status_reg()
454 flash_writeb(test_data, 0, RDSR); in aspeed_smc_test_read_status_reg()
455 r = flash_readb(test_data, 0); in aspeed_smc_test_read_status_reg()
456 spi_ctrl_stop_user(test_data); in aspeed_smc_test_read_status_reg()
460 (test_data->s, test_data->node, "write-enable")); in aspeed_smc_test_read_status_reg()
462 spi_ctrl_start_user(test_data); in aspeed_smc_test_read_status_reg()
463 flash_writeb(test_data, 0, WREN); in aspeed_smc_test_read_status_reg()
464 flash_writeb(test_data, 0, RDSR); in aspeed_smc_test_read_status_reg()
465 r = flash_readb(test_data, 0); in aspeed_smc_test_read_status_reg()
466 spi_ctrl_stop_user(test_data); in aspeed_smc_test_read_status_reg()
470 (test_data->s, test_data->node, "write-enable")); in aspeed_smc_test_read_status_reg()
472 spi_ctrl_start_user(test_data); in aspeed_smc_test_read_status_reg()
473 flash_writeb(test_data, 0, WRDI); in aspeed_smc_test_read_status_reg()
474 flash_writeb(test_data, 0, RDSR); in aspeed_smc_test_read_status_reg()
475 r = flash_readb(test_data, 0); in aspeed_smc_test_read_status_reg()
476 spi_ctrl_stop_user(test_data); in aspeed_smc_test_read_status_reg()
480 (test_data->s, test_data->node, "write-enable")); in aspeed_smc_test_read_status_reg()
482 flash_reset(test_data); in aspeed_smc_test_read_status_reg()
487 const AspeedSMCTestData *test_data = (const AspeedSMCTestData *)data; in aspeed_smc_test_status_reg_write_protection() local
490 spi_conf(test_data, 1 << (CONF_ENABLE_W0 + test_data->cs)); in aspeed_smc_test_status_reg_write_protection()
493 spi_ctrl_start_user(test_data); in aspeed_smc_test_status_reg_write_protection()
494 flash_writeb(test_data, 0, WREN); in aspeed_smc_test_status_reg_write_protection()
496 flash_writeb(test_data, 0, WRSR); in aspeed_smc_test_status_reg_write_protection()
497 flash_writeb(test_data, 0, SRWD); in aspeed_smc_test_status_reg_write_protection()
498 flash_writeb(test_data, 0, RDSR); in aspeed_smc_test_status_reg_write_protection()
499 r = flash_readb(test_data, 0); in aspeed_smc_test_status_reg_write_protection()
500 spi_ctrl_stop_user(test_data); in aspeed_smc_test_status_reg_write_protection()
504 spi_ctrl_start_user(test_data); in aspeed_smc_test_status_reg_write_protection()
505 flash_writeb(test_data, 0, WREN); in aspeed_smc_test_status_reg_write_protection()
507 flash_writeb(test_data, 0, WRSR); in aspeed_smc_test_status_reg_write_protection()
508 flash_writeb(test_data, 0, 0); in aspeed_smc_test_status_reg_write_protection()
509 flash_writeb(test_data, 0, RDSR); in aspeed_smc_test_status_reg_write_protection()
510 r = flash_readb(test_data, 0); in aspeed_smc_test_status_reg_write_protection()
511 spi_ctrl_stop_user(test_data); in aspeed_smc_test_status_reg_write_protection()
515 qtest_set_irq_in(test_data->s, test_data->node, "WP#", 0, 0); in aspeed_smc_test_status_reg_write_protection()
516 spi_ctrl_start_user(test_data); in aspeed_smc_test_status_reg_write_protection()
517 flash_writeb(test_data, 0, WREN); in aspeed_smc_test_status_reg_write_protection()
519 flash_writeb(test_data, 0, WRSR); in aspeed_smc_test_status_reg_write_protection()
520 flash_writeb(test_data, 0, SRWD); in aspeed_smc_test_status_reg_write_protection()
521 flash_writeb(test_data, 0, RDSR); in aspeed_smc_test_status_reg_write_protection()
522 r = flash_readb(test_data, 0); in aspeed_smc_test_status_reg_write_protection()
523 spi_ctrl_stop_user(test_data); in aspeed_smc_test_status_reg_write_protection()
527 spi_ctrl_start_user(test_data); in aspeed_smc_test_status_reg_write_protection()
528 flash_writeb(test_data, 0 , WREN); in aspeed_smc_test_status_reg_write_protection()
530 flash_writeb(test_data, 0, WRSR); in aspeed_smc_test_status_reg_write_protection()
531 flash_writeb(test_data, 0, 0); in aspeed_smc_test_status_reg_write_protection()
532 flash_writeb(test_data, 0, RDSR); in aspeed_smc_test_status_reg_write_protection()
533 r = flash_readb(test_data, 0); in aspeed_smc_test_status_reg_write_protection()
534 spi_ctrl_stop_user(test_data); in aspeed_smc_test_status_reg_write_protection()
538 qtest_set_irq_in(test_data->s, test_data->node, "WP#", 0, 1); in aspeed_smc_test_status_reg_write_protection()
539 flash_reset(test_data); in aspeed_smc_test_status_reg_write_protection()
544 const AspeedSMCTestData *test_data = (const AspeedSMCTestData *)data; in aspeed_smc_test_write_block_protect() local
548 spi_ce_ctrl(test_data, 1 << (CRTL_EXTENDED0 + test_data->cs)); in aspeed_smc_test_write_block_protect()
549 spi_conf(test_data, 1 << (CONF_ENABLE_W0 + test_data->cs)); in aspeed_smc_test_write_block_protect()
556 spi_ctrl_start_user(test_data); in aspeed_smc_test_write_block_protect()
557 flash_writeb(test_data, 0, WREN); in aspeed_smc_test_write_block_protect()
558 flash_writeb(test_data, 0, BULK_ERASE); in aspeed_smc_test_write_block_protect()
559 flash_writeb(test_data, 0, WREN); in aspeed_smc_test_write_block_protect()
560 flash_writeb(test_data, 0, WRSR); in aspeed_smc_test_write_block_protect()
561 flash_writeb(test_data, 0, bp_bits); in aspeed_smc_test_write_block_protect()
562 flash_writeb(test_data, 0, EN_4BYTE_ADDR); in aspeed_smc_test_write_block_protect()
563 flash_writeb(test_data, 0, WREN); in aspeed_smc_test_write_block_protect()
564 spi_ctrl_stop_user(test_data); in aspeed_smc_test_write_block_protect()
573 assert_page_mem(test_data, addr, 0xffffffff); in aspeed_smc_test_write_block_protect()
574 write_page_mem(test_data, addr, make_be32(0xabcdef12)); in aspeed_smc_test_write_block_protect()
580 assert_page_mem(test_data, addr, expected_value); in aspeed_smc_test_write_block_protect()
584 flash_reset(test_data); in aspeed_smc_test_write_block_protect()
589 const AspeedSMCTestData *test_data = (const AspeedSMCTestData *)data; in aspeed_smc_test_write_block_protect_bottom_bit() local
593 spi_ce_ctrl(test_data, 1 << (CRTL_EXTENDED0 + test_data->cs)); in aspeed_smc_test_write_block_protect_bottom_bit()
594 spi_conf(test_data, 1 << (CONF_ENABLE_W0 + test_data->cs)); in aspeed_smc_test_write_block_protect_bottom_bit()
602 spi_ctrl_start_user(test_data); in aspeed_smc_test_write_block_protect_bottom_bit()
603 flash_writeb(test_data, 0, WREN); in aspeed_smc_test_write_block_protect_bottom_bit()
604 flash_writeb(test_data, 0, BULK_ERASE); in aspeed_smc_test_write_block_protect_bottom_bit()
605 flash_writeb(test_data, 0, WREN); in aspeed_smc_test_write_block_protect_bottom_bit()
606 flash_writeb(test_data, 0, WRSR); in aspeed_smc_test_write_block_protect_bottom_bit()
607 flash_writeb(test_data, 0, bp_bits); in aspeed_smc_test_write_block_protect_bottom_bit()
608 flash_writeb(test_data, 0, EN_4BYTE_ADDR); in aspeed_smc_test_write_block_protect_bottom_bit()
609 flash_writeb(test_data, 0, WREN); in aspeed_smc_test_write_block_protect_bottom_bit()
610 spi_ctrl_stop_user(test_data); in aspeed_smc_test_write_block_protect_bottom_bit()
619 assert_page_mem(test_data, addr, 0xffffffff); in aspeed_smc_test_write_block_protect_bottom_bit()
620 write_page_mem(test_data, addr, make_be32(0xabcdef12)); in aspeed_smc_test_write_block_protect_bottom_bit()
626 assert_page_mem(test_data, addr, expected_value); in aspeed_smc_test_write_block_protect_bottom_bit()
630 flash_reset(test_data); in aspeed_smc_test_write_block_protect_bottom_bit()
635 const AspeedSMCTestData *test_data = (const AspeedSMCTestData *)data; in aspeed_smc_test_write_page_qpi() local
636 uint32_t my_page_addr = test_data->page_addr; in aspeed_smc_test_write_page_qpi()
644 spi_conf(test_data, 1 << (CONF_ENABLE_W0 + test_data->cs)); in aspeed_smc_test_write_page_qpi()
646 spi_ctrl_start_user(test_data); in aspeed_smc_test_write_page_qpi()
647 flash_writeb(test_data, 0, EN_4BYTE_ADDR); in aspeed_smc_test_write_page_qpi()
648 flash_writeb(test_data, 0, WREN); in aspeed_smc_test_write_page_qpi()
649 flash_writeb(test_data, 0, PP); in aspeed_smc_test_write_page_qpi()
650 flash_writel(test_data, 0, make_be32(my_page_addr)); in aspeed_smc_test_write_page_qpi()
653 spi_ctrl_set_io_mode(test_data, CTRL_IO_QUAD_IO); in aspeed_smc_test_write_page_qpi()
657 flash_writel(test_data, 0, make_be32(page_pattern[i])); in aspeed_smc_test_write_page_qpi()
662 flash_writel(test_data, 0, make_be32(my_page_addr + i * 4)); in aspeed_smc_test_write_page_qpi()
666 spi_ctrl_set_io_mode(test_data, 0); in aspeed_smc_test_write_page_qpi()
667 spi_ctrl_stop_user(test_data); in aspeed_smc_test_write_page_qpi()
670 read_page(test_data, my_page_addr, page); in aspeed_smc_test_write_page_qpi()
679 read_page(test_data, some_page_addr, page); in aspeed_smc_test_write_page_qpi()
684 flash_reset(test_data); in aspeed_smc_test_write_page_qpi()