Date: Fri, 21 Feb 2003 01:12:32 +0000 From: Magnus Damm To: linuxppc-dev@lists.linuxppc.org Cc: brad@neruo.com Subject: [PATCH] follow up: aty128fb and EDID Message-Id: <20030221011232.69bf0696.damm@opensource.se> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="Multipart_Fri__21_Feb_2003_01:12:32_+0000_101d8198" Sender: owner-linuxppc-dev@lists.linuxppc.org List-Id: This is a multi-part message in MIME format. --Multipart_Fri__21_Feb_2003_01:12:32_+0000_101d8198 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Hi, Here comes a quick hack that adds EDID support to aty128fb. I took the EDID code from the radeon driver and modified it. It's not pretty, but it might be useful for someone. So consider it a quick fix. The 2.5-tree has a file called fbmon.c that has EDID functionallity broken out, that should probably be the long term solution. thanks / magnus --Multipart_Fri__21_Feb_2003_01:12:32_+0000_101d8198 Content-Type: application/octet-stream; name="linuxppc_2_4-aty128fb_edid.patch" Content-Disposition: attachment; filename="linuxppc_2_4-aty128fb_edid.patch" Content-Transfer-Encoding: base64 LS0tIGxpbnV4cHBjXzJfNC9kcml2ZXJzL3ZpZGVvL2F0eTEyOGZiLmMJMjAwMy0wMi0yMCAyMDox MjozNS4wMDAwMDAwMDAgKzAwMDAKKysrIGxpbnV4cHBjXzJfNC1hdHkxMjhmYl9lZGlkL2RyaXZl cnMvdmlkZW8vYXR5MTI4ZmIuYwkyMDAzLTAyLTIxIDAxOjA2OjIxLjAwMDAwMDAwMCArMDAwMApA QCAtMzI5LDEwICszMjksMTcgQEAKICAgICBpbnQgY3J0X29uLCBsY2Rfb247CiAgICAgdTMyIHNh dmVfbGNkX2dlbl9jbnRsOwogI2VuZGlmCisgICAgdW5zaWduZWQgY2hhciAqRURJRDsKIH07CiAK IHN0YXRpYyBzdHJ1Y3QgZmJfaW5mb19hdHkxMjggKmJvYXJkX2xpc3QgPSBOVUxMOwogCitzdGF0 aWMgdm9pZCBhdHkxMjhfZ2V0X0VESUQoc3RydWN0IGZiX2luZm9fYXR5MTI4ICpyaW5mbyk7Citz dGF0aWMgaW50IGF0eTEyOF9kZnBfcGFyc2VfRURJRChzdHJ1Y3QgZmJfaW5mb19hdHkxMjggKnJp bmZvKTsKKyNpZmRlZiBDT05GSUdfQUxMX1BQQworc3RhdGljIGludCBhdHkxMjhfZ2V0X0VESURf T0Yoc3RydWN0IGZiX2luZm9fYXR5MTI4ICpyaW5mbyk7CitleHRlcm4gc3RydWN0IGRldmljZV9u b2RlICpwY2lfZGV2aWNlX3RvX09GX25vZGUoc3RydWN0IHBjaV9kZXYgKmRldik7CisKICNpZmRl ZiBDT05GSUdfUE1BQ19QQk9PSwogICBpbnQgYXR5MTI4X3NsZWVwX25vdGlmeShzdHJ1Y3QgcG11 X3NsZWVwX25vdGlmaWVyICpzZWxmLCBpbnQgd2hlbik7CiAgIHN0YXRpYyBzdHJ1Y3QgcG11X3Ns ZWVwX25vdGlmaWVyIGF0eTEyOF9zbGVlcF9ub3RpZmllciA9IHsKQEAgLTM0MCw2ICszNDcsOCBA QAogICB9OwogI2VuZGlmCiAKKyNlbmRpZgorCiAjZGVmaW5lIHJvdW5kX2RpdihuLCBkKSAoKG4r KGQvMikpL2QpCiAKICAgICAvKgpAQCAtMTg1OCw2ICsxODY3LDcgQEAKICNlbmRpZgogICAgIAog ICAgIHZhciA9IGRlZmF1bHRfdmFyOworICAgIGF0eTEyOF9nZXRfRURJRChpbmZvKTsKICNpZmRl ZiBDT05GSUdfUFBDCiAgICAgaWYgKF9tYWNoaW5lID09IF9NQUNIX1BtYWMpIHsKICAgICAgICAg aWYgKG1vZGVfb3B0aW9uKSB7CkBAIC0xODkzLDggKzE5MDMsMTQgQEAKICAgICAgICAgICAgIGlm IChkZWZhdWx0X2Ntb2RlIDwgQ01PREVfOCB8fCBkZWZhdWx0X2Ntb2RlID4gQ01PREVfMzIpCiAg ICAgICAgICAgICAgICAgZGVmYXVsdF9jbW9kZSA9IENNT0RFXzg7CiAKLSAgICAgICAgICAgIGlm IChtYWNfdm1vZGVfdG9fdmFyKGRlZmF1bHRfdm1vZGUsIGRlZmF1bHRfY21vZGUsICZ2YXIpKQor IAkgICAgaWYgKG1hY192bW9kZV90b192YXIoZGVmYXVsdF92bW9kZSwgZGVmYXVsdF9jbW9kZSwg JnZhcikpCiAgICAgICAgICAgICAgICAgdmFyID0gZGVmYXVsdF92YXI7CisJICAgIAorCSAgICBp ZiAoYXR5MTI4X2RmcF9wYXJzZV9FRElEKGluZm8pKSB7CisJICAgICAgICBkZWZhdWx0X3ZhciA9 IHZhcjsKKwkJYXR5MTI4X2RmcF9wYXJzZV9FRElEKGluZm8pOworICAgICAgICAgICAgICAgIHZh ciA9IGRlZmF1bHRfdmFyOworCSAgICB9CiAgICAgICAgIH0KICAgICB9IGVsc2UKICNlbmRpZiAv KiBDT05GSUdfUFBDICovCkBAIC0yMjIwLDYgKzIyMzYsMTE2IEBACiB9ICAgICAgICAgICAKICNl bmRpZiAvKiAhQ09ORklHX1BQQyAqLwogCitzdGF0aWMgdm9pZCBhdHkxMjhfZ2V0X0VESUQoc3Ry dWN0IGZiX2luZm9fYXR5MTI4ICpyaW5mbykKK3sKKyNpZmRlZiBDT05GSUdfQUxMX1BQQworCWlm ICghYXR5MTI4X2dldF9FRElEX09GKHJpbmZvKSkKKwkJREJHKCJjb3VsZCBub3QgcmV0cmlldmUg RURJRCBmcm9tIE9GXG4iKTsKKyNlbHNlCisJLyogWFhYIHVzZSBvdGhlciBtZXRob2RzIGxhdGVy ICovCisjZW5kaWYKK30KKworc3RhdGljIGludCBhdHkxMjhfZGZwX3BhcnNlX0VESUQoc3RydWN0 IGZiX2luZm9fYXR5MTI4ICpyaW5mbykKK3sKKwl1bnNpZ25lZCBjaGFyICpibG9jayA9IHJpbmZv LT5FRElEOworCXVuc2lnbmVkIGludCBoYmxhbmssIHZibGFuazsKKwl1bnNpZ25lZCBpbnQgaE92 ZXJfcGx1cywgdk92ZXJfcGx1czsKKwl1bnNpZ25lZCBpbnQgaFN5bmNfd2lkdGgsIHZTeW5jX3dp ZHRoOworCXVuc2lnbmVkIGludCBpbnRlcmxhY2VkLCBzeW5jdCwgbWlzYzsKKwl1bnNpZ25lZCBp bnQgaEFjdF9oaWdoLCB2QWN0X2hpZ2g7CisJaW50IGs7CisKKwlpZiAoIWJsb2NrKQorCQlyZXR1 cm4gMDsKKworCS8qIGp1bXAgdG8gdGhlIGRldGFpbGVkIHRpbWluZyBibG9jayBzZWN0aW9uICov CisJYmxvY2sgKz0gNTQ7CisKKwlmb3IgKGsgPSAwOyBrIDwgNDsgaysrKSB7CisJICBibG9jayA9 ICZyaW5mby0+RURJRFsweDM2ICsgKGsqMTgpXTsKKworCSAgaWYgKChibG9ja1swXSA9PSAwKSAm JiAoYmxvY2tbMV0gPT0gMCkgJiYgCisJICAgICAgKGJsb2NrWzJdID09IDApICYmIChibG9ja1s0 XSA9PSAwKSkgeworCSAgICBjb250aW51ZTsKKwkgIH0KKworCisJICBkZWZhdWx0X3Zhci5waXhj bG9jayA9IDEwMDAwMDAwMCAvIChibG9ja1swXSArIChibG9ja1sxXSA8PCA4KSk7CisJICBkZWZh dWx0X3Zhci54cmVzID0gKGJsb2NrWzJdICsgKChibG9ja1s0XSAmIDB4ZjApIDw8IDQpKTsKKwkg IGRlZmF1bHRfdmFyLnhyZXNfdmlydHVhbCA9IGRlZmF1bHRfdmFyLnhyZXM7CisJICBoYmxhbmsg PSAoYmxvY2tbM10gKyAoKGJsb2NrWzRdICYgMHgwZikgPDwgOCkpOworCSAgZGVmYXVsdF92YXIu eXJlcyA9IChibG9ja1s1XSArICgoYmxvY2tbN10gJiAweGYwKSA8PCA0KSk7CisJICBkZWZhdWx0 X3Zhci55cmVzX3ZpcnR1YWwgPSBkZWZhdWx0X3Zhci55cmVzOworCSAgdmJsYW5rID0gKGJsb2Nr WzZdICsgKChibG9ja1s3XSAmIDB4MGYpIDw8IDgpKTsKKwkgIGhPdmVyX3BsdXMgPSAoYmxvY2tb OF0gKyAoKGJsb2NrWzExXSAmIDB4YzApIDw8IDIpKTsKKwkgIGhTeW5jX3dpZHRoID0gKGJsb2Nr WzldICsgKChibG9ja1sxMV0gJiAweDMwKSA8PCA0KSk7CisJICB2T3Zlcl9wbHVzID0gKChibG9j a1sxMF0gPj4gNCkgKyAoKGJsb2NrWzExXSAmIDB4MGMpIDw8IDIpKTsKKwkgIHZTeW5jX3dpZHRo ID0gKChibG9ja1sxMF0gJiAweDBmKSArICgoYmxvY2tbMTFdICYgMHgwMykgPDwgNCkpOworCisJ ICBkZWZhdWx0X3Zhci54b2Zmc2V0ID0gZGVmYXVsdF92YXIueW9mZnNldCA9IDA7CisKKwkgIGRl ZmF1bHRfdmFyLmxlZnRfbWFyZ2luID0gKGhibGFuayAtIGhPdmVyX3BsdXMgLSBoU3luY193aWR0 aCk7CisJICBkZWZhdWx0X3Zhci5yaWdodF9tYXJnaW4gPSBoT3Zlcl9wbHVzOworCSAgZGVmYXVs dF92YXIudXBwZXJfbWFyZ2luID0gKHZibGFuayAtIHZPdmVyX3BsdXMgLSB2U3luY193aWR0aCk7 CisJICBkZWZhdWx0X3Zhci5sb3dlcl9tYXJnaW4gPSB2T3Zlcl9wbHVzOworCSAgZGVmYXVsdF92 YXIuaHN5bmNfbGVuID0gaFN5bmNfd2lkdGg7CisJICBkZWZhdWx0X3Zhci52c3luY19sZW4gPSB2 U3luY193aWR0aDsKKwkgIGRlZmF1bHRfdmFyLnN5bmMgPSAwOworCSAgCisJICBpbnRlcmxhY2Vk ID0gKChibG9ja1sxN10gJiAweDgwKSA+PiA3KTsKKwkgIHN5bmN0ID0gKChibG9ja1sxN10gJiAw eDE4KSA+PiAzKTsKKwkgIG1pc2MgPSAoKGJsb2NrWzE3XSAmIDB4MDYpID4+IDEpOworCSAgaEFj dF9oaWdoID0gdkFjdF9oaWdoID0gMDsKKwkgIGlmIChzeW5jdCA9PSAzKSB7CisJICAgIGlmICht aXNjICYgMikKKwkgICAgICBoQWN0X2hpZ2ggPSAxOworCSAgICBpZiAobWlzYyAmIDEpCisJICAg ICAgdkFjdF9oaWdoID0gMTsKKwkgIH0KKwkgIAorCSAgaWYgKHN5bmN0ID09IDMpIHsKKwkgICAg aWYgKGhBY3RfaGlnaCkKKwkgICAgICBkZWZhdWx0X3Zhci5zeW5jIHw9IEZCX1NZTkNfSE9SX0hJ R0hfQUNUOworCSAgICBpZiAodkFjdF9oaWdoKQorCSAgICAgIGRlZmF1bHRfdmFyLnN5bmMgfD0g RkJfU1lOQ19WRVJUX0hJR0hfQUNUOworCSAgfQorCSAgCisJICBkZWZhdWx0X3Zhci52bW9kZSA9 IDA7CisJICBpZiAoaW50ZXJsYWNlZCkKKwkgICAgZGVmYXVsdF92YXIudm1vZGUgfD0gRkJfVk1P REVfSU5URVJMQUNFRDsKKworCSAgREJHKCJkZXRlY3RlZCBwYW5lbCBzaXplIGZyb20gRURJRDog JWR4JWRcbiIsCisJICAgICAgZGVmYXVsdF92YXIueHJlcywgZGVmYXVsdF92YXIueXJlcyk7CisK KwkgIHJldHVybiAxOworCX0KKwlyZXR1cm4gMDsKK30KKworCisKKyNpZmRlZiBDT05GSUdfQUxM X1BQQworc3RhdGljIGludCBhdHkxMjhfZ2V0X0VESURfT0Yoc3RydWN0IGZiX2luZm9fYXR5MTI4 ICpyaW5mbykKK3sKKwlzdHJ1Y3QgZGV2aWNlX25vZGUgKmRwOworCXVuc2lnbmVkIGNoYXIgKnBl ZGlkID0gTlVMTDsKKworCWRwID0gcGNpX2RldmljZV90b19PRl9ub2RlKHJpbmZvLT5wZGV2KTsK KwlwZWRpZCA9ICh1bnNpZ25lZCBjaGFyICopIGdldF9wcm9wZXJ0eShkcCwgIkRGUCxFRElEIiwg MCk7CisJaWYgKCFwZWRpZCkKKwkJcGVkaWQgPSAodW5zaWduZWQgY2hhciAqKSBnZXRfcHJvcGVy dHkoZHAsICJMQ0QsRURJRCIsIDApOworCWlmICghcGVkaWQpCisJCXBlZGlkID0gKHVuc2lnbmVk IGNoYXIgKikgZ2V0X3Byb3BlcnR5KGRwLCAiRURJRCIsIDApOworCisJaWYgKHBlZGlkKSB7CisJ CXJpbmZvLT5FRElEID0gcGVkaWQ7CisJCXJldHVybiAxOworCX0gZWxzZQorCQlyZXR1cm4gMDsK K30KKyNlbmRpZiAvKiBDT05GSUdfQUxMX1BQQyAqLworCiAKIC8qIGZpbGwgaW4ga25vd24gY2Fy ZCBjb25zdGFudHMgaWYgcGxsX2Jsb2NrIGlzIG5vdCBhdmFpbGFibGUgKi8KIHN0YXRpYyB2b2lk IF9faW5pdAo= --Multipart_Fri__21_Feb_2003_01:12:32_+0000_101d8198-- ** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/