Message ID | 20241028073015.692794-1-wojackbb@gmail.com (mailing list archive) |
---|---|
State | Superseded |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | [net] net: wwan: t7xx: Change PM_AUTOSUSPEND_MS to 5000 | expand |
Hello Jack, On 28.10.2024 09:30, wojackbb@gmail.com wrote: > From: Jack Wu <wojackbb@gmail.com> > > Because optimizing the power consumption of t7XX, > change auto suspend time to 5000. > > The Tests uses a script to loop through the power_state > of t7XX. > (for example: /sys/bus/pci/devices/0000\:72\:00.0/power_state) > > * If Auto suspend is 20 seconds, > test script show power_state have 0~5% of the time was in D3 state > when host don't have data packet transmission. > > * Changed auto suspend time to 5 seconds, > test script show power_state have 50%~80% of the time was in D3 state > when host don't have data packet transmission. What negative outcomes of putting the modem into the suspended state? Out of curiosity, is the chipset capable to comeback from the suspended state on receiving data from a network? > Signed-off-by: Jack Wu <wojackbb@gmail.com> > --- > drivers/net/wwan/t7xx/t7xx_pci.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/net/wwan/t7xx/t7xx_pci.c b/drivers/net/wwan/t7xx/t7xx_pci.c > index e556e5bd49ab..dcadd615a025 100644 > --- a/drivers/net/wwan/t7xx/t7xx_pci.c > +++ b/drivers/net/wwan/t7xx/t7xx_pci.c > @@ -48,7 +48,7 @@ > #define T7XX_INIT_TIMEOUT 20 > #define PM_SLEEP_DIS_TIMEOUT_MS 20 > #define PM_ACK_TIMEOUT_MS 1500 > -#define PM_AUTOSUSPEND_MS 20000 > +#define PM_AUTOSUSPEND_MS 5000 > #define PM_RESOURCE_POLL_TIMEOUT_US 10000 > #define PM_RESOURCE_POLL_STEP_US 100 >
On Mon, 28 Oct 2024 15:30:15 +0800 wojackbb@gmail.com wrote: > Because optimizing the power consumption of t7XX, > change auto suspend time to 5000. > > The Tests uses a script to loop through the power_state > of t7XX. > (for example: /sys/bus/pci/devices/0000\:72\:00.0/power_state) > > * If Auto suspend is 20 seconds, > test script show power_state have 0~5% of the time was in D3 state > when host don't have data packet transmission. > > * Changed auto suspend time to 5 seconds, > test script show power_state have 50%~80% of the time was in D3 state > when host don't have data packet transmission. I'm going to drop this from PW while we wait for your reply to Sergey If the patch is still good after answering his questions please update the commit message and resend with a [net-next] tag (we use [net] to designate fixes for current release and stable)
If the PCIE connection remains in the D0 state, It will consume more power. Receiving or sending data will cause PCIE to change D3 Cold to D0 state. Jakub Kicinski <kuba@kernel.org> 於 2024年11月1日 週五 上午9:51寫道: > > On Mon, 28 Oct 2024 15:30:15 +0800 wojackbb@gmail.com wrote: > > Because optimizing the power consumption of t7XX, > > change auto suspend time to 5000. > > > > The Tests uses a script to loop through the power_state > > of t7XX. > > (for example: /sys/bus/pci/devices/0000\:72\:00.0/power_state) > > > > * If Auto suspend is 20 seconds, > > test script show power_state have 0~5% of the time was in D3 state > > when host don't have data packet transmission. > > > > * Changed auto suspend time to 5 seconds, > > test script show power_state have 50%~80% of the time was in D3 state > > when host don't have data packet transmission. > > I'm going to drop this from PW while we wait for your reply to Sergey > If the patch is still good after answering his questions please update > the commit message and resend with a [net-next] tag (we use [net] to > designate fixes for current release and stable)
Hello Jack, On 06.11.2024 13:10, 吳逼逼 wrote: > If the PCIE connection remains in the D0 state, It will consume more power. True. Keeping device active causes battery drainage and the idea to put inactive device into the power saving mode is clear. My question was not about power consumption. I am trying to understand what other consequences of keeping modem suspended. More specifically, how the suspend mode influences user data communication? > Receiving or sending data will cause PCIE to change D3 Cold to D0 state. Am I understand it correctly that even receiving IP packets on downlink will cause PCIe link re-activation? I am concerned about a TCP connection that can be idle for a long period of time. For example, an established SSH connection can stay idle for minutes. If I connected to a server and execute something like this: user@host$ sleep 20 && echo "Done" Will I eventually see the "Done" message or will the autosuspended modem effectively block any incoming traffic? And how long does it take for the modem to wake up and deliver a downlink packet to the host? Have you measured StDev change? > Jakub Kicinski <kuba@kernel.org> 於 2024年11月1日 週五 上午9:51寫道: >> >> On Mon, 28 Oct 2024 15:30:15 +0800 wojackbb@gmail.com wrote: >>> Because optimizing the power consumption of t7XX, >>> change auto suspend time to 5000. >>> >>> The Tests uses a script to loop through the power_state >>> of t7XX. >>> (for example: /sys/bus/pci/devices/0000\:72\:00.0/power_state) >>> >>> * If Auto suspend is 20 seconds, >>> test script show power_state have 0~5% of the time was in D3 state >>> when host don't have data packet transmission. >>> >>> * Changed auto suspend time to 5 seconds, >>> test script show power_state have 50%~80% of the time was in D3 state >>> when host don't have data packet transmission. >> >> I'm going to drop this from PW while we wait for your reply to Sergey >> If the patch is still good after answering his questions please update >> the commit message and resend with a [net-next] tag (we use [net] to >> designate fixes for current release and stable) -- Sergey
diff --git a/drivers/net/wwan/t7xx/t7xx_pci.c b/drivers/net/wwan/t7xx/t7xx_pci.c index e556e5bd49ab..dcadd615a025 100644 --- a/drivers/net/wwan/t7xx/t7xx_pci.c +++ b/drivers/net/wwan/t7xx/t7xx_pci.c @@ -48,7 +48,7 @@ #define T7XX_INIT_TIMEOUT 20 #define PM_SLEEP_DIS_TIMEOUT_MS 20 #define PM_ACK_TIMEOUT_MS 1500 -#define PM_AUTOSUSPEND_MS 20000 +#define PM_AUTOSUSPEND_MS 5000 #define PM_RESOURCE_POLL_TIMEOUT_US 10000 #define PM_RESOURCE_POLL_STEP_US 100