[meta-freescale] i.MX6 - PCIe not detecting some devices in Linux 3.14.28

Nikolay Dimitrov picmaster at mail.bg
Thu May 21 11:11:18 PDT 2015


Hi Eric,

On 05/21/2015 08:29 PM, Eric Bénard wrote:
> Hi Nikolay,
>
> Le Thu, 21 May 2015 19:41:19 +0300,
> Nikolay Dimitrov <picmaster at mail.bg> a écrit :
>> On 05/21/2015 07:26 PM, ansaris wrote:
>>> Hi,
>>> We are using imx6Q custom platform based on sabresd platform. For our
>>> development we are using Linux 3.14.28_1.0.0-GA BSP but initially we
>>> used Linux 3.10.53_1.0.0-GA BSP.
>>> We have seen that the pcie driver file is updated in Linux 3.14.28.
>>>
>>> The problem we are facing is, we have a PCIe device which is SSD SATA.
>>> With Linux 3.14.28_1.0.0-GA BSP, the PCIe-SATA is not getting detected
>>> and it is showing below error.
>>>       imx6q-pcie 1ffc000.pcie: phy link never came up
>>>       imx6q-pcie 1ffc000.pcie: Failed to bring link up!
>>>       imx6q-pcie 1ffc000.pcie: failed to initialize host
>>>       imx6q-pcie: probe of 1ffc000.pcie failed with error -22
>>>
>>> With Linux 3.10.53_1.0.0-GA BSP, the same PCIe-SATA is getting detected
>>> and mounted as block device.
>>> Here we have not changed any hardware. We just replaced the booting SD
>>> card which contains Linux 3.10.53_1.0.0-GA BSP binaries.
>>>
>>> In addition, , we have checked with several PCIe devices (network PCIe
>>> devices) with Linux 3.14.28_1.0.0-GA BSP. Only some of the PCIe devices
>>> are getting detected.
>>> Please note that, all the devices are getting detected in the Linux
>>> 3.10.53_1.0.0-GA BSP.
>>>
>>> Please help us to resolve this issue.
>>
>> Please clarify whether your device is PCIe or SATA - it can be only one
>> of those, not both at the same time.
>>
> FWIW newer M.2 boards directly expose a PCIe interface and embed a SATA
> controler which (I believe) expose one drive but balances the load
> between several SATA SSD to get better performances.
> So the host only see a PCIe interface but the board has both PCIe and
> SATA inside (and the host needs both PCIe and AHCI support) :
> http://en.wikipedia.org/wiki/M.2
> http://www.amazon.com/Samsung-XP941-512GB-AHCI-80mm/dp/B00JOSM3TK
> http://www.bjorn3d.com/2015/03/480gb-hyperx-predator-m-2-pcie-ssd-shpm2280p2480g/
> (M.2 SSD also exist with a SATA interface directly exposed but they have
> a different keying on the connector to prevent the mismatch which is
> possible with mSATA vs mPCIe).

Ahh, I see. I was thinking about SATA mostly as physical interface, not
as a PCIe-based controller...

Yes, you're correct - in this case PCIe will have to be enabled and
working, for sure, and the device's specific driver (could be a generic
SATA?) should also be enabled.

@ansaris - I'm not an expert in PCIe, but you can check whether your
board generates a proper PCIe reference clock.

Regards,
Nikolay


More information about the meta-freescale mailing list