Re: PATCH: rtsx_pci driver - don't disable the rts5229 card reader on Intel NUC boxes

From: Chris Clayton
Date: Tue Aug 04 2020 - 04:50:51 EST

On 04/08/2020 09:08, 吳昊澄 Ricky wrote:
>> -----Original Message-----
>> From: gregkh@xxxxxxxxxxxxxxxxxxx [mailto:gregkh@xxxxxxxxxxxxxxxxxxx]
>> Sent: Tuesday, August 04, 2020 3:49 PM
>> To: 吳昊澄 Ricky
>> Cc: Chris Clayton; LKML; rdunlap@xxxxxxxxxxxxx; philquadra@xxxxxxxxx; Arnd
>> Bergmann
>> Subject: Re: PATCH: rtsx_pci driver - don't disable the rts5229 card reader on
>> Intel NUC boxes
>> On Tue, Aug 04, 2020 at 02:44:41AM +0000, 吳昊澄 Ricky wrote:
>>> Hi Chris,
>>> rtsx_pci_write_register(pcr, FPDTL, OC_POWER_DOWN, OC_POWER_DOWN);
>>> This register operation saved power under 1mA, so if do not care the 1mA
>> power we can have a patch to remove it, make compatible with NUC6
>>> We tested others our card reader that remove it, we did not see any side effect
>>> Hi Greg k-h,
>>> Do you have any comments?
>> comments on what? I don't know what you are responding to here, sorry.
> Can we have a patch to kernel for NUC6? It may cause more power(1mA) but it will have more compatibility


I don't understand why you want to completely remove the code that sets up the 1mA power saving. That code was there
even before your patch (bede03a579b3b4a036003c4862cc1baa4ddc351f), so I assume it benefits some of the Realtek card
readers. Before your patch however, rtsx_pci_init_ocp() was not called for the rts5229 reader, but the patch introduced
an unconditional call to that function into rtsx_pci_init_hw(), which is run for the rts5229. That is what now disables
the card reader.

Now, I don't know whether other cards are affected, although I don't recall seeing any reported as I searched the kernel
and ubuntu bugzillas for any analysis of the problem. I know this is not what the patch I sent does, but having thought
about it more, seems to me that the simplest fix is to skip the new call to rtsx_pci_init_ocp() if the reader is an rts5229.

If you agree, I can prepare a patch and send it to you. Whatever the solution is, it will also be needed in the stable
kernels later than 5.0.

>> greg k-h
>> ------Please consider the environment before printing this e-mail.