misc: rtsx: Improve compatibility for rts5261
authorRui Feng <rui_feng@realsil.com.cn>
Wed, 15 Apr 2020 02:37:17 +0000 (10:37 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 23 Apr 2020 14:55:24 +0000 (16:55 +0200)
Change initial clock to improve compatibility for rts5261

Signed-off-by: Rui Feng <rui_feng@realsil.com.cn>
Link: https://lore.kernel.org/r/1586918237-3016-1-git-send-email-rui_feng@realsil.com.cn
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/misc/cardreader/rts5261.c

index 78c3b1d..4ed8612 100644 (file)
@@ -639,8 +639,13 @@ int rts5261_pci_switch_clock(struct rtsx_pcr *pcr, unsigned int card_clock,
 
        if (initial_mode) {
                /* We use 250k(around) here, in initial stage */
-               clk_divider = SD_CLK_DIVIDE_128;
-               card_clock = 30000000;
+               if (is_version(pcr, PID_5261, IC_VER_D)) {
+                       clk_divider = SD_CLK_DIVIDE_256;
+                       card_clock = 60000000;
+               } else {
+                       clk_divider = SD_CLK_DIVIDE_128;
+                       card_clock = 30000000;
+               }
        } else {
                clk_divider = SD_CLK_DIVIDE_0;
        }