[U-Boot] [PATCH 1/2] WIP: Disable SCSI on x86

Stefan Roese sr at denx.de
Tue Jun 27 04:53:00 UTC 2017


Hi Bin,

On 27.06.2017 01:34, Bin Meng wrote:
> Hi Stefan,
> 
> On Tue, Jun 27, 2017 at 2:42 AM, Simon Glass <sjg at chromium.org> wrote:
>> Hi,
>>
>> On 26 June 2017 at 03:11, Bin Meng <bmeng.cn at gmail.com> wrote:
>>>
>>> Hi Stefan,
>>>
>>> On Mon, Jun 26, 2017 at 3:29 PM, Stefan Roese <sr at denx.de> wrote:
>>>> Hi Bin,
>>>>
>>>>
>>>> On 24.06.2017 14:08, Bin Meng wrote:
>>>>>
>>>>> Hi Stefan,
>>>>>
>>>>> On Sat, Jun 24, 2017 at 6:29 PM, Stefan Roese <sr at denx.de> wrote:
>>>>>>
>>>>>> Hi Simon, Hi Bin,
>>>>>>
>>>>>>
>>>>>> On 12.06.2017 05:53, Simon Glass wrote:
>>>>>>>
>>>>>>>
>>>>>>> Hi Bin,
>>>>>>>
>>>>>>> On 9 June 2017 at 21:47, Bin Meng <bmeng.cn at gmail.com> wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>> Hi Simon,
>>>>>>>>
>>>>>>>> On Fri, Jun 9, 2017 at 8:27 PM, Simon Glass <sjg at chromium.org> wrote:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Hi Bin,
>>>>>>>>>
>>>>>>>>> On 1 June 2017 at 17:04, Bin Meng <bmeng.cn at gmail.com> wrote:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Hi Simon,
>>>>>>>>>>
>>>>>>>>>> On Thu, Jun 1, 2017 at 9:14 PM, Simon Glass <sjg at chromium.org> wrote:
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Hi Bin,
>>>>>>>>>>>
>>>>>>>>>>> On 1 June 2017 at 01:27, Bin Meng <bmeng.cn at gmail.com> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Hi Simon,
>>>>>>>>>>>>
>>>>>>>>>>>> On Wed, May 17, 2017 at 8:42 AM, Bin Meng <bmeng.cn at gmail.com>
>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Hi Simon,
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Sat, May 13, 2017 at 9:11 AM, Simon Glass <sjg at chromium.org>
>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Hi Bin,
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On 8 May 2017 at 01:05, Bin Meng <bmeng.cn at gmail.com> wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Hi Simon,
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On Mon, Apr 10, 2017 at 8:38 AM, Simon Glass <sjg at chromium.org>
>>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> This is not to be applied. It is needed to test using
>>>>>>>>>>>>>>>> CONFIG_DM_MMC on x86
>>>>>>>>>>>>>>>> since SCSI is broken with this setup.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Signed-off-by: Simon Glass <sjg at chromium.org>
>>>>>>>>>>>>>>>> ---
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> When you said "SCSI is broken with this setup", did you mean GP#
>>>>>>>>>>>>>>> exception when boot up with a hard disk like below?
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Yes that's right.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Do you plan to work on a patch soon?
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> I tracked down the exception happens at
>>>>>>>>>>>> part_test_efi()->block_dread() function:
>>>>>>>>>>>>
>>>>>>>>>>>> if (!ops->read)
>>>>>>>>>>>>        return -ENOSYS;
>>>>>>>>>>>>
>>>>>>>>>>>> Where ops points to nowhere, because underlying SATA device does
>>>>>>>>>>>> not
>>>>>>>>>>>> have a DM driver associated.
>>>>>>>>>>>>
>>>>>>>>>>>> Could you please fix this?
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> I've been hoping that someone else will take on this side of things,
>>>>>>>>>>> but perhaps I am optimistic. I'll see if I can take a look.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Thanks. I wanted to fix this myself however I have been busy on some
>>>>>>>>>> other stuff.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> I've sent a series which I think puts SCSI and SATA in a better
>>>>>>>>> position with respect to driver model. However even with that there is
>>>>>>>>> more work to do.
>>>>>>>>>
>>>>>>>>
>>>>>>>> Thanks for working on this! I will take a look.
>>>>>>>>
>>>>>>>> If we don't get enough time to sort out everything, we will have to
>>>>>>>> revert previous MMC DM conversion patch and leave that to next
>>>>>>>> release.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Yes, let's see how it goes. I probably have time for one more spin if
>>>>>>> it is soon...but the last patch needs work.
>>>>>>
>>>>>>
>>>>>>
>>>>>> As Andreas has pointed out here:
>>>>>>
>>>>>> https://lists.denx.de/pipermail/u-boot/2017-June/296337.html
>>>>>>
>>>>>> SCSI seems to be broken also on Armada 37xx (and perhaps other
>>>>>> platforms as well). Is it correct to assume, that this x86 SCSI
>>>>>> thread is about the same issue?
>>>>>>
>>>>>> I know that you are working on DM SCSI support, which is great of
>>>>>> course. But do you have an idea, if and how this could be fixed for
>>>>>> this upcoming release?
>>>>>
>>>>>
>>>>> Simon already sent a series to convert SCSI to DM and applied to
>>>>> u-boot-dm. I also sent a series to fix some additional issues [1].
>>>>>
>>>>> Can you or Andreas try on top of u-boot-dm plus my patches to see if
>>>>> the issue is fixed?
>>>>>
>>>>> [1] http://patchwork.ozlabs.org/patch/777312/
>>>>
>>>>
>>>> I tested with this version and "scsi reset" still reboots the
>>>> board. Please note that SCSI / AHCI probably needs some additional
>>>> work, as its currently supported via this driver in arch/arm
>>>> which needs to moved to the correct driver directory:
>>>>
>>>> arch/arm/mach-mvebu/sata.c
>>>>
>>>> It probably also needs some work to function correctly with these
>>>> new DM SCSI patches. But all this seems a bit late in this release
>>>> cycle. Do we have a "solution" to fix this issue for this upcoming
>>>> release?
>>>>
>>>
>>> Did the failure happen at the place part_test_efi()->block_dread() function?
>>>
>>> if (!ops->read)
>>>      return -ENOSYS;
>>>
>>> Where ops points to nowhere ..
>>>
>>> If so, I think the SATA driver needs to be converted to DM.
>>>
>>> But I don't know if a simple solution exists for now on your board. I
>>> noticed that Andreas said v2017.01 works but v2017.03 is failing. So
>>> it has been broken for some time. But Simon's series aims to resolve
>>> the issues seen on x86, which is an intermediate issue in this release
>>> cycle.
>>
>> I sent a pull request (forgetting to cc the list) for this but it was
>> too close to RC2 so Tom rejected it. It is sitting in dm/master if you
>> want to look.
>>
>> At this stage I don't have a good answer. Even my series doesn't
>> complete the SATA conversion to DM. We still need AHCI to have proper
>> operations and convert the rest of the drivers. I was hoping that
>> might be easier once the powerpc removals are complete.
> 
> Since the pull request of u-boot-dm was rejected for this release, I
> sent a revert patch for x86 [1] to fix x86 SCSI issues.
> 
> Is Armada 37xx converted to use DM MMC? If so, maybe a quick fix is to
> revert the Armada 37xx board back to use non-DM MMC, like x86 does?

The SDHCI driver for Armada 37xx (and 7k/8k) was added only recently
and directly as a DM driver. So I can't move it back to non-DM
without bigger effort - which does not make much sense.

My feeling is, that its probably best to do the SCSI / AHCI DM
conversion soon in the next release cycle and I will definitely
help with converting / testing on the Armada 64bit platforms then.

Thanks,
Stefan


More information about the U-Boot mailing list