From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [RFC 3/4] drm/i915: introduce display_uncore Date: Thu, 27 Jun 2019 15:41:11 +0300 Message-ID: <20190627124111.GX5942@intel.com> References: <20190624203152.13725-1-daniele.ceraolospurio@intel.com> <20190624203152.13725-4-daniele.ceraolospurio@intel.com> <20190626184254.GW5942@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4250A6E21A for ; Thu, 27 Jun 2019 12:41:15 +0000 (UTC) Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Daniele Ceraolo Spurio Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gV2VkLCBKdW4gMjYsIDIwMTkgYXQgMDE6Mjc6NTdQTSAtMDcwMCwgRGFuaWVsZSBDZXJhb2xv IFNwdXJpbyB3cm90ZToKPiAKPiAKPiBPbiA2LzI2LzE5IDExOjQyIEFNLCBWaWxsZSBTeXJqw6Rs w6Qgd3JvdGU6Cj4gPiBPbiBNb24sIEp1biAyNCwgMjAxOSBhdCAwMTozMTo1MVBNIC0wNzAwLCBE YW5pZWxlIENlcmFvbG8gU3B1cmlvIHdyb3RlOgo+ID4+IEEgZm9yY2V3YWtlLWxlc3MgdW5jb3Jl IHRvIGJlIHVzZWQgdG8gZGVjb3VwbGUgR1QgYWNjZXNzZXMgZnJvbSBkaXNwbGF5Cj4gPj4gb25l cyB0byBhdm9pZCBzZXJpYWxpemluZyB0aGVtIHdoZW4gdGhlcmUgaXMgbm8gbmVlZC4KPiA+Pgo+ ID4+IE5ldyBhY2Nlc3NvcnMgdGhhdCBpbXBsaWNpdGx5IHVzZSB0aGUgbmV3IHVuY29yZSBoYXZl IGFsc28gYmVlbiBhZGRlZC4KPiA+Pgo+ID4+IFNpZ25lZC1vZmYtYnk6IERhbmllbGUgQ2VyYW9s byBTcHVyaW8gPGRhbmllbGUuY2VyYW9sb3NwdXJpb0BpbnRlbC5jb20+Cj4gPj4gQ2M6IFZpbGxl IFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+Cj4gPj4gLS0tCj4gPj4g ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5jICAgICB8IDE3ICsrKysrKysrLQo+ID4+ ICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCAgICAgfCA1OCArKysrKysrKysrKysr KysrKysrKysrKysrKysrKwo+ID4+ICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfdW5jb3Jl LmMgfCAgOSArKysrLQo+ID4+ICAgMyBmaWxlcyBjaGFuZ2VkLCA4MSBpbnNlcnRpb25zKCspLCAz IGRlbGV0aW9ucygtKQo+ID4+Cj4gPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZHJ2LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5jCj4gPj4gaW5kZXgg MmQ2YzY0M2RkZTUxLi5lMjJjMGE2YjM5OTIgMTAwNjQ0Cj4gPj4gLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9kcnYuYwo+ID4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf ZHJ2LmMKPiA+PiBAQCAtOTAzLDYgKzkwMyw3IEBAIHN0YXRpYyBpbnQgaTkxNV9kcml2ZXJfaW5p dF9lYXJseShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCj4gPj4gICAKPiA+PiAg IAlpbnRlbF91bmNvcmVfbW1pb19kZWJ1Z19pbml0X2Vhcmx5KCZkZXZfcHJpdi0+bW1pb19kZWJ1 Zyk7Cj4gPj4gICAJaW50ZWxfdW5jb3JlX2luaXRfZWFybHkoJmRldl9wcml2LT51bmNvcmUsIGRl dl9wcml2KTsKPiA+PiArCWludGVsX3VuY29yZV9pbml0X2Vhcmx5KCZkZXZfcHJpdi0+ZGVfdW5j b3JlLCBkZXZfcHJpdik7Cj4gPj4gICAKPiA+PiAgIAlzcGluX2xvY2tfaW5pdCgmZGV2X3ByaXYt PmlycV9sb2NrKTsKPiA+PiAgIAlzcGluX2xvY2tfaW5pdCgmZGV2X3ByaXYtPmdwdV9lcnJvci5s b2NrKTsKPiA+PiBAQCAtMTAwMSw2ICsxMDAyLDEwIEBAIHN0YXRpYyBpbnQgaTkxNV9kcml2ZXJf aW5pdF9tbWlvKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKPiA+PiAgIAlpZiAo cmV0IDwgMCkKPiA+PiAgIAkJZ290byBlcnJfYnJpZGdlOwo+ID4+ICAgCj4gPj4gKwlyZXQgPSBp bnRlbF91bmNvcmVfaW5pdF9tbWlvKCZkZXZfcHJpdi0+ZGVfdW5jb3JlKTsKPiA+PiArCWlmIChy ZXQgPCAwKQo+ID4+ICsJCWdvdG8gZXJyX3VuY29yZTsKPiA+PiArCj4gPj4gICAJLyogVHJ5IHRv IG1ha2Ugc3VyZSBNQ0hCQVIgaXMgZW5hYmxlZCBiZWZvcmUgcG9raW5nIGF0IGl0ICovCj4gPj4g ICAJaW50ZWxfc2V0dXBfbWNoYmFyKGRldl9wcml2KTsKPiA+PiAgIAo+ID4+IEBAIC0xMDEyLDE0 ICsxMDE3LDE2IEBAIHN0YXRpYyBpbnQgaTkxNV9kcml2ZXJfaW5pdF9tbWlvKHN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICpkZXZfcHJpdikKPiA+PiAgIAo+ID4+ICAgCXJldCA9IGludGVsX2VuZ2lu ZXNfaW5pdF9tbWlvKGRldl9wcml2KTsKPiA+PiAgIAlpZiAocmV0KQo+ID4+IC0JCWdvdG8gZXJy X3VuY29yZTsKPiA+PiArCQlnb3RvIGVycl9tY2hiYXI7Cj4gPj4gICAKPiA+PiAgIAlpOTE1X2dl bV9pbml0X21taW8oZGV2X3ByaXYpOwo+ID4+ICAgCj4gPj4gICAJcmV0dXJuIDA7Cj4gPj4gICAK PiA+PiAtZXJyX3VuY29yZToKPiA+PiArZXJyX21jaGJhcjoKPiA+PiAgIAlpbnRlbF90ZWFyZG93 bl9tY2hiYXIoZGV2X3ByaXYpOwo+ID4+ICsJaW50ZWxfdW5jb3JlX2ZpbmlfbW1pbygmZGV2X3By aXYtPmRlX3VuY29yZSk7Cj4gPj4gK2Vycl91bmNvcmU6Cj4gPj4gICAJaW50ZWxfdW5jb3JlX2Zp bmlfbW1pbygmZGV2X3ByaXYtPnVuY29yZSk7Cj4gPj4gICBlcnJfYnJpZGdlOgo+ID4+ICAgCXBj aV9kZXZfcHV0KGRldl9wcml2LT5icmlkZ2VfZGV2KTsKPiA+PiBAQCAtMTAzNCw2ICsxMDQxLDcg QEAgc3RhdGljIGludCBpOTE1X2RyaXZlcl9pbml0X21taW8oc3RydWN0IGRybV9pOTE1X3ByaXZh dGUgKmRldl9wcml2KQo+ID4+ICAgc3RhdGljIHZvaWQgaTkxNV9kcml2ZXJfY2xlYW51cF9tbWlv KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKPiA+PiAgIHsKPiA+PiAgIAlpbnRl bF90ZWFyZG93bl9tY2hiYXIoZGV2X3ByaXYpOwo+ID4+ICsJaW50ZWxfdW5jb3JlX2ZpbmlfbW1p bygmZGV2X3ByaXYtPmRlX3VuY29yZSk7Cj4gPj4gICAJaW50ZWxfdW5jb3JlX2ZpbmlfbW1pbygm ZGV2X3ByaXYtPnVuY29yZSk7Cj4gPj4gICAJcGNpX2Rldl9wdXQoZGV2X3ByaXYtPmJyaWRnZV9k ZXYpOwo+ID4+ICAgfQo+ID4+IEBAIC0yMTY2LDYgKzIxNzQsNyBAQCBzdGF0aWMgaW50IGk5MTVf ZHJtX3N1c3BlbmRfbGF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBib29sIGhpYmVybmF0aW9u KQo+ID4+ICAgCj4gPj4gICAJaTkxNV9nZW1fc3VzcGVuZF9sYXRlKGRldl9wcml2KTsKPiA+PiAg IAo+ID4+ICsJaW50ZWxfdW5jb3JlX3N1c3BlbmQoJmRldl9wcml2LT5kZV91bmNvcmUpOwo+ID4+ ICAgCWludGVsX3VuY29yZV9zdXNwZW5kKCZkZXZfcHJpdi0+dW5jb3JlKTsKPiA+PiAgIAo+ID4+ ICAgCWludGVsX3Bvd2VyX2RvbWFpbnNfc3VzcGVuZChkZXZfcHJpdiwKPiA+PiBAQCAtMjM2Myw2 ICsyMzcyLDcgQEAgc3RhdGljIGludCBpOTE1X2RybV9yZXN1bWVfZWFybHkoc3RydWN0IGRybV9k ZXZpY2UgKmRldikKPiA+PiAgIAkJCSAgcmV0KTsKPiA+PiAgIAo+ID4+ICAgCWludGVsX3VuY29y ZV9yZXN1bWVfZWFybHkoJmRldl9wcml2LT51bmNvcmUpOwo+ID4+ICsJaW50ZWxfdW5jb3JlX3Jl c3VtZV9lYXJseSgmZGV2X3ByaXYtPmRlX3VuY29yZSk7Cj4gPj4gICAKPiA+PiAgIAlpbnRlbF9n dF9jaGVja19hbmRfY2xlYXJfZmF1bHRzKCZkZXZfcHJpdi0+Z3QpOwo+ID4+ICAgCj4gPj4gQEAg LTI5MzcsNiArMjk0Nyw3IEBAIHN0YXRpYyBpbnQgaW50ZWxfcnVudGltZV9zdXNwZW5kKHN0cnVj dCBkZXZpY2UgKmtkZXYpCj4gPj4gICAKPiA+PiAgIAlpbnRlbF9ydW50aW1lX3BtX2Rpc2FibGVf aW50ZXJydXB0cyhkZXZfcHJpdik7Cj4gPj4gICAKPiA+PiArCWludGVsX3VuY29yZV9zdXNwZW5k KCZkZXZfcHJpdi0+ZGVfdW5jb3JlKTsKPiA+PiAgIAlpbnRlbF91bmNvcmVfc3VzcGVuZCgmZGV2 X3ByaXYtPnVuY29yZSk7Cj4gPj4gICAKPiA+PiAgIAlyZXQgPSAwOwo+ID4+IEBAIC0yOTU1LDYg KzI5NjYsNyBAQCBzdGF0aWMgaW50IGludGVsX3J1bnRpbWVfc3VzcGVuZChzdHJ1Y3QgZGV2aWNl ICprZGV2KQo+ID4+ICAgCWlmIChyZXQpIHsKPiA+PiAgIAkJRFJNX0VSUk9SKCJSdW50aW1lIHN1 c3BlbmQgZmFpbGVkLCBkaXNhYmxpbmcgaXQgKCVkKVxuIiwgcmV0KTsKPiA+PiAgIAkJaW50ZWxf dW5jb3JlX3J1bnRpbWVfcmVzdW1lKCZkZXZfcHJpdi0+dW5jb3JlKTsKPiA+PiArCQlpbnRlbF91 bmNvcmVfcnVudGltZV9yZXN1bWUoJmRldl9wcml2LT5kZV91bmNvcmUpOwo+ID4+ICAgCj4gPj4g ICAJCWludGVsX3J1bnRpbWVfcG1fZW5hYmxlX2ludGVycnVwdHMoZGV2X3ByaXYpOwo+ID4+ICAg Cj4gPj4gQEAgLTMwNTMsNiArMzA2NSw3IEBAIHN0YXRpYyBpbnQgaW50ZWxfcnVudGltZV9yZXN1 bWUoc3RydWN0IGRldmljZSAqa2RldikKPiA+PiAgIAl9Cj4gPj4gICAKPiA+PiAgIAlpbnRlbF91 bmNvcmVfcnVudGltZV9yZXN1bWUoJmRldl9wcml2LT51bmNvcmUpOwo+ID4+ICsJaW50ZWxfdW5j b3JlX3J1bnRpbWVfcmVzdW1lKCZkZXZfcHJpdi0+ZGVfdW5jb3JlKTsKPiA+PiAgIAo+ID4+ICAg CWludGVsX3J1bnRpbWVfcG1fZW5hYmxlX2ludGVycnVwdHMoZGV2X3ByaXYpOwo+ID4+ICAgCj4g Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCj4gPj4gaW5kZXggYTUzYjY1ZDc4MTU5Li5jNTU0Yjc2 OTdiZGMgMTAwNjQ0Cj4gPj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+ ID4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPiA+PiBAQCAtMTM0MSw2 ICsxMzQxLDcgQEAgc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgewo+ID4+ICAgCXJlc291cmNlX3Np emVfdCBzdG9sZW5fdXNhYmxlX3NpemU7CS8qIFRvdGFsIHNpemUgbWludXMgcmVzZXJ2ZWQgcmFu Z2VzICovCj4gPj4gICAKPiA+PiAgIAlzdHJ1Y3QgaW50ZWxfdW5jb3JlIHVuY29yZTsKPiA+PiAr CXN0cnVjdCBpbnRlbF91bmNvcmUgZGVfdW5jb3JlOwo+ID4+ICAgCXN0cnVjdCBpbnRlbF91bmNv cmVfbW1pb19kZWJ1ZyBtbWlvX2RlYnVnOwo+ID4+ICAgCj4gPj4gICAJc3RydWN0IGk5MTVfdmly dHVhbF9ncHUgdmdwdTsKPiA+PiBAQCAtMjc0Niw2ICsyNzQ3LDYzIEBAIGV4dGVybiB2b2lkIGlu dGVsX2Rpc3BsYXlfcHJpbnRfZXJyb3Jfc3RhdGUoc3RydWN0IGRybV9pOTE1X2Vycm9yX3N0YXRl X2J1ZiAqZSwKPiA+PiAgICNkZWZpbmUgSTkxNV9SRUFEX0ZXKHJlZ19fKSBfX0k5MTVfUkVHX09Q KHJlYWRfZncsIGRldl9wcml2LCAocmVnX18pKQo+ID4+ICAgI2RlZmluZSBJOTE1X1dSSVRFX0ZX KHJlZ19fLCB2YWxfXykgX19JOTE1X1JFR19PUCh3cml0ZV9mdywgZGV2X3ByaXYsIChyZWdfXyks ICh2YWxfXykpCj4gPj4gICAKPiA+PiArLyoKPiA+PiArICogVGhlIGZvbGxvd2luZyBhcmUgbW1p by1hY2Nlc3NvcnMgdGhhdCB1c2UgYW4gaW5kZXBlbmRlbnQgbG9jayBhbmQgc2tpcCBhbGwKPiA+ PiArICogdGhlIGZvcmNld2FrZSBsb2dpYywgdG8gYmUgdXNlZCB0byBhY2Nlc3MgZGlzcGxheSBy ZWdpc3RlcnMsIHdoaWNoIGFyZQo+ID4+ICsgKiBvdXRzaWRlIHRoZSBHVCBmb3JjZXdha2Ugd2Vs bHMuCj4gPj4gKyAqLwo+ID4+ICtzdGF0aWMgaW5saW5lIHZvaWQKPiA+PiAraW50ZWxfYXNzZXJ0 X3JlZ2lzdGVyX2lzX2Rpc3BsYXkoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsIGk5MTVf cmVnX3QgcmVnKQo+ID4+ICt7Cj4gPj4gKyNpZmRlZiBDT05GSUdfRFJNX0k5MTVfREVCVUdfTU1J Two+ID4+ICsJdTMyIG9mZnNldCA9IGk5MTVfbW1pb19yZWdfb2Zmc2V0KHJlZyk7Cj4gPj4gKwli b29sIGlzX2RlX3JlZ2lzdGVyOwo+ID4+ICsKPiA+PiArCWlmIChJTlRFTF9HRU4oaTkxNSkgPj0g NSkgewo+ID4+ICsJCWlzX2RlX3JlZ2lzdGVyID0gb2Zmc2V0ID49IDB4NDAwMDAgJiYKPiA+PiAr CQkJKElOVEVMX0dFTihpOTE1KSA8IDExIHx8IG9mZnNldCA8IDB4MWMwMDAwKTsKPiA+IAo+ID4g SSB0aGluayB0aGUgZ2VuMTErIHRoaW5nIGlzIHdyb25nLiBUaGVyZSBhcmUgZWcuIFBIWSByZWdp c3RlcnMKPiA+IGFib3ZlIDB4MTYyMDAwLgo+IAo+IEJ1dCB0aGF0J3Mgc3RpbGwgYmVsb3cgMHgx YzAwMDAuIE1lZGlhIGVuZ2luZXMgc3RhcnQgYXQgMHgxYzAwMDAsIHNvIAo+IHdlJ3JlIGJhY2sg aW4gR1QtbGFuZCBhdCBsZWFzdCB1bnRpbCAweDFkZmZmZi4KCkRvaC4gTWlzcmVhZCB0aGUgb2Zm c2V0LgoKPiAKPiA+IAo+ID4+ICsJfSBlbHNlIHsKPiA+PiArCQlpc19kZV9yZWdpc3RlciA9Cj4g Pj4gKwkJCShvZmZzZXQgPj0gMHg1MDAwICYmIG9mZnNldCA8PSAweDVmZmYpIHx8Cj4gPj4gKwkJ CShvZmZzZXQgPj0gMHg2MDAwICYmIG9mZnNldCA8PSAweDZmZmYpIHx8Cj4gPj4gKwkJCShvZmZz ZXQgPj0gMHhhMDAwICYmIG9mZnNldCA8PSAweGFmZmYpIHx8Cj4gPj4gKwkJCW9mZnNldCA+PSAw eDMwMDAwOwo+ID4gCj4gPiBJIHRoaW5rIHRoZSBXQVJOcyBhcmUgY29taW5nIGZyb20gdGhlIG1j aGJhciByYW5nZSAoMHgxMDAwMCsgb24KPiA+IHRoZXNlIHBsYXRmb3JtcykuIE5vdCByZWFsbHkg c3VyZSBpZiB3ZSBzaG91bGQgZGVzaWduYXRlIHRoYXQKPiA+IGd0IG9yIGRlLgo+ID4gCj4gPiBV bmZvcnR1bmF0ZWx5IHRoZSByZWdpc3RlciByYW5nZXMgZG9uJ3Qgc2VlbSB0byBmb2xsb3cgbXVj aAo+ID4gb2YgYSBzZW5zaWJsZSBwYXR0ZXJuLiBFZy4gd2Ugc2VlbSB0byBoYXZlIGJvdGggZ3Qg YW5kIGRlCj4gPiByZWxhdGVkIHN0dWZmIGFyb3VuZCB0aGUgMHgxMzAwMDAgbWFyayA6KAo+ID4g Cj4gCj4gU2hvdWxkIEkganVzdCBkcm9wIHRoZSBjaGVjayBmb3Igbm93IHRoZW4/IEFsdGVybmF0 aXZlbHksIEkgY291bGQgY2hhbmdlIAo+IHRvIFdBUk4gaWYgd2UgdHJ5IHRvIGFjY2VzcyBhIHJl Z2lzdGVyIHRoYXQgaXMgaW5zaWRlIG9uZSBvZiB0aGUgCj4gZm9yY2V3YWtlIHJhbmdlcyBpZiBD T05GSUdfRFJNX0k5MTVfREVCVUdfTU1JTyBpcyBzZXQuCgpXb3VsZCBiZSBuaWNlIHRvIGhhdmUg YSB3YXJuaW5nIGxpa2UgdGhpcyBzbyB3ZSBkb24ndCBhY2NpZGVudGFsbHkgZW5kCnVwIHRvdWNo aW5nIHRoZSBzYW1lIHJlZ2lzdGVyIChvciBjYWNoZWxpbmUpIHVuZGVyIHR3byBkaWZmZXJlbnQg bG9ja3MKYmVjYXVzZSB0aGF0IGNvdWxkIHRyaWdnZXIgYSBzeXN0ZW0gaGFuZy4KCkkgZ3Vlc3Mg ZnJvbSBjb3JyZWNuZXNzIFBPViBpdCBkb2Vzbid0IHJlYWxseSBtYXR0ZXIgd2hpY2ggcmFuZ2Vz IGFyZQp1bmRlciB3aGljaCBsb2NrLiBTbyB3ZSBjb3VsZCB0cnkgdG8gaW5jbHVkZSB0aGUgbWNo YmFyIHJhbmdlIHVuZGVyCnRoZSBkZSBsb2NrIG9uIG9sZCBwbGF0Zm9ybXMgYXMgd2VsbC4gTWF5 YmUganVzdCBzLzB4MzAwMDAvMHgxMDAwMC8gb24Kb2xkIHBsYXRmb3Jtcz8gSSBkb24ndCBpbW1l ZGlhdGVseSBzZWUgYW55dGhpbmcgZ3QgcmVsYXRlZCBhYm92ZQoweDEwMDAwLiBIbW0uIEJ1dCB0 aGF0IHN0aWxsIGxlYXZlcyBvdXQgaWxrIHdoaWNoIHN0aWxsIGhhcyBtY2hiYXIKYXQgMHgxMDAw MC4gU28gd2UnZCBuZWVkIHRvIGFjY291bnQgZm9yIHRoYXQgYXMgd2VsbC4KCi0tIApWaWxsZSBT eXJqw6Rsw6QKSW50ZWwKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Au b3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwt Z2Z4