On 27/01/20 1:37 pm, Ulf Hansson wrote: > + Adrian Is this the same as: https://lore.kernel.org/linux-mmc/20200108093903.57620-2-hdegoede@xxxxxxxxxx/ > > On Thu, 23 Jan 2020 at 11:40, Tim Schumacher <tim@xxxxxxxxxx> wrote: >> >> On 2019-09-06, Ulf Hansson wrote: >>> On Thu, 5 Sep 2019 at 22:01, Tim Schumacher <tim@xxxxxxxxxx> wrote: >>>> >>>> Hi, >>>> >>>> I'm sending this old bug by mail since a lot of developers don't use >>>> bugzilla. >>>> >>>> Original bug report on bugzilla by Pedro Rodrigues from 2019-01-30: >>>> >>>> https://bugzilla.kernel.org/show_bug.cgi?id=202459 >>>> >>>>> This bug can be found on a Lenovo Miix 320-10ICR >>>>> >>>>> When using a SDXC (UHS) card, the screen becomes black if >>>>> _mmc_sd_resume() is called. After some investigation, I found that an >>>>> UHS card uses 1.8 V for signalling while a normal SD card uses 3.3 V. By >>>>> forcing the SDXC to use 3.3 V the black screen does not appear. It seems >>>>> that during a _mmc_sd_resume function call, while claiming the host, an >>>>> I2C resume function is called based on an existing supplier link between >>>>> the I2C bus and the card device. The problem is that if the signalling >>>>> voltage is configured to 1.8 V, during the I2C resume call, the screen >>>>> turns black. I was able to fix this issue by setting the initial signal >>>>> voltage (3.3 V) before suspending the card, so that when the card is >>>>> resumed, the voltage is in the original state. To do this I added a >>>>> function call to mmc_set_initial_signal_voltage() during mmc_power_off >>>>> routine (drivers/mmc/core/core.c). As I’m not an expert on Linux, I’m >>>>> posting the issue and possible solution so that it could be implemented >>>>> on a future release. >>>>> >>>>> Please, share your thoughts :) >>>> >>>> I can't provide further insight but I'm interested if this is possibly >>>> the cause for the general issues people are having with the SD card >>>> reader on Lenovo Miix 320 devices. >>>> >>>> Those issues described in posts like >>>> >>>> https://vincent-ventures.com/2018/12/arch-linux-on-lenovo-ideapad-miix-320/ >>>> https://esc.sh/blog/linux-on-lenovo-miix-320/ >>>> >>>> are (1) black screen when booting with an SD card installed and (2) when >>>> inserting an SD card after booting it shows up but upon trying to access >>>> it the screen turns black until the card is removed again. >>>> >>>> I can confirm (1) on my Lenovo Miix 320-10ICR with kernel version >>>> 5.2.11. I can also confirm that only SDXC cards are affected, SD and >>>> SDHC cards work as expected. >>> >>> For the mmc community to help, you need to provide some kernel logs, >>> output from lspci, figure out what mmc host driver that is being used, >>> etc - in general collect more data. Then re-post the data to >>> linux-mmc, me and a potential mmc host driver maintainer (if there is >>> one). Yes, we can look into bugzilla as well, but first we need some >>> more overall info in an email. >>> >>> Most likely, if there is any response, you will be asked to test >>> patches. So you need to be able build and boot a new kernel, but I >>> guess you already know that part. >>> >>> Kind regards >>> Uffe >>> >> >> Hi, I'm coming back to this issue now. The issue is still present in >> kernel version 5.4.8. >> >> Kernel logs from boot with SD card and black screen: https://termbin.com/outp >> Kernel logs from boot without SD card: https://termbin.com/dc2y >> >> I couldn't find anything conspicuous in there, the card is working as >> expected. Only issue is the black screen (I'm doing these tests via SSH). >> >> lspci output: https://termbin.com/x452 >> >> How do I figure out which mmc host driver is in use? I assume I'm >> looking for one of these https://github.com/torvalds/linux/tree/master/drivers/mmc/host >> I couldn't find anything like it in the kernel logs or from lsmod. >> >> Please read the original bug report by Pedro Rodrigues quoted above. >> He got to the technical core of the problem already and proposed a fix >> I assume could be understood, sanity checked and implemented by a mmc >> maintainer. > > I have read the reports and browsed the data you provided. It seems > like this is an sdhci-acpi mmc/sd controller, Adrian Hunter (Intel > maintains this variant). There is one eMMC, which seems to work fine > and then the SD-card that you have inserted. The SD card looks like it > gets detected properly. > > I don't see anything in the logs that stands out. However, I would try > a couple of different SD-cards, just to see what happens (if you have > more then one at hand). From that and going forward, I think I will > need to defer to Adrian's help. Perhaps we can put together some debug > patch for you to test, or so. > > I will keep monitoring the discussion and fold in if there is anything > more I can help with. > > Kind regards > Uffe >