.. | .. |
---|
1 | | -/* Driver for Realtek PCI-Express card reader |
---|
| 1 | +// SPDX-License-Identifier: GPL-2.0+ |
---|
| 2 | +/* |
---|
| 3 | + * Driver for Realtek PCI-Express card reader |
---|
2 | 4 | * |
---|
3 | 5 | * Copyright(c) 2009-2013 Realtek Semiconductor Corp. All rights reserved. |
---|
4 | | - * |
---|
5 | | - * This program is free software; you can redistribute it and/or modify it |
---|
6 | | - * under the terms of the GNU General Public License as published by the |
---|
7 | | - * Free Software Foundation; either version 2, or (at your option) any |
---|
8 | | - * later version. |
---|
9 | | - * |
---|
10 | | - * This program is distributed in the hope that it will be useful, but |
---|
11 | | - * WITHOUT ANY WARRANTY; without even the implied warranty of |
---|
12 | | - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
---|
13 | | - * General Public License for more details. |
---|
14 | | - * |
---|
15 | | - * You should have received a copy of the GNU General Public License along |
---|
16 | | - * with this program; if not, see <http://www.gnu.org/licenses/>. |
---|
17 | 6 | * |
---|
18 | 7 | * Author: |
---|
19 | 8 | * Wei WANG (wei_wang@realsil.com.cn) |
---|
.. | .. |
---|
111 | 100 | u8 val, err_code = 0; |
---|
112 | 101 | enum dma_data_direction dir; |
---|
113 | 102 | |
---|
114 | | - if (!buf || !buf_len) { |
---|
| 103 | + if (!buf || !buf_len) |
---|
115 | 104 | return STATUS_FAIL; |
---|
116 | | - } |
---|
117 | 105 | |
---|
118 | 106 | if (trans_mode == MS_TM_AUTO_READ) { |
---|
119 | 107 | dir = DMA_FROM_DEVICE; |
---|
.. | .. |
---|
162 | 150 | } |
---|
163 | 151 | |
---|
164 | 152 | retval = rtsx_read_register(chip, MS_TRANS_CFG, &val); |
---|
165 | | - if (retval) { |
---|
| 153 | + if (retval) |
---|
166 | 154 | return retval; |
---|
167 | | - } |
---|
168 | | - if (val & (MS_INT_CMDNK | MS_INT_ERR | MS_CRC16_ERR | MS_RDY_TIMEOUT)) { |
---|
| 155 | + |
---|
| 156 | + if (val & (MS_INT_CMDNK | MS_INT_ERR | MS_CRC16_ERR | MS_RDY_TIMEOUT)) |
---|
169 | 157 | return STATUS_FAIL; |
---|
170 | | - } |
---|
171 | 158 | |
---|
172 | 159 | return STATUS_SUCCESS; |
---|
173 | 160 | } |
---|
.. | .. |
---|
178 | 165 | struct ms_info *ms_card = &chip->ms_card; |
---|
179 | 166 | int retval, i; |
---|
180 | 167 | |
---|
181 | | - if (!data || (data_len < cnt)) { |
---|
| 168 | + if (!data || (data_len < cnt)) |
---|
182 | 169 | return STATUS_ERROR; |
---|
183 | | - } |
---|
184 | 170 | |
---|
185 | 171 | rtsx_init_cmd(chip); |
---|
186 | 172 | |
---|
.. | .. |
---|
244 | 230 | int retval, i; |
---|
245 | 231 | u8 *ptr; |
---|
246 | 232 | |
---|
247 | | - if (!data) { |
---|
| 233 | + if (!data) |
---|
248 | 234 | return STATUS_ERROR; |
---|
249 | | - } |
---|
250 | 235 | |
---|
251 | 236 | rtsx_init_cmd(chip); |
---|
252 | 237 | |
---|
.. | .. |
---|
371 | 356 | } |
---|
372 | 357 | |
---|
373 | 358 | retval = switch_clock(chip, ms_card->ms_clock); |
---|
374 | | - if (retval != STATUS_SUCCESS) { |
---|
| 359 | + if (retval != STATUS_SUCCESS) |
---|
375 | 360 | return STATUS_FAIL; |
---|
376 | | - } |
---|
377 | 361 | |
---|
378 | 362 | retval = select_card(chip, MS_CARD); |
---|
379 | | - if (retval != STATUS_SUCCESS) { |
---|
| 363 | + if (retval != STATUS_SUCCESS) |
---|
380 | 364 | return STATUS_FAIL; |
---|
381 | | - } |
---|
382 | 365 | |
---|
383 | 366 | return STATUS_SUCCESS; |
---|
384 | 367 | } |
---|
.. | .. |
---|
389 | 372 | int retval; |
---|
390 | 373 | |
---|
391 | 374 | retval = select_card(chip, MS_CARD); |
---|
392 | | - if (retval != STATUS_SUCCESS) { |
---|
| 375 | + if (retval != STATUS_SUCCESS) |
---|
393 | 376 | return STATUS_FAIL; |
---|
394 | | - } |
---|
395 | 377 | |
---|
396 | 378 | retval = switch_clock(chip, ms_card->ms_clock); |
---|
397 | | - if (retval != STATUS_SUCCESS) { |
---|
| 379 | + if (retval != STATUS_SUCCESS) |
---|
398 | 380 | return STATUS_FAIL; |
---|
399 | | - } |
---|
400 | 381 | |
---|
401 | 382 | return STATUS_SUCCESS; |
---|
402 | 383 | } |
---|
.. | .. |
---|
409 | 390 | retval = rtsx_write_register(chip, CARD_PULL_CTL1, 0xFF, |
---|
410 | 391 | MS_D1_PD | MS_D2_PD | MS_CLK_PD | |
---|
411 | 392 | MS_D6_PD); |
---|
412 | | - if (retval) { |
---|
| 393 | + if (retval) |
---|
413 | 394 | return retval; |
---|
414 | | - } |
---|
| 395 | + |
---|
415 | 396 | retval = rtsx_write_register(chip, CARD_PULL_CTL2, 0xFF, |
---|
416 | 397 | MS_D3_PD | MS_D0_PD | MS_BS_PD | |
---|
417 | 398 | XD_D4_PD); |
---|
418 | | - if (retval) { |
---|
| 399 | + if (retval) |
---|
419 | 400 | return retval; |
---|
420 | | - } |
---|
| 401 | + |
---|
421 | 402 | retval = rtsx_write_register(chip, CARD_PULL_CTL3, 0xFF, |
---|
422 | 403 | MS_D7_PD | XD_CE_PD | XD_CLE_PD | |
---|
423 | 404 | XD_CD_PU); |
---|
424 | | - if (retval) { |
---|
| 405 | + if (retval) |
---|
425 | 406 | return retval; |
---|
426 | | - } |
---|
| 407 | + |
---|
427 | 408 | retval = rtsx_write_register(chip, CARD_PULL_CTL4, 0xFF, |
---|
428 | 409 | XD_RDY_PD | SD_D3_PD | SD_D2_PD | |
---|
429 | 410 | XD_ALE_PD); |
---|
430 | | - if (retval) { |
---|
| 411 | + if (retval) |
---|
431 | 412 | return retval; |
---|
432 | | - } |
---|
| 413 | + |
---|
433 | 414 | retval = rtsx_write_register(chip, CARD_PULL_CTL5, 0xFF, |
---|
434 | 415 | MS_INS_PU | SD_WP_PD | SD_CD_PU | |
---|
435 | 416 | SD_CMD_PD); |
---|
436 | | - if (retval) { |
---|
| 417 | + if (retval) |
---|
437 | 418 | return retval; |
---|
438 | | - } |
---|
| 419 | + |
---|
439 | 420 | retval = rtsx_write_register(chip, CARD_PULL_CTL6, 0xFF, |
---|
440 | 421 | MS_D5_PD | MS_D4_PD); |
---|
441 | | - if (retval) { |
---|
| 422 | + if (retval) |
---|
442 | 423 | return retval; |
---|
443 | | - } |
---|
| 424 | + |
---|
444 | 425 | } else if (CHECK_PID(chip, 0x5288)) { |
---|
445 | 426 | if (CHECK_BARO_PKG(chip, QFN)) { |
---|
446 | 427 | retval = rtsx_write_register(chip, CARD_PULL_CTL1, |
---|
447 | 428 | 0xFF, 0x55); |
---|
448 | | - if (retval) { |
---|
| 429 | + if (retval) |
---|
449 | 430 | return retval; |
---|
450 | | - } |
---|
| 431 | + |
---|
451 | 432 | retval = rtsx_write_register(chip, CARD_PULL_CTL2, |
---|
452 | 433 | 0xFF, 0x55); |
---|
453 | | - if (retval) { |
---|
| 434 | + if (retval) |
---|
454 | 435 | return retval; |
---|
455 | | - } |
---|
| 436 | + |
---|
456 | 437 | retval = rtsx_write_register(chip, CARD_PULL_CTL3, |
---|
457 | 438 | 0xFF, 0x4B); |
---|
458 | | - if (retval) { |
---|
| 439 | + if (retval) |
---|
459 | 440 | return retval; |
---|
460 | | - } |
---|
| 441 | + |
---|
461 | 442 | retval = rtsx_write_register(chip, CARD_PULL_CTL4, |
---|
462 | 443 | 0xFF, 0x69); |
---|
463 | | - if (retval) { |
---|
| 444 | + if (retval) |
---|
464 | 445 | return retval; |
---|
465 | | - } |
---|
466 | 446 | } |
---|
467 | 447 | } |
---|
468 | 448 | |
---|
.. | .. |
---|
502 | 482 | } |
---|
503 | 483 | |
---|
504 | 484 | retval = rtsx_send_cmd(chip, MS_CARD, 100); |
---|
505 | | - if (retval < 0) { |
---|
| 485 | + if (retval < 0) |
---|
506 | 486 | return STATUS_FAIL; |
---|
507 | | - } |
---|
508 | 487 | |
---|
509 | 488 | return STATUS_SUCCESS; |
---|
510 | 489 | } |
---|
.. | .. |
---|
523 | 502 | ms_card->pro_under_formatting = 0; |
---|
524 | 503 | |
---|
525 | 504 | retval = ms_power_off_card3v3(chip); |
---|
526 | | - if (retval != STATUS_SUCCESS) { |
---|
| 505 | + if (retval != STATUS_SUCCESS) |
---|
527 | 506 | return STATUS_FAIL; |
---|
528 | | - } |
---|
529 | 507 | |
---|
530 | 508 | if (!chip->ft2_fast_mode) |
---|
531 | 509 | wait_timeout(250); |
---|
532 | 510 | |
---|
533 | 511 | retval = enable_card_clock(chip, MS_CARD); |
---|
534 | | - if (retval != STATUS_SUCCESS) { |
---|
| 512 | + if (retval != STATUS_SUCCESS) |
---|
535 | 513 | return STATUS_FAIL; |
---|
536 | | - } |
---|
537 | 514 | |
---|
538 | 515 | if (chip->asic_code) { |
---|
539 | 516 | retval = ms_pull_ctl_enable(chip); |
---|
540 | | - if (retval != STATUS_SUCCESS) { |
---|
| 517 | + if (retval != STATUS_SUCCESS) |
---|
541 | 518 | return STATUS_FAIL; |
---|
542 | | - } |
---|
543 | 519 | } else { |
---|
544 | 520 | retval = rtsx_write_register(chip, FPGA_PULL_CTL, |
---|
545 | 521 | FPGA_MS_PULL_CTL_BIT | 0x20, 0); |
---|
546 | | - if (retval) { |
---|
| 522 | + if (retval) |
---|
547 | 523 | return retval; |
---|
548 | | - } |
---|
549 | 524 | } |
---|
550 | 525 | |
---|
551 | 526 | if (!chip->ft2_fast_mode) { |
---|
552 | 527 | retval = card_power_on(chip, MS_CARD); |
---|
553 | | - if (retval != STATUS_SUCCESS) { |
---|
| 528 | + if (retval != STATUS_SUCCESS) |
---|
554 | 529 | return STATUS_FAIL; |
---|
555 | | - } |
---|
556 | 530 | |
---|
557 | 531 | wait_timeout(150); |
---|
558 | 532 | |
---|
.. | .. |
---|
572 | 546 | |
---|
573 | 547 | retval = rtsx_write_register(chip, CARD_OE, MS_OUTPUT_EN, |
---|
574 | 548 | MS_OUTPUT_EN); |
---|
575 | | - if (retval) { |
---|
| 549 | + if (retval) |
---|
576 | 550 | return retval; |
---|
577 | | - } |
---|
578 | 551 | |
---|
579 | 552 | if (chip->asic_code) { |
---|
580 | 553 | retval = rtsx_write_register(chip, MS_CFG, 0xFF, |
---|
.. | .. |
---|
582 | 555 | PUSH_TIME_DEFAULT | |
---|
583 | 556 | NO_EXTEND_TOGGLE | |
---|
584 | 557 | MS_BUS_WIDTH_1); |
---|
585 | | - if (retval) { |
---|
| 558 | + if (retval) |
---|
586 | 559 | return retval; |
---|
587 | | - } |
---|
| 560 | + |
---|
588 | 561 | } else { |
---|
589 | 562 | retval = rtsx_write_register(chip, MS_CFG, 0xFF, |
---|
590 | 563 | SAMPLE_TIME_FALLING | |
---|
591 | 564 | PUSH_TIME_DEFAULT | |
---|
592 | 565 | NO_EXTEND_TOGGLE | |
---|
593 | 566 | MS_BUS_WIDTH_1); |
---|
594 | | - if (retval) { |
---|
| 567 | + if (retval) |
---|
595 | 568 | return retval; |
---|
596 | | - } |
---|
597 | 569 | } |
---|
598 | 570 | retval = rtsx_write_register(chip, MS_TRANS_CFG, 0xFF, |
---|
599 | 571 | NO_WAIT_INT | NO_AUTO_READ_INT_REG); |
---|
600 | | - if (retval) { |
---|
| 572 | + if (retval) |
---|
601 | 573 | return retval; |
---|
602 | | - } |
---|
| 574 | + |
---|
603 | 575 | retval = rtsx_write_register(chip, CARD_STOP, MS_STOP | MS_CLR_ERR, |
---|
604 | 576 | MS_STOP | MS_CLR_ERR); |
---|
605 | | - if (retval) { |
---|
| 577 | + if (retval) |
---|
606 | 578 | return retval; |
---|
607 | | - } |
---|
608 | 579 | |
---|
609 | 580 | retval = ms_set_init_para(chip); |
---|
610 | | - if (retval != STATUS_SUCCESS) { |
---|
| 581 | + if (retval != STATUS_SUCCESS) |
---|
611 | 582 | return STATUS_FAIL; |
---|
612 | | - } |
---|
613 | 583 | |
---|
614 | 584 | return STATUS_SUCCESS; |
---|
615 | 585 | } |
---|
.. | .. |
---|
620 | 590 | int retval, i; |
---|
621 | 591 | u8 val; |
---|
622 | 592 | |
---|
623 | | - retval = ms_set_rw_reg_addr(chip, Pro_StatusReg, 6, SystemParm, 1); |
---|
624 | | - if (retval != STATUS_SUCCESS) { |
---|
| 593 | + retval = ms_set_rw_reg_addr(chip, PRO_STATUS_REG, 6, SYSTEM_PARAM, 1); |
---|
| 594 | + if (retval != STATUS_SUCCESS) |
---|
625 | 595 | return STATUS_FAIL; |
---|
626 | | - } |
---|
627 | 596 | |
---|
628 | 597 | for (i = 0; i < MS_MAX_RETRY_COUNT; i++) { |
---|
629 | 598 | retval = ms_transfer_tpc(chip, MS_TM_READ_BYTES, READ_REG, |
---|
.. | .. |
---|
631 | 600 | if (retval == STATUS_SUCCESS) |
---|
632 | 601 | break; |
---|
633 | 602 | } |
---|
634 | | - if (i == MS_MAX_RETRY_COUNT) { |
---|
| 603 | + if (i == MS_MAX_RETRY_COUNT) |
---|
635 | 604 | return STATUS_FAIL; |
---|
636 | | - } |
---|
637 | 605 | |
---|
638 | 606 | retval = rtsx_read_register(chip, PPBUF_BASE2 + 2, &val); |
---|
639 | | - if (retval) { |
---|
| 607 | + if (retval) |
---|
640 | 608 | return retval; |
---|
641 | | - } |
---|
| 609 | + |
---|
642 | 610 | dev_dbg(rtsx_dev(chip), "Type register: 0x%x\n", val); |
---|
643 | 611 | if (val != 0x01) { |
---|
644 | 612 | if (val != 0x02) |
---|
.. | .. |
---|
648 | 616 | } |
---|
649 | 617 | |
---|
650 | 618 | retval = rtsx_read_register(chip, PPBUF_BASE2 + 4, &val); |
---|
651 | | - if (retval) { |
---|
| 619 | + if (retval) |
---|
652 | 620 | return retval; |
---|
653 | | - } |
---|
| 621 | + |
---|
654 | 622 | dev_dbg(rtsx_dev(chip), "Category register: 0x%x\n", val); |
---|
655 | 623 | if (val != 0) { |
---|
656 | 624 | ms_card->check_ms_flow = 1; |
---|
.. | .. |
---|
658 | 626 | } |
---|
659 | 627 | |
---|
660 | 628 | retval = rtsx_read_register(chip, PPBUF_BASE2 + 5, &val); |
---|
661 | | - if (retval) { |
---|
| 629 | + if (retval) |
---|
662 | 630 | return retval; |
---|
663 | | - } |
---|
| 631 | + |
---|
664 | 632 | dev_dbg(rtsx_dev(chip), "Class register: 0x%x\n", val); |
---|
665 | 633 | if (val == 0) { |
---|
666 | 634 | retval = rtsx_read_register(chip, PPBUF_BASE2, &val); |
---|
667 | | - if (retval) { |
---|
| 635 | + if (retval) |
---|
668 | 636 | return retval; |
---|
669 | | - } |
---|
| 637 | + |
---|
670 | 638 | if (val & WRT_PRTCT) |
---|
671 | 639 | chip->card_wp |= MS_CARD; |
---|
672 | 640 | else |
---|
.. | .. |
---|
682 | 650 | ms_card->ms_type |= TYPE_MSPRO; |
---|
683 | 651 | |
---|
684 | 652 | retval = rtsx_read_register(chip, PPBUF_BASE2 + 3, &val); |
---|
685 | | - if (retval) { |
---|
| 653 | + if (retval) |
---|
686 | 654 | return retval; |
---|
687 | | - } |
---|
| 655 | + |
---|
688 | 656 | dev_dbg(rtsx_dev(chip), "IF Mode register: 0x%x\n", val); |
---|
689 | 657 | if (val == 0) { |
---|
690 | 658 | ms_card->ms_type &= 0x0F; |
---|
.. | .. |
---|
720 | 688 | if (retval == STATUS_SUCCESS) |
---|
721 | 689 | break; |
---|
722 | 690 | } |
---|
723 | | - if (i == MS_MAX_RETRY_COUNT) { |
---|
| 691 | + if (i == MS_MAX_RETRY_COUNT) |
---|
724 | 692 | return STATUS_FAIL; |
---|
725 | | - } |
---|
726 | 693 | |
---|
727 | | - if (k > 100) { |
---|
| 694 | + if (k > 100) |
---|
728 | 695 | return STATUS_FAIL; |
---|
729 | | - } |
---|
730 | 696 | |
---|
731 | 697 | k++; |
---|
732 | 698 | wait_timeout(100); |
---|
.. | .. |
---|
737 | 703 | if (retval == STATUS_SUCCESS) |
---|
738 | 704 | break; |
---|
739 | 705 | } |
---|
740 | | - if (i == MS_MAX_RETRY_COUNT) { |
---|
| 706 | + if (i == MS_MAX_RETRY_COUNT) |
---|
741 | 707 | return STATUS_FAIL; |
---|
742 | | - } |
---|
743 | 708 | |
---|
744 | 709 | if (val & INT_REG_ERR) { |
---|
745 | | - if (val & INT_REG_CMDNK) { |
---|
| 710 | + if (val & INT_REG_CMDNK) |
---|
746 | 711 | chip->card_wp |= (MS_CARD); |
---|
747 | | - } else { |
---|
| 712 | + else |
---|
748 | 713 | return STATUS_FAIL; |
---|
749 | | - } |
---|
750 | 714 | } |
---|
751 | 715 | /* -- end confirm CPU startup */ |
---|
752 | 716 | |
---|
.. | .. |
---|
766 | 730 | if (retval == STATUS_SUCCESS) |
---|
767 | 731 | break; |
---|
768 | 732 | } |
---|
769 | | - if (retval != STATUS_SUCCESS) { |
---|
| 733 | + if (retval != STATUS_SUCCESS) |
---|
770 | 734 | return STATUS_FAIL; |
---|
771 | | - } |
---|
772 | 735 | |
---|
773 | 736 | return STATUS_SUCCESS; |
---|
774 | 737 | } |
---|
.. | .. |
---|
787 | 750 | if (retval == STATUS_SUCCESS) |
---|
788 | 751 | break; |
---|
789 | 752 | } |
---|
790 | | - if (retval != STATUS_SUCCESS) { |
---|
| 753 | + if (retval != STATUS_SUCCESS) |
---|
791 | 754 | return STATUS_FAIL; |
---|
792 | | - } |
---|
793 | 755 | |
---|
794 | 756 | retval = rtsx_write_register(chip, MS_CFG, 0x98, |
---|
795 | 757 | MS_BUS_WIDTH_8 | SAMPLE_TIME_FALLING); |
---|
796 | | - if (retval) { |
---|
| 758 | + if (retval) |
---|
797 | 759 | return retval; |
---|
798 | | - } |
---|
| 760 | + |
---|
799 | 761 | ms_card->ms_type |= MS_8BIT; |
---|
800 | 762 | retval = ms_set_init_para(chip); |
---|
801 | | - if (retval != STATUS_SUCCESS) { |
---|
| 763 | + if (retval != STATUS_SUCCESS) |
---|
802 | 764 | return STATUS_FAIL; |
---|
803 | | - } |
---|
804 | 765 | |
---|
805 | 766 | for (i = 0; i < MS_MAX_RETRY_COUNT; i++) { |
---|
806 | 767 | retval = ms_transfer_tpc(chip, MS_TM_READ_BYTES, GET_INT, |
---|
807 | 768 | 1, NO_WAIT_INT); |
---|
808 | | - if (retval != STATUS_SUCCESS) { |
---|
| 769 | + if (retval != STATUS_SUCCESS) |
---|
809 | 770 | return STATUS_FAIL; |
---|
810 | | - } |
---|
811 | 771 | } |
---|
812 | 772 | |
---|
813 | 773 | return STATUS_SUCCESS; |
---|
.. | .. |
---|
820 | 780 | |
---|
821 | 781 | for (i = 0; i < 3; i++) { |
---|
822 | 782 | retval = ms_prepare_reset(chip); |
---|
823 | | - if (retval != STATUS_SUCCESS) { |
---|
| 783 | + if (retval != STATUS_SUCCESS) |
---|
824 | 784 | return STATUS_FAIL; |
---|
825 | | - } |
---|
826 | 785 | |
---|
827 | 786 | retval = ms_identify_media_type(chip, switch_8bit_bus); |
---|
828 | | - if (retval != STATUS_SUCCESS) { |
---|
| 787 | + if (retval != STATUS_SUCCESS) |
---|
829 | 788 | return STATUS_FAIL; |
---|
830 | | - } |
---|
831 | 789 | |
---|
832 | 790 | retval = ms_confirm_cpu_startup(chip); |
---|
833 | | - if (retval != STATUS_SUCCESS) { |
---|
| 791 | + if (retval != STATUS_SUCCESS) |
---|
834 | 792 | return STATUS_FAIL; |
---|
835 | | - } |
---|
836 | 793 | |
---|
837 | 794 | retval = ms_switch_parallel_bus(chip); |
---|
838 | 795 | if (retval != STATUS_SUCCESS) { |
---|
.. | .. |
---|
846 | 803 | } |
---|
847 | 804 | } |
---|
848 | 805 | |
---|
849 | | - if (retval != STATUS_SUCCESS) { |
---|
| 806 | + if (retval != STATUS_SUCCESS) |
---|
850 | 807 | return STATUS_FAIL; |
---|
851 | | - } |
---|
852 | 808 | |
---|
853 | 809 | /* Switch MS-PRO into Parallel mode */ |
---|
854 | 810 | retval = rtsx_write_register(chip, MS_CFG, 0x18, MS_BUS_WIDTH_4); |
---|
855 | | - if (retval) { |
---|
| 811 | + if (retval) |
---|
856 | 812 | return retval; |
---|
857 | | - } |
---|
| 813 | + |
---|
858 | 814 | retval = rtsx_write_register(chip, MS_CFG, PUSH_TIME_ODD, |
---|
859 | 815 | PUSH_TIME_ODD); |
---|
860 | | - if (retval) { |
---|
| 816 | + if (retval) |
---|
861 | 817 | return retval; |
---|
862 | | - } |
---|
863 | 818 | |
---|
864 | 819 | retval = ms_set_init_para(chip); |
---|
865 | | - if (retval != STATUS_SUCCESS) { |
---|
| 820 | + if (retval != STATUS_SUCCESS) |
---|
866 | 821 | return STATUS_FAIL; |
---|
867 | | - } |
---|
868 | 822 | |
---|
869 | 823 | /* If MSPro HG Card, We shall try to switch to 8-bit bus */ |
---|
870 | 824 | if (CHK_MSHG(ms_card) && chip->support_ms_8bit && switch_8bit_bus) { |
---|
.. | .. |
---|
886 | 840 | |
---|
887 | 841 | ms_cleanup_work(chip); |
---|
888 | 842 | |
---|
889 | | - retval = ms_set_rw_reg_addr(chip, 0, 0, Pro_DataCount1, 6); |
---|
890 | | - if (retval != STATUS_SUCCESS) { |
---|
| 843 | + retval = ms_set_rw_reg_addr(chip, 0, 0, PRO_DATA_COUNT1, 6); |
---|
| 844 | + if (retval != STATUS_SUCCESS) |
---|
891 | 845 | return STATUS_FAIL; |
---|
892 | | - } |
---|
893 | 846 | |
---|
894 | 847 | buf[0] = 0; |
---|
895 | 848 | buf[1] = mode; |
---|
.. | .. |
---|
899 | 852 | buf[5] = 0; |
---|
900 | 853 | |
---|
901 | 854 | retval = ms_write_bytes(chip, PRO_WRITE_REG, 6, NO_WAIT_INT, buf, 6); |
---|
902 | | - if (retval != STATUS_SUCCESS) { |
---|
| 855 | + if (retval != STATUS_SUCCESS) |
---|
903 | 856 | return STATUS_FAIL; |
---|
904 | | - } |
---|
905 | 857 | |
---|
906 | 858 | retval = ms_send_cmd(chip, XC_CHG_POWER, WAIT_INT); |
---|
907 | | - if (retval != STATUS_SUCCESS) { |
---|
| 859 | + if (retval != STATUS_SUCCESS) |
---|
908 | 860 | return STATUS_FAIL; |
---|
909 | | - } |
---|
910 | 861 | |
---|
911 | 862 | retval = rtsx_read_register(chip, MS_TRANS_CFG, buf); |
---|
912 | | - if (retval) { |
---|
| 863 | + if (retval) |
---|
913 | 864 | return retval; |
---|
914 | | - } |
---|
915 | | - if (buf[0] & (MS_INT_CMDNK | MS_INT_ERR)) { |
---|
| 865 | + |
---|
| 866 | + if (buf[0] & (MS_INT_CMDNK | MS_INT_ERR)) |
---|
916 | 867 | return STATUS_FAIL; |
---|
917 | | - } |
---|
918 | 868 | |
---|
919 | 869 | return STATUS_SUCCESS; |
---|
920 | 870 | } |
---|
.. | .. |
---|
935 | 885 | int found_sys_info = 0, found_model_name = 0; |
---|
936 | 886 | #endif |
---|
937 | 887 | |
---|
938 | | - retval = ms_set_rw_reg_addr(chip, Pro_IntReg, 2, Pro_SystemParm, 7); |
---|
939 | | - if (retval != STATUS_SUCCESS) { |
---|
| 888 | + retval = ms_set_rw_reg_addr(chip, PRO_INT_REG, 2, PRO_SYSTEM_PARAM, 7); |
---|
| 889 | + if (retval != STATUS_SUCCESS) |
---|
940 | 890 | return STATUS_FAIL; |
---|
941 | | - } |
---|
942 | 891 | |
---|
943 | 892 | if (CHK_MS8BIT(ms_card)) |
---|
944 | 893 | data[0] = PARALLEL_8BIT_IF; |
---|
.. | .. |
---|
960 | 909 | if (retval == STATUS_SUCCESS) |
---|
961 | 910 | break; |
---|
962 | 911 | } |
---|
963 | | - if (retval != STATUS_SUCCESS) { |
---|
| 912 | + if (retval != STATUS_SUCCESS) |
---|
964 | 913 | return STATUS_FAIL; |
---|
965 | | - } |
---|
966 | 914 | |
---|
967 | 915 | buf = kmalloc(64 * 512, GFP_KERNEL); |
---|
968 | | - if (!buf) { |
---|
| 916 | + if (!buf) |
---|
969 | 917 | return STATUS_ERROR; |
---|
970 | | - } |
---|
971 | 918 | |
---|
972 | 919 | for (i = 0; i < MS_MAX_RETRY_COUNT; i++) { |
---|
973 | 920 | retval = ms_send_cmd(chip, PRO_READ_ATRB, WAIT_INT); |
---|
.. | .. |
---|
1150 | 1097 | |
---|
1151 | 1098 | #ifdef SUPPORT_MSXC |
---|
1152 | 1099 | if (CHK_MSXC(ms_card)) { |
---|
1153 | | - if (class_code != 0x03) { |
---|
| 1100 | + if (class_code != 0x03) |
---|
1154 | 1101 | return STATUS_FAIL; |
---|
1155 | | - } |
---|
1156 | 1102 | } else { |
---|
1157 | | - if (class_code != 0x02) { |
---|
| 1103 | + if (class_code != 0x02) |
---|
1158 | 1104 | return STATUS_FAIL; |
---|
1159 | | - } |
---|
1160 | 1105 | } |
---|
1161 | 1106 | #else |
---|
1162 | | - if (class_code != 0x02) { |
---|
| 1107 | + if (class_code != 0x02) |
---|
1163 | 1108 | return STATUS_FAIL; |
---|
1164 | | - } |
---|
1165 | 1109 | #endif |
---|
1166 | 1110 | |
---|
1167 | 1111 | if (device_type != 0x00) { |
---|
.. | .. |
---|
1173 | 1117 | } |
---|
1174 | 1118 | } |
---|
1175 | 1119 | |
---|
1176 | | - if (sub_class & 0xC0) { |
---|
| 1120 | + if (sub_class & 0xC0) |
---|
1177 | 1121 | return STATUS_FAIL; |
---|
1178 | | - } |
---|
1179 | 1122 | |
---|
1180 | 1123 | dev_dbg(rtsx_dev(chip), "class_code: 0x%x, device_type: 0x%x, sub_class: 0x%x\n", |
---|
1181 | 1124 | class_code, device_type, sub_class); |
---|
.. | .. |
---|
1223 | 1166 | if (retval != STATUS_SUCCESS) { |
---|
1224 | 1167 | if (ms_card->switch_8bit_fail) { |
---|
1225 | 1168 | retval = ms_pro_reset_flow(chip, 0); |
---|
1226 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1169 | + if (retval != STATUS_SUCCESS) |
---|
1227 | 1170 | return STATUS_FAIL; |
---|
1228 | | - } |
---|
1229 | 1171 | } else { |
---|
1230 | 1172 | return STATUS_FAIL; |
---|
1231 | 1173 | } |
---|
1232 | 1174 | } |
---|
1233 | 1175 | |
---|
1234 | 1176 | retval = ms_read_attribute_info(chip); |
---|
1235 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1177 | + if (retval != STATUS_SUCCESS) |
---|
1236 | 1178 | return STATUS_FAIL; |
---|
1237 | | - } |
---|
1238 | 1179 | |
---|
1239 | 1180 | #ifdef XC_POWERCLASS |
---|
1240 | 1181 | if (CHK_HG8BIT(ms_card)) |
---|
.. | .. |
---|
1274 | 1215 | |
---|
1275 | 1216 | #ifdef SUPPORT_MAGIC_GATE |
---|
1276 | 1217 | retval = mg_set_tpc_para_sub(chip, 0, 0); |
---|
1277 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1218 | + if (retval != STATUS_SUCCESS) |
---|
1278 | 1219 | return STATUS_FAIL; |
---|
1279 | | - } |
---|
1280 | 1220 | #endif |
---|
1281 | 1221 | |
---|
1282 | 1222 | if (CHK_HG8BIT(ms_card)) |
---|
.. | .. |
---|
1292 | 1232 | int retval; |
---|
1293 | 1233 | u8 val[2]; |
---|
1294 | 1234 | |
---|
1295 | | - retval = ms_set_rw_reg_addr(chip, StatusReg0, 2, 0, 0); |
---|
1296 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1235 | + retval = ms_set_rw_reg_addr(chip, STATUS_REG0, 2, 0, 0); |
---|
| 1236 | + if (retval != STATUS_SUCCESS) |
---|
1297 | 1237 | return STATUS_FAIL; |
---|
1298 | | - } |
---|
1299 | 1238 | |
---|
1300 | 1239 | retval = ms_read_bytes(chip, READ_REG, 2, NO_WAIT_INT, val, 2); |
---|
1301 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1240 | + if (retval != STATUS_SUCCESS) |
---|
1302 | 1241 | return STATUS_FAIL; |
---|
1303 | | - } |
---|
1304 | 1242 | |
---|
1305 | 1243 | if (val[1] & (STS_UCDT | STS_UCEX | STS_UCFG)) { |
---|
1306 | 1244 | ms_set_err_code(chip, MS_FLASH_READ_ERROR); |
---|
.. | .. |
---|
1317 | 1255 | int retval, i; |
---|
1318 | 1256 | u8 val, data[10]; |
---|
1319 | 1257 | |
---|
1320 | | - retval = ms_set_rw_reg_addr(chip, OverwriteFlag, MS_EXTRA_SIZE, |
---|
1321 | | - SystemParm, 6); |
---|
1322 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1258 | + retval = ms_set_rw_reg_addr(chip, OVERWRITE_FLAG, MS_EXTRA_SIZE, |
---|
| 1259 | + SYSTEM_PARAM, 6); |
---|
| 1260 | + if (retval != STATUS_SUCCESS) |
---|
1323 | 1261 | return STATUS_FAIL; |
---|
1324 | | - } |
---|
1325 | 1262 | |
---|
1326 | 1263 | if (CHK_MS4BIT(ms_card)) { |
---|
1327 | 1264 | /* Parallel interface */ |
---|
.. | .. |
---|
1342 | 1279 | if (retval == STATUS_SUCCESS) |
---|
1343 | 1280 | break; |
---|
1344 | 1281 | } |
---|
1345 | | - if (i == MS_MAX_RETRY_COUNT) { |
---|
| 1282 | + if (i == MS_MAX_RETRY_COUNT) |
---|
1346 | 1283 | return STATUS_FAIL; |
---|
1347 | | - } |
---|
1348 | 1284 | |
---|
1349 | 1285 | ms_set_err_code(chip, MS_NO_ERROR); |
---|
1350 | 1286 | |
---|
.. | .. |
---|
1353 | 1289 | if (retval == STATUS_SUCCESS) |
---|
1354 | 1290 | break; |
---|
1355 | 1291 | } |
---|
1356 | | - if (i == MS_MAX_RETRY_COUNT) { |
---|
| 1292 | + if (i == MS_MAX_RETRY_COUNT) |
---|
1357 | 1293 | return STATUS_FAIL; |
---|
1358 | | - } |
---|
1359 | 1294 | |
---|
1360 | 1295 | ms_set_err_code(chip, MS_NO_ERROR); |
---|
1361 | 1296 | retval = ms_read_bytes(chip, GET_INT, 1, NO_WAIT_INT, &val, 1); |
---|
1362 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1297 | + if (retval != STATUS_SUCCESS) |
---|
1363 | 1298 | return STATUS_FAIL; |
---|
1364 | | - } |
---|
1365 | 1299 | |
---|
1366 | 1300 | if (val & INT_REG_CMDNK) { |
---|
1367 | 1301 | ms_set_err_code(chip, MS_CMD_NK); |
---|
.. | .. |
---|
1370 | 1304 | if (val & INT_REG_CED) { |
---|
1371 | 1305 | if (val & INT_REG_ERR) { |
---|
1372 | 1306 | retval = ms_read_status_reg(chip); |
---|
1373 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1307 | + if (retval != STATUS_SUCCESS) |
---|
1374 | 1308 | return STATUS_FAIL; |
---|
1375 | | - } |
---|
1376 | 1309 | |
---|
1377 | | - retval = ms_set_rw_reg_addr(chip, OverwriteFlag, |
---|
1378 | | - MS_EXTRA_SIZE, SystemParm, |
---|
| 1310 | + retval = ms_set_rw_reg_addr(chip, OVERWRITE_FLAG, |
---|
| 1311 | + MS_EXTRA_SIZE, SYSTEM_PARAM, |
---|
1379 | 1312 | 6); |
---|
1380 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1313 | + if (retval != STATUS_SUCCESS) |
---|
1381 | 1314 | return STATUS_FAIL; |
---|
1382 | | - } |
---|
1383 | 1315 | } |
---|
1384 | 1316 | } |
---|
1385 | 1317 | |
---|
1386 | 1318 | retval = ms_read_bytes(chip, READ_REG, MS_EXTRA_SIZE, NO_WAIT_INT, |
---|
1387 | 1319 | data, MS_EXTRA_SIZE); |
---|
1388 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1320 | + if (retval != STATUS_SUCCESS) |
---|
1389 | 1321 | return STATUS_FAIL; |
---|
1390 | | - } |
---|
1391 | 1322 | |
---|
1392 | 1323 | if (buf && buf_len) { |
---|
1393 | 1324 | if (buf_len > MS_EXTRA_SIZE) |
---|
.. | .. |
---|
1405 | 1336 | int retval, i; |
---|
1406 | 1337 | u8 val, data[16]; |
---|
1407 | 1338 | |
---|
1408 | | - if (!buf || (buf_len < MS_EXTRA_SIZE)) { |
---|
| 1339 | + if (!buf || (buf_len < MS_EXTRA_SIZE)) |
---|
1409 | 1340 | return STATUS_FAIL; |
---|
1410 | | - } |
---|
1411 | 1341 | |
---|
1412 | | - retval = ms_set_rw_reg_addr(chip, OverwriteFlag, MS_EXTRA_SIZE, |
---|
1413 | | - SystemParm, 6 + MS_EXTRA_SIZE); |
---|
1414 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1342 | + retval = ms_set_rw_reg_addr(chip, OVERWRITE_FLAG, MS_EXTRA_SIZE, |
---|
| 1343 | + SYSTEM_PARAM, 6 + MS_EXTRA_SIZE); |
---|
| 1344 | + if (retval != STATUS_SUCCESS) |
---|
1415 | 1345 | return STATUS_FAIL; |
---|
1416 | | - } |
---|
1417 | 1346 | |
---|
1418 | 1347 | if (CHK_MS4BIT(ms_card)) |
---|
1419 | 1348 | data[0] = 0x88; |
---|
.. | .. |
---|
1431 | 1360 | |
---|
1432 | 1361 | retval = ms_write_bytes(chip, WRITE_REG, (6 + MS_EXTRA_SIZE), |
---|
1433 | 1362 | NO_WAIT_INT, data, 16); |
---|
1434 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1363 | + if (retval != STATUS_SUCCESS) |
---|
1435 | 1364 | return STATUS_FAIL; |
---|
1436 | | - } |
---|
1437 | 1365 | |
---|
1438 | 1366 | retval = ms_send_cmd(chip, BLOCK_WRITE, WAIT_INT); |
---|
1439 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1367 | + if (retval != STATUS_SUCCESS) |
---|
1440 | 1368 | return STATUS_FAIL; |
---|
1441 | | - } |
---|
1442 | 1369 | |
---|
1443 | 1370 | ms_set_err_code(chip, MS_NO_ERROR); |
---|
1444 | 1371 | retval = ms_read_bytes(chip, GET_INT, 1, NO_WAIT_INT, &val, 1); |
---|
1445 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1372 | + if (retval != STATUS_SUCCESS) |
---|
1446 | 1373 | return STATUS_FAIL; |
---|
1447 | | - } |
---|
1448 | 1374 | |
---|
1449 | 1375 | if (val & INT_REG_CMDNK) { |
---|
1450 | 1376 | ms_set_err_code(chip, MS_CMD_NK); |
---|
.. | .. |
---|
1466 | 1392 | int retval; |
---|
1467 | 1393 | u8 val, data[6]; |
---|
1468 | 1394 | |
---|
1469 | | - retval = ms_set_rw_reg_addr(chip, OverwriteFlag, MS_EXTRA_SIZE, |
---|
1470 | | - SystemParm, 6); |
---|
1471 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1395 | + retval = ms_set_rw_reg_addr(chip, OVERWRITE_FLAG, MS_EXTRA_SIZE, |
---|
| 1396 | + SYSTEM_PARAM, 6); |
---|
| 1397 | + if (retval != STATUS_SUCCESS) |
---|
1472 | 1398 | return STATUS_FAIL; |
---|
1473 | | - } |
---|
1474 | 1399 | |
---|
1475 | 1400 | if (CHK_MS4BIT(ms_card)) |
---|
1476 | 1401 | data[0] = 0x88; |
---|
.. | .. |
---|
1484 | 1409 | data[5] = page_num; |
---|
1485 | 1410 | |
---|
1486 | 1411 | retval = ms_write_bytes(chip, WRITE_REG, 6, NO_WAIT_INT, data, 6); |
---|
1487 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1412 | + if (retval != STATUS_SUCCESS) |
---|
1488 | 1413 | return STATUS_FAIL; |
---|
1489 | | - } |
---|
1490 | 1414 | |
---|
1491 | 1415 | retval = ms_send_cmd(chip, BLOCK_READ, WAIT_INT); |
---|
1492 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1416 | + if (retval != STATUS_SUCCESS) |
---|
1493 | 1417 | return STATUS_FAIL; |
---|
1494 | | - } |
---|
1495 | 1418 | |
---|
1496 | 1419 | ms_set_err_code(chip, MS_NO_ERROR); |
---|
1497 | 1420 | retval = ms_read_bytes(chip, GET_INT, 1, NO_WAIT_INT, &val, 1); |
---|
1498 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1421 | + if (retval != STATUS_SUCCESS) |
---|
1499 | 1422 | return STATUS_FAIL; |
---|
1500 | | - } |
---|
1501 | 1423 | |
---|
1502 | 1424 | if (val & INT_REG_CMDNK) { |
---|
1503 | 1425 | ms_set_err_code(chip, MS_CMD_NK); |
---|
.. | .. |
---|
1524 | 1446 | |
---|
1525 | 1447 | retval = ms_transfer_tpc(chip, MS_TM_NORMAL_READ, READ_PAGE_DATA, |
---|
1526 | 1448 | 0, NO_WAIT_INT); |
---|
1527 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1449 | + if (retval != STATUS_SUCCESS) |
---|
1528 | 1450 | return STATUS_FAIL; |
---|
1529 | | - } |
---|
1530 | 1451 | |
---|
1531 | | - if (ms_check_err_code(chip, MS_FLASH_WRITE_ERROR)) { |
---|
| 1452 | + if (ms_check_err_code(chip, MS_FLASH_WRITE_ERROR)) |
---|
1532 | 1453 | return STATUS_FAIL; |
---|
1533 | | - } |
---|
1534 | 1454 | |
---|
1535 | 1455 | return STATUS_SUCCESS; |
---|
1536 | 1456 | } |
---|
.. | .. |
---|
1542 | 1462 | u8 val, data[8], extra[MS_EXTRA_SIZE]; |
---|
1543 | 1463 | |
---|
1544 | 1464 | retval = ms_read_extra_data(chip, phy_blk, 0, extra, MS_EXTRA_SIZE); |
---|
1545 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1465 | + if (retval != STATUS_SUCCESS) |
---|
1546 | 1466 | return STATUS_FAIL; |
---|
1547 | | - } |
---|
1548 | 1467 | |
---|
1549 | | - retval = ms_set_rw_reg_addr(chip, OverwriteFlag, MS_EXTRA_SIZE, |
---|
1550 | | - SystemParm, 7); |
---|
1551 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1468 | + retval = ms_set_rw_reg_addr(chip, OVERWRITE_FLAG, MS_EXTRA_SIZE, |
---|
| 1469 | + SYSTEM_PARAM, 7); |
---|
| 1470 | + if (retval != STATUS_SUCCESS) |
---|
1552 | 1471 | return STATUS_FAIL; |
---|
1553 | | - } |
---|
1554 | 1472 | |
---|
1555 | 1473 | ms_set_err_code(chip, MS_NO_ERROR); |
---|
1556 | 1474 | |
---|
.. | .. |
---|
1568 | 1486 | data[7] = 0xFF; |
---|
1569 | 1487 | |
---|
1570 | 1488 | retval = ms_write_bytes(chip, WRITE_REG, 7, NO_WAIT_INT, data, 7); |
---|
1571 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1489 | + if (retval != STATUS_SUCCESS) |
---|
1572 | 1490 | return STATUS_FAIL; |
---|
1573 | | - } |
---|
1574 | 1491 | |
---|
1575 | 1492 | retval = ms_send_cmd(chip, BLOCK_WRITE, WAIT_INT); |
---|
1576 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1493 | + if (retval != STATUS_SUCCESS) |
---|
1577 | 1494 | return STATUS_FAIL; |
---|
1578 | | - } |
---|
1579 | 1495 | |
---|
1580 | 1496 | ms_set_err_code(chip, MS_NO_ERROR); |
---|
1581 | 1497 | retval = ms_read_bytes(chip, GET_INT, 1, NO_WAIT_INT, &val, 1); |
---|
1582 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1498 | + if (retval != STATUS_SUCCESS) |
---|
1583 | 1499 | return STATUS_FAIL; |
---|
1584 | | - } |
---|
1585 | 1500 | |
---|
1586 | 1501 | if (val & INT_REG_CMDNK) { |
---|
1587 | 1502 | ms_set_err_code(chip, MS_CMD_NK); |
---|
.. | .. |
---|
1604 | 1519 | int retval, i = 0; |
---|
1605 | 1520 | u8 val, data[6]; |
---|
1606 | 1521 | |
---|
1607 | | - retval = ms_set_rw_reg_addr(chip, OverwriteFlag, MS_EXTRA_SIZE, |
---|
1608 | | - SystemParm, 6); |
---|
1609 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1522 | + retval = ms_set_rw_reg_addr(chip, OVERWRITE_FLAG, MS_EXTRA_SIZE, |
---|
| 1523 | + SYSTEM_PARAM, 6); |
---|
| 1524 | + if (retval != STATUS_SUCCESS) |
---|
1610 | 1525 | return STATUS_FAIL; |
---|
1611 | | - } |
---|
1612 | 1526 | |
---|
1613 | 1527 | ms_set_err_code(chip, MS_NO_ERROR); |
---|
1614 | 1528 | |
---|
.. | .. |
---|
1624 | 1538 | data[5] = 0; |
---|
1625 | 1539 | |
---|
1626 | 1540 | retval = ms_write_bytes(chip, WRITE_REG, 6, NO_WAIT_INT, data, 6); |
---|
1627 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1541 | + if (retval != STATUS_SUCCESS) |
---|
1628 | 1542 | return STATUS_FAIL; |
---|
1629 | | - } |
---|
1630 | 1543 | |
---|
1631 | 1544 | ERASE_RTY: |
---|
1632 | 1545 | retval = ms_send_cmd(chip, BLOCK_ERASE, WAIT_INT); |
---|
1633 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1546 | + if (retval != STATUS_SUCCESS) |
---|
1634 | 1547 | return STATUS_FAIL; |
---|
1635 | | - } |
---|
1636 | 1548 | |
---|
1637 | 1549 | ms_set_err_code(chip, MS_NO_ERROR); |
---|
1638 | 1550 | retval = ms_read_bytes(chip, GET_INT, 1, NO_WAIT_INT, &val, 1); |
---|
1639 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1551 | + if (retval != STATUS_SUCCESS) |
---|
1640 | 1552 | return STATUS_FAIL; |
---|
1641 | | - } |
---|
1642 | 1553 | |
---|
1643 | 1554 | if (val & INT_REG_CMDNK) { |
---|
1644 | 1555 | if (i < 3) { |
---|
.. | .. |
---|
1668 | 1579 | |
---|
1669 | 1580 | memset(extra, 0xFF, MS_EXTRA_SIZE); |
---|
1670 | 1581 | |
---|
1671 | | - if (type == setPS_NG) { |
---|
| 1582 | + if (type == set_PS_NG) { |
---|
1672 | 1583 | /* set page status as 1:NG,and block status keep 1:OK */ |
---|
1673 | 1584 | extra[0] = 0xB8; |
---|
1674 | 1585 | } else { |
---|
.. | .. |
---|
1701 | 1612 | |
---|
1702 | 1613 | retval = ms_write_extra_data(chip, phy_blk, i, |
---|
1703 | 1614 | extra, MS_EXTRA_SIZE); |
---|
1704 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1615 | + if (retval != STATUS_SUCCESS) |
---|
1705 | 1616 | return STATUS_FAIL; |
---|
1706 | | - } |
---|
1707 | 1617 | } |
---|
1708 | 1618 | |
---|
1709 | 1619 | return STATUS_SUCCESS; |
---|
.. | .. |
---|
1723 | 1633 | start_page, end_page); |
---|
1724 | 1634 | |
---|
1725 | 1635 | retval = ms_read_extra_data(chip, new_blk, 0, extra, MS_EXTRA_SIZE); |
---|
1726 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1636 | + if (retval != STATUS_SUCCESS) |
---|
1727 | 1637 | return STATUS_FAIL; |
---|
1728 | | - } |
---|
1729 | 1638 | |
---|
1730 | 1639 | retval = ms_read_status_reg(chip); |
---|
1731 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1640 | + if (retval != STATUS_SUCCESS) |
---|
1732 | 1641 | return STATUS_FAIL; |
---|
1733 | | - } |
---|
1734 | 1642 | |
---|
1735 | 1643 | retval = rtsx_read_register(chip, PPBUF_BASE2, &val); |
---|
1736 | | - if (retval) { |
---|
| 1644 | + if (retval) |
---|
1737 | 1645 | return retval; |
---|
1738 | | - } |
---|
1739 | 1646 | |
---|
1740 | 1647 | if (val & BUF_FULL) { |
---|
1741 | 1648 | retval = ms_send_cmd(chip, CLEAR_BUF, WAIT_INT); |
---|
1742 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1649 | + if (retval != STATUS_SUCCESS) |
---|
1743 | 1650 | return STATUS_FAIL; |
---|
1744 | | - } |
---|
1745 | 1651 | |
---|
1746 | 1652 | retval = ms_read_bytes(chip, GET_INT, 1, NO_WAIT_INT, &val, 1); |
---|
1747 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1653 | + if (retval != STATUS_SUCCESS) |
---|
1748 | 1654 | return STATUS_FAIL; |
---|
1749 | | - } |
---|
1750 | 1655 | |
---|
1751 | 1656 | if (!(val & INT_REG_CED)) { |
---|
1752 | 1657 | ms_set_err_code(chip, MS_FLASH_WRITE_ERROR); |
---|
.. | .. |
---|
1760 | 1665 | return STATUS_FAIL; |
---|
1761 | 1666 | } |
---|
1762 | 1667 | |
---|
1763 | | - ms_read_extra_data(chip, old_blk, i, extra, MS_EXTRA_SIZE); |
---|
1764 | | - |
---|
1765 | | - retval = ms_set_rw_reg_addr(chip, OverwriteFlag, |
---|
1766 | | - MS_EXTRA_SIZE, SystemParm, 6); |
---|
1767 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1668 | + retval = ms_read_extra_data(chip, old_blk, i, extra, |
---|
| 1669 | + MS_EXTRA_SIZE); |
---|
| 1670 | + if (retval != STATUS_SUCCESS) |
---|
1768 | 1671 | return STATUS_FAIL; |
---|
1769 | | - } |
---|
| 1672 | + |
---|
| 1673 | + retval = ms_set_rw_reg_addr(chip, OVERWRITE_FLAG, |
---|
| 1674 | + MS_EXTRA_SIZE, SYSTEM_PARAM, 6); |
---|
| 1675 | + if (retval != STATUS_SUCCESS) |
---|
| 1676 | + return STATUS_FAIL; |
---|
1770 | 1677 | |
---|
1771 | 1678 | ms_set_err_code(chip, MS_NO_ERROR); |
---|
1772 | 1679 | |
---|
.. | .. |
---|
1783 | 1690 | |
---|
1784 | 1691 | retval = ms_write_bytes(chip, WRITE_REG, 6, NO_WAIT_INT, |
---|
1785 | 1692 | data, 6); |
---|
1786 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1693 | + if (retval != STATUS_SUCCESS) |
---|
1787 | 1694 | return STATUS_FAIL; |
---|
1788 | | - } |
---|
1789 | 1695 | |
---|
1790 | 1696 | retval = ms_send_cmd(chip, BLOCK_READ, WAIT_INT); |
---|
1791 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1697 | + if (retval != STATUS_SUCCESS) |
---|
1792 | 1698 | return STATUS_FAIL; |
---|
1793 | | - } |
---|
1794 | 1699 | |
---|
1795 | 1700 | ms_set_err_code(chip, MS_NO_ERROR); |
---|
1796 | 1701 | retval = ms_read_bytes(chip, GET_INT, 1, NO_WAIT_INT, &val, 1); |
---|
1797 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1702 | + if (retval != STATUS_SUCCESS) |
---|
1798 | 1703 | return STATUS_FAIL; |
---|
1799 | | - } |
---|
1800 | 1704 | |
---|
1801 | 1705 | if (val & INT_REG_CMDNK) { |
---|
1802 | 1706 | ms_set_err_code(chip, MS_CMD_NK); |
---|
.. | .. |
---|
1817 | 1721 | MS_TM_NORMAL_READ, |
---|
1818 | 1722 | READ_PAGE_DATA, |
---|
1819 | 1723 | 0, NO_WAIT_INT); |
---|
1820 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1724 | + if (retval != STATUS_SUCCESS) |
---|
1821 | 1725 | return STATUS_FAIL; |
---|
1822 | | - } |
---|
1823 | 1726 | |
---|
1824 | 1727 | if (uncorrect_flag) { |
---|
1825 | | - ms_set_page_status(log_blk, setPS_NG, |
---|
| 1728 | + ms_set_page_status(log_blk, set_PS_NG, |
---|
1826 | 1729 | extra, |
---|
1827 | 1730 | MS_EXTRA_SIZE); |
---|
1828 | 1731 | if (i == 0) |
---|
.. | .. |
---|
1835 | 1738 | i, extra[0]); |
---|
1836 | 1739 | MS_SET_BAD_BLOCK_FLG(ms_card); |
---|
1837 | 1740 | |
---|
1838 | | - ms_set_page_status(log_blk, setPS_Error, |
---|
1839 | | - extra, |
---|
| 1741 | + ms_set_page_status(log_blk, |
---|
| 1742 | + set_PS_error, extra, |
---|
1840 | 1743 | MS_EXTRA_SIZE); |
---|
1841 | 1744 | ms_write_extra_data(chip, new_blk, i, |
---|
1842 | 1745 | extra, |
---|
.. | .. |
---|
1854 | 1757 | if (retval == STATUS_SUCCESS) |
---|
1855 | 1758 | break; |
---|
1856 | 1759 | } |
---|
1857 | | - if (rty_cnt == MS_MAX_RETRY_COUNT) { |
---|
| 1760 | + if (rty_cnt == MS_MAX_RETRY_COUNT) |
---|
1858 | 1761 | return STATUS_FAIL; |
---|
1859 | | - } |
---|
1860 | 1762 | } |
---|
1861 | 1763 | |
---|
1862 | 1764 | if (!(val & INT_REG_BREQ)) { |
---|
.. | .. |
---|
1865 | 1767 | } |
---|
1866 | 1768 | } |
---|
1867 | 1769 | |
---|
1868 | | - retval = ms_set_rw_reg_addr(chip, OverwriteFlag, MS_EXTRA_SIZE, |
---|
1869 | | - SystemParm, (6 + MS_EXTRA_SIZE)); |
---|
| 1770 | + retval = ms_set_rw_reg_addr(chip, OVERWRITE_FLAG, MS_EXTRA_SIZE, |
---|
| 1771 | + SYSTEM_PARAM, (6 + MS_EXTRA_SIZE)); |
---|
1870 | 1772 | |
---|
1871 | 1773 | ms_set_err_code(chip, MS_NO_ERROR); |
---|
1872 | 1774 | |
---|
.. | .. |
---|
1895 | 1797 | |
---|
1896 | 1798 | retval = ms_write_bytes(chip, WRITE_REG, (6 + MS_EXTRA_SIZE), |
---|
1897 | 1799 | NO_WAIT_INT, data, 16); |
---|
1898 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1800 | + if (retval != STATUS_SUCCESS) |
---|
1899 | 1801 | return STATUS_FAIL; |
---|
1900 | | - } |
---|
1901 | 1802 | |
---|
1902 | 1803 | retval = ms_send_cmd(chip, BLOCK_WRITE, WAIT_INT); |
---|
1903 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1804 | + if (retval != STATUS_SUCCESS) |
---|
1904 | 1805 | return STATUS_FAIL; |
---|
1905 | | - } |
---|
1906 | 1806 | |
---|
1907 | 1807 | ms_set_err_code(chip, MS_NO_ERROR); |
---|
1908 | 1808 | retval = ms_read_bytes(chip, GET_INT, 1, NO_WAIT_INT, &val, 1); |
---|
1909 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1809 | + if (retval != STATUS_SUCCESS) |
---|
1910 | 1810 | return STATUS_FAIL; |
---|
1911 | | - } |
---|
1912 | 1811 | |
---|
1913 | 1812 | if (val & INT_REG_CMDNK) { |
---|
1914 | 1813 | ms_set_err_code(chip, MS_CMD_NK); |
---|
.. | .. |
---|
1923 | 1822 | } |
---|
1924 | 1823 | |
---|
1925 | 1824 | if (i == 0) { |
---|
1926 | | - retval = ms_set_rw_reg_addr(chip, OverwriteFlag, |
---|
1927 | | - MS_EXTRA_SIZE, SystemParm, |
---|
| 1825 | + retval = ms_set_rw_reg_addr(chip, OVERWRITE_FLAG, |
---|
| 1826 | + MS_EXTRA_SIZE, SYSTEM_PARAM, |
---|
1928 | 1827 | 7); |
---|
1929 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1828 | + if (retval != STATUS_SUCCESS) |
---|
1930 | 1829 | return STATUS_FAIL; |
---|
1931 | | - } |
---|
1932 | 1830 | |
---|
1933 | 1831 | ms_set_err_code(chip, MS_NO_ERROR); |
---|
1934 | 1832 | |
---|
.. | .. |
---|
1947 | 1845 | |
---|
1948 | 1846 | retval = ms_write_bytes(chip, WRITE_REG, 7, |
---|
1949 | 1847 | NO_WAIT_INT, data, 8); |
---|
1950 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1848 | + if (retval != STATUS_SUCCESS) |
---|
1951 | 1849 | return STATUS_FAIL; |
---|
1952 | | - } |
---|
1953 | 1850 | |
---|
1954 | 1851 | retval = ms_send_cmd(chip, BLOCK_WRITE, WAIT_INT); |
---|
1955 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1852 | + if (retval != STATUS_SUCCESS) |
---|
1956 | 1853 | return STATUS_FAIL; |
---|
1957 | | - } |
---|
1958 | 1854 | |
---|
1959 | 1855 | ms_set_err_code(chip, MS_NO_ERROR); |
---|
1960 | 1856 | retval = ms_read_bytes(chip, GET_INT, 1, |
---|
1961 | 1857 | NO_WAIT_INT, &val, 1); |
---|
1962 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1858 | + if (retval != STATUS_SUCCESS) |
---|
1963 | 1859 | return STATUS_FAIL; |
---|
1964 | | - } |
---|
1965 | 1860 | |
---|
1966 | 1861 | if (val & INT_REG_CMDNK) { |
---|
1967 | 1862 | ms_set_err_code(chip, MS_CMD_NK); |
---|
.. | .. |
---|
1992 | 1887 | #endif |
---|
1993 | 1888 | |
---|
1994 | 1889 | retval = ms_prepare_reset(chip); |
---|
1995 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1890 | + if (retval != STATUS_SUCCESS) |
---|
1996 | 1891 | return STATUS_FAIL; |
---|
1997 | | - } |
---|
1998 | 1892 | |
---|
1999 | 1893 | ms_card->ms_type |= TYPE_MS; |
---|
2000 | 1894 | |
---|
2001 | 1895 | retval = ms_send_cmd(chip, MS_RESET, NO_WAIT_INT); |
---|
2002 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1896 | + if (retval != STATUS_SUCCESS) |
---|
2003 | 1897 | return STATUS_FAIL; |
---|
2004 | | - } |
---|
2005 | 1898 | |
---|
2006 | 1899 | retval = ms_read_status_reg(chip); |
---|
2007 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1900 | + if (retval != STATUS_SUCCESS) |
---|
2008 | 1901 | return STATUS_FAIL; |
---|
2009 | | - } |
---|
2010 | 1902 | |
---|
2011 | 1903 | retval = rtsx_read_register(chip, PPBUF_BASE2, &val); |
---|
2012 | | - if (retval) { |
---|
| 1904 | + if (retval) |
---|
2013 | 1905 | return retval; |
---|
2014 | | - } |
---|
| 1906 | + |
---|
2015 | 1907 | if (val & WRT_PRTCT) |
---|
2016 | 1908 | chip->card_wp |= MS_CARD; |
---|
2017 | 1909 | else |
---|
.. | .. |
---|
2059 | 1951 | } |
---|
2060 | 1952 | |
---|
2061 | 1953 | retval = ms_read_page(chip, ms_card->boot_block, 0); |
---|
2062 | | - if (retval != STATUS_SUCCESS) { |
---|
| 1954 | + if (retval != STATUS_SUCCESS) |
---|
2063 | 1955 | return STATUS_FAIL; |
---|
2064 | | - } |
---|
2065 | 1956 | |
---|
2066 | 1957 | /* Read MS system information as sys_info */ |
---|
2067 | 1958 | rtsx_init_cmd(chip); |
---|
.. | .. |
---|
2070 | 1961 | rtsx_add_cmd(chip, READ_REG_CMD, PPBUF_BASE2 + 0x1A0 + i, 0, 0); |
---|
2071 | 1962 | |
---|
2072 | 1963 | retval = rtsx_send_cmd(chip, MS_CARD, 100); |
---|
2073 | | - if (retval < 0) { |
---|
| 1964 | + if (retval < 0) |
---|
2074 | 1965 | return STATUS_FAIL; |
---|
2075 | | - } |
---|
2076 | 1966 | |
---|
2077 | 1967 | ptr = rtsx_get_cmd_data(chip); |
---|
2078 | 1968 | memcpy(ms_card->raw_sys_info, ptr, 96); |
---|
.. | .. |
---|
2090 | 1980 | for (reg_addr = BLOCK_SIZE_0; reg_addr <= PAGE_SIZE_1; reg_addr++) |
---|
2091 | 1981 | rtsx_add_cmd(chip, READ_REG_CMD, reg_addr, 0, 0); |
---|
2092 | 1982 | |
---|
2093 | | - rtsx_add_cmd(chip, READ_REG_CMD, MS_Device_Type, 0, 0); |
---|
2094 | | - rtsx_add_cmd(chip, READ_REG_CMD, MS_4bit_Support, 0, 0); |
---|
| 1983 | + rtsx_add_cmd(chip, READ_REG_CMD, MS_device_type, 0, 0); |
---|
| 1984 | + rtsx_add_cmd(chip, READ_REG_CMD, MS_4bit_support, 0, 0); |
---|
2095 | 1985 | |
---|
2096 | 1986 | retval = rtsx_send_cmd(chip, MS_CARD, 100); |
---|
2097 | | - if (retval < 0) { |
---|
| 1987 | + if (retval < 0) |
---|
2098 | 1988 | return STATUS_FAIL; |
---|
2099 | | - } |
---|
2100 | 1989 | |
---|
2101 | 1990 | ptr = rtsx_get_cmd_data(chip); |
---|
2102 | 1991 | |
---|
.. | .. |
---|
2168 | 2057 | |
---|
2169 | 2058 | /* Switch I/F Mode */ |
---|
2170 | 2059 | if (ptr[15]) { |
---|
2171 | | - retval = ms_set_rw_reg_addr(chip, 0, 0, SystemParm, 1); |
---|
2172 | | - if (retval != STATUS_SUCCESS) { |
---|
| 2060 | + retval = ms_set_rw_reg_addr(chip, 0, 0, SYSTEM_PARAM, 1); |
---|
| 2061 | + if (retval != STATUS_SUCCESS) |
---|
2173 | 2062 | return STATUS_FAIL; |
---|
2174 | | - } |
---|
2175 | 2063 | |
---|
2176 | 2064 | retval = rtsx_write_register(chip, PPBUF_BASE2, 0xFF, 0x88); |
---|
2177 | | - if (retval) { |
---|
| 2065 | + if (retval) |
---|
2178 | 2066 | return retval; |
---|
2179 | | - } |
---|
| 2067 | + |
---|
2180 | 2068 | retval = rtsx_write_register(chip, PPBUF_BASE2 + 1, 0xFF, 0); |
---|
2181 | | - if (retval) { |
---|
| 2069 | + if (retval) |
---|
2182 | 2070 | return retval; |
---|
2183 | | - } |
---|
2184 | 2071 | |
---|
2185 | 2072 | retval = ms_transfer_tpc(chip, MS_TM_WRITE_BYTES, WRITE_REG, 1, |
---|
2186 | 2073 | NO_WAIT_INT); |
---|
2187 | | - if (retval != STATUS_SUCCESS) { |
---|
| 2074 | + if (retval != STATUS_SUCCESS) |
---|
2188 | 2075 | return STATUS_FAIL; |
---|
2189 | | - } |
---|
2190 | 2076 | |
---|
2191 | 2077 | retval = rtsx_write_register(chip, MS_CFG, |
---|
2192 | 2078 | 0x58 | MS_NO_CHECK_INT, |
---|
2193 | 2079 | MS_BUS_WIDTH_4 | |
---|
2194 | 2080 | PUSH_TIME_ODD | |
---|
2195 | 2081 | MS_NO_CHECK_INT); |
---|
2196 | | - if (retval) { |
---|
| 2082 | + if (retval) |
---|
2197 | 2083 | return retval; |
---|
2198 | | - } |
---|
2199 | 2084 | |
---|
2200 | 2085 | ms_card->ms_type |= MS_4BIT; |
---|
2201 | 2086 | } |
---|
.. | .. |
---|
2221 | 2106 | |
---|
2222 | 2107 | size = ms_card->segment_cnt * sizeof(struct zone_entry); |
---|
2223 | 2108 | ms_card->segment = vzalloc(size); |
---|
2224 | | - if (!ms_card->segment) { |
---|
| 2109 | + if (!ms_card->segment) |
---|
2225 | 2110 | return STATUS_FAIL; |
---|
2226 | | - } |
---|
2227 | 2111 | |
---|
2228 | 2112 | retval = ms_read_page(chip, ms_card->boot_block, 1); |
---|
2229 | | - if (retval != STATUS_SUCCESS) { |
---|
| 2113 | + if (retval != STATUS_SUCCESS) |
---|
2230 | 2114 | goto INIT_FAIL; |
---|
2231 | | - } |
---|
2232 | 2115 | |
---|
2233 | 2116 | reg_addr = PPBUF_BASE2; |
---|
2234 | 2117 | for (i = 0; i < (((ms_card->total_block >> 9) * 10) + 1); i++) { |
---|
2235 | 2118 | int block_no; |
---|
2236 | 2119 | |
---|
2237 | 2120 | retval = rtsx_read_register(chip, reg_addr++, &val1); |
---|
2238 | | - if (retval != STATUS_SUCCESS) { |
---|
| 2121 | + if (retval != STATUS_SUCCESS) |
---|
2239 | 2122 | goto INIT_FAIL; |
---|
2240 | | - } |
---|
2241 | 2123 | |
---|
2242 | 2124 | retval = rtsx_read_register(chip, reg_addr++, &val2); |
---|
2243 | | - if (retval != STATUS_SUCCESS) { |
---|
| 2125 | + if (retval != STATUS_SUCCESS) |
---|
2244 | 2126 | goto INIT_FAIL; |
---|
2245 | | - } |
---|
2246 | 2127 | |
---|
2247 | 2128 | defect_block = ((u16)val1 << 8) | val2; |
---|
2248 | 2129 | if (defect_block == 0xFFFF) |
---|
.. | .. |
---|
2403 | 2284 | |
---|
2404 | 2285 | if (!ms_card->segment) { |
---|
2405 | 2286 | retval = ms_init_l2p_tbl(chip); |
---|
2406 | | - if (retval != STATUS_SUCCESS) { |
---|
| 2287 | + if (retval != STATUS_SUCCESS) |
---|
2407 | 2288 | return retval; |
---|
2408 | | - } |
---|
2409 | 2289 | } |
---|
2410 | 2290 | |
---|
2411 | 2291 | if (ms_card->segment[seg_no].build_flag) { |
---|
.. | .. |
---|
2423 | 2303 | |
---|
2424 | 2304 | if (!segment->l2p_table) { |
---|
2425 | 2305 | segment->l2p_table = vmalloc(array_size(table_size, 2)); |
---|
2426 | | - if (!segment->l2p_table) { |
---|
| 2306 | + if (!segment->l2p_table) |
---|
2427 | 2307 | goto BUILD_FAIL; |
---|
2428 | | - } |
---|
2429 | 2308 | } |
---|
2430 | | - memset((u8 *)(segment->l2p_table), 0xff, table_size * 2); |
---|
| 2309 | + memset((u8 *)(segment->l2p_table), 0xff, array_size(table_size, 2)); |
---|
2431 | 2310 | |
---|
2432 | 2311 | if (!segment->free_table) { |
---|
2433 | | - segment->free_table = vmalloc(MS_FREE_TABLE_CNT * 2); |
---|
2434 | | - if (!segment->free_table) { |
---|
| 2312 | + segment->free_table = vmalloc(array_size(MS_FREE_TABLE_CNT, 2)); |
---|
| 2313 | + if (!segment->free_table) |
---|
2435 | 2314 | goto BUILD_FAIL; |
---|
2436 | | - } |
---|
2437 | 2315 | } |
---|
2438 | | - memset((u8 *)(segment->free_table), 0xff, MS_FREE_TABLE_CNT * 2); |
---|
| 2316 | + memset((u8 *)(segment->free_table), 0xff, array_size(MS_FREE_TABLE_CNT, 2)); |
---|
2439 | 2317 | |
---|
2440 | 2318 | start = (u16)seg_no << 9; |
---|
2441 | 2319 | end = (u16)(seg_no + 1) << 9; |
---|
.. | .. |
---|
2558 | 2436 | return STATUS_SUCCESS; |
---|
2559 | 2437 | } |
---|
2560 | 2438 | retval = ms_init_page(chip, phy_blk, log_blk, 0, 1); |
---|
2561 | | - if (retval != STATUS_SUCCESS) { |
---|
| 2439 | + if (retval != STATUS_SUCCESS) |
---|
2562 | 2440 | goto BUILD_FAIL; |
---|
2563 | | - } |
---|
2564 | 2441 | |
---|
2565 | 2442 | segment->l2p_table[idx] = phy_blk; |
---|
2566 | 2443 | if (seg_no == ms_card->segment_cnt - 1) { |
---|
.. | .. |
---|
2591 | 2468 | retval = ms_copy_page(chip, tmp_blk, phy_blk, |
---|
2592 | 2469 | log_blk, 0, |
---|
2593 | 2470 | ms_card->page_off + 1); |
---|
2594 | | - if (retval != STATUS_SUCCESS) { |
---|
| 2471 | + if (retval != STATUS_SUCCESS) |
---|
2595 | 2472 | return STATUS_FAIL; |
---|
2596 | | - } |
---|
2597 | 2473 | |
---|
2598 | 2474 | segment->l2p_table[log_blk] = phy_blk; |
---|
2599 | 2475 | |
---|
2600 | 2476 | retval = ms_set_bad_block(chip, tmp_blk); |
---|
2601 | | - if (retval != STATUS_SUCCESS) { |
---|
| 2477 | + if (retval != STATUS_SUCCESS) |
---|
2602 | 2478 | return STATUS_FAIL; |
---|
2603 | | - } |
---|
2604 | 2479 | } |
---|
2605 | 2480 | } |
---|
2606 | 2481 | } |
---|
.. | .. |
---|
2626 | 2501 | memset(ms_card, 0, sizeof(struct ms_info)); |
---|
2627 | 2502 | |
---|
2628 | 2503 | retval = enable_card_clock(chip, MS_CARD); |
---|
2629 | | - if (retval != STATUS_SUCCESS) { |
---|
| 2504 | + if (retval != STATUS_SUCCESS) |
---|
2630 | 2505 | return STATUS_FAIL; |
---|
2631 | | - } |
---|
2632 | 2506 | |
---|
2633 | 2507 | retval = select_card(chip, MS_CARD); |
---|
2634 | | - if (retval != STATUS_SUCCESS) { |
---|
| 2508 | + if (retval != STATUS_SUCCESS) |
---|
2635 | 2509 | return STATUS_FAIL; |
---|
2636 | | - } |
---|
2637 | 2510 | |
---|
2638 | 2511 | ms_card->ms_type = 0; |
---|
2639 | 2512 | |
---|
.. | .. |
---|
2641 | 2514 | if (retval != STATUS_SUCCESS) { |
---|
2642 | 2515 | if (ms_card->check_ms_flow) { |
---|
2643 | 2516 | retval = reset_ms(chip); |
---|
2644 | | - if (retval != STATUS_SUCCESS) { |
---|
| 2517 | + if (retval != STATUS_SUCCESS) |
---|
2645 | 2518 | return STATUS_FAIL; |
---|
2646 | | - } |
---|
2647 | 2519 | } else { |
---|
2648 | 2520 | return STATUS_FAIL; |
---|
2649 | 2521 | } |
---|
2650 | 2522 | } |
---|
2651 | 2523 | |
---|
2652 | 2524 | retval = ms_set_init_para(chip); |
---|
2653 | | - if (retval != STATUS_SUCCESS) { |
---|
| 2525 | + if (retval != STATUS_SUCCESS) |
---|
2654 | 2526 | return STATUS_FAIL; |
---|
2655 | | - } |
---|
2656 | 2527 | |
---|
2657 | 2528 | if (!CHK_MSPRO(ms_card)) { |
---|
2658 | 2529 | /* Build table for the last segment, |
---|
2659 | 2530 | * to check if L2P table block exists, erasing it |
---|
2660 | 2531 | */ |
---|
2661 | 2532 | retval = ms_build_l2p_tbl(chip, seg_no); |
---|
2662 | | - if (retval != STATUS_SUCCESS) { |
---|
| 2533 | + if (retval != STATUS_SUCCESS) |
---|
2663 | 2534 | return STATUS_FAIL; |
---|
2664 | | - } |
---|
2665 | 2535 | } |
---|
2666 | 2536 | |
---|
2667 | 2537 | dev_dbg(rtsx_dev(chip), "ms_card->ms_type = 0x%x\n", ms_card->ms_type); |
---|
.. | .. |
---|
2690 | 2560 | if (retval == STATUS_SUCCESS) |
---|
2691 | 2561 | break; |
---|
2692 | 2562 | } |
---|
2693 | | - if (i == MS_MAX_RETRY_COUNT) { |
---|
| 2563 | + if (i == MS_MAX_RETRY_COUNT) |
---|
2694 | 2564 | return STATUS_FAIL; |
---|
2695 | | - } |
---|
2696 | 2565 | |
---|
2697 | 2566 | return STATUS_SUCCESS; |
---|
2698 | 2567 | } |
---|
.. | .. |
---|
2731 | 2600 | } |
---|
2732 | 2601 | |
---|
2733 | 2602 | retval = ms_switch_clock(chip); |
---|
2734 | | - if (retval != STATUS_SUCCESS) { |
---|
| 2603 | + if (retval != STATUS_SUCCESS) |
---|
2735 | 2604 | return STATUS_FAIL; |
---|
2736 | | - } |
---|
2737 | 2605 | |
---|
2738 | 2606 | return STATUS_SUCCESS; |
---|
2739 | 2607 | } |
---|
.. | .. |
---|
2782 | 2650 | } |
---|
2783 | 2651 | |
---|
2784 | 2652 | retval = ms_switch_clock(chip); |
---|
2785 | | - if (retval != STATUS_SUCCESS) { |
---|
| 2653 | + if (retval != STATUS_SUCCESS) |
---|
2786 | 2654 | return STATUS_FAIL; |
---|
2787 | | - } |
---|
2788 | 2655 | |
---|
2789 | 2656 | if (srb->sc_data_direction == DMA_FROM_DEVICE) |
---|
2790 | 2657 | trans_mode = MS_TM_AUTO_READ; |
---|
.. | .. |
---|
2792 | 2659 | trans_mode = MS_TM_AUTO_WRITE; |
---|
2793 | 2660 | |
---|
2794 | 2661 | retval = rtsx_read_register(chip, MS_TRANS_CFG, &val); |
---|
2795 | | - if (retval) { |
---|
| 2662 | + if (retval) |
---|
2796 | 2663 | return retval; |
---|
2797 | | - } |
---|
2798 | 2664 | |
---|
2799 | 2665 | if (ms_card->seq_mode) { |
---|
2800 | 2666 | if ((ms_card->pre_dir != srb->sc_data_direction) || |
---|
.. | .. |
---|
2808 | 2674 | ms_card->total_sec_cnt = 0; |
---|
2809 | 2675 | if (val & MS_INT_BREQ) { |
---|
2810 | 2676 | retval = ms_send_cmd(chip, PRO_STOP, WAIT_INT); |
---|
2811 | | - if (retval != STATUS_SUCCESS) { |
---|
| 2677 | + if (retval != STATUS_SUCCESS) |
---|
2812 | 2678 | return STATUS_FAIL; |
---|
2813 | | - } |
---|
2814 | 2679 | |
---|
2815 | 2680 | rtsx_write_register(chip, RBCTL, RB_FLUSH, |
---|
2816 | 2681 | RB_FLUSH); |
---|
.. | .. |
---|
3019 | 2884 | u16 para; |
---|
3020 | 2885 | |
---|
3021 | 2886 | retval = ms_switch_clock(chip); |
---|
3022 | | - if (retval != STATUS_SUCCESS) { |
---|
| 2887 | + if (retval != STATUS_SUCCESS) |
---|
3023 | 2888 | return STATUS_FAIL; |
---|
3024 | | - } |
---|
3025 | 2889 | |
---|
3026 | | - retval = ms_set_rw_reg_addr(chip, 0x00, 0x00, Pro_TPCParm, 0x01); |
---|
3027 | | - if (retval != STATUS_SUCCESS) { |
---|
| 2890 | + retval = ms_set_rw_reg_addr(chip, 0x00, 0x00, PRO_TPC_PARM, 0x01); |
---|
| 2891 | + if (retval != STATUS_SUCCESS) |
---|
3028 | 2892 | return STATUS_FAIL; |
---|
3029 | | - } |
---|
3030 | 2893 | |
---|
3031 | 2894 | memset(buf, 0, 2); |
---|
3032 | 2895 | switch (short_data_len) { |
---|
.. | .. |
---|
3051 | 2914 | if (retval == STATUS_SUCCESS) |
---|
3052 | 2915 | break; |
---|
3053 | 2916 | } |
---|
3054 | | - if (i == MS_MAX_RETRY_COUNT) { |
---|
| 2917 | + if (i == MS_MAX_RETRY_COUNT) |
---|
3055 | 2918 | return STATUS_FAIL; |
---|
3056 | | - } |
---|
3057 | 2919 | |
---|
3058 | 2920 | if (quick_format) |
---|
3059 | 2921 | para = 0x0000; |
---|
.. | .. |
---|
3061 | 2923 | para = 0x0001; |
---|
3062 | 2924 | |
---|
3063 | 2925 | retval = mspro_set_rw_cmd(chip, 0, para, PRO_FORMAT); |
---|
3064 | | - if (retval != STATUS_SUCCESS) { |
---|
| 2926 | + if (retval != STATUS_SUCCESS) |
---|
3065 | 2927 | return STATUS_FAIL; |
---|
3066 | | - } |
---|
3067 | 2928 | |
---|
3068 | 2929 | retval = rtsx_read_register(chip, MS_TRANS_CFG, &tmp); |
---|
3069 | | - if (retval) { |
---|
| 2930 | + if (retval) |
---|
3070 | 2931 | return retval; |
---|
3071 | | - } |
---|
3072 | 2932 | |
---|
3073 | | - if (tmp & (MS_INT_CMDNK | MS_INT_ERR)) { |
---|
| 2933 | + if (tmp & (MS_INT_CMDNK | MS_INT_ERR)) |
---|
3074 | 2934 | return STATUS_FAIL; |
---|
3075 | | - } |
---|
3076 | 2935 | |
---|
3077 | 2936 | if ((tmp & (MS_INT_BREQ | MS_INT_CED)) == MS_INT_BREQ) { |
---|
3078 | 2937 | ms_card->pro_under_formatting = 1; |
---|
.. | .. |
---|
3111 | 2970 | } |
---|
3112 | 2971 | } |
---|
3113 | 2972 | |
---|
3114 | | - retval = ms_set_rw_reg_addr(chip, OverwriteFlag, MS_EXTRA_SIZE, |
---|
3115 | | - SystemParm, 6); |
---|
3116 | | - if (retval != STATUS_SUCCESS) { |
---|
| 2973 | + retval = ms_set_rw_reg_addr(chip, OVERWRITE_FLAG, MS_EXTRA_SIZE, |
---|
| 2974 | + SYSTEM_PARAM, 6); |
---|
| 2975 | + if (retval != STATUS_SUCCESS) |
---|
3117 | 2976 | return STATUS_FAIL; |
---|
3118 | | - } |
---|
3119 | 2977 | |
---|
3120 | 2978 | if (CHK_MS4BIT(ms_card)) |
---|
3121 | 2979 | data[0] = 0x88; |
---|
.. | .. |
---|
3134 | 2992 | if (retval == STATUS_SUCCESS) |
---|
3135 | 2993 | break; |
---|
3136 | 2994 | } |
---|
3137 | | - if (i == MS_MAX_RETRY_COUNT) { |
---|
| 2995 | + if (i == MS_MAX_RETRY_COUNT) |
---|
3138 | 2996 | return STATUS_FAIL; |
---|
3139 | | - } |
---|
3140 | 2997 | |
---|
3141 | 2998 | ms_set_err_code(chip, MS_NO_ERROR); |
---|
3142 | 2999 | |
---|
3143 | 3000 | retval = ms_send_cmd(chip, BLOCK_READ, WAIT_INT); |
---|
3144 | | - if (retval != STATUS_SUCCESS) { |
---|
| 3001 | + if (retval != STATUS_SUCCESS) |
---|
3145 | 3002 | return STATUS_FAIL; |
---|
3146 | | - } |
---|
3147 | 3003 | |
---|
3148 | 3004 | ptr = buf; |
---|
3149 | 3005 | |
---|
.. | .. |
---|
3156 | 3012 | } |
---|
3157 | 3013 | |
---|
3158 | 3014 | retval = ms_read_bytes(chip, GET_INT, 1, NO_WAIT_INT, &val, 1); |
---|
3159 | | - if (retval != STATUS_SUCCESS) { |
---|
| 3015 | + if (retval != STATUS_SUCCESS) |
---|
3160 | 3016 | return STATUS_FAIL; |
---|
3161 | | - } |
---|
3162 | 3017 | |
---|
3163 | 3018 | if (val & INT_REG_CMDNK) { |
---|
3164 | 3019 | ms_set_err_code(chip, MS_CMD_NK); |
---|
.. | .. |
---|
3171 | 3026 | if (!(chip->card_wp & MS_CARD)) { |
---|
3172 | 3027 | reset_ms(chip); |
---|
3173 | 3028 | ms_set_page_status |
---|
3174 | | - (log_blk, setPS_NG, |
---|
| 3029 | + (log_blk, set_PS_NG, |
---|
3175 | 3030 | extra, |
---|
3176 | 3031 | MS_EXTRA_SIZE); |
---|
3177 | 3032 | ms_write_extra_data |
---|
.. | .. |
---|
3197 | 3052 | if (page_addr == (end_page - 1)) { |
---|
3198 | 3053 | if (!(val & INT_REG_CED)) { |
---|
3199 | 3054 | retval = ms_send_cmd(chip, BLOCK_END, WAIT_INT); |
---|
3200 | | - if (retval != STATUS_SUCCESS) { |
---|
| 3055 | + if (retval != STATUS_SUCCESS) |
---|
3201 | 3056 | return STATUS_FAIL; |
---|
3202 | | - } |
---|
3203 | 3057 | } |
---|
3204 | 3058 | |
---|
3205 | 3059 | retval = ms_read_bytes(chip, GET_INT, 1, NO_WAIT_INT, |
---|
3206 | 3060 | &val, 1); |
---|
3207 | | - if (retval != STATUS_SUCCESS) { |
---|
| 3061 | + if (retval != STATUS_SUCCESS) |
---|
3208 | 3062 | return STATUS_FAIL; |
---|
3209 | | - } |
---|
3210 | 3063 | |
---|
3211 | 3064 | if (!(val & INT_REG_CED)) { |
---|
3212 | 3065 | ms_set_err_code(chip, MS_FLASH_READ_ERROR); |
---|
.. | .. |
---|
3278 | 3131 | u8 *ptr; |
---|
3279 | 3132 | |
---|
3280 | 3133 | if (!start_page) { |
---|
3281 | | - retval = ms_set_rw_reg_addr(chip, OverwriteFlag, MS_EXTRA_SIZE, |
---|
3282 | | - SystemParm, 7); |
---|
3283 | | - if (retval != STATUS_SUCCESS) { |
---|
| 3134 | + retval = ms_set_rw_reg_addr(chip, OVERWRITE_FLAG, MS_EXTRA_SIZE, |
---|
| 3135 | + SYSTEM_PARAM, 7); |
---|
| 3136 | + if (retval != STATUS_SUCCESS) |
---|
3284 | 3137 | return STATUS_FAIL; |
---|
3285 | | - } |
---|
3286 | 3138 | |
---|
3287 | 3139 | if (CHK_MS4BIT(ms_card)) |
---|
3288 | 3140 | data[0] = 0x88; |
---|
.. | .. |
---|
3299 | 3151 | |
---|
3300 | 3152 | retval = ms_write_bytes(chip, WRITE_REG, 7, NO_WAIT_INT, |
---|
3301 | 3153 | data, 8); |
---|
3302 | | - if (retval != STATUS_SUCCESS) { |
---|
| 3154 | + if (retval != STATUS_SUCCESS) |
---|
3303 | 3155 | return STATUS_FAIL; |
---|
3304 | | - } |
---|
3305 | 3156 | |
---|
3306 | 3157 | retval = ms_send_cmd(chip, BLOCK_WRITE, WAIT_INT); |
---|
3307 | | - if (retval != STATUS_SUCCESS) { |
---|
| 3158 | + if (retval != STATUS_SUCCESS) |
---|
3308 | 3159 | return STATUS_FAIL; |
---|
3309 | | - } |
---|
3310 | 3160 | |
---|
3311 | 3161 | ms_set_err_code(chip, MS_NO_ERROR); |
---|
3312 | 3162 | retval = ms_transfer_tpc(chip, MS_TM_READ_BYTES, GET_INT, 1, |
---|
3313 | 3163 | NO_WAIT_INT); |
---|
3314 | | - if (retval != STATUS_SUCCESS) { |
---|
| 3164 | + if (retval != STATUS_SUCCESS) |
---|
3315 | 3165 | return STATUS_FAIL; |
---|
3316 | | - } |
---|
3317 | 3166 | } |
---|
3318 | 3167 | |
---|
3319 | | - retval = ms_set_rw_reg_addr(chip, OverwriteFlag, MS_EXTRA_SIZE, |
---|
3320 | | - SystemParm, (6 + MS_EXTRA_SIZE)); |
---|
3321 | | - if (retval != STATUS_SUCCESS) { |
---|
| 3168 | + retval = ms_set_rw_reg_addr(chip, OVERWRITE_FLAG, MS_EXTRA_SIZE, |
---|
| 3169 | + SYSTEM_PARAM, (6 + MS_EXTRA_SIZE)); |
---|
| 3170 | + if (retval != STATUS_SUCCESS) |
---|
3322 | 3171 | return STATUS_FAIL; |
---|
3323 | | - } |
---|
3324 | 3172 | |
---|
3325 | 3173 | ms_set_err_code(chip, MS_NO_ERROR); |
---|
3326 | 3174 | |
---|
.. | .. |
---|
3352 | 3200 | if (retval == STATUS_SUCCESS) |
---|
3353 | 3201 | break; |
---|
3354 | 3202 | } |
---|
3355 | | - if (i == MS_MAX_RETRY_COUNT) { |
---|
| 3203 | + if (i == MS_MAX_RETRY_COUNT) |
---|
3356 | 3204 | return STATUS_FAIL; |
---|
3357 | | - } |
---|
3358 | 3205 | |
---|
3359 | 3206 | for (i = 0; i < MS_MAX_RETRY_COUNT; i++) { |
---|
3360 | 3207 | retval = ms_send_cmd(chip, BLOCK_WRITE, WAIT_INT); |
---|
3361 | 3208 | if (retval == STATUS_SUCCESS) |
---|
3362 | 3209 | break; |
---|
3363 | 3210 | } |
---|
3364 | | - if (i == MS_MAX_RETRY_COUNT) { |
---|
| 3211 | + if (i == MS_MAX_RETRY_COUNT) |
---|
3365 | 3212 | return STATUS_FAIL; |
---|
3366 | | - } |
---|
3367 | 3213 | |
---|
3368 | 3214 | retval = ms_read_bytes(chip, GET_INT, 1, NO_WAIT_INT, &val, 1); |
---|
3369 | | - if (retval != STATUS_SUCCESS) { |
---|
| 3215 | + if (retval != STATUS_SUCCESS) |
---|
3370 | 3216 | return STATUS_FAIL; |
---|
3371 | | - } |
---|
3372 | 3217 | |
---|
3373 | 3218 | ptr = buf; |
---|
3374 | 3219 | for (page_addr = start_page; page_addr < end_page; page_addr++) { |
---|
.. | .. |
---|
3421 | 3266 | ms_set_err_code(chip, MS_TO_ERROR); |
---|
3422 | 3267 | rtsx_clear_ms_error(chip); |
---|
3423 | 3268 | |
---|
3424 | | - if (retval == -ETIMEDOUT) { |
---|
| 3269 | + if (retval == -ETIMEDOUT) |
---|
3425 | 3270 | return STATUS_TIMEDOUT; |
---|
3426 | | - } |
---|
3427 | 3271 | return STATUS_FAIL; |
---|
3428 | 3272 | } |
---|
3429 | 3273 | |
---|
3430 | 3274 | retval = ms_read_bytes(chip, GET_INT, 1, NO_WAIT_INT, &val, 1); |
---|
3431 | | - if (retval != STATUS_SUCCESS) { |
---|
| 3275 | + if (retval != STATUS_SUCCESS) |
---|
3432 | 3276 | return STATUS_FAIL; |
---|
3433 | | - } |
---|
3434 | 3277 | |
---|
3435 | 3278 | if ((end_page - start_page) == 1) { |
---|
3436 | 3279 | if (!(val & INT_REG_CED)) { |
---|
.. | .. |
---|
3442 | 3285 | if (!(val & INT_REG_CED)) { |
---|
3443 | 3286 | retval = ms_send_cmd(chip, BLOCK_END, |
---|
3444 | 3287 | WAIT_INT); |
---|
3445 | | - if (retval != STATUS_SUCCESS) { |
---|
| 3288 | + if (retval != STATUS_SUCCESS) |
---|
3446 | 3289 | return STATUS_FAIL; |
---|
3447 | | - } |
---|
3448 | 3290 | } |
---|
3449 | 3291 | |
---|
3450 | 3292 | retval = ms_read_bytes(chip, GET_INT, 1, |
---|
3451 | 3293 | NO_WAIT_INT, &val, 1); |
---|
3452 | | - if (retval != STATUS_SUCCESS) { |
---|
| 3294 | + if (retval != STATUS_SUCCESS) |
---|
3453 | 3295 | return STATUS_FAIL; |
---|
3454 | | - } |
---|
3455 | 3296 | } |
---|
3456 | 3297 | |
---|
3457 | 3298 | if ((page_addr == (end_page - 1)) || |
---|
.. | .. |
---|
3479 | 3320 | |
---|
3480 | 3321 | retval = ms_copy_page(chip, old_blk, new_blk, log_blk, |
---|
3481 | 3322 | page_off, ms_card->page_off + 1); |
---|
3482 | | - if (retval != STATUS_SUCCESS) { |
---|
| 3323 | + if (retval != STATUS_SUCCESS) |
---|
3483 | 3324 | return STATUS_FAIL; |
---|
3484 | | - } |
---|
3485 | 3325 | |
---|
3486 | 3326 | seg_no = old_blk >> 9; |
---|
3487 | 3327 | |
---|
.. | .. |
---|
3507 | 3347 | if (start_page) { |
---|
3508 | 3348 | retval = ms_copy_page(chip, old_blk, new_blk, log_blk, |
---|
3509 | 3349 | 0, start_page); |
---|
3510 | | - if (retval != STATUS_SUCCESS) { |
---|
| 3350 | + if (retval != STATUS_SUCCESS) |
---|
3511 | 3351 | return STATUS_FAIL; |
---|
3512 | | - } |
---|
3513 | 3352 | } |
---|
3514 | 3353 | |
---|
3515 | 3354 | return STATUS_SUCCESS; |
---|
.. | .. |
---|
3524 | 3363 | |
---|
3525 | 3364 | if (delay_write->delay_write_flag) { |
---|
3526 | 3365 | retval = ms_set_init_para(chip); |
---|
3527 | | - if (retval != STATUS_SUCCESS) { |
---|
| 3366 | + if (retval != STATUS_SUCCESS) |
---|
3528 | 3367 | return STATUS_FAIL; |
---|
3529 | | - } |
---|
3530 | 3368 | |
---|
3531 | 3369 | delay_write->delay_write_flag = 0; |
---|
3532 | 3370 | retval = ms_finish_write(chip, |
---|
.. | .. |
---|
3534 | 3372 | delay_write->new_phyblock, |
---|
3535 | 3373 | delay_write->logblock, |
---|
3536 | 3374 | delay_write->pageoff); |
---|
3537 | | - if (retval != STATUS_SUCCESS) { |
---|
| 3375 | + if (retval != STATUS_SUCCESS) |
---|
3538 | 3376 | return STATUS_FAIL; |
---|
3539 | | - } |
---|
3540 | 3377 | } |
---|
3541 | 3378 | |
---|
3542 | 3379 | return STATUS_SUCCESS; |
---|
.. | .. |
---|
3850 | 3687 | rtsx_add_cmd(chip, CHECK_REG_CMD, MS_TRANS_CFG, MS_INT_CED, MS_INT_CED); |
---|
3851 | 3688 | |
---|
3852 | 3689 | retval = rtsx_send_cmd(chip, MS_CARD, 5000); |
---|
3853 | | - if (retval != STATUS_SUCCESS) { |
---|
| 3690 | + if (retval != STATUS_SUCCESS) |
---|
3854 | 3691 | return STATUS_FAIL; |
---|
3855 | | - } |
---|
3856 | 3692 | |
---|
3857 | 3693 | val = *rtsx_get_cmd_data(chip); |
---|
3858 | | - if (val & MS_INT_ERR) { |
---|
| 3694 | + if (val & MS_INT_ERR) |
---|
3859 | 3695 | return STATUS_FAIL; |
---|
3860 | | - } |
---|
3861 | 3696 | |
---|
3862 | 3697 | return STATUS_SUCCESS; |
---|
3863 | 3698 | } |
---|
.. | .. |
---|
3920 | 3755 | if (retval == STATUS_SUCCESS) |
---|
3921 | 3756 | break; |
---|
3922 | 3757 | } |
---|
3923 | | - if (i == MS_MAX_RETRY_COUNT) { |
---|
| 3758 | + if (i == MS_MAX_RETRY_COUNT) |
---|
3924 | 3759 | return STATUS_FAIL; |
---|
3925 | | - } |
---|
3926 | 3760 | |
---|
3927 | 3761 | if (check_ms_err(chip)) { |
---|
3928 | 3762 | rtsx_clear_ms_error(chip); |
---|
.. | .. |
---|
3939 | 3773 | u8 buf[6]; |
---|
3940 | 3774 | |
---|
3941 | 3775 | if (type == 0) |
---|
3942 | | - retval = ms_set_rw_reg_addr(chip, 0, 0, Pro_TPCParm, 1); |
---|
| 3776 | + retval = ms_set_rw_reg_addr(chip, 0, 0, PRO_TPC_PARM, 1); |
---|
3943 | 3777 | else |
---|
3944 | | - retval = ms_set_rw_reg_addr(chip, 0, 0, Pro_DataCount1, 6); |
---|
| 3778 | + retval = ms_set_rw_reg_addr(chip, 0, 0, PRO_DATA_COUNT1, 6); |
---|
3945 | 3779 | |
---|
3946 | | - if (retval != STATUS_SUCCESS) { |
---|
| 3780 | + if (retval != STATUS_SUCCESS) |
---|
3947 | 3781 | return STATUS_FAIL; |
---|
3948 | | - } |
---|
3949 | 3782 | |
---|
3950 | 3783 | buf[0] = 0; |
---|
3951 | 3784 | buf[1] = 0; |
---|
.. | .. |
---|
3957 | 3790 | } |
---|
3958 | 3791 | retval = ms_write_bytes(chip, PRO_WRITE_REG, (type == 0) ? 1 : 6, |
---|
3959 | 3792 | NO_WAIT_INT, buf, 6); |
---|
3960 | | - if (retval != STATUS_SUCCESS) { |
---|
| 3793 | + if (retval != STATUS_SUCCESS) |
---|
3961 | 3794 | return STATUS_FAIL; |
---|
3962 | | - } |
---|
3963 | 3795 | |
---|
3964 | 3796 | return STATUS_SUCCESS; |
---|
3965 | 3797 | } |
---|
.. | .. |
---|
3979 | 3811 | ms_cleanup_work(chip); |
---|
3980 | 3812 | |
---|
3981 | 3813 | retval = ms_switch_clock(chip); |
---|
3982 | | - if (retval != STATUS_SUCCESS) { |
---|
| 3814 | + if (retval != STATUS_SUCCESS) |
---|
3983 | 3815 | return STATUS_FAIL; |
---|
3984 | | - } |
---|
3985 | 3816 | |
---|
3986 | 3817 | retval = mg_send_ex_cmd(chip, MG_SET_LID, 0); |
---|
3987 | 3818 | if (retval != STATUS_SUCCESS) { |
---|
.. | .. |
---|
4011 | 3842 | |
---|
4012 | 3843 | int mg_get_local_EKB(struct scsi_cmnd *srb, struct rtsx_chip *chip) |
---|
4013 | 3844 | { |
---|
4014 | | - int retval = STATUS_FAIL; |
---|
| 3845 | + int retval; |
---|
4015 | 3846 | int bufflen; |
---|
4016 | 3847 | unsigned int lun = SCSI_LUN(srb); |
---|
4017 | 3848 | u8 *buf = NULL; |
---|
.. | .. |
---|
4019 | 3850 | ms_cleanup_work(chip); |
---|
4020 | 3851 | |
---|
4021 | 3852 | retval = ms_switch_clock(chip); |
---|
4022 | | - if (retval != STATUS_SUCCESS) { |
---|
| 3853 | + if (retval != STATUS_SUCCESS) |
---|
4023 | 3854 | return STATUS_FAIL; |
---|
4024 | | - } |
---|
4025 | 3855 | |
---|
4026 | 3856 | buf = kmalloc(1540, GFP_KERNEL); |
---|
4027 | | - if (!buf) { |
---|
| 3857 | + if (!buf) |
---|
4028 | 3858 | return STATUS_ERROR; |
---|
4029 | | - } |
---|
4030 | 3859 | |
---|
4031 | 3860 | buf[0] = 0x04; |
---|
4032 | 3861 | buf[1] = 0x1A; |
---|
.. | .. |
---|
4073 | 3902 | ms_cleanup_work(chip); |
---|
4074 | 3903 | |
---|
4075 | 3904 | retval = ms_switch_clock(chip); |
---|
4076 | | - if (retval != STATUS_SUCCESS) { |
---|
| 3905 | + if (retval != STATUS_SUCCESS) |
---|
4077 | 3906 | return STATUS_FAIL; |
---|
4078 | | - } |
---|
4079 | 3907 | |
---|
4080 | 3908 | retval = mg_send_ex_cmd(chip, MG_GET_ID, 0); |
---|
4081 | 3909 | if (retval != STATUS_SUCCESS) { |
---|
.. | .. |
---|
4148 | 3976 | ms_cleanup_work(chip); |
---|
4149 | 3977 | |
---|
4150 | 3978 | retval = ms_switch_clock(chip); |
---|
4151 | | - if (retval != STATUS_SUCCESS) { |
---|
| 3979 | + if (retval != STATUS_SUCCESS) |
---|
4152 | 3980 | return STATUS_FAIL; |
---|
4153 | | - } |
---|
4154 | 3981 | |
---|
4155 | 3982 | retval = mg_send_ex_cmd(chip, MG_MAKE_RMS, 0); |
---|
4156 | 3983 | if (retval != STATUS_SUCCESS) { |
---|
.. | .. |
---|
4204 | 4031 | ms_cleanup_work(chip); |
---|
4205 | 4032 | |
---|
4206 | 4033 | retval = ms_switch_clock(chip); |
---|
4207 | | - if (retval != STATUS_SUCCESS) { |
---|
| 4034 | + if (retval != STATUS_SUCCESS) |
---|
4208 | 4035 | return STATUS_FAIL; |
---|
4209 | | - } |
---|
4210 | 4036 | |
---|
4211 | 4037 | retval = mg_send_ex_cmd(chip, MG_MAKE_KSE, 0); |
---|
4212 | 4038 | if (retval != STATUS_SUCCESS) { |
---|
.. | .. |
---|
4251 | 4077 | ms_cleanup_work(chip); |
---|
4252 | 4078 | |
---|
4253 | 4079 | retval = ms_switch_clock(chip); |
---|
4254 | | - if (retval != STATUS_SUCCESS) { |
---|
| 4080 | + if (retval != STATUS_SUCCESS) |
---|
4255 | 4081 | return STATUS_FAIL; |
---|
4256 | | - } |
---|
4257 | 4082 | |
---|
4258 | 4083 | buf = kmalloc(1028, GFP_KERNEL); |
---|
4259 | | - if (!buf) { |
---|
| 4084 | + if (!buf) |
---|
4260 | 4085 | return STATUS_ERROR; |
---|
4261 | | - } |
---|
4262 | 4086 | |
---|
4263 | 4087 | buf[0] = 0x04; |
---|
4264 | 4088 | buf[1] = 0x02; |
---|
.. | .. |
---|
4307 | 4131 | ms_cleanup_work(chip); |
---|
4308 | 4132 | |
---|
4309 | 4133 | retval = ms_switch_clock(chip); |
---|
4310 | | - if (retval != STATUS_SUCCESS) { |
---|
| 4134 | + if (retval != STATUS_SUCCESS) |
---|
4311 | 4135 | return STATUS_FAIL; |
---|
4312 | | - } |
---|
4313 | 4136 | |
---|
4314 | 4137 | buf = kmalloc(1028, GFP_KERNEL); |
---|
4315 | | - if (!buf) { |
---|
| 4138 | + if (!buf) |
---|
4316 | 4139 | return STATUS_ERROR; |
---|
4317 | | - } |
---|
4318 | 4140 | |
---|
4319 | 4141 | bufflen = min_t(int, 1028, scsi_bufflen(srb)); |
---|
4320 | 4142 | rtsx_stor_get_xfer_buf(buf, bufflen, srb); |
---|
.. | .. |
---|
4332 | 4154 | } else { |
---|
4333 | 4155 | set_sense_type(chip, lun, SENSE_TYPE_MG_WRITE_ERR); |
---|
4334 | 4156 | } |
---|
4335 | | - goto SetICVFinish; |
---|
| 4157 | + goto set_ICV_finish; |
---|
4336 | 4158 | } |
---|
4337 | 4159 | |
---|
4338 | 4160 | #ifdef MG_SET_ICV_SLOW |
---|
.. | .. |
---|
4373 | 4195 | SENSE_TYPE_MG_WRITE_ERR); |
---|
4374 | 4196 | } |
---|
4375 | 4197 | retval = STATUS_FAIL; |
---|
4376 | | - goto SetICVFinish; |
---|
| 4198 | + goto set_ICV_finish; |
---|
4377 | 4199 | } |
---|
4378 | 4200 | } |
---|
4379 | 4201 | #else |
---|
.. | .. |
---|
4392 | 4214 | } else { |
---|
4393 | 4215 | set_sense_type(chip, lun, SENSE_TYPE_MG_WRITE_ERR); |
---|
4394 | 4216 | } |
---|
4395 | | - goto SetICVFinish; |
---|
| 4217 | + goto set_ICV_finish; |
---|
4396 | 4218 | } |
---|
4397 | 4219 | #endif |
---|
4398 | 4220 | |
---|
4399 | | -SetICVFinish: |
---|
| 4221 | +set_ICV_finish: |
---|
4400 | 4222 | kfree(buf); |
---|
4401 | 4223 | return retval; |
---|
4402 | 4224 | } |
---|
.. | .. |
---|
4433 | 4255 | int retval; |
---|
4434 | 4256 | |
---|
4435 | 4257 | retval = disable_card_clock(chip, MS_CARD); |
---|
4436 | | - if (retval != STATUS_SUCCESS) { |
---|
| 4258 | + if (retval != STATUS_SUCCESS) |
---|
4437 | 4259 | return STATUS_FAIL; |
---|
4438 | | - } |
---|
4439 | 4260 | |
---|
4440 | 4261 | if (chip->asic_code) { |
---|
4441 | 4262 | retval = ms_pull_ctl_disable(chip); |
---|
4442 | | - if (retval != STATUS_SUCCESS) { |
---|
| 4263 | + if (retval != STATUS_SUCCESS) |
---|
4443 | 4264 | return STATUS_FAIL; |
---|
4444 | | - } |
---|
4445 | 4265 | } else { |
---|
4446 | 4266 | retval = rtsx_write_register(chip, FPGA_PULL_CTL, |
---|
4447 | 4267 | FPGA_MS_PULL_CTL_BIT | 0x20, |
---|
4448 | 4268 | FPGA_MS_PULL_CTL_BIT); |
---|
4449 | | - if (retval) { |
---|
| 4269 | + if (retval) |
---|
4450 | 4270 | return retval; |
---|
4451 | | - } |
---|
4452 | 4271 | } |
---|
4453 | 4272 | retval = rtsx_write_register(chip, CARD_OE, MS_OUTPUT_EN, 0); |
---|
4454 | | - if (retval) { |
---|
| 4273 | + if (retval) |
---|
4455 | 4274 | return retval; |
---|
4456 | | - } |
---|
| 4275 | + |
---|
4457 | 4276 | if (!chip->ft2_fast_mode) { |
---|
4458 | 4277 | retval = card_power_off(chip, MS_CARD); |
---|
4459 | | - if (retval != STATUS_SUCCESS) { |
---|
| 4278 | + if (retval != STATUS_SUCCESS) |
---|
4460 | 4279 | return STATUS_FAIL; |
---|
4461 | | - } |
---|
4462 | 4280 | } |
---|
4463 | 4281 | |
---|
4464 | 4282 | return STATUS_SUCCESS; |
---|
.. | .. |
---|
4486 | 4304 | #endif |
---|
4487 | 4305 | |
---|
4488 | 4306 | retval = ms_power_off_card3v3(chip); |
---|
4489 | | - if (retval != STATUS_SUCCESS) { |
---|
| 4307 | + if (retval != STATUS_SUCCESS) |
---|
4490 | 4308 | return STATUS_FAIL; |
---|
4491 | | - } |
---|
4492 | 4309 | |
---|
4493 | 4310 | return STATUS_SUCCESS; |
---|
4494 | 4311 | } |
---|