Suspend/Wakeup issue with PCIe card plugged

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Suspend/Wakeup issue with PCIe card plugged

Jump to solution
4,564 Views
williamtung
Contributor III

Hi,

Our standard iMX6 Solo/Quad board comes with a PCIe slot for customer to plug add-in card. I can put the system to suspend mode and wakeup under Linux and Android when there's no PCIe card plugged. If I plug one PCIe card, I can put the system to suspend but can't wake it up. Is there special requirement/preparation needed to resume the system with PCIe card plugged?

Thanks.

Labels (4)
1 Solution
2,841 Views
lily_zhang
NXP Employee
NXP Employee

Hello, William:

If you read BSP release note 1.1.0, you can see PCIe low power mode is not supported in known issue section:

PCIe Hardware/

Software

PCIe doesn't support Hot Plug and

Power Management.

No

That's why you meet wakeup failure when you built in PCIe.

I am not sure whether the following way can workaround it, you may try it if you are interesting: Building with PCIe as modules. unload PCIe relative module before suspend. Then load PCIe relative module after resume.

View solution in original post

0 Kudos
Reply
9 Replies
2,841 Views
AnsonHuang
NXP Employee
NXP Employee

Hi, William

     Can you try to just insert PCIe card but not enable it? I mean, if we only insert PCIe card, but there is no PCIe software running, to see whether it is caused by PCIe module. Just build out PCIe module and try it, thanks.

0 Kudos
Reply
2,841 Views
williamtung
Contributor III

Hi Yongcai,

I tried the scenarios below:

1. Enable iMX6 PCIE support

CONFIG_IMX_HAVE_PLATFORM_IMX_PCIE=y

CONFIG_IMX_PCIE=y

# CONFIG_PCIEPORTBUS is not set

-- can suspend/wakeup if no PCIE card is plugged

-- can't wakeup if a PCIE card is plugged



2. Disable iMX6 PCIE support

CONFIG_IMX_HAVE_PLATFORM_IMX_PCIE=y

# CONFIG_IMX_PCIE is not set

-- can suspend/wakeup whether PCIE card is plugged not


It seems the PCIE module prevent system from waking up. Can you help look into this issue? Thanks.




0 Kudos
Reply
2,842 Views
lily_zhang
NXP Employee
NXP Employee

Hello, William:

If you read BSP release note 1.1.0, you can see PCIe low power mode is not supported in known issue section:

PCIe Hardware/

Software

PCIe doesn't support Hot Plug and

Power Management.

No

That's why you meet wakeup failure when you built in PCIe.

I am not sure whether the following way can workaround it, you may try it if you are interesting: Building with PCIe as modules. unload PCIe relative module before suspend. Then load PCIe relative module after resume.

0 Kudos
Reply
2,841 Views
richard_zhu
NXP Employee
NXP Employee
0 Kudos
Reply
2,841 Views
williamtung
Contributor III

Hi Hongxing,

I clicked that link but didn't get the that discussion thread. It just showed the messages below:

You do not have permissions to access the requested content.

Please contact the content owner or admin@community.freescale.com for assistance with gaining access.

0 Kudos
Reply
2,841 Views
richard_zhu
NXP Employee
NXP Employee

That url is pasted by my smart phone, I can't access it by my laptop either. :smileysad:.
Sorry to bring mus-understand to you, here is the correct one.

https://community.freescale.com/docs/DOC-94856

BTW, there is one simple SW workaround under stress tests now, would be clarified after the stress tests is finished.

0 Kudos
Reply
2,841 Views
AnsonHuang
NXP Employee
NXP Employee

Hi, William

     Sorry, I don't have the knowledge to look into PCIe module, you may need to contact the PCIe module to see whether there is low power issue in PCIe module, I am only in charge with system level's suspend/resume, not we are sure that it is caused by PCIe module, so you can ask the PCIe module owner or just disable PCIe low power mode.

0 Kudos
Reply
2,841 Views
williamtung
Contributor III

Hi Yongcai,

No PCIe card function was enabled in my experiment. The problem is caused by the iMX6 PCIe driver because I didn't load the driver for the PCIe card. Do you have successful example that you can suspend and wakeup with a specific PCIe card? Thanks.

0 Kudos
Reply
2,841 Views
AnsonHuang
NXP Employee
NXP Employee

Hi, William

     The only way to fix this issue is to build out the PCIe driver. If PCIe is enabled, suspend/resume will be impacted. This is my understanding, but you had better to ask PCIe owner for detail.

0 Kudos
Reply