From owner-freebsd-current@FreeBSD.ORG Fri Oct 14 19:36:46 2011 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EEBF71065670 for ; Fri, 14 Oct 2011 19:36:46 +0000 (UTC) (envelope-from c.jayachandran@gmail.com) Received: from mail-ww0-f50.google.com (mail-ww0-f50.google.com [74.125.82.50]) by mx1.freebsd.org (Postfix) with ESMTP id 79A7E8FC0C for ; Fri, 14 Oct 2011 19:36:46 +0000 (UTC) Received: by wwi18 with SMTP id 18so633465wwi.31 for ; Fri, 14 Oct 2011 12:36:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:sender:date:x-google-sender-auth:message-id:subject :from:to:content-type; bh=nOF+PCgL21HspUKTbJmasesVwmVOfHdePKFN8C1n3v8=; b=KB4IVyfrlnPGru3xzeLv0v0d3BGVWuWul/vc5ymBWAZO23DDkmgPDEfqmqrNDTKqFd i+ldYYwRy4soFCz/NaFXLvf0x8GmeCuayN/FhWORR4X1SdIGBTaX5tTVlwzxmu32hjTN us1SFGOQE7wRbIC3gudfCF8onoGKnaZao3aak= MIME-Version: 1.0 Received: by 10.216.137.81 with SMTP id x59mr3284643wei.26.1318619436653; Fri, 14 Oct 2011 12:10:36 -0700 (PDT) Sender: c.jayachandran@gmail.com Received: by 10.216.188.3 with HTTP; Fri, 14 Oct 2011 12:10:36 -0700 (PDT) Date: Sat, 15 Oct 2011 00:40:36 +0530 X-Google-Sender-Auth: tvisJkRt_WnGfpvEjczlJmW-sic Message-ID: From: "Jayachandran C." To: Rafal Jaworowski , Marcel Moolenaar , FreeBSD Current Content-Type: multipart/mixed; boundary=0016e6d785301d9bdc04af470395 Cc: Subject: [RFC] FDT fix for 64 bit platforms X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Oct 2011 19:36:47 -0000 --0016e6d785301d9bdc04af470395 Content-Type: text/plain; charset=ISO-8859-1 I'm planning commit this -CURRENT if there an no objections. In the current implementation, phandle is used to store a pointer to the location inside the device tree. Since phandle_t is u32, this will not work on 64 bit platforms. With this fix, the phandle is the offset from the start of device tree pointer 'fdtp', which will be 32 bit. Review or testing from device tree users will be welcome. JC. --0016e6d785301d9bdc04af470395 Content-Type: application/octet-stream; name="fdt-64-fix.patch" Content-Disposition: attachment; filename="fdt-64-fix.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gtrjnult0 Y29tbWl0IDMzMGVjM2ExMDZhNWFmZTliMWRmMTdmZmVkNzVjNzUyNWI0ZWRmMGIKQXV0aG9yOiBK YXlhY2hhbmRyYW4gQyA8amF5YWNoYW5kcmFuY0BuZXRsb2dpY21pY3JvLmNvbT4KRGF0ZTogICBX ZWQgT2N0IDEyIDEzOjA5OjI1IDIwMTEgKzA1MzAKCiAgICBGaXggRkRUIGNvZGUgZm9yIDY0IGJp dAogICAgCiAgICBVc2UgdGhlIG9mZnNldCBpbnRvIHRoZSBkZXZpY2UgdHJlZSBmcm9tIGZkdHAg YXMgdGhlIHBoYW5kbGUgaW5zdGVhZAogICAgb2YgdXNpbmcgcG9pbnRlciBpbnRvIHRoZSBkZXZp Y2UgdHJlZS4gIFRoaXMgd2lsbCBtYWtlIHN1cmUgIHRoYXQKICAgIHBoYW5kbGUgZml0cyBpbnRv IGEgdWludDMyX3QgdHlwZS4KCmRpZmYgLS1naXQgYS9zeXMvZGV2L29mdy9vZndfZmR0LmMgYi9z eXMvZGV2L29mdy9vZndfZmR0LmMKaW5kZXggNjhkMzE0OS4uZjljY2MzMiAxMDA2NDQKLS0tIGEv c3lzL2Rldi9vZncvb2Z3X2ZkdC5jCisrKyBiL3N5cy9kZXYvb2Z3L29md19mZHQuYwpAQCAtMTEy LDE5ICsxMTIsMzkgQEAgb2Z3X2ZkdF9pbml0KG9md190IG9mdywgdm9pZCAqZGF0YSkKICAqIERl dmljZSB0cmVlIGZ1bmN0aW9ucwogICovCiAKK3N0YXRpYyBwaGFuZGxlX3QKK2ZkdF9vZmZzZXRf cGhhbmRsZShpbnQgb2Zmc2V0KQoreworCWlmIChvZmZzZXQgPCAwKQorCQlyZXR1cm4gKDApOwor CXJldHVybiAoKHBoYW5kbGVfdClvZmZzZXQgKyBmZHRfb2ZmX2R0X3N0cnVjdChmZHRwKSk7Cit9 CisKIHN0YXRpYyBpbnQKIGZkdF9waGFuZGxlX29mZnNldChwaGFuZGxlX3QgcCkKIHsKLQljb25z dCBjaGFyICpkdF9zdHJ1Y3Q7CisJaW50IHBpbnQgPSAoaW50KXA7CisJaW50IGR0b2ZmID0gZmR0 X29mZl9kdF9zdHJ1Y3QoZmR0cCk7CisKKwlpZiAocGludCA8IGR0b2ZmKQorCQlyZXR1cm4gKC0x KTsKKwlyZXR1cm4gKHBpbnQgLSBkdG9mZik7Cit9CisKK3N0YXRpYyBpbnQKK2ZkdF9wb2ludGVy X29mZnNldChjb25zdCB2b2lkICpwdHIpCit7CisJdWludHB0cl90IGR0X3N0cnVjdCwgcDsKIAlp bnQgb2Zmc2V0OwogCi0JZHRfc3RydWN0ID0gKGNvbnN0IGNoYXIgKilmZHRwICsgZmR0X29mZl9k dF9zdHJ1Y3QoZmR0cCk7CisJcCA9ICh1aW50cHRyX3QpcHRyOworCWR0X3N0cnVjdCA9ICh1aW50 cHRyX3QpZmR0cCArIGZkdF9vZmZfZHRfc3RydWN0KGZkdHApOwogCi0JaWYgKCgoY29uc3QgY2hh ciAqKXAgPCBkdF9zdHJ1Y3QpIHx8Ci0JICAgIChjb25zdCBjaGFyICopcCA+IChkdF9zdHJ1Y3Qg KyBmZHRfc2l6ZV9kdF9zdHJ1Y3QoZmR0cCkpKQorCWlmICgocCA8IGR0X3N0cnVjdCkgfHwKKwkg ICAgcCA+IChkdF9zdHJ1Y3QgKyBmZHRfc2l6ZV9kdF9zdHJ1Y3QoZmR0cCkpKQogCQlyZXR1cm4g KC0xKTsKIAotCW9mZnNldCA9IChjb25zdCBjaGFyICopcCAtIGR0X3N0cnVjdDsKKwlvZmZzZXQg PSBwIC0gZHRfc3RydWN0OwogCWlmIChvZmZzZXQgPCAwKQogCQlyZXR1cm4gKC0xKTsKIApAQCAt MTM1LDE1ICsxNTUsMTMgQEAgZmR0X3BoYW5kbGVfb2Zmc2V0KHBoYW5kbGVfdCBwKQogc3RhdGlj IHBoYW5kbGVfdAogb2Z3X2ZkdF9wZWVyKG9md190IG9mdywgcGhhbmRsZV90IG5vZGUpCiB7Ci0J cGhhbmRsZV90IHA7CiAJaW50IGRlcHRoLCBvZmZzZXQ7CiAKIAlpZiAobm9kZSA9PSAwKSB7CiAJ CS8qIEZpbmQgcm9vdCBub2RlICovCiAJCW9mZnNldCA9IGZkdF9wYXRoX29mZnNldChmZHRwLCAi LyIpOwotCQlwID0gKHBoYW5kbGVfdClmZHRfb2Zmc2V0X3B0cihmZHRwLCBvZmZzZXQsIHNpemVv ZihwKSk7CiAKLQkJcmV0dXJuIChwKTsKKwkJcmV0dXJuIChmZHRfb2Zmc2V0X3BoYW5kbGUob2Zm c2V0KSk7CiAJfQogCiAJb2Zmc2V0ID0gZmR0X3BoYW5kbGVfb2Zmc2V0KG5vZGUpOwpAQCAtMTU1 LDEwICsxNzMsOCBAQCBvZndfZmR0X3BlZXIob2Z3X3Qgb2Z3LCBwaGFuZGxlX3Qgbm9kZSkKIAkg ICAgb2Zmc2V0ID0gZmR0X25leHRfbm9kZShmZHRwLCBvZmZzZXQsICZkZXB0aCkpIHsKIAkJaWYg KGRlcHRoIDwgMCkKIAkJCXJldHVybiAoMCk7Ci0JCWlmIChkZXB0aCA9PSAxKSB7Ci0JCQlwID0g KHBoYW5kbGVfdClmZHRfb2Zmc2V0X3B0cihmZHRwLCBvZmZzZXQsIHNpemVvZihwKSk7Ci0JCQly ZXR1cm4gKHApOwotCQl9CisJCWlmIChkZXB0aCA9PSAxKQorCQkJcmV0dXJuIChmZHRfb2Zmc2V0 X3BoYW5kbGUob2Zmc2V0KSk7CiAJfQogCiAJcmV0dXJuICgwKTsKQEAgLTE2OCw3ICsxODQsNiBA QCBvZndfZmR0X3BlZXIob2Z3X3Qgb2Z3LCBwaGFuZGxlX3Qgbm9kZSkKIHN0YXRpYyBwaGFuZGxl X3QKIG9md19mZHRfY2hpbGQob2Z3X3Qgb2Z3LCBwaGFuZGxlX3Qgbm9kZSkKIHsKLQlwaGFuZGxl X3QgcDsKIAlpbnQgZGVwdGgsIG9mZnNldDsKIAogCW9mZnNldCA9IGZkdF9waGFuZGxlX29mZnNl dChub2RlKTsKQEAgLTE4MCwxMCArMTk1LDggQEAgb2Z3X2ZkdF9jaGlsZChvZndfdCBvZncsIHBo YW5kbGVfdCBub2RlKQogCSAgICBvZmZzZXQgPSBmZHRfbmV4dF9ub2RlKGZkdHAsIG9mZnNldCwg JmRlcHRoKSkgewogCQlpZiAoZGVwdGggPCAwKQogCQkJcmV0dXJuICgwKTsKLQkJaWYgKGRlcHRo ID09IDEpIHsKLQkJCXAgPSAocGhhbmRsZV90KWZkdF9vZmZzZXRfcHRyKGZkdHAsIG9mZnNldCwg c2l6ZW9mKHApKTsKLQkJCXJldHVybiAocCk7Ci0JCX0KKwkJaWYgKGRlcHRoID09IDEpCisJCQly ZXR1cm4gKGZkdF9vZmZzZXRfcGhhbmRsZShvZmZzZXQpKTsKIAl9CiAKIAlyZXR1cm4gKDApOwpA QCAtMTkzLDcgKzIwNiw2IEBAIG9md19mZHRfY2hpbGQob2Z3X3Qgb2Z3LCBwaGFuZGxlX3Qgbm9k ZSkKIHN0YXRpYyBwaGFuZGxlX3QKIG9md19mZHRfcGFyZW50KG9md190IG9mdywgcGhhbmRsZV90 IG5vZGUpCiB7Ci0JcGhhbmRsZV90IHA7CiAJaW50IG9mZnNldCwgcGFyb2Zmc2V0OwogCiAJb2Zm c2V0ID0gZmR0X3BoYW5kbGVfb2Zmc2V0KG5vZGUpOwpAQCAtMjAxLDE1ICsyMTMsMTMgQEAgb2Z3 X2ZkdF9wYXJlbnQob2Z3X3Qgb2Z3LCBwaGFuZGxlX3Qgbm9kZSkKIAkJcmV0dXJuICgwKTsKIAog CXBhcm9mZnNldCA9IGZkdF9wYXJlbnRfb2Zmc2V0KGZkdHAsIG9mZnNldCk7Ci0JcCA9IChwaGFu ZGxlX3QpZmR0X29mZnNldF9wdHIoZmR0cCwgcGFyb2Zmc2V0LCBzaXplb2YocGhhbmRsZV90KSk7 Ci0JcmV0dXJuIChwKTsKKwlyZXR1cm4gKGZkdF9vZmZzZXRfcGhhbmRsZShwYXJvZmZzZXQpKTsK IH0KIAogLyogUmV0dXJuIHRoZSBwYWNrYWdlIGhhbmRsZSB0aGF0IGNvcnJlc3BvbmRzIHRvIGFu IGluc3RhbmNlIGhhbmRsZS4gKi8KIHN0YXRpYyBwaGFuZGxlX3QKIG9md19mZHRfaW5zdGFuY2Vf dG9fcGFja2FnZShvZndfdCBvZncsIGloYW5kbGVfdCBpbnN0YW5jZSkKIHsKLQlwaGFuZGxlX3Qg cDsKIAlpbnQgb2Zmc2V0OwogCiAJLyoKQEAgLTIyMyw4ICsyMzMsNyBAQCBvZndfZmR0X2luc3Rh bmNlX3RvX3BhY2thZ2Uob2Z3X3Qgb2Z3LCBpaGFuZGxlX3QgaW5zdGFuY2UpCiAJaWYgKG9mZnNl dCA8IDApCiAJCXJldHVybiAoLTEpOwogCi0JcCA9IChwaGFuZGxlX3QpZmR0X29mZnNldF9wdHIo ZmR0cCwgb2Zmc2V0LCBzaXplb2YocGhhbmRsZV90KSk7Ci0JcmV0dXJuIChwKTsKKwlyZXR1cm4g KGZkdF9vZmZzZXRfcGhhbmRsZShvZmZzZXQpKTsKIH0KIAogLyogR2V0IHRoZSBsZW5ndGggb2Yg YSBwcm9wZXJ0eSBvZiBhIHBhY2thZ2UuICovCkBAIC0zNDMsNyArMzUyLDcgQEAgb2Z3X2ZkdF9u ZXh0cHJvcChvZndfdCBvZncsIHBoYW5kbGVfdCBwYWNrYWdlLCBjb25zdCBjaGFyICpwcmV2aW91 cywgY2hhciAqYnVmLAogCWlmIChwcm9wID09IE5VTEwpCiAJCXJldHVybiAoLTEpOwogCi0Jb2Zm c2V0ID0gZmR0X3BoYW5kbGVfb2Zmc2V0KChwaGFuZGxlX3QpcHJvcCk7CisJb2Zmc2V0ID0gZmR0 X3BvaW50ZXJfb2Zmc2V0KHByb3ApOwogCXJ2ID0gZmR0X25leHRwcm9wKG9mZnNldCwgYnVmLCBz aXplKTsKIAlyZXR1cm4gKHJ2KTsKIH0KQEAgLTM3NCwxNCArMzgzLDEwIEBAIG9md19mZHRfY2Fu b24ob2Z3X3Qgb2Z3LCBjb25zdCBjaGFyICpkZXZpY2UsIGNoYXIgKmJ1Ziwgc2l6ZV90IGxlbikK IHN0YXRpYyBwaGFuZGxlX3QKIG9md19mZHRfZmluZGRldmljZShvZndfdCBvZncsIGNvbnN0IGNo YXIgKmRldmljZSkKIHsKLQlwaGFuZGxlX3QgcDsKIAlpbnQgb2Zmc2V0OwogCiAJb2Zmc2V0ID0g ZmR0X3BhdGhfb2Zmc2V0KGZkdHAsIGRldmljZSk7Ci0KLQlwID0gKHBoYW5kbGVfdClmZHRfb2Zm c2V0X3B0cihmZHRwLCBvZmZzZXQsIHNpemVvZihwKSk7Ci0KLQlyZXR1cm4gKHApOworCXJldHVy biAoZmR0X29mZnNldF9waGFuZGxlKG9mZnNldCkpOwogfQogCiAvKiBSZXR1cm4gdGhlIGZ1bGx5 IHF1YWxpZmllZCBwYXRobmFtZSBjb3JyZXNwb25kaW5nIHRvIGFuIGluc3RhbmNlLiAqLwo= --0016e6d785301d9bdc04af470395--