From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by gabe.freedesktop.org (Postfix) with ESMTPS id B115A896F7 for ; Tue, 4 Jun 2019 11:48:33 +0000 (UTC) From: Simon Ser Date: Tue, 4 Jun 2019 14:48:34 +0300 Message-Id: <20190604114836.2830-2-simon.ser@intel.com> In-Reply-To: <20190604114836.2830-1-simon.ser@intel.com> References: <20190604114836.2830-1-simon.ser@intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t v2 1/3] lib/igt_audio: detect noise and pops List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: igt-dev@lists.freedesktop.org Cc: martin.peres@intel.com List-ID: Rmlyc3QsIG5vcm1hbGl6ZSB0aGUgYmluIHBvd2VyIGJ5IGRpdmlkaW5nIGl0IGJ5IHRoZSBudW1i ZXIgb2YgaW5wdXQgc2FtcGxlcy4KV2UgbmVlZCB0byBtdWx0aXBseSBieSAyIHNpbmNlIHdlIGdl dCBoYWxmIGFzIG1hbnkgYmlucyBhcyBpbnB1dCBzYW1wbGVzLgoKU2Vjb25kLCBjaGVjayB0aGF0 IGxvdyBmcmVxdWVuY2llcyBhcmUgdW5kZXIgYSBnaXZlbiB0aHJlc2hvbGQuIElmIHRoZXJlIGlz IGEKcG9wIG9yIHNvbWUgbm9pc2UsIHRoZSBsb3cgZnJlcXVlbmNpZXMgd2lsbCBiZSBhZmZlY3Rl ZC4KClNpZ25lZC1vZmYtYnk6IFNpbW9uIFNlciA8c2ltb24uc2VyQGludGVsLmNvbT4KLS0tCiBs aWIvaWd0X2F1ZGlvLmMgfCA1OCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKy0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNTMgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9saWIvaWd0X2F1ZGlvLmMgYi9saWIvaWd0X2F1ZGlvLmMKaW5k ZXggMDhjMGZiNmFmMGRiLi5lMGIxYmFmZTFiZTIgMTAwNjQ0Ci0tLSBhL2xpYi9pZ3RfYXVkaW8u YworKysgYi9saWIvaWd0X2F1ZGlvLmMKQEAgLTM5LDYgKzM5LDE3IEBACiAjZGVmaW5lIENIQU5O RUxTX01BWCA4CiAjZGVmaW5lIFNZTlRIRVNJWkVfQU1QTElUVURFIDAuOQogI2RlZmluZSBTWU5U SEVTSVpFX0FDQ1VSQUNZIDAuMgorLyoqIE1JTl9GUkVROiBtaW5pbXVtIGZyZXF1ZW5jeSB0aGF0 IGF1ZGlvX3NpZ25hbCBjYW4gZ2VuZXJhdGUuCisgKgorICogVG8gbWFrZSBzdXJlIHRoZSBhdWRp byBzaWduYWwgZG9lc24ndCBjb250YWluIG5vaXNlLCAjYXVkaW9fc2lnbmFsX2RldGVjdAorICog Y2hlY2tzIHRoYXQgbG93IGZyZXF1ZW5jaWVzIGhhdmUgYSBwb3dlciBsb3dlciB0aGFuICNOT0lT RV9USFJFU0hPTEQuCisgKiBIb3dldmVyIGlmIHRvby1sb3cgZnJlcXVlbmNpZXMgYXJlIGdlbmVy YXRlZCwgbm9pc2UgZGV0ZWN0aW9uIGNhbiBmYWlsLgorICoKKyAqIFRoaXMgdmFsdWUgc2hvdWxk IGJlIGF0IGxlYXN0IDEwMEh6IHBsdXMgb25lIGJpbi4gQmVzdCBpcyBub3QgdG8gY2hhbmdlIHRo aXMKKyAqIHZhbHVlLgorICovCisjZGVmaW5lIE1JTl9GUkVRIDIwMCAvKiBIeiAqLworI2RlZmlu ZSBOT0lTRV9USFJFU0hPTEQgMC4wMDA1CiAKIC8qKgogICogU0VDVElPTjppZ3RfYXVkaW8KQEAg LTEwOCw2ICsxMTksNyBAQCBpbnQgYXVkaW9fc2lnbmFsX2FkZF9mcmVxdWVuY3koc3RydWN0IGF1 ZGlvX3NpZ25hbCAqc2lnbmFsLCBpbnQgZnJlcXVlbmN5LAogCiAJaWd0X2Fzc2VydChpbmRleCA8 IEZSRVFTX01BWCk7CiAJaWd0X2Fzc2VydChjaGFubmVsIDwgc2lnbmFsLT5jaGFubmVscyk7CisJ aWd0X2Fzc2VydChmcmVxdWVuY3kgPj0gTUlOX0ZSRVEpOwogCiAJLyogU3RheSB3aXRoaW4gdGhl IE55cXVpc3TigJNTaGFubm9uIHNhbXBsaW5nIHRoZW9yZW0uICovCiAJaWYgKGZyZXF1ZW5jeSA+ IHNpZ25hbC0+c2FtcGxpbmdfcmF0ZSAvIDIpIHsKQEAgLTMwNCw2ICszMTYsMTIgQEAgdm9pZCBh dWRpb19zaWduYWxfZmlsbChzdHJ1Y3QgYXVkaW9fc2lnbmFsICpzaWduYWwsIGRvdWJsZSAqYnVm ZmVyLAogCWF1ZGlvX3Nhbml0eV9jaGVjayhidWZmZXIsIHNpZ25hbC0+Y2hhbm5lbHMgKiBzYW1w bGVzKTsKIH0KIAorLyogU2VlIGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1dpbmRvd19m dW5jdGlvbiNIYW5uX2FuZF9IYW1taW5nX3dpbmRvd3MgKi8KK3N0YXRpYyBkb3VibGUgaGFubl93 aW5kb3coZG91YmxlIHYsIHNpemVfdCBpLCBzaXplX3QgTikKK3sKKwlyZXR1cm4gdiAqIDAuNSAq ICgxIC0gY29zKDIuMCAqIE1fUEkgKiAoZG91YmxlKSBpIC8gKGRvdWJsZSkgTikpOworfQorCiAv KioKICAqIENoZWNrcyB0aGF0IGZyZXF1ZW5jaWVzIHNwZWNpZmllZCBpbiBzaWduYWwsIGFuZCBv bmx5IHRob3NlLCBhcmUgaW5jbHVkZWQKICAqIGluIHRoZSBpbnB1dCBkYXRhLgpAQCAtMzI4LDYg KzM0NiwxNiBAQCBib29sIGF1ZGlvX3NpZ25hbF9kZXRlY3Qoc3RydWN0IGF1ZGlvX3NpZ25hbCAq c2lnbmFsLCBpbnQgc2FtcGxpbmdfcmF0ZSwKIAlkYXRhID0gbWFsbG9jKHNhbXBsZXNfbGVuICog c2l6ZW9mKGRvdWJsZSkpOwogCW1lbWNweShkYXRhLCBzYW1wbGVzLCBzYW1wbGVzX2xlbiAqIHNp emVvZihkb3VibGUpKTsKIAorCS8qIEFwcGx5IGEgSGFubiB3aW5kb3cgdG8gdGhlIGlucHV0IHNp Z25hbCwgdG8gcmVkdWNlIGZyZXF1ZW5jeSBsZWFrcworCSAqIGR1ZSB0byB0aGUgZW5kcG9pbnRz IG9mIHRoZSBzaWduYWwgYmVpbmcgZGlzY29udGludW91cy4KKwkgKgorCSAqIEZvciBtb3JlIGlu Zm86CisJICogLSBodHRwczovL2Rvd25sb2FkLm5pLmNvbS9ldmFsdWF0aW9uL3B4aS9VbmRlcnN0 YW5kaW5nJTIwRkZUcyUyMGFuZCUyMFdpbmRvd2luZy5wZGYKKwkgKiAtIGh0dHBzOi8vZW4ud2lr aXBlZGlhLm9yZy93aWtpL1dpbmRvd19mdW5jdGlvbgorCSAqLworCWZvciAoaSA9IDA7IGkgPCBk YXRhX2xlbjsgaSsrKQorCQlkYXRhW2ldID0gaGFubl93aW5kb3coZGF0YVtpXSwgaSwgZGF0YV9s ZW4pOworCiAJLyogQWxsb3dlZCBlcnJvciBpbiBIeiBkdWUgdG8gRkZUIHN0ZXAgKi8KIAlmcmVx X2FjY3VyYWN5ID0gc2FtcGxpbmdfcmF0ZSAvIGRhdGFfbGVuOwogCWlndF9kZWJ1ZygiQWxsb3dl ZCBmcmVxLiBlcnJvcjogJWQgSHpcbiIsIGZyZXFfYWNjdXJhY3kpOwpAQCAtMzM4LDggKzM2Niw3 IEBAIGJvb2wgYXVkaW9fc2lnbmFsX2RldGVjdChzdHJ1Y3QgYXVkaW9fc2lnbmFsICpzaWduYWws IGludCBzYW1wbGluZ19yYXRlLAogCQlpZ3RfYXNzZXJ0KDApOwogCX0KIAotCS8qIENvbXB1dGUg dGhlIHBvd2VyIHJlY2VpdmVkIGJ5IGV2ZXJ5IGJpbiBvZiB0aGUgRkZULCBhbmQgcmVjb3JkIHRo ZQotCSAqIG1heGltdW0gcG93ZXIgcmVjZWl2ZWQgYXMgYSB3YXkgdG8gbm9ybWFsaXplIGFsbCB0 aGUgb3RoZXJzLgorCS8qIENvbXB1dGUgdGhlIHBvd2VyIHJlY2VpdmVkIGJ5IGV2ZXJ5IGJpbiBv ZiB0aGUgRkZULgogCSAqCiAJICogRm9yIGkgPCBkYXRhX2xlbiAvIDIsIHRoZSByZWFsIHBhcnQg b2YgdGhlIGktdGggdGVybSBpcyBzdG9yZWQgYXQKIAkgKiBkYXRhW2ldIGFuZCBpdHMgaW1hZ2lu YXJ5IHBhcnQgaXMgc3RvcmVkIGF0IGRhdGFbZGF0YV9sZW4gLSBpXS4KQEAgLTM0OSwxNSArMzc2 LDM2IEBAIGJvb2wgYXVkaW9fc2lnbmFsX2RldGVjdChzdHJ1Y3QgYXVkaW9fc2lnbmFsICpzaWdu YWwsIGludCBzYW1wbGluZ19yYXRlLAogCSAqIFRoZSBwb3dlciBpcyBlbmNvZGVkIGFzIHRoZSBt YWduaXR1ZGUgb2YgdGhlIGNvbXBsZXggbnVtYmVyIGFuZCB0aGUKIAkgKiBwaGFzZSBpcyBlbmNv ZGVkIGFzIGl0cyBhbmdsZS4KIAkgKi8KLQltYXggPSAwOwogCWJpbl9wb3dlclswXSA9IGRhdGFb MF07CiAJZm9yIChpID0gMTsgaSA8IGJpbl9wb3dlcl9sZW4gLSAxOyBpKyspIHsKIAkJYmluX3Bv d2VyW2ldID0gaHlwb3QoZGF0YVtpXSwgZGF0YVtkYXRhX2xlbiAtIGldKTsKLQkJaWYgKGJpbl9w b3dlcltpXSA+IG1heCkKLQkJCW1heCA9IGJpbl9wb3dlcltpXTsKIAl9CiAJYmluX3Bvd2VyW2Jp bl9wb3dlcl9sZW4gLSAxXSA9IGRhdGFbZGF0YV9sZW4gLyAyXTsKIAorCS8qIE5vcm1hbGl6ZSB0 aGUgcG93ZXIgKi8KKwlmb3IgKGkgPSAwOyBpIDwgYmluX3Bvd2VyX2xlbjsgaSsrKQorCQliaW5f cG93ZXJbaV0gPSAyICogYmluX3Bvd2VyW2ldIC8gZGF0YV9sZW47CisKKwkvKiBEZXRlY3Qgbm9p c2Ugd2l0aCBhIHRocmVzaG9sZCBvbiB0aGUgcG93ZXIgb2YgbG93IGZyZXF1ZW5jaWVzICovCisJ Zm9yIChpID0gMDsgaSA8IGJpbl9wb3dlcl9sZW47IGkrKykgeworCQlmcmVxID0gc2FtcGxpbmdf cmF0ZSAqIGkgLyBkYXRhX2xlbjsKKwkJaWYgKGZyZXEgPiBNSU5fRlJFUSAtIDEwMCkKKwkJCWJy ZWFrOworCQlpZiAoYmluX3Bvd2VyW2ldID4gTk9JU0VfVEhSRVNIT0xEKSB7CisJCQlpZ3RfZGVi dWcoIk5vaXNlIGxldmVsIHRvbyBoaWdoOiBmcmVxPSVkIHBvd2VyPSVmXG4iLAorCQkJCSAgZnJl cSwgYmluX3Bvd2VyW2ldKTsKKwkJCXJldHVybiBmYWxzZTsKKwkJfQorCX0KKworCS8qIFJlY29y ZCB0aGUgbWF4aW11bSBwb3dlciByZWNlaXZlZCBhcyBhIHdheSB0byBub3JtYWxpemUgYWxsIHRo ZQorCSAqIG90aGVycy4gKi8KKwltYXggPSBOQU47CisJZm9yIChpID0gMDsgaSA8IGJpbl9wb3dl cl9sZW47IGkrKykgeworCQlpZiAoaXNuYW4obWF4KSB8fCBiaW5fcG93ZXJbaV0gPiBtYXgpCisJ CQltYXggPSBiaW5fcG93ZXJbaV07CisJfQorCiAJZm9yIChpID0gMDsgaSA8IHNpZ25hbC0+ZnJl cXNfY291bnQ7IGkrKykKIAkJZGV0ZWN0ZWRbaV0gPSBmYWxzZTsKIAotLSAKMi4yMS4wCgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwppZ3QtZGV2IG1haWxp bmcgbGlzdAppZ3QtZGV2QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVk ZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2lndC1kZXY=