From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= Subject: [PATCH 3/6] drm/radeon/kms: add HDMI code for pre-DCE3 R6xx GPUs Date: Sat, 6 Mar 2010 14:03:35 +0100 Message-ID: <1267880618-9909-4-git-send-email-zajec5@gmail.com> References: <1267880618-9909-1-git-send-email-zajec5@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1267880618-9909-1-git-send-email-zajec5@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.sourceforge.net To: dri-devel@lists.sourceforge.net, Dave Airlie Cc: =?UTF-8?q?Christian=20K=C3=B6nig?= List-Id: dri-devel@lists.freedesktop.org T2xkZXIgR1BVcyBhcmUgbGl0dGxlIGRpZmZlcmVudCwgSERNSSBibG9ja3MgYXJlIG5vdCBoYXJk LXdpcmVkLCBidXQgcm91dGFibGUuCldlIHNob3VsZCBqdXN0IGZpbmQgc29tZSBmcmVlIEhETUkg YmxvY2sgYW5kIHJvdXRlIGl0IHRvIGNob29zZW4gZW5jb2Rlci4gSW4KY2FzZSBvZiBSUzZ4MCB0 aGVyZSBpcyBvbmx5IG9uZSBIRE1JIGJsb2NrLCB3ZSBkb24ndCBlbmFibGUgSERNSSBvbiBSUzZ4 MDAgeWV0Cmhvd2V2ZXIuCgpTaWduZWQtb2ZmLWJ5OiBSYWZhxYIgTWnFgmVja2kgPHphamVjNUBn bWFpbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yNjAwX2hkbWkuYyB8ICAgNzEg KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystCiAxIGZpbGVzIGNoYW5nZWQsIDY5 IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL3JhZGVvbi9yNjAwX2hkbWkuYyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcjYwMF9oZG1p LmMKaW5kZXggNTI3NWE4MS4uOGZiZmM3MyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3Jh ZGVvbi9yNjAwX2hkbWkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3I2MDBfaGRtaS5j CkBAIC00MTcsNiArNDE3LDM5IEBAIHZvaWQgcjYwMF9oZG1pX3VwZGF0ZV9hdWRpb19zZXR0aW5n cyhzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIsCiAJV1JFRzMyX1Aob2Zmc2V0K1I2MDBfSERN SV9DTlRMLCAweDA0MDAwMDAwLCB+MHgwNDAwMDAwMCk7CiB9CiAKK3N0YXRpYyBpbnQgcjYwMF9o ZG1pX2ZpbmRfZnJlZV9ibG9jayhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQoreworCXN0cnVjdCBy YWRlb25fZGV2aWNlICpyZGV2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKKwlzdHJ1Y3QgZHJtX2VuY29k ZXIgKmVuY29kZXI7CisJc3RydWN0IHJhZGVvbl9lbmNvZGVyICpyYWRlb25fZW5jb2RlcjsKKwli b29sIGZyZWVfYmxvY2tzWzNdID0geyB0cnVlLCB0cnVlLCB0cnVlIH07CisKKwlsaXN0X2Zvcl9l YWNoX2VudHJ5KGVuY29kZXIsICZkZXYtPm1vZGVfY29uZmlnLmVuY29kZXJfbGlzdCwgaGVhZCkg eworCQlyYWRlb25fZW5jb2RlciA9IHRvX3JhZGVvbl9lbmNvZGVyKGVuY29kZXIpOworCQlzd2l0 Y2ggKHJhZGVvbl9lbmNvZGVyLT5oZG1pX29mZnNldCkgeworCQljYXNlIFI2MDBfSERNSV9CTE9D SzE6CisJCQlmcmVlX2Jsb2Nrc1swXSA9IGZhbHNlOworCQkJYnJlYWs7CisJCWNhc2UgUjYwMF9I RE1JX0JMT0NLMjoKKwkJCWZyZWVfYmxvY2tzWzFdID0gZmFsc2U7CisJCQlicmVhazsKKwkJY2Fz ZSBSNjAwX0hETUlfQkxPQ0szOgorCQkJZnJlZV9ibG9ja3NbMl0gPSBmYWxzZTsKKwkJCWJyZWFr OworCQl9CisJfQorCisJaWYgKHJkZXYtPmZhbWlseSA9PSBDSElQX1JTNjAwIHx8IHJkZXYtPmZh bWlseSA9PSBDSElQX1JTNjkwKSB7CisJCXJldHVybiBmcmVlX2Jsb2Nrc1swXSA/IFI2MDBfSERN SV9CTE9DSzEgOiAwOworCX0gZWxzZSBpZiAocmRldi0+ZmFtaWx5ID49IENISVBfUjYwMCkgewor CQlpZiAoZnJlZV9ibG9ja3NbMF0pCisJCQlyZXR1cm4gUjYwMF9IRE1JX0JMT0NLMTsKKwkJZWxz ZSBpZiAoZnJlZV9ibG9ja3NbMV0pCisJCQlyZXR1cm4gUjYwMF9IRE1JX0JMT0NLMjsKKwl9CisJ cmV0dXJuIDA7Cit9CisKIHN0YXRpYyB2b2lkIHI2MDBfaGRtaV9hc3NpZ25fYmxvY2soc3RydWN0 IGRybV9lbmNvZGVyICplbmNvZGVyKQogewogCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBlbmNv ZGVyLT5kZXY7CkBAIC00MzcsNiArNDcwLDggQEAgc3RhdGljIHZvaWQgcjYwMF9oZG1pX2Fzc2ln bl9ibG9jayhzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIpCiAJCWlmIChBU0lDX0lTX0RDRTMy KHJkZXYpKQogCQkJcmFkZW9uX2VuY29kZXItPmhkbWlfY29uZmlnX29mZnNldCA9IGRpZy0+ZGln X2VuY29kZXIgPwogCQkJCVI2MDBfSERNSV9DT05GSUcyIDogUjYwMF9IRE1JX0NPTkZJRzE7CisJ fSBlbHNlIGlmIChyZGV2LT5mYW1pbHkgPj0gQ0hJUF9SNjAwKSB7CisJCXJhZGVvbl9lbmNvZGVy LT5oZG1pX29mZnNldCA9IHI2MDBfaGRtaV9maW5kX2ZyZWVfYmxvY2soZGV2KTsKIAl9CiB9CiAK QEAgLTQ1OCw4ICs0OTMsMjQgQEAgdm9pZCByNjAwX2hkbWlfZW5hYmxlKHN0cnVjdCBkcm1fZW5j b2RlciAqZW5jb2RlcikKIAkJfQogCX0KIAotCWlmIChBU0lDX0lTX0RDRTMyKHJkZXYpICYmICFB U0lDX0lTX0RDRTQocmRldikpCisJaWYgKEFTSUNfSVNfRENFMzIocmRldikgJiYgIUFTSUNfSVNf RENFNChyZGV2KSkgewogCQlXUkVHMzJfUChyYWRlb25fZW5jb2Rlci0+aGRtaV9jb25maWdfb2Zm c2V0ICsgMHg0LCAweDEsIH4weDEpOworCX0gZWxzZSBpZiAocmRldi0+ZmFtaWx5ID49IENISVBf UjYwMCAmJiAhQVNJQ19JU19EQ0UzKHJkZXYpKSB7CisJCWludCBvZmZzZXQgPSByYWRlb25fZW5j b2Rlci0+aGRtaV9vZmZzZXQ7CisJCXN3aXRjaCAocmFkZW9uX2VuY29kZXItPmVuY29kZXJfaWQp IHsKKwkJY2FzZSBFTkNPREVSX09CSkVDVF9JRF9JTlRFUk5BTF9LTERTQ1BfVE1EUzE6CisJCQlX UkVHMzJfUChBVklWT19UTURTQV9DTlRMLCAweDQsIH4weDQpOworCQkJV1JFRzMyKG9mZnNldCAr IFI2MDBfSERNSV9FTkFCTEUsIDB4MTAxKTsKKwkJCWJyZWFrOworCQljYXNlIEVOQ09ERVJfT0JK RUNUX0lEX0lOVEVSTkFMX0xWVE0xOgorCQkJV1JFRzMyX1AoQVZJVk9fTFZUTUFfQ05UTCwgMHg0 LCB+MHg0KTsKKwkJCVdSRUczMihvZmZzZXQgKyBSNjAwX0hETUlfRU5BQkxFLCAweDEwNSk7CisJ CQlicmVhazsKKwkJZGVmYXVsdDoKKwkJCWRldl9lcnIocmRldi0+ZGV2LCAiVW5rbm93biBIRE1J IG91dHB1dCB0eXBlXG4iKTsKKwkJCWJyZWFrOworCQl9CisJfQogCiAJRFJNX0RFQlVHKCJFbmFi bGluZyBIRE1JIGludGVyZmFjZSBAIDB4JTA0WCBmb3IgZW5jb2RlciAweCV4XG4iLAogCQlyYWRl b25fZW5jb2Rlci0+aGRtaV9vZmZzZXQsIHJhZGVvbl9lbmNvZGVyLT5lbmNvZGVyX2lkKTsKQEAg LTQ4Miw4ICs1MzMsMjQgQEAgdm9pZCByNjAwX2hkbWlfZGlzYWJsZShzdHJ1Y3QgZHJtX2VuY29k ZXIgKmVuY29kZXIpCiAJRFJNX0RFQlVHKCJEaXNhYmxpbmcgSERNSSBpbnRlcmZhY2UgQCAweCUw NFggZm9yIGVuY29kZXIgMHgleFxuIiwKIAkJcmFkZW9uX2VuY29kZXItPmhkbWlfb2Zmc2V0LCBy YWRlb25fZW5jb2Rlci0+ZW5jb2Rlcl9pZCk7CiAKLQlpZiAoQVNJQ19JU19EQ0UzMihyZGV2KSAm JiAhQVNJQ19JU19EQ0U0KHJkZXYpKQorCWlmIChBU0lDX0lTX0RDRTMyKHJkZXYpICYmICFBU0lD X0lTX0RDRTQocmRldikpIHsKIAkJV1JFRzMyX1AocmFkZW9uX2VuY29kZXItPmhkbWlfY29uZmln X29mZnNldCArIDB4NCwgMCwgfjB4MSk7CisJfSBlbHNlIGlmIChyZGV2LT5mYW1pbHkgPj0gQ0hJ UF9SNjAwICYmICFBU0lDX0lTX0RDRTMocmRldikpIHsKKwkJaW50IG9mZnNldCA9IHJhZGVvbl9l bmNvZGVyLT5oZG1pX29mZnNldDsKKwkJc3dpdGNoIChyYWRlb25fZW5jb2Rlci0+ZW5jb2Rlcl9p ZCkgeworCQljYXNlIEVOQ09ERVJfT0JKRUNUX0lEX0lOVEVSTkFMX0tMRFNDUF9UTURTMToKKwkJ CVdSRUczMl9QKEFWSVZPX1RNRFNBX0NOVEwsIDAsIH4weDQpOworCQkJV1JFRzMyKG9mZnNldCAr IFI2MDBfSERNSV9FTkFCTEUsIDApOworCQkJYnJlYWs7CisJCWNhc2UgRU5DT0RFUl9PQkpFQ1Rf SURfSU5URVJOQUxfTFZUTTE6CisJCQlXUkVHMzJfUChBVklWT19MVlRNQV9DTlRMLCAwLCB+MHg0 KTsKKwkJCVdSRUczMihvZmZzZXQgKyBSNjAwX0hETUlfRU5BQkxFLCAwKTsKKwkJCWJyZWFrOwor CQlkZWZhdWx0OgorCQkJZGV2X2VycihyZGV2LT5kZXYsICJVbmtub3duIEhETUkgb3V0cHV0IHR5 cGVcbiIpOworCQkJYnJlYWs7CisJCX0KKwl9CiAKIAlyYWRlb25fZW5jb2Rlci0+aGRtaV9vZmZz ZXQgPSAwOwogCXJhZGVvbl9lbmNvZGVyLT5oZG1pX2NvbmZpZ19vZmZzZXQgPSAwOwotLSAKMS42 LjQuMgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpEb3dubG9hZCBJbnRlbCYjMTc0OyBQYXJhbGxl bCBTdHVkaW8gRXZhbApUcnkgdGhlIG5ldyBzb2Z0d2FyZSB0b29scyBmb3IgeW91cnNlbGYuIFNw ZWVkIGNvbXBpbGluZywgZmluZCBidWdzCnByb2FjdGl2ZWx5LCBhbmQgZmluZS10dW5lIGFwcGxp Y2F0aW9ucyBmb3IgcGFyYWxsZWwgcGVyZm9ybWFuY2UuClNlZSB3aHkgSW50ZWwgUGFyYWxsZWwg U3R1ZGlvIGdvdCBoaWdoIG1hcmtzIGR1cmluZyBiZXRhLgpodHRwOi8vcC5zZi5uZXQvc2Z1L2lu dGVsLXN3LWRldgotLQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwpEcmktZGV2ZWwgbWFpbGluZyBsaXN0CkRyaS1kZXZlbEBsaXN0cy5zb3VyY2Vmb3JnZS5u ZXQKaHR0cHM6Ly9saXN0cy5zb3VyY2Vmb3JnZS5uZXQvbGlzdHMvbGlzdGluZm8vZHJpLWRldmVs Cg==