From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1HSKSa-0000FP-3X for qemu-devel@nongnu.org; Fri, 16 Mar 2007 17:59:40 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1HSKSY-0000DM-La for qemu-devel@nongnu.org; Fri, 16 Mar 2007 17:59:39 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1HSKSY-0000D3-5N for qemu-devel@nongnu.org; Fri, 16 Mar 2007 16:59:38 -0500 Received: from ug-out-1314.google.com ([66.249.92.174]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1HSKRN-0005my-5A for qemu-devel@nongnu.org; Fri, 16 Mar 2007 17:58:26 -0400 Received: by ug-out-1314.google.com with SMTP id j40so893980ugd for ; Fri, 16 Mar 2007 14:58:20 -0700 (PDT) Message-ID: Date: Fri, 16 Mar 2007 22:58:19 +0100 From: "andrzej zaborowski" Sender: balrogg@gmail.com MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_100218_7236138.1174082299080" Subject: [Qemu-devel] [PATCH] Account for RAM not mapped at 0x0 in arm_boot.c. Reply-To: balrogg@gmail.com, qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org ------=_Part_100218_7236138.1174082299080 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline The second shortest bootloader (hw/arm_boot.c) assumes that the RAM is mapped at address 0 in the machine (which is false for probably more than half of the registered ARM machines), so this adds an additional argument to arm_load_kernel() that should receive the RAM start address. It will offset the addresses passed in r1 and r2 and in ATAGS by this value. Cheers, Andrew ------=_Part_100218_7236138.1174082299080 Content-Type: text/plain; name=0014-Account-for-RAM-not-mapped-at-0x0-in-arm_boot.c.txt; charset=ANSI_X3.4-1968 Content-Transfer-Encoding: base64 X-Attachment-Id: f_ezd8a5v4 Content-Disposition: attachment; filename="0014-Account-for-RAM-not-mapped-at-0x0-in-arm_boot.c.txt" RnJvbSAxOGNjNjU3MTRlMWRlMzFhMDA2MGVlODEyOTJkNzVjZDA4NzRhODQ5IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyemVqIFphYm9yb3dza2kgPGJhbHJvZ0B6YWJvci5vcmc+ CkRhdGU6IEZyaSwgMTYgTWFyIDIwMDcgMTc6MjM6MTIgKzAxMDAKU3ViamVjdDogW1BBVENIXSBB Y2NvdW50IGZvciBSQU0gbm90IG1hcHBlZCBhdCAweDAgaW4gYXJtX2Jvb3QuYy4KCi0tLQogaHcv YXJtX2Jvb3QuYyAgICAgfCAgIDE5ICsrKysrKysrKystLS0tLS0tLS0KIGh3L2ludGVncmF0b3Jj cC5jIHwgICAgMiArLQogaHcvcmVhbHZpZXcuYyAgICAgfCAgICAyICstCiBody9zcGl0ei5jICAg ICAgICB8ICAgIDIgKy0KIGh3L3ZlcnNhdGlsZXBiLmMgIHwgICAgMiArLQogdGFyZ2V0LWFybS9j cHUuaCAgfCAgICAzICsrLQogdmwuaCAgICAgICAgICAgICAgfCAgICAyICstCiA3IGZpbGVzIGNo YW5nZWQsIDE3IGluc2VydGlvbnMoKyksIDE1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2h3 L2FybV9ib290LmMgYi9ody9hcm1fYm9vdC5jCmluZGV4IGRmYzAwZGIuLjkxYmQ3ODMgMTAwNjQ0 Ci0tLSBhL2h3L2FybV9ib290LmMKKysrIGIvaHcvYXJtX2Jvb3QuYwpAQCAtMzIsMTEgKzMyLDEy IEBAIHN0YXRpYyB2b2lkIG1haW5fY3B1X3Jlc2V0KHZvaWQgKm9wYXF1ZSkKICAgICBpZiAoZW52 LT5rZXJuZWxfZmlsZW5hbWUpCiAgICAgICAgIGFybV9sb2FkX2tlcm5lbChlbnYsIGVudi0+cmFt X3NpemUsIGVudi0+a2VybmVsX2ZpbGVuYW1lLCAKICAgICAgICAgICAgICAgICAgICAgICAgIGVu di0+a2VybmVsX2NtZGxpbmUsIGVudi0+aW5pdHJkX2ZpbGVuYW1lLCAKLSAgICAgICAgICAgICAg ICAgICAgICAgIGVudi0+Ym9hcmRfaWQpOworICAgICAgICAgICAgICAgICAgICAgICAgZW52LT5i b2FyZF9pZCwgZW52LT5sb2FkZXJfc3RhcnQpOwogfQogCiBzdGF0aWMgdm9pZCBzZXRfa2VybmVs X2FyZ3ModWludDMyX3QgcmFtX3NpemUsIGludCBpbml0cmRfc2l6ZSwKLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICBjb25zdCBjaGFyICprZXJuZWxfY21kbGluZSkKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICBjb25zdCBjaGFyICprZXJuZWxfY21kbGluZSwKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICB0YXJnZXRfcGh5c19hZGRyX3QgbG9hZGVyX3N0YXJ0KQogewogICAgIHVp bnQzMl90ICpwOwogCkBAIC01MSwxMiArNTIsMTIgQEAgc3RhdGljIHZvaWQgc2V0X2tlcm5lbF9h cmdzKHVpbnQzMl90IHJhbV9zaXplLCBpbnQgaW5pdHJkX3NpemUsCiAgICAgc3RsX3JhdyhwKyss IDQpOwogICAgIHN0bF9yYXcocCsrLCAweDU0NDEwMDAyKTsKICAgICBzdGxfcmF3KHArKywgcmFt X3NpemUpOwotICAgIHN0bF9yYXcocCsrLCAwKTsKKyAgICBzdGxfcmF3KHArKywgbG9hZGVyX3N0 YXJ0KTsKICAgICBpZiAoaW5pdHJkX3NpemUpIHsKICAgICAgICAgLyogQVRBR19JTklUUkQyICov CiAgICAgICAgIHN0bF9yYXcocCsrLCA0KTsKICAgICAgICAgc3RsX3JhdyhwKyssIDB4NTQ0MjAw MDUpOwotICAgICAgICBzdGxfcmF3KHArKywgSU5JVFJEX0xPQURfQUREUik7CisgICAgICAgIHN0 bF9yYXcocCsrLCBsb2FkZXJfc3RhcnQgKyBJTklUUkRfTE9BRF9BRERSKTsKICAgICAgICAgc3Rs X3JhdyhwKyssIGluaXRyZF9zaXplKTsKICAgICB9CiAgICAgaWYgKGtlcm5lbF9jbWRsaW5lICYm ICprZXJuZWxfY21kbGluZSkgewpAQCAtNzcsNyArNzgsNyBAQCBzdGF0aWMgdm9pZCBzZXRfa2Vy bmVsX2FyZ3ModWludDMyX3QgcmFtX3NpemUsIGludCBpbml0cmRfc2l6ZSwKIAogdm9pZCBhcm1f bG9hZF9rZXJuZWwoQ1BVU3RhdGUgKmVudiwgaW50IHJhbV9zaXplLCBjb25zdCBjaGFyICprZXJu ZWxfZmlsZW5hbWUsCiAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICprZXJuZWxfY21k bGluZSwgY29uc3QgY2hhciAqaW5pdHJkX2ZpbGVuYW1lLAotICAgICAgICAgICAgICAgICAgICAg aW50IGJvYXJkX2lkKQorICAgICAgICAgICAgICAgICAgICAgaW50IGJvYXJkX2lkLCB0YXJnZXRf cGh5c19hZGRyX3QgbG9hZGVyX3N0YXJ0KQogewogICAgIGludCBrZXJuZWxfc2l6ZTsKICAgICBp bnQgaW5pdHJkX3NpemU7CkBAIC05OCw2ICs5OSw3IEBAIHZvaWQgYXJtX2xvYWRfa2VybmVsKENQ VVN0YXRlICplbnYsIGludCByYW1fc2l6ZSwgY29uc3QgY2hhciAqa2VybmVsX2ZpbGVuYW1lLAog ICAgICAgICBlbnYtPmtlcm5lbF9jbWRsaW5lID0ga2VybmVsX2NtZGxpbmU7CiAgICAgICAgIGVu di0+aW5pdHJkX2ZpbGVuYW1lID0gaW5pdHJkX2ZpbGVuYW1lOwogICAgICAgICBlbnYtPmJvYXJk X2lkID0gYm9hcmRfaWQ7CisgICAgICAgIGVudi0+bG9hZGVyX3N0YXJ0ID0gbG9hZGVyX3N0YXJ0 OwogICAgICAgICBxZW11X3JlZ2lzdGVyX3Jlc2V0KG1haW5fY3B1X3Jlc2V0LCBlbnYpOwogICAg IH0KICAgICAvKiBBc3N1bWUgdGhhdCByYXcgaW1hZ2VzIGFyZSBsaW51eCBrZXJuZWxzLCBhbmQg RUxGIGltYWdlcyBhcmUgbm90LiAgKi8KQEAgLTEwOSw3ICsxMTEsNyBAQCB2b2lkIGFybV9sb2Fk X2tlcm5lbChDUFVTdGF0ZSAqZW52LCBpbnQgcmFtX3NpemUsIGNvbnN0IGNoYXIgKmtlcm5lbF9m aWxlbmFtZSwKICAgICBpZiAoa2VybmVsX3NpemUgPCAwKSB7CiAgICAgICAgIGtlcm5lbF9zaXpl ID0gbG9hZF9pbWFnZShrZXJuZWxfZmlsZW5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBwaHlzX3JhbV9iYXNlICsgS0VSTkVMX0xPQURfQUREUik7Ci0gICAgICAgIGVudHJ5 ID0gS0VSTkVMX0xPQURfQUREUjsKKyAgICAgICAgZW50cnkgPSBsb2FkZXJfc3RhcnQgKyBLRVJO RUxfTE9BRF9BRERSOwogICAgICAgICBpc19saW51eCA9IDE7CiAgICAgfQogICAgIGlmIChrZXJu ZWxfc2l6ZSA8IDApIHsKQEAgLTEzNCwxMSArMTM2LDEwIEBAIHZvaWQgYXJtX2xvYWRfa2VybmVs KENQVVN0YXRlICplbnYsIGludCByYW1fc2l6ZSwgY29uc3QgY2hhciAqa2VybmVsX2ZpbGVuYW1l LAogICAgICAgICB9CiAgICAgICAgIGJvb3Rsb2FkZXJbMV0gfD0gYm9hcmRfaWQgJiAweGZmOwog ICAgICAgICBib290bG9hZGVyWzJdIHw9IChib2FyZF9pZCA+PiA4KSAmIDB4ZmY7Ci0gICAgICAg IGJvb3Rsb2FkZXJbNV0gPSBLRVJORUxfQVJHU19BRERSOworICAgICAgICBib290bG9hZGVyWzVd ID0gbG9hZGVyX3N0YXJ0ICsgS0VSTkVMX0FSR1NfQUREUjsKICAgICAgICAgYm9vdGxvYWRlcls2 XSA9IGVudHJ5OwogICAgICAgICBmb3IgKG4gPSAwOyBuIDwgc2l6ZW9mKGJvb3Rsb2FkZXIpIC8g NDsgbisrKQogICAgICAgICAgICAgc3RsX3JhdyhwaHlzX3JhbV9iYXNlICsgKG4gKiA0KSwgYm9v dGxvYWRlcltuXSk7Ci0gICAgICAgIHNldF9rZXJuZWxfYXJncyhyYW1fc2l6ZSwgaW5pdHJkX3Np emUsIGtlcm5lbF9jbWRsaW5lKTsKKyAgICAgICAgc2V0X2tlcm5lbF9hcmdzKHJhbV9zaXplLCBp bml0cmRfc2l6ZSwga2VybmVsX2NtZGxpbmUsIGxvYWRlcl9zdGFydCk7CiAgICAgfQogfQotCmRp ZmYgLS1naXQgYS9ody9pbnRlZ3JhdG9yY3AuYyBiL2h3L2ludGVncmF0b3JjcC5jCmluZGV4IDVl NGM2MzYuLmNiOTQ2OWMgMTAwNjQ0Ci0tLSBhL2h3L2ludGVncmF0b3JjcC5jCisrKyBiL2h3L2lu dGVncmF0b3JjcC5jCkBAIC01MTIsNyArNTEyLDcgQEAgc3RhdGljIHZvaWQgaW50ZWdyYXRvcmNw X2luaXQoaW50IHJhbV9zaXplLCBpbnQgdmdhX3JhbV9zaXplLCBpbnQgYm9vdF9kZXZpY2UsCiAg ICAgcGwxMTBfaW5pdChkcywgMHhjMDAwMDAwMCwgcGljLCAyMiwgMCk7CiAKICAgICBhcm1fbG9h ZF9rZXJuZWwoZW52LCByYW1fc2l6ZSwga2VybmVsX2ZpbGVuYW1lLCBrZXJuZWxfY21kbGluZSwK LSAgICAgICAgICAgICAgICAgICAgaW5pdHJkX2ZpbGVuYW1lLCAweDExMyk7CisgICAgICAgICAg ICAgICAgICAgIGluaXRyZF9maWxlbmFtZSwgMHgxMTMsIDB4MCk7CiB9CiAKIFFFTVVNYWNoaW5l IGludGVncmF0b3JjcF9tYWNoaW5lID0gewpkaWZmIC0tZ2l0IGEvaHcvcmVhbHZpZXcuYyBiL2h3 L3JlYWx2aWV3LmMKaW5kZXggYTU2MDdlNy4uY2EzYzBmMCAxMDA2NDQKLS0tIGEvaHcvcmVhbHZp ZXcuYworKysgYi9ody9yZWFsdmlldy5jCkBAIC0xMjksNyArMTI5LDcgQEAgc3RhdGljIHZvaWQg cmVhbHZpZXdfaW5pdChpbnQgcmFtX3NpemUsIGludCB2Z2FfcmFtX3NpemUsIGludCBib290X2Rl dmljZSwKICAgICAvKiAweDZjMDAwMDAwIFBDSSBtZW0gMi4gICovCiAKICAgICBhcm1fbG9hZF9r ZXJuZWwoZW52LCByYW1fc2l6ZSwga2VybmVsX2ZpbGVuYW1lLCBrZXJuZWxfY21kbGluZSwKLSAg ICAgICAgICAgICAgICAgICAgaW5pdHJkX2ZpbGVuYW1lLCAweDMzYik7CisgICAgICAgICAgICAg ICAgICAgIGluaXRyZF9maWxlbmFtZSwgMHgzM2IsIDB4MCk7CiB9CiAKIFFFTVVNYWNoaW5lIHJl YWx2aWV3X21hY2hpbmUgPSB7CmRpZmYgLS1naXQgYS9ody9zcGl0ei5jIGIvaHcvc3BpdHouYwpp bmRleCA3Y2U2NDk3Li5hNDM0NzIxIDEwMDY0NAotLS0gYS9ody9zcGl0ei5jCisrKyBiL2h3L3Nw aXR6LmMKQEAgLTEwOTIsNyArMTA5Miw3IEBAIHN0YXRpYyB2b2lkIHNwaXR6X2NvbW1vbl9pbml0 KGludCByYW1fc2l6ZSwgaW50IHZnYV9yYW1fc2l6ZSwKICAgICBjcHUtPmVudi0+cmVnc1sxNV0g PSBQWEEyWFhfUkFNX0JBU0U7CiAKICAgICBhcm1fbG9hZF9rZXJuZWwoY3B1LT5lbnYsIHJhbV9z aXplLCBrZXJuZWxfZmlsZW5hbWUsIGtlcm5lbF9jbWRsaW5lLAotICAgICAgICAgICAgICAgICAg ICBpbml0cmRfZmlsZW5hbWUsIGFybV9pZCk7CisgICAgICAgICAgICAgICAgICAgIGluaXRyZF9m aWxlbmFtZSwgYXJtX2lkLCBQWEEyWFhfUkFNX0JBU0UpOwogICAgIHNsX2Jvb3RwYXJhbV93cml0 ZShTTF9QWEFfUEFSQU1fQkFTRSAtIFBYQTJYWF9SQU1fQkFTRSk7CiB9CiAKZGlmZiAtLWdpdCBh L2h3L3ZlcnNhdGlsZXBiLmMgYi9ody92ZXJzYXRpbGVwYi5jCmluZGV4IDVkM2U4NTcuLjM4YzY5 ZjcgMTAwNjQ0Ci0tLSBhL2h3L3ZlcnNhdGlsZXBiLmMKKysrIGIvaHcvdmVyc2F0aWxlcGIuYwpA QCAtMjU0LDcgKzI1NCw3IEBAIHN0YXRpYyB2b2lkIHZlcnNhdGlsZV9pbml0KGludCByYW1fc2l6 ZSwgaW50IHZnYV9yYW1fc2l6ZSwgaW50IGJvb3RfZGV2aWNlLAogICAgIC8qIDB4MTAxZjQwMDAg U1NQSS4gICovCiAKICAgICBhcm1fbG9hZF9rZXJuZWwoZW52LCByYW1fc2l6ZSwga2VybmVsX2Zp bGVuYW1lLCBrZXJuZWxfY21kbGluZSwKLSAgICAgICAgICAgICAgICAgICAgaW5pdHJkX2ZpbGVu YW1lLCBib2FyZF9pZCk7CisgICAgICAgICAgICAgICAgICAgIGluaXRyZF9maWxlbmFtZSwgYm9h cmRfaWQsIDB4MCk7CiB9CiAKIHN0YXRpYyB2b2lkIHZwYl9pbml0KGludCByYW1fc2l6ZSwgaW50 IHZnYV9yYW1fc2l6ZSwgaW50IGJvb3RfZGV2aWNlLApkaWZmIC0tZ2l0IGEvdGFyZ2V0LWFybS9j cHUuaCBiL3RhcmdldC1hcm0vY3B1LmgKaW5kZXggNTMwYWNiMi4uN2EzN2M0MSAxMDA2NDQKLS0t IGEvdGFyZ2V0LWFybS9jcHUuaAorKysgYi90YXJnZXQtYXJtL2NwdS5oCkBAIC0xNDMsMTIgKzE0 MywxMyBAQCB0eXBlZGVmIHN0cnVjdCBDUFVBUk1TdGF0ZSB7CiAKICAgICBDUFVfQ09NTU9OCiAK LSAgICAvKiBUaGVzZSBmaWVsZHMgYWZ0ZXIgdGhlIGNvbW1vbiBvbmVzIHNvIHRoZXMgYXJlIHBy ZXNlcnZlZCBvbiByZXNldC4gICovCisgICAgLyogVGhlc2UgZmllbGRzIGFmdGVyIHRoZSBjb21t b24gb25lcyBzbyB0aGV5IGFyZSBwcmVzZXJ2ZWQgb24gcmVzZXQuICAqLwogICAgIGludCByYW1f c2l6ZTsKICAgICBjb25zdCBjaGFyICprZXJuZWxfZmlsZW5hbWU7CiAgICAgY29uc3QgY2hhciAq a2VybmVsX2NtZGxpbmU7CiAgICAgY29uc3QgY2hhciAqaW5pdHJkX2ZpbGVuYW1lOwogICAgIGlu dCBib2FyZF9pZDsKKyAgICB0YXJnZXRfcGh5c19hZGRyX3QgbG9hZGVyX3N0YXJ0OwogfSBDUFVB Uk1TdGF0ZTsKIAogQ1BVQVJNU3RhdGUgKmNwdV9hcm1faW5pdCh2b2lkKTsKZGlmZiAtLWdpdCBh L3ZsLmggYi92bC5oCmluZGV4IDZiMWU4MzMuLjNlYjIwNGEgMTAwNjQ0Ci0tLSBhL3ZsLmgKKysr IGIvdmwuaApAQCAtMTM2Niw3ICsxMzY2LDcgQEAgdm9pZCAqYXJtX2dpY19pbml0KHVpbnQzMl90 IGJhc2UsIHZvaWQgKnBhcmVudCwgaW50IHBhcmVudF9pcnEpOwogCiB2b2lkIGFybV9sb2FkX2tl cm5lbChDUFVTdGF0ZSAqZW52LCBpbnQgcmFtX3NpemUsIGNvbnN0IGNoYXIgKmtlcm5lbF9maWxl bmFtZSwKICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmtlcm5lbF9jbWRsaW5lLCBj b25zdCBjaGFyICppbml0cmRfZmlsZW5hbWUsCi0gICAgICAgICAgICAgICAgICAgICBpbnQgYm9h cmRfaWQpOworICAgICAgICAgICAgICAgICAgICAgaW50IGJvYXJkX2lkLCB0YXJnZXRfcGh5c19h ZGRyX3QgbG9hZGVyX3N0YXJ0KTsKIAogLyogc2g3NzUwLmMgKi8KIHN0cnVjdCBTSDc3NTBTdGF0 ZTsKLS0gCjEuNC40LjMKCg== ------=_Part_100218_7236138.1174082299080--