[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20210122081906.19100-1-ricky_wu@realtek.com>
Date: Fri, 22 Jan 2021 16:19:06 +0800
From: <ricky_wu@...ltek.com>
To: <arnd@...db.de>, <gregkh@...uxfoundation.org>,
<bhelgaas@...gle.com>, <ricky_wu@...ltek.com>,
<vaibhavgupta40@...il.com>, <linux-kernel@...r.kernel.org>
CC: <stable@...r.kernel.org>
Subject: [PATCH v4] Fixes: misc: rtsx: init value of aspm_enabled
From: Ricky Wu <ricky_wu@...ltek.com>
make sure ASPM state sync with pcr->aspm_enabled
init value pcr->aspm_enabled
Cc: stable@...r.kernel.org
Signed-off-by: Ricky Wu <ricky_wu@...ltek.com>
---
v2: fixed conditions in v1 if-statement
v3: give description for v1 and v2
v4: move version change below ---
---
drivers/misc/cardreader/rtsx_pcr.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/drivers/misc/cardreader/rtsx_pcr.c b/drivers/misc/cardreader/rtsx_pcr.c
index 2aa6648fa41f..5a491d2cd1ae 100644
--- a/drivers/misc/cardreader/rtsx_pcr.c
+++ b/drivers/misc/cardreader/rtsx_pcr.c
@@ -1512,6 +1512,7 @@ static int rtsx_pci_probe(struct pci_dev *pcidev,
struct pcr_handle *handle;
u32 base, len;
int ret, i, bar = 0;
+ u8 val;
dev_dbg(&(pcidev->dev),
": Realtek PCI-E Card Reader found at %s [%04x:%04x] (rev %x)\n",
@@ -1577,7 +1578,11 @@ static int rtsx_pci_probe(struct pci_dev *pcidev,
pcr->host_cmds_addr = pcr->rtsx_resv_buf_addr;
pcr->host_sg_tbl_ptr = pcr->rtsx_resv_buf + HOST_CMDS_BUF_LEN;
pcr->host_sg_tbl_addr = pcr->rtsx_resv_buf_addr + HOST_CMDS_BUF_LEN;
-
+ rtsx_pci_read_register(pcr, ASPM_FORCE_CTL, &val);
+ if (val & FORCE_ASPM_CTL0 && val & FORCE_ASPM_CTL1)
+ pcr->aspm_enabled = false;
+ else
+ pcr->aspm_enabled = true;
pcr->card_inserted = 0;
pcr->card_removed = 0;
INIT_DELAYED_WORK(&pcr->carddet_work, rtsx_pci_card_detect);
--
2.17.1
Powered by blists - more mailing lists