Hi,
Looks like the M.2 PCIe interface is initialized at u-boot level. You can verify this on your side with the following command in u-boot.
With the module connected (power on)
=> pci
imx_pcie pcie@0x5f010000: -2 unable to get disable-gpio.
BusDevFun VendorId DeviceId Device Class Sub-Class
_____________________________________________________________
00.00.00 0x1957 0x0000 Bridge device 0x04
01.00.00 0x1b4b 0x2b43 Network controller 0x00
01.00.01 0x1b4b 0x2b44 Network controller 0x00
With the module disconnected (power off):
=> pci
imx_pcie pcie@0x5f010000: -2 unable to get disable-gpio.
PCI: pcie phy link never came up
=>
If you connect the module after booting, you won't be able to bring up the module. This is the output you'll get:
[ 42.772610] mlan: loading out-of-tree module taints kernel.
[ 42.818455] wlan: Loading MWLAN driver
[ 42.819951] wlan: Register to Bus Driver...
[ 42.820186] wlan: Register to Bus Driver Done
[ 42.820195] wlan: Driver loaded successfully
Something similar happens if you power on the module after turning it off and you unloading the drivers. Looks like it won't make the link or initialization, and it will fail.
[ 55.758303] woal_pcie_probe: failed
[ 55.758315] wlan_pcie: probe of 0000:01:00.1 failed with error -14
Regarding the processor low power query, I strongly recommend you open a new case, ticket or thread about this specific topic so it can be addressed to the i.MX processor support team. They should be able to help you.
Regards,
Daniel.