linux-pci.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Roberto Fichera <kernel@tekno-soft.it>
To: Richard Zhu <hongxing.zhu@nxp.com>, Bjorn Helgaas <helgaas@kernel.org>
Cc: "linux-pci@vger.kernel.org" <linux-pci@vger.kernel.org>,
	Richard Zhu <Richard.Zhu@freescale.com>,
	Lucas Stach <l.stach@pengutronix.de>
Subject: Re: iMX6q PCIe phy link never came up on kernel v4.4.x
Date: Thu, 3 Mar 2016 10:30:29 +0100	[thread overview]
Message-ID: <56D80435.90408@tekno-soft.it> (raw)
In-Reply-To: <DBXPR04MB2706C7C2FD2348D205331998CBD0@DBXPR04MB270.eurprd04.prod.outlook.com>

On 03/03/2016 10:15 AM, Richard Zhu wrote:

Hi Richard,

>> -----Original Message-----
>> From: Bjorn Helgaas [mailto:helgaas@kernel.org]
>> Sent: Thursday, March 03, 2016 3:57 AM
>> To: Roberto Fichera
>> Cc: linux-pci@vger.kernel.org; Richard Zhu; Lucas Stach
>> Subject: Re: iMX6q PCIe phy link never came up on kernel v4.4.x
>>
>> [+cc Richard, Lucas]
>>
>> On Wed, Mar 02, 2016 at 06:13:11PM +0100, Roberto Fichera wrote:
>>> On 03/01/2016 07:47 PM, Roberto Fichera wrote:
>>>
>>> Sorry guy if I push a little bit about this, I've added some debugging code
>> regarding my issue:
>>> [    0.557268] imx6q-pcie 1ffc000.pcie: phy link never came up
>>> [    0.557290] imx6q-pcie 1ffc000.pcie: LTSSM current state: 0x3
>> (S_POLL_COMPLIANCE)
>>> [    0.557304] imx6q-pcie 1ffc000.pcie: PIPE transmit K indication: 1
>>> [    0.557318] imx6q-pcie 1ffc000.pcie: PIPE Transmit data: 0x4abc
>>> [    0.557332] imx6q-pcie 1ffc000.pcie: Receiver is receiving logical idle: no
>>> [    0.557345] imx6q-pcie 1ffc000.pcie: Second symbol is also idle (16-bit PHY
>> interface only): no
>>> [    0.557360] imx6q-pcie 1ffc000.pcie: Currently receiving k237 (PAD) in
>> place of link number: no
>>> [    0.557372] imx6q-pcie 1ffc000.pcie: Currently receiving k237 (PAD) in
>> place of lane number: no
>>> [    0.557385] imx6q-pcie 1ffc000.pcie: Link control bits advertised by link
>> partner: 0xa
>>> [    0.557398] imx6q-pcie 1ffc000.pcie: Receiver detected lane reversal: no
>>> [    0.557410] imx6q-pcie 1ffc000.pcie: TS2 training sequence received: no
>>> [    0.557422] imx6q-pcie 1ffc000.pcie: TS1 training sequence received: no
>>> [    0.557434] imx6q-pcie 1ffc000.pcie: Receiver reports skip reception: no
>>> [    0.557446] imx6q-pcie 1ffc000.pcie: LTSSM reports PHY link up: no
>>> [    0.557460] imx6q-pcie 1ffc000.pcie: A skip ordered set has been
>> transmitted: no
>>> [    0.557474] imx6q-pcie 1ffc000.pcie: Link number advertised/confirmed by
>> link partner: 68
>>> [    0.557487] imx6q-pcie 1ffc000.pcie: Application request to initiate training
>> reset: no
>>> [    0.557500] imx6q-pcie 1ffc000.pcie: PIPE transmit compliance request: no
>>> [    0.557512] imx6q-pcie 1ffc000.pcie: PIPE transmit electrical idle request:
>> no
>>> [    0.557524] imx6q-pcie 1ffc000.pcie: PIPE receiver detect/loopback request:
>> no
>>> [    0.557536] imx6q-pcie 1ffc000.pcie: LTSSM-negotiated link reset: yes
>>> [    0.557547] imx6q-pcie 1ffc000.pcie: LTSSM testing for polarity reversal: no
>>> [    0.557559] imx6q-pcie 1ffc000.pcie: LTSSM performing link training: no
>>> [    0.557572] imx6q-pcie 1ffc000.pcie: LTSSM in DISABLE state; link
>> inoperable: no
>>> [    0.557583] imx6q-pcie 1ffc000.pcie: Scrambling disabled for the link: no
>>> [    0.558156] imx6q-pcie 1ffc000.pcie: PCI host bridge to bus 0000:00
>>> [    0.558179] pci_bus 0000:00: root bus resource [bus 00-ff]
>>> [    0.558197] pci_bus 0000:00: root bus resource [??? 0x01f00000-0x01f7ffff
>> flags 0x0]
>>> [    0.558212] pci_bus 0000:00: root bus resource [io  0x0000-0xffff]
>>> [    0.558226] pci_bus 0000:00: root bus resource [mem 0x01000000-
>> 0x01efffff]
>>> [    0.558346] pci 0000:00:00.0: [16c3:abcd] type 01 class 0x060400
>>> [    0.558468] pci 0000:00:00.0: reg 0x10: [mem 0x00000000-0x000fffff]
>>> [    0.558510] pci 0000:00:00.0: reg 0x38: [mem 0x00000000-0x0000ffff pref]
>>> [    0.558708] pci 0000:00:00.0: supports D1
>>> [    0.558727] pci 0000:00:00.0: PME# supported from D0 D1 D3hot D3cold
>>> [    0.559495] PCI: bus0: Fast back to back transfers disabled
>>> [    0.559834] PCI: bus1: Fast back to back transfers enabled
>>> [    0.559997] pci 0000:00:00.0: BAR 0: assigned [mem 0x01000000-0x010fffff]
>>> [    0.560025] pci 0000:00:00.0: BAR 6: assigned [mem 0x01100000-0x0110ffff
>> pref]
>>> [    0.560047] pci 0000:00:00.0: PCI bridge to [bus 01]
>>> [    0.560812] pcieport 0000:00:00.0: Signaling PME through PCIe PME
>> interrupt
>>> [    0.560837] pcie_pme 0000:00:00.0:pcie01: service driver pcie_pme loaded
>>>
>>> Any idea what's going on?
>>>
>>> Thanks in advance,
>>> Roberto Fichera.
>>>
>>>> Hi There,
>>>>
>>>> Working on a custom iMX6q board I'm getting a PCIe phy link never
>>>> came up, even if uboot seems detecting everything ok. My DTS is
>>>> enabling PCIe with
>>>>
>>>> &pcie {
>>>>     pinctrl-names = "default";
>>>>     pinctrl-0 = <&pinctrl_pcie_reset>;
>>>>     reset-gpio = <&gpio7 12 0>;
>>>>     status = "okay";
>>>> };
>>>>
>>>> The PCIe is connected to a PCIe-to-PCI TI XIO2001. The XIO2001 power
>>>> is controlled by GPIO_9 and the corresponding fixed regulator is set
>>>> as
>>>>
>>>> 		reg_pcie: regulator@4 {
>>>> 			compatible = "regulator-fixed";
>>>> 			reg = <4>;
>>>> 			pinctrl-names = "default";
>>>> 			pinctrl-0 = <&pinctrl_pcie_reg>;
>>>> 			regulator-name = "MPCIE_3V3";
>>>> 			regulator-min-microvolt = <3300000>;
>>>> 			regulator-max-microvolt = <3300000>;
>>>> 			gpio = <&gpio1 9 0>;
>>>> 			regulator-always-on;
>>>> 			enable-active-high;
>>>> 		};
>>>>
>>>> so I'd like to know if there is any other special setup to do in order to get it
>> to work on a v4.4.x kernel.
>>>> Or anyway how to debug it.
>>>>
>>>> Any suggestion?
>>>>
> [Zhu hongxing] It seems that the link down is caused by the different initialization procedure.
> Can you take a try by the previouse kernel version?
> Or, you can dump and compare the register values just before the LTSSM_ENABLE is asserted between Linux and uboot.

Which register do you need to dump?

>>>> Thanks in advance,
>>>> Roberto Fichera.
>>>>
>>>> U-Boot 2014.04-imx_v2014.04_3.14.38_6qp_beta+g6e9282c (Feb 15 2016 -
>>>> 10:02:31)
>>>>
>>>> CPU:   Freescale i.MX6Q rev1.5 at 792 MHz
>>>> CPU:   Temperature 35 C, calibration data: 0x5664d569
>>>> Reset cause: POR
>>>> Board: Janas iMX6Q (ID:e315c064140749d4)
>>>> I2C:   ready
>>>> DRAM:  2 GiB
>>>> MMC:   FSL_SDHC: 0, FSL_SDHC: 1
>>>> *** Warning - bad CRC, using default environment
>>>>
>>>>   00:01.0     - 16c3:abcd - Bridge device
>>>>    01:00.0    - 104c:8240 - Bridge device
>>>>     02:04.0   - 1397:08b4 - Network controller
>>>> In:    serial
>>>> Out:   serial
>>>> Err:   serial
>>>> Found PFUZE100! deviceid=10,revid=21 mmc1(part 0) is current device
>>>> Net:   FEC [PRIME]
>>>> Warning: failed to set MAC address
>>>>
>>>> Normal Boot
>>>> ....
>>>> ....
>>>> [    0.236141] PCI host bridge /soc/pcie@0x01000000 ranges:
>>>> [    0.236162]   No bus range found for /soc/pcie@0x01000000, using [bus
>> 00-ff]
>>>> [    0.236213]   err 0x01f00000..0x01f7ffff -> 0x01f00000
>>>> [    0.236250]    IO 0x01f80000..0x01f8ffff -> 0x00000000
>>>> [    0.236330]   MEM 0x01000000..0x01efffff -> 0x01000000
>>>> -->>> [    0.546690] imx6q-pcie 1ffc000.pcie: phy link never came up
>>>> [    0.547263] imx6q-pcie 1ffc000.pcie: PCI host bridge to bus 0000:00
>>>> [    0.547287] pci_bus 0000:00: root bus resource [bus 00-ff]
>>>> [    0.547304] pci_bus 0000:00: root bus resource [??? 0x01f00000-
>> 0x01f7ffff flags 0x0]
>>>> [    0.547321] pci_bus 0000:00: root bus resource [io  0x0000-0xffff]
>>>> [    0.547335] pci_bus 0000:00: root bus resource [mem 0x01000000-
>> 0x01efffff]
>>>> [    0.548608] PCI: bus0: Fast back to back transfers disabled
>>>> [    0.548950] PCI: bus1: Fast back to back transfers enabled
>>>> [    0.549107] pci 0000:00:00.0: BAR 0: assigned [mem 0x01000000-
>> 0x010fffff]
>>>> [    0.549137] pci 0000:00:00.0: BAR 6: assigned [mem 0x01100000-
>> 0x0110ffff pref]
>>>> [    0.549159] pci 0000:00:00.0: PCI bridge to [bus 01]
>>>> [    0.549945] pcieport 0000:00:00.0: Signaling PME through PCIe PME
>> interrupt
>>>> ...
>>>>
>>>> --
>>>> To unsubscribe from this list: send the line "unsubscribe linux-pci"
>>>> in the body of a message to majordomo@vger.kernel.org More majordomo
>>>> info at  http://vger.kernel.org/majordomo-info.html
>>>>
>>> --
>>> To unsubscribe from this list: send the line "unsubscribe linux-pci"
>>> in the body of a message to majordomo@vger.kernel.org More majordomo
>>> info at  http://vger.kernel.org/majordomo-info.html
> --
> To unsubscribe from this list: send the line "unsubscribe linux-pci" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>


  reply	other threads:[~2016-03-03  9:30 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-03-01 18:47 iMX6q PCIe phy link never came up on kernel v4.4.x Roberto Fichera
2016-03-02 17:13 ` Roberto Fichera
2016-03-02 19:56   ` Bjorn Helgaas
2016-03-03  9:15     ` Richard Zhu
2016-03-03  9:30       ` Roberto Fichera [this message]
2016-03-03  9:39         ` Richard Zhu
2016-03-03 10:55           ` Roberto Fichera
2016-03-03 14:34             ` Roberto Fichera
2016-03-03 18:34               ` Roberto Fichera
2016-03-04  7:11                 ` Richard Zhu
2016-03-04  8:09                   ` Roberto Fichera
2016-03-08 14:39                 ` Roberto Fichera
2016-03-08 14:53                   ` Lucas Stach
2016-03-08 14:59                     ` Roberto Fichera
2016-03-10 17:35                     ` Roberto Fichera
2016-03-14  8:44                       ` Roberto Fichera
2016-03-15 11:08                         ` Roberto Fichera
2016-03-15 14:04                           ` Bjorn Helgaas
2016-03-15 14:10                           ` Fabio Estevam
2016-03-15 14:29                             ` Roberto Fichera
2016-03-16 14:19                               ` Fabio Estevam
2016-03-16 21:33                                 ` Tim Harvey
2016-03-16 22:12                                   ` Fabio Estevam
2016-03-17  8:32                                     ` Roberto Fichera
2016-03-17 13:28                                       ` Fabio Estevam
2016-03-17 14:14                                         ` Roberto Fichera
2016-03-17 21:09                                           ` Fabio Estevam
2016-03-17  8:20                                   ` Roberto Fichera
2016-03-16  2:07                           ` Richard Zhu
2016-03-03  9:32 ` Lucas Stach
2016-03-03  9:38   ` Roberto Fichera
2016-03-08 15:02   ` Fabio Estevam
2016-03-08 15:06     ` Roberto Fichera

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=56D80435.90408@tekno-soft.it \
    --to=kernel@tekno-soft.it \
    --cc=Richard.Zhu@freescale.com \
    --cc=helgaas@kernel.org \
    --cc=hongxing.zhu@nxp.com \
    --cc=l.stach@pengutronix.de \
    --cc=linux-pci@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).