From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Patel, Mayurkumar" Subject: RE: [PATCH V7 0/5] PCI/ASPM: reconfigure ASPM following hotplug for POLICY_DEFAULT Date: Mon, 10 Apr 2017 11:44:43 +0000 Message-ID: <92EBB4272BF81E4089A7126EC1E7B2846676662B@IRSMSX101.ger.corp.intel.com> References: <1490880636-30542-1-git-send-email-okaya@codeaurora.org> <7c48ca8b-b834-3257-91dc-77e9d19def6c@codeaurora.org> <92EBB4272BF81E4089A7126EC1E7B28466761383@IRSMSX101.ger.corp.intel.com> <92EBB4272BF81E4089A7126EC1E7B2846676271D@IRSMSX101.ger.corp.intel.com> <951505b8-9580-7131-2f14-de92817190a7@codeaurora.org> <92EBB4272BF81E4089A7126EC1E7B2846676309A@IRSMSX101.ger.corp.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga04.intel.com ([192.55.52.120]:45152 "EHLO mga04.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751615AbdDJLpC (ORCPT ); Mon, 10 Apr 2017 07:45:02 -0400 In-Reply-To: Content-Language: en-US Sender: linux-arm-msm-owner@vger.kernel.org List-Id: linux-arm-msm@vger.kernel.org To: Rajat Jain Cc: Sinan Kaya , "linux-pci@vger.kernel.org" , "timur@codeaurora.org" , "linux-arm-msm@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , Bjorn Helgaas DQo+PiBIaSBSYWphdA0KPj4NCj4+DQo+Pj5PbiBUaHUsIEFwciA2LCAyMDE3IGF0IDg6MTkgQU0s IFNpbmFuIEtheWEgPG9rYXlhQGNvZGVhdXJvcmEub3JnPiB3cm90ZToNCj4+Pj4NCj4+Pj4gT24g NC82LzIwMTcgOToyMyBBTSwgUGF0ZWwsIE1heXVya3VtYXIgd3JvdGU6DQo+Pj4+ID4gQWN0dWFs bHksIFRoZSBlbmFibGluZy9jb25maWd1cmluZyBvZiBBU1BNIEwxLjIgaXMgb3Bwb3NpdGUgdGhl biBBU1BNIEwxLg0KPj4+PiA+IEluIGNhc2Ugb2YgTDEsIFVwc3RyZWFtIG11c3QgY29uZmlndXJl IGZpcnN0IEwxIGFuZCB0aGVuIGRvd25zdHJlYW0gYWNjb3JkaW5nIHRvIFBDSWUgc3BlYy4NCj4+ Pj4gPiBJbiBjYXNlIG9mIEwxLjIsIERvd25zdHJlYW0gbXVzdCBjb25maWd1cmUgTDEuMiBhbmQg dGhlbiB1cHN0cmVhbSBhY2NvcmRpbmcgKHRvIEwxLjIgRUNOIHNwZWMuIC0+IDUuNS40LiBMMSBQ TQ0KPj4+PiA+IHN1YnN0YXRlcyBDb25maWd1cmF0aW9uKS4NCj4+Pj4gPg0KPj4+PiA+IEBCam9y bjoNCj4+Pj4gPiBJIGV2ZW4gZm91bmQgdGhhdCBwcm9ncmFtbWluZyBvZiBwY2llX2NvbmZpZ19h c3BtX2wxc3MoKSBzdWItc3RhdGVzIGlzIGRvbmUgaW4gdGhlIG9wcG9zaXRlIHdheSB0aGFuIGRl c2NyaWJlZCBpbg0KPj4+PiA+IHRoZSBzcGVjLiwNCj4+Pj4gPg0KPj4+PiA+IFRoZSBzcGVjLiBz YXlzIGZvbGxvd2luZyBhbmQgY29ycmVjdCBtZSBJZiBJIGFtIHdyb25nIG9yIEkgbWlzaW50ZXJw cmV0IHRoZSBzcGVjLiA6DQo+Pj4+ID4NCj4+Pj4gPiA1LjUuNC4gTDEgUE0gU3Vic3RhdGVzIENv bmZpZ3VyYXRpb24NCj4+Pj4gPg0KPj4+PiA+IFRoZSBTZXR0aW5nIG9mIGFueSBlbmFibGUgYml0 IG11c3QgYmUgcGVyZm9ybWVkIGF0IHRoZSBEb3duc3RyZWFtIFBvcnQgYmVmb3JlIHRoZQ0KPj4+ PiA+IGNvcnJlc3BvbmRpbmcgYml0IGlzIHBlcm1pdHRlZCB0byBiZSBTZXQgYXQgdGhlIFVwc3Ry ZWFtIFBvcnQuIElmIGFueSBMMSBQTSBTdWJzdGF0ZXMgZW5hYmxlDQo+Pj4+ID4gYml0IGlzIGF0 IGEgbGF0ZXIgdGltZSB0byBiZSBjbGVhcmVkLCB0aGUgZW5hYmxlIGJpdChzKSBtdXN0IGJlIGNs ZWFyZWQgaW4gdGhlIFVwc3RyZWFtIFBvcnQNCj4+Pj4gPiBiZWZvcmUgdGhlIGNvcnJlc3BvbmRp bmcgZW5hYmxlIGJpdChzKSBhcmUgcGVybWl0dGVkIHRvIGJlIGNsZWFyZWQgaW4gdGhlIERvd25z dHJlYW0gUG9ydC4NCj4+Pj4gPg0KPj4+DQo+Pj5UaGFua3MgZm9yIGJyaW5naW5nIHRvIGF0dGVu dGlvbi4gTXkgdW5kZXJzdGFuZGluZyAvIGludGVycHJldGF0aW9uIG9mDQo+Pj4iRG93bnN0cmVh bSBwb3J0IiB3YXMgdGhlIHBvcnQgcG9pbnRpbmcgZG93bndhcmRzIChmcm9tIHRoZSAiVXBzdHJl YW0iDQo+Pj5jb21wb25lbnQpLiBFLmcuIHdoZW4gYW4gRVAgY29ubmVjdHMgdG8gYSBodWIgcG9y dCwgUENJZSB0ZXh0IHJlZmVycw0KPj4+dG8gdGhlIGh1YiBwb3J0IGFzIHRoZSAiZG93bnN0cmVh bSBwb3J0Ii4gU2ltaWxhcmx5ICJ1cHN0cmVhbSBwb3J0IiBpcw0KPj4+dXNlZCBmb3IgcmVmZXJy aW5nIHRvIGEgc3dpdGNoJ3MgcG9ydCB0aGF0ICJwb2ludHMiIHVwd2FyZHMgdG93YXJkcw0KPj4+ dGhlIHJvb3QgcG9ydC4gVGh1cywgSSBpbnRlcnByZXRlZCB0aGUgdGV4dCB0byBtZWFuIHRoYXQg SSBuZWVkIHRvDQo+Pj5lbmFibGUgaXQgaW4gdGhlICJkb3duc3RyZWFtIHBvcnQiIChpbiB0aGUg cm9vdCBwb3J0IC8gc3dpdGNoIHBvcnQpDQo+Pj5mb2xsb3dlZCBieSB0aGUgInVwc3RyZWFtIHBv cnQiIChpbiB0aGUgZGV2aWNlKS4NCj4+Pg0KPj4+SXQgd291bGQgaGF2ZSBiZWVuIGdyZWF0IGlm IHRoZSBQQ0llIHNwZWMgd2FzIGFzIGNsZWFyIGZvciBMMQ0KPj4+c3Vic3RhdGVzIGFzIGl0IHdh cyBmb3IgTDE6DQo+Pj4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+Pj5BU1BNIEwxIG11 c3QgYmUgZW5hYmxlZCBieSBzb2Z0d2FyZSBpbiB0aGUgVXBzdHJlYW0NCj4+PmNvbXBvbmVudCBv biBhIExpbmsgcHJpb3IgdG8gZW5hYmxpbmcgQVNQTSBMMSBpbiB0aGUNCj4+PkRvd25zdHJlYW0g Y29tcG9uZW50IG9uIHRoYXQgTGluay4NCj4+Pi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t DQo+Pj5Gb3IgQVNQTSBMMSwgdGhlIHNwZWMgY2xlYXJseSBzYXlzICJVcHN0cmVhbSBjb21wb25l bnQiIHdoaWNoIGNhbiBvbmx5DQo+Pj5tZWFuIHRoZSBzd2l0Y2gncyAiZG93bnN0cmVhbSIgcG9y dC4gSSdtIG9wZW4gdG8gY2hhbmdpbmcgaXQgaWYgdGhlcmUNCj4+PmlzIGNvbnNlbnN1cyB0aGF0 IG15IGludGVycHJldGF0aW9uIGlzIHdyb25nLg0KPj4NCj4+IEluIGZhY3QsIFlvdXIgdW5kZXJz dGFuZGluZyBzZWVtcyB0byBiZSBjb3JyZWN0LiBJdCB3YXMgbXkgbWlzdGFrZSB0aGF0IEkgcmFp c2VkIGl0IHdpdGhvdXQNCj4+IGFjdHVhbGx5LCBrZWVwaW5nIGluIG1pbmQgb3IgdW5kZXJzdGFu ZGluZyBwb3J0L2NvbXBvbmVudCBkaWZmZXJlbmNlIHdoaWNoIEkgZGlkbid0IG5vdGljZS4NCj4+ IE15IHNpbmNlcmUgYXBvbG9naWVzIGZvciB0aGF0Lg0KPg0KPk5vIHdvcnJpZXMsIHllcywgaXQg aXMgdHJpY2t5IGFuZCBldmVuIEkgaGFkIG1pc3NlZCBpdCB3aGVuIEkNCj5pbXBsZW1lbnRlZCBp dCBmaXJzdC4gOi0pDQo+DQo+Pg0KPj4+DQo+Pj5JJ20gYWN0dWFsbHkgbm90IHN1cmUgaWYgSSB1 bmRlcnN0b29kIHdoYXQgaXMgdGhlIHByb2JsZW0gdGhhdCBpcw0KPj4+YmVpbmcgc2VlbiB3aXRo IEwxIFBNIHN1YnN0YXRlcy4gQ2FuIHlvdSBwbGVhc2UgZWxhYm9yYXRlPw0KPj4+DQo+Pg0KPj4N Cj4+IFRoZSBhY3R1YWwgcHJvYmxlbSwgd2hhdCBTaW5hbiBhbmQgbWUgd2VyZSBzZWVpbmcgd2l0 aCBBU1BNIEwxIHdpdGggUE9MSUNZX0RFRkFVTFQNCj4+IGFzIGRlc2NyaWJlZCBpbiBodHRwczov L3BhdGNod29yay5rZXJuZWwub3JnL3BhdGNoLzk1NDgzMjEvDQo+DQo+T0ssIEkgdW5kZXJzdG9v ZCB0aGlzIHByb2JsZW0gdGhhdCB5b3UgYXJlIHRyeWluZyB0byBzb2x2ZS4gTGV0cyBjYWxsDQo+ dGhpcyBwcm9ibGVtICgxKS4gU29ycnksIEkgaGF2ZW4ndCB5ZXQgbG9va2VkIGF0IHlvdXIgcGF0 Y2hlcywgYW5kIEkNCj53aWxsIHRha2UgYSBsb29rLg0KPg0KPj4NCj4+IFNpbmFuIHdvcmtlZCBv dXQgcGF0Y2hlcyB0byByZXNvbHZlIHRoZSBpc3N1ZSBidXQgb24gbXkgcGxhdGZvcm0gbm93IEkg YW0gc3RhcnRpbmcgdG8gc2VlDQo+PiB0aGF0IEFTUE0gTDFTUyBnZXRzIGltcGFjdGVkIGJ5IHRo ZXNlIHBhdGNoZXMuDQo+DQo+T0ssIGxldHMgY2FsbCB0aGlzIHByb2JsZW0gKDIpIC0gYXJlIHlv dSBzYXlpbmcgdGhhdCB0aGlzIG9ubHkgaW1wYWN0cw0KPkwxU1MgYW5kIG5vdCBMMT8gU29ycnks IGp1c3QgdHJ5aW5nIHRvIHVuZGVyc3RhbmQgYmVjYXVzZSBJIGNhbid0DQo+dGhpbmsgb2YgYW55 d2F5IEwxIGFuZCBMMVNTIGJpdHMgYXJlIGhhbmRsZWQgZGlmZmVyZW50bHkuLg0KPg0KDQpBY3R1 YWxseSwgaW4gbXkgcGxhdGZvcm0sIEJJT1MgY29uZmlndXJlcyBBU1BNIEwxIGlmIG5vIEVQIGZv dW5kIGR1cmluZyBib290IG9uIFJvb3QgUG9ydCBidXQNCkwxU1MgZG9lcyBub3QgZ2V0IGVuYWJs ZWQgZHVyaW5nIGJvb3Qgb24gUm9vdCBQb3J0IGlmIG5vIGRldmljZSBmb3VuZCBkdXJpbmcgYm9v dC4gU28gaXQncyBiaXQgZGlmZmVyZW50Lg0KDQoNCj4+IEJhc2ljYWxseSwgd2l0aCBoaXMgcGF0 Y2hlcywgd2hlbiBQb2xpY3kgaXMgc2V0IHRvIGRlZmF1bHQsDQo+PiBhbmQgaWYgbm8gUENJZSBF UCBpcyBjb25uZWN0ZWQgdG8gUm9vdCBQb3J0IGR1cmluZyBib290IHVwLCBCSU9TIGRvZXMgbm90 IGNvbmZpZ3VyZSBMMVNTIGZvciBpdCwgb24gbXkNCj4+IHBsYXRmb3JtLiBTbyB0aGUgbGluay0+ YXNwbV9kZWZhdWx0IGluIGFzcG0uYyBzdG9yZXMgY29uZmlndXJhdGlvbiB3aXRob3V0IEwxU1Mu DQo+DQo+SSB1bmRlcnN0YW5kIHVwdGlsIGhlcmU6DQo+Tm8gRGV2aWNlIG9uIGJvb3QsIEFTUE0g UG9saWN5PWRlZmF1bHQgPT4gQklPUyBkb2VzIG5vdCBlbmFibGUgYW55DQo+QVNQTSBiaXRzID0+ IGtlcm5lbCBkb2VzIHRoZSBzYW1lLg0KPg0KPj4gV2hlbiB0aGUgRVAgZ2V0cw0KPj4gY29ubmVj dGVkIGFmdGVyd2FyZHMsIGR1ZSB0byBsaW5rLT5hc3BtX2RlZmF1bHQgc2V0IHRvIG5vbiBMMVNT IGNvbmZpZ3VyYXRpb24sIGV2ZW4gaWYgQklPUw0KPj4gc2V0cyBBU1BNIEwxU1MgZm9yIFJvb3Qg UG9ydCBhbmQgRW5kcG9pbnQgYm90aCwNCj4NCj5Tb3JyeSwgSSBkb24ndCB0aGluayBJIGZvbGxv d2VkIHRoaXMgcGFydC4gWW91IGFyZSBzYXlpbmcgd2hlbiB0aGUgRVANCj5nZXRzIGhvdC1wbHVn Z2VkIGxhdGVyIChhZnRlciBib290aW5nIHVwIHdpdGggbm8gRVApLCB0aGUgQklPUyBzZXRzDQo+ QVNQTSBMMVNTIGZvciByb290IHBvcnQgJiBlbmRwb2ludCBhdCB0aGF0IHRpbWU/Pw0KPg0KDQpZ ZXMgd2hlbiBFUCBnZXRzIGNvbm5lY3RlZCBhdCBhbnkgdGltZShpLmUuIGR1cmluZyBib290IG9y IGFmdGVyIGJvb3QpLCBCSU9TIHNldHMgTDEgYW5kIEwxU1MgYm90aCBmb3IgUm9vdCBQb3J0IGFu ZCBFbmRwb2ludC4NCg0KPj4gaXQgZ2V0cyBjbGVhcmVkIGluIHRoZSBhc3BtIGRyaXZlci4NCj4+ DQo+PiBXaXRob3V0IHRoZSBwYXRjaGVzIFNpbmFuIGhhcyB3b3JrZWQsIGl0IHdhcyBhIGRpZmZl cmVudCBpc3N1ZSBhcyBkZXNjcmliZWQgYWJvdmUsIGFuZCBMMS9MMVNTIHdlcmUNCj4+IGdldHRp bmcgYWx3YXlzIGVuYWJsZWQgYnkgdGhlIEJJT1MgZm9yIGVuZHBvaW50IGFuZCBSUCwgYnV0IGtl cm5lbCBlbmFibGVkL2Rpc2FibGVkIHRoZW0gYWx0ZXJuYXRpdmVseS4NCj4+DQo+PiBTbyBiYXNp Y2FsbHksIEkgYW0gbm90IGN1cnJlbnRseSAxMDAlIHN1cmUsIHdoYXQgaXMgdGhlIHByb3BlciBm aXggZm9yIHRoaXMuIFdoZXRoZXIgQklPUyBzaG91bGQNCj4+IGVuYWJsZSBMMVNTIG9uIFJvb3Qg UG9ydCBubyBtYXR0ZXIgRW5kcG9pbnQgaXMgY29ubmVjdGVkIG9yIG5vdCBkdXJpbmcgYm9vdD8N Cj4NCj5JJ2QgdGhpbmsgbm90Lg0KPg0KPldoaWxlIEkgZG9uJ3QgdW5kZXJzdGFuZCB0aGUgcHJv YmxlbSAoMikgY3VycmVudGx5LCB3b3VsZG4ndCB5b3UgZmFjZQ0KPnRoZSBzYW1lIHByb2JsZW0g KDIpIHdpdGggTDE/IEFyZSB5b3Ugc2VlaW5nIEwxICYgTDFTUyBiaXRzIGhhbmRsZWQNCj5kaWZm ZXJlbnRseSBpbiB5b3VyIHVzZSBjYXNlIC8gcHJvYmxlbSBjYXNlPw0KPg0KDQpZZXMgaXQgaXMg aW5kZWVkLCBvbmx5IGR1cmluZyBib290IHdpdGhvdXQgRW5kcG9pbnQgY29ubmVjdGVkIChMMSBp cyBzZXQgb24gUm9vdCBwb3J0IGJ1dCBMMVNTIGlzIG5vdCkuDQoNCj5UaGFua3MsDQo+DQo+UmFq YXQNCj4NCj4+DQo+PiBPciBJIGFtIG5vdCBzdXJlLCB3aGV0aGVyIGNvdWxkIHdlIHNob3VsZCBz dGlsbCB1cGRhdGUgbGluay0+YXNwbV9kZWZhdWx0IHBhcnRseSBmb3IgTDFTUyBpbiB0aGUgb2xk IHBhdGNoIHdheQ0KPj4gaHR0cHM6Ly9wYXRjaHdvcmsub3psYWJzLm9yZy9wYXRjaC83MzY3NzEv DQo+Pg0KPj4gQW55IGZlZWRiYWNrIHdvdWxkIGJlIGhlbHBmdWwgdGhlbiBtYXkgYmUgaWYgcmVx dWlyZWQgSSBjYW4gb3IgaWYgU2luYW4gY2FuIHdvcmsgb3V0IHRoZSBwYXRjaGVzIGZvciBMMVNT IGFsc28gZmluZSBmb3IgbWUuDQo+Pg0KPj4NCj4+Pg0KPj4+Pg0KPj4+Pg0KPj4+PiBUaGFua3Mg Zm9yIHRlc3RpbmcuDQo+Pj4+DQo+Pj4+IGNvbW1pdCBhMTQyZjRkM2U1YzU0ZGI1ZTk0MmZhNmVl NWYzZGMwZThjODMyMDdiDQo+Pj4+IEF1dGhvcjogUmFqYXQgSmFpbiA8cmFqYXRqYUBnb29nbGUu Y29tPg0KPj4+PiBEYXRlOiAgIE1vbiBKYW4gMiAyMjozNDoxNSAyMDE3IC0wODAwDQo+Pj4+DQo+ Pj4+ICAgICBQQ0kvQVNQTTogQWRkIGNvbW1lbnQgYWJvdXQgTDEgc3Vic3RhdGUgbGF0ZW5jeQ0K Pj4+Pg0KPj4+PiAgICAgU2luY2UgdGhlIGV4aXQgbGF0ZW5jaWVzIGZvciBMMSBzdWJzdGF0ZXMg YXJlIG5vdCBhZHZlcnRpc2VkIGJ5IGEgZGV2aWNlLA0KPj4+PiAgICAgaXQgaXMgbm90IGNsZWFy IGluIHNwZWMgaG93IHRvIGRvIGEgTDEgc3Vic3RhdGUgZXhpdCBsYXRlbmN5IGNoZWNrLiAgV2UN Cj4+Pj4gICAgIGFzc3VtZSB0aGF0IHRoZSBMMSBleGl0IGxhdGVuY2llcyBhZHZlcnRpc2VkIGJ5 IGEgZGV2aWNlIGluY2x1ZGUgTDENCj4+Pj4gICAgIHN1YnN0YXRlIGxhdGVuY2llcyAoYW5kIGhl bmNlIGRvIG5vdCBkbyBhbnkgY2hlY2spLiAgSWYgdGhhdCBpcyBub3QgdHJ1ZSwNCj4+Pj4gICAg IHdlIHNob3VsZCBkbyBzb21lIHNvcnQgb2YgY2hlY2sgaGVyZS4NCj4+Pj4NCj4+Pj4gICAgIChJ J20gbm90IGNsZWFyIGFib3V0IHdoYXQgdGhhdCBjaGVjayBzaG91bGQgbGlrZSBjdXJyZW50bHku IEknZCBiZSBnbGFkIHRvDQo+Pj4+ICAgICB0YWtlIHVwIGFueSBzdWdnZXN0aW9ucykuDQo+Pj4+ DQo+Pj4+ICAgICBTaWduZWQtb2ZmLWJ5OiBSYWphdCBKYWluIDxyYWphdGphQGdvb2dsZS5jb20+ DQo+Pj4+ICAgICBTaWduZWQtb2ZmLWJ5OiBCam9ybiBIZWxnYWFzIDxiaGVsZ2Fhc0Bnb29nbGUu Y29tPg0KPj4+Pg0KPj4+PiBJIGFkZGVkIFJhamF0IGZvciBkaXNjdXNzaW9uIG9uIEwxU1MuIEkg dGhpbmsgdGhpcyBkZXNlcnZlcyBpdHMgb3duIGRpc2N1c3Npb24uDQo+Pj4NCj4+PlRoYW5rcywg VGhlIGFib3ZlIGNvbW1pdCBzcGVjaWZpY2FsbHkgYWRkcyBhIGNvbW1lbnQgdG8NCj4+PnBjaWVf YXNwbV9jaGVja19sYXRlbmN5KCksIGJlY2F1c2UgSSB3YW50ZWQgdG8gbGVhdmUgYSBub3RlDQo+ Pj5oaWdobGlnaHRpbmcgdGhhdCBwb3RlbnRpYWxseSwgd2UgY291bGQgYWRkIGEgbW9yZSBzdHJp bmdlbnQgY2hlY2sgZm9yDQo+Pj5leGl0IGxhdGVuY3kgZm9yIEwxU1MuIEJ1dCB0aGF0IGhhcyBu b3RoaW5nIHRvIGRvIHdpdGggaG93IHdlIGFyZQ0KPj4+Y29uZmlndXJpbmcgb3IgZW5hYmxpbmcg LyBkaXNhYmxpbmcgdGhlIEwxIHN1YnN0YXRlcy4NCj4+Pg0KPj4+VGhhbmtzICYgQmVzdCBSZWdh cmRzLA0KPj4+DQo+Pj5SYWphdA0KPj4+DQo+Pj4+IEknbGwgbG9vayBhdCB0aGUgb3RoZXIgcGFy dCBvZiB5b3VyIGVtYWlsIGFuZCBtb3ZlIHRoaW5ncyBhcm91bmQgYSBsaXR0bGUgYml0DQo+Pj4+ IGxlc3MgYWdncmVzc2l2ZWx5IGZvciB0aGUgYXNwbV9kZWZhdWx0Lg0KPj4+Pg0KPj4+Pg0KPj4+ PiAtLQ0KPj4+PiBTaW5hbiBLYXlhDQo+Pj4+IFF1YWxjb21tIERhdGFjZW50ZXIgVGVjaG5vbG9n aWVzLCBJbmMuIGFzIGFuIGFmZmlsaWF0ZSBvZiBRdWFsY29tbSBUZWNobm9sb2dpZXMsIEluYy4N Cj4+Pj4gUXVhbGNvbW0gVGVjaG5vbG9naWVzLCBJbmMuIGlzIGEgbWVtYmVyIG9mIHRoZSBDb2Rl IEF1cm9yYSBGb3J1bSwgYSBMaW51eCBGb3VuZGF0aW9uIENvbGxhYm9yYXRpdmUgUHJvamVjdC4N Cj4+IEludGVsIERldXRzY2hsYW5kIEdtYkgNCj4+IFJlZ2lzdGVyZWQgQWRkcmVzczogQW0gQ2Ft cGVvbiAxMC0xMiwgODU1NzkgTmV1YmliZXJnLCBHZXJtYW55DQo+PiBUZWw6ICs0OSA4OSA5OSA4 ODUzLTAsIHd3dy5pbnRlbC5kZQ0KPj4gTWFuYWdpbmcgRGlyZWN0b3JzOiBDaHJpc3RpbiBFaXNl bnNjaG1pZCwgQ2hyaXN0aWFuIExhbXByZWNodGVyDQo+PiBDaGFpcnBlcnNvbiBvZiB0aGUgU3Vw ZXJ2aXNvcnkgQm9hcmQ6IE5pY29sZSBMYXUNCj4+IFJlZ2lzdGVyZWQgT2ZmaWNlOiBNdW5pY2gN Cj4+IENvbW1lcmNpYWwgUmVnaXN0ZXI6IEFtdHNnZXJpY2h0IE11ZW5jaGVuIEhSQiAxODY5MjgN CkludGVsIERldXRzY2hsYW5kIEdtYkgKUmVnaXN0ZXJlZCBBZGRyZXNzOiBBbSBDYW1wZW9uIDEw LTEyLCA4NTU3OSBOZXViaWJlcmcsIEdlcm1hbnkKVGVsOiArNDkgODkgOTkgODg1My0wLCB3d3cu aW50ZWwuZGUKTWFuYWdpbmcgRGlyZWN0b3JzOiBDaHJpc3RpbiBFaXNlbnNjaG1pZCwgQ2hyaXN0 aWFuIExhbXByZWNodGVyCkNoYWlycGVyc29uIG9mIHRoZSBTdXBlcnZpc29yeSBCb2FyZDogTmlj b2xlIExhdQpSZWdpc3RlcmVkIE9mZmljZTogTXVuaWNoCkNvbW1lcmNpYWwgUmVnaXN0ZXI6IEFt dHNnZXJpY2h0IE11ZW5jaGVuIEhSQiAxODY5MjgK From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Return-Path: From: "Patel, Mayurkumar" To: Rajat Jain Subject: RE: [PATCH V7 0/5] PCI/ASPM: reconfigure ASPM following hotplug for POLICY_DEFAULT Date: Mon, 10 Apr 2017 11:44:43 +0000 Message-ID: <92EBB4272BF81E4089A7126EC1E7B2846676662B@IRSMSX101.ger.corp.intel.com> References: <1490880636-30542-1-git-send-email-okaya@codeaurora.org> <7c48ca8b-b834-3257-91dc-77e9d19def6c@codeaurora.org> <92EBB4272BF81E4089A7126EC1E7B28466761383@IRSMSX101.ger.corp.intel.com> <92EBB4272BF81E4089A7126EC1E7B2846676271D@IRSMSX101.ger.corp.intel.com> <951505b8-9580-7131-2f14-de92817190a7@codeaurora.org> <92EBB4272BF81E4089A7126EC1E7B2846676309A@IRSMSX101.ger.corp.intel.com> In-Reply-To: MIME-Version: 1.0 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "linux-pci@vger.kernel.org" , "timur@codeaurora.org" , Sinan Kaya , "linux-arm-msm@vger.kernel.org" , Bjorn Helgaas , "linux-arm-kernel@lists.infradead.org" Content-Type: text/plain; charset="us-ascii" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+bjorn=helgaas.com@lists.infradead.org List-ID: >> Hi Rajat >> >> >>>On Thu, Apr 6, 2017 at 8:19 AM, Sinan Kaya wrote: >>>> >>>> On 4/6/2017 9:23 AM, Patel, Mayurkumar wrote: >>>> > Actually, The enabling/configuring of ASPM L1.2 is opposite then ASPM L1. >>>> > In case of L1, Upstream must configure first L1 and then downstream according to PCIe spec. >>>> > In case of L1.2, Downstream must configure L1.2 and then upstream according (to L1.2 ECN spec. -> 5.5.4. L1 PM >>>> > substates Configuration). >>>> > >>>> > @Bjorn: >>>> > I even found that programming of pcie_config_aspm_l1ss() sub-states is done in the opposite way than described in >>>> > the spec., >>>> > >>>> > The spec. says following and correct me If I am wrong or I misinterpret the spec. : >>>> > >>>> > 5.5.4. L1 PM Substates Configuration >>>> > >>>> > The Setting of any enable bit must be performed at the Downstream Port before the >>>> > corresponding bit is permitted to be Set at the Upstream Port. If any L1 PM Substates enable >>>> > bit is at a later time to be cleared, the enable bit(s) must be cleared in the Upstream Port >>>> > before the corresponding enable bit(s) are permitted to be cleared in the Downstream Port. >>>> > >>> >>>Thanks for bringing to attention. My understanding / interpretation of >>>"Downstream port" was the port pointing downwards (from the "Upstream" >>>component). E.g. when an EP connects to a hub port, PCIe text refers >>>to the hub port as the "downstream port". Similarly "upstream port" is >>>used for referring to a switch's port that "points" upwards towards >>>the root port. Thus, I interpreted the text to mean that I need to >>>enable it in the "downstream port" (in the root port / switch port) >>>followed by the "upstream port" (in the device). >>> >>>It would have been great if the PCIe spec was as clear for L1 >>>substates as it was for L1: >>>---------------------------- >>>ASPM L1 must be enabled by software in the Upstream >>>component on a Link prior to enabling ASPM L1 in the >>>Downstream component on that Link. >>>----------------------------- >>>For ASPM L1, the spec clearly says "Upstream component" which can only >>>mean the switch's "downstream" port. I'm open to changing it if there >>>is consensus that my interpretation is wrong. >> >> In fact, Your understanding seems to be correct. It was my mistake that I raised it without >> actually, keeping in mind or understanding port/component difference which I didn't notice. >> My sincere apologies for that. > >No worries, yes, it is tricky and even I had missed it when I >implemented it first. :-) > >> >>> >>>I'm actually not sure if I understood what is the problem that is >>>being seen with L1 PM substates. Can you please elaborate? >>> >> >> >> The actual problem, what Sinan and me were seeing with ASPM L1 with POLICY_DEFAULT >> as described in https://patchwork.kernel.org/patch/9548321/ > >OK, I understood this problem that you are trying to solve. Lets call >this problem (1). Sorry, I haven't yet looked at your patches, and I >will take a look. > >> >> Sinan worked out patches to resolve the issue but on my platform now I am starting to see >> that ASPM L1SS gets impacted by these patches. > >OK, lets call this problem (2) - are you saying that this only impacts >L1SS and not L1? Sorry, just trying to understand because I can't >think of anyway L1 and L1SS bits are handled differently.. > Actually, in my platform, BIOS configures ASPM L1 if no EP found during boot on Root Port but L1SS does not get enabled during boot on Root Port if no device found during boot. So it's bit different. >> Basically, with his patches, when Policy is set to default, >> and if no PCIe EP is connected to Root Port during boot up, BIOS does not configure L1SS for it, on my >> platform. So the link->aspm_default in aspm.c stores configuration without L1SS. > >I understand uptil here: >No Device on boot, ASPM Policy=default => BIOS does not enable any >ASPM bits => kernel does the same. > >> When the EP gets >> connected afterwards, due to link->aspm_default set to non L1SS configuration, even if BIOS >> sets ASPM L1SS for Root Port and Endpoint both, > >Sorry, I don't think I followed this part. You are saying when the EP >gets hot-plugged later (after booting up with no EP), the BIOS sets >ASPM L1SS for root port & endpoint at that time?? > Yes when EP gets connected at any time(i.e. during boot or after boot), BIOS sets L1 and L1SS both for Root Port and Endpoint. >> it gets cleared in the aspm driver. >> >> Without the patches Sinan has worked, it was a different issue as described above, and L1/L1SS were >> getting always enabled by the BIOS for endpoint and RP, but kernel enabled/disabled them alternatively. >> >> So basically, I am not currently 100% sure, what is the proper fix for this. Whether BIOS should >> enable L1SS on Root Port no matter Endpoint is connected or not during boot? > >I'd think not. > >While I don't understand the problem (2) currently, wouldn't you face >the same problem (2) with L1? Are you seeing L1 & L1SS bits handled >differently in your use case / problem case? > Yes it is indeed, only during boot without Endpoint connected (L1 is set on Root port but L1SS is not). >Thanks, > >Rajat > >> >> Or I am not sure, whether could we should still update link->aspm_default partly for L1SS in the old patch way >> https://patchwork.ozlabs.org/patch/736771/ >> >> Any feedback would be helpful then may be if required I can or if Sinan can work out the patches for L1SS also fine for me. >> >> >>> >>>> >>>> >>>> Thanks for testing. >>>> >>>> commit a142f4d3e5c54db5e942fa6ee5f3dc0e8c83207b >>>> Author: Rajat Jain >>>> Date: Mon Jan 2 22:34:15 2017 -0800 >>>> >>>> PCI/ASPM: Add comment about L1 substate latency >>>> >>>> Since the exit latencies for L1 substates are not advertised by a device, >>>> it is not clear in spec how to do a L1 substate exit latency check. We >>>> assume that the L1 exit latencies advertised by a device include L1 >>>> substate latencies (and hence do not do any check). If that is not true, >>>> we should do some sort of check here. >>>> >>>> (I'm not clear about what that check should like currently. I'd be glad to >>>> take up any suggestions). >>>> >>>> Signed-off-by: Rajat Jain >>>> Signed-off-by: Bjorn Helgaas >>>> >>>> I added Rajat for discussion on L1SS. I think this deserves its own discussion. >>> >>>Thanks, The above commit specifically adds a comment to >>>pcie_aspm_check_latency(), because I wanted to leave a note >>>highlighting that potentially, we could add a more stringent check for >>>exit latency for L1SS. But that has nothing to do with how we are >>>configuring or enabling / disabling the L1 substates. >>> >>>Thanks & Best Regards, >>> >>>Rajat >>> >>>> I'll look at the other part of your email and move things around a little bit >>>> less aggressively for the aspm_default. >>>> >>>> >>>> -- >>>> Sinan Kaya >>>> Qualcomm Datacenter Technologies, Inc. as an affiliate of Qualcomm Technologies, Inc. >>>> Qualcomm Technologies, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project. >> Intel Deutschland GmbH >> Registered Address: Am Campeon 10-12, 85579 Neubiberg, Germany >> Tel: +49 89 99 8853-0, www.intel.de >> Managing Directors: Christin Eisenschmid, Christian Lamprechter >> Chairperson of the Supervisory Board: Nicole Lau >> Registered Office: Munich >> Commercial Register: Amtsgericht Muenchen HRB 186928 Intel Deutschland GmbH Registered Address: Am Campeon 10-12, 85579 Neubiberg, Germany Tel: +49 89 99 8853-0, www.intel.de Managing Directors: Christin Eisenschmid, Christian Lamprechter Chairperson of the Supervisory Board: Nicole Lau Registered Office: Munich Commercial Register: Amtsgericht Muenchen HRB 186928 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel From mboxrd@z Thu Jan 1 00:00:00 1970 From: mayurkumar.patel@intel.com (Patel, Mayurkumar) Date: Mon, 10 Apr 2017 11:44:43 +0000 Subject: [PATCH V7 0/5] PCI/ASPM: reconfigure ASPM following hotplug for POLICY_DEFAULT In-Reply-To: References: <1490880636-30542-1-git-send-email-okaya@codeaurora.org> <7c48ca8b-b834-3257-91dc-77e9d19def6c@codeaurora.org> <92EBB4272BF81E4089A7126EC1E7B28466761383@IRSMSX101.ger.corp.intel.com> <92EBB4272BF81E4089A7126EC1E7B2846676271D@IRSMSX101.ger.corp.intel.com> <951505b8-9580-7131-2f14-de92817190a7@codeaurora.org> <92EBB4272BF81E4089A7126EC1E7B2846676309A@IRSMSX101.ger.corp.intel.com> Message-ID: <92EBB4272BF81E4089A7126EC1E7B2846676662B@IRSMSX101.ger.corp.intel.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org >> Hi Rajat >> >> >>>On Thu, Apr 6, 2017 at 8:19 AM, Sinan Kaya wrote: >>>> >>>> On 4/6/2017 9:23 AM, Patel, Mayurkumar wrote: >>>> > Actually, The enabling/configuring of ASPM L1.2 is opposite then ASPM L1. >>>> > In case of L1, Upstream must configure first L1 and then downstream according to PCIe spec. >>>> > In case of L1.2, Downstream must configure L1.2 and then upstream according (to L1.2 ECN spec. -> 5.5.4. L1 PM >>>> > substates Configuration). >>>> > >>>> > @Bjorn: >>>> > I even found that programming of pcie_config_aspm_l1ss() sub-states is done in the opposite way than described in >>>> > the spec., >>>> > >>>> > The spec. says following and correct me If I am wrong or I misinterpret the spec. : >>>> > >>>> > 5.5.4. L1 PM Substates Configuration >>>> > >>>> > The Setting of any enable bit must be performed at the Downstream Port before the >>>> > corresponding bit is permitted to be Set at the Upstream Port. If any L1 PM Substates enable >>>> > bit is at a later time to be cleared, the enable bit(s) must be cleared in the Upstream Port >>>> > before the corresponding enable bit(s) are permitted to be cleared in the Downstream Port. >>>> > >>> >>>Thanks for bringing to attention. My understanding / interpretation of >>>"Downstream port" was the port pointing downwards (from the "Upstream" >>>component). E.g. when an EP connects to a hub port, PCIe text refers >>>to the hub port as the "downstream port". Similarly "upstream port" is >>>used for referring to a switch's port that "points" upwards towards >>>the root port. Thus, I interpreted the text to mean that I need to >>>enable it in the "downstream port" (in the root port / switch port) >>>followed by the "upstream port" (in the device). >>> >>>It would have been great if the PCIe spec was as clear for L1 >>>substates as it was for L1: >>>---------------------------- >>>ASPM L1 must be enabled by software in the Upstream >>>component on a Link prior to enabling ASPM L1 in the >>>Downstream component on that Link. >>>----------------------------- >>>For ASPM L1, the spec clearly says "Upstream component" which can only >>>mean the switch's "downstream" port. I'm open to changing it if there >>>is consensus that my interpretation is wrong. >> >> In fact, Your understanding seems to be correct. It was my mistake that I raised it without >> actually, keeping in mind or understanding port/component difference which I didn't notice. >> My sincere apologies for that. > >No worries, yes, it is tricky and even I had missed it when I >implemented it first. :-) > >> >>> >>>I'm actually not sure if I understood what is the problem that is >>>being seen with L1 PM substates. Can you please elaborate? >>> >> >> >> The actual problem, what Sinan and me were seeing with ASPM L1 with POLICY_DEFAULT >> as described in https://patchwork.kernel.org/patch/9548321/ > >OK, I understood this problem that you are trying to solve. Lets call >this problem (1). Sorry, I haven't yet looked at your patches, and I >will take a look. > >> >> Sinan worked out patches to resolve the issue but on my platform now I am starting to see >> that ASPM L1SS gets impacted by these patches. > >OK, lets call this problem (2) - are you saying that this only impacts >L1SS and not L1? Sorry, just trying to understand because I can't >think of anyway L1 and L1SS bits are handled differently.. > Actually, in my platform, BIOS configures ASPM L1 if no EP found during boot on Root Port but L1SS does not get enabled during boot on Root Port if no device found during boot. So it's bit different. >> Basically, with his patches, when Policy is set to default, >> and if no PCIe EP is connected to Root Port during boot up, BIOS does not configure L1SS for it, on my >> platform. So the link->aspm_default in aspm.c stores configuration without L1SS. > >I understand uptil here: >No Device on boot, ASPM Policy=default => BIOS does not enable any >ASPM bits => kernel does the same. > >> When the EP gets >> connected afterwards, due to link->aspm_default set to non L1SS configuration, even if BIOS >> sets ASPM L1SS for Root Port and Endpoint both, > >Sorry, I don't think I followed this part. You are saying when the EP >gets hot-plugged later (after booting up with no EP), the BIOS sets >ASPM L1SS for root port & endpoint at that time?? > Yes when EP gets connected at any time(i.e. during boot or after boot), BIOS sets L1 and L1SS both for Root Port and Endpoint. >> it gets cleared in the aspm driver. >> >> Without the patches Sinan has worked, it was a different issue as described above, and L1/L1SS were >> getting always enabled by the BIOS for endpoint and RP, but kernel enabled/disabled them alternatively. >> >> So basically, I am not currently 100% sure, what is the proper fix for this. Whether BIOS should >> enable L1SS on Root Port no matter Endpoint is connected or not during boot? > >I'd think not. > >While I don't understand the problem (2) currently, wouldn't you face >the same problem (2) with L1? Are you seeing L1 & L1SS bits handled >differently in your use case / problem case? > Yes it is indeed, only during boot without Endpoint connected (L1 is set on Root port but L1SS is not). >Thanks, > >Rajat > >> >> Or I am not sure, whether could we should still update link->aspm_default partly for L1SS in the old patch way >> https://patchwork.ozlabs.org/patch/736771/ >> >> Any feedback would be helpful then may be if required I can or if Sinan can work out the patches for L1SS also fine for me. >> >> >>> >>>> >>>> >>>> Thanks for testing. >>>> >>>> commit a142f4d3e5c54db5e942fa6ee5f3dc0e8c83207b >>>> Author: Rajat Jain >>>> Date: Mon Jan 2 22:34:15 2017 -0800 >>>> >>>> PCI/ASPM: Add comment about L1 substate latency >>>> >>>> Since the exit latencies for L1 substates are not advertised by a device, >>>> it is not clear in spec how to do a L1 substate exit latency check. We >>>> assume that the L1 exit latencies advertised by a device include L1 >>>> substate latencies (and hence do not do any check). If that is not true, >>>> we should do some sort of check here. >>>> >>>> (I'm not clear about what that check should like currently. I'd be glad to >>>> take up any suggestions). >>>> >>>> Signed-off-by: Rajat Jain >>>> Signed-off-by: Bjorn Helgaas >>>> >>>> I added Rajat for discussion on L1SS. I think this deserves its own discussion. >>> >>>Thanks, The above commit specifically adds a comment to >>>pcie_aspm_check_latency(), because I wanted to leave a note >>>highlighting that potentially, we could add a more stringent check for >>>exit latency for L1SS. But that has nothing to do with how we are >>>configuring or enabling / disabling the L1 substates. >>> >>>Thanks & Best Regards, >>> >>>Rajat >>> >>>> I'll look at the other part of your email and move things around a little bit >>>> less aggressively for the aspm_default. >>>> >>>> >>>> -- >>>> Sinan Kaya >>>> Qualcomm Datacenter Technologies, Inc. as an affiliate of Qualcomm Technologies, Inc. >>>> Qualcomm Technologies, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project. >> Intel Deutschland GmbH >> Registered Address: Am Campeon 10-12, 85579 Neubiberg, Germany >> Tel: +49 89 99 8853-0, www.intel.de >> Managing Directors: Christin Eisenschmid, Christian Lamprechter >> Chairperson of the Supervisory Board: Nicole Lau >> Registered Office: Munich >> Commercial Register: Amtsgericht Muenchen HRB 186928 Intel Deutschland GmbH Registered Address: Am Campeon 10-12, 85579 Neubiberg, Germany Tel: +49 89 99 8853-0, www.intel.de Managing Directors: Christin Eisenschmid, Christian Lamprechter Chairperson of the Supervisory Board: Nicole Lau Registered Office: Munich Commercial Register: Amtsgericht Muenchen HRB 186928