mfd: rtsx: Clear hardware PFM mode in rtl8411b
authorWei WANG <wei_wang@realsil.com.cn>
Tue, 20 Aug 2013 06:18:54 +0000 (14:18 +0800)
committerSamuel Ortiz <sameo@linux.intel.com>
Tue, 20 Aug 2013 08:22:00 +0000 (10:22 +0200)
Clear hw_pfm_en to disable hardware PFM mode, to fix a bug that in some
situation registers in 0xFDxx domain can't be accessed.

Signed-off-by: Wei WANG <wei_wang@realsil.com.cn>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
drivers/mfd/rtl8411.c
include/linux/mfd/rtsx_pci.h

index 56cc248..d183fa0 100644 (file)
@@ -114,6 +114,8 @@ static int rtl8411b_extra_init_hw(struct rtsx_pcr *pcr)
                        0xFF, pcr->sd30_drive_sel_3v3);
        rtsx_pci_add_cmd(pcr, WRITE_REG_CMD, CD_PAD_CTL,
                        CD_DISABLE_MASK | CD_AUTO_DISABLE, CD_ENABLE);
+       rtsx_pci_add_cmd(pcr, WRITE_REG_CMD, FUNC_FORCE_CTL,
+                       0x06, 0x00);
 
        return rtsx_pci_send_cmd(pcr, 100);
 }
index 11ab786..9a16276 100644 (file)
 #define PME_FORCE_CTL                  0xFE56
 #define ASPM_FORCE_CTL                 0xFE57
 #define PM_CLK_FORCE_CTL               0xFE58
+#define FUNC_FORCE_CTL                 0xFE59
 #define PERST_GLITCH_WIDTH             0xFE5C
 #define CHANGE_LINK_STATE              0xFE5B
 #define RESET_LOAD_REG                 0xFE5E