From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1HibbO-0004oQ-Sa for qemu-devel@nongnu.org; Mon, 30 Apr 2007 15:32:02 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1HibbM-0004nQ-CQ for qemu-devel@nongnu.org; Mon, 30 Apr 2007 15:32:02 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1HibbL-0004nI-T7 for qemu-devel@nongnu.org; Mon, 30 Apr 2007 15:32:00 -0400 Received: from wr-out-0506.google.com ([64.233.184.232]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1HibV7-0000G6-N3 for qemu-devel@nongnu.org; Mon, 30 Apr 2007 15:25:34 -0400 Received: by wr-out-0506.google.com with SMTP id i20so207703wra for ; Mon, 30 Apr 2007 12:25:33 -0700 (PDT) Message-ID: Date: Mon, 30 Apr 2007 22:25:32 +0300 From: "Blue Swirl" MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_5096_984774.1177961132067" Subject: [Qemu-devel] Prom nvram variables Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel ------=_Part_5096_984774.1177961132067 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline Hi, The attached patch introduces a new command line flag -prom-env to support nvram variables, for example: qemu-system-sparc -prom-env "auto-boot=false" OpenBIOS can use the variables, though currently there is no way to override system defaults. That should be fixed, but In the mean time, are there any comments? ------=_Part_5096_984774.1177961132067 Content-Type: text/x-patch; name=prom_envs.diff; charset=ANSI_X3.4-1968 Content-Transfer-Encoding: base64 X-Attachment-Id: f_f15bhqbp Content-Disposition: attachment; filename="prom_envs.diff" SW5kZXg6IHFlbXUvaHcvc3VuNG0uYwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBxZW11Lm9yaWcvaHcvc3VuNG0u YwkyMDA3LTA0LTI5IDE5OjQzOjU5LjAwMDAwMDAwMCArMDAwMAorKysgcWVtdS9ody9zdW40bS5j CTIwMDctMDQtMzAgMTY6MjY6NTkuMDAwMDAwMDAwICswMDAwCkBAIC0xMTcsNiArMTE3LDM0IEBA CiAgICAgbTQ4dDU5X3dyaXRlKG52cmFtLCBhZGRyICsgbWF4IC0gMSwgJ1wwJyk7CiB9CiAKK3N0 YXRpYyB1aW50MzJfdCBudnJhbV9zZXRfdmFyIChtNDh0NTlfdCAqbnZyYW0sIHVpbnQzMl90IGFk ZHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIg KnN0cikKK3sKKyAgICB1aW50MzJfdCBsZW47CisKKyAgICBsZW4gPSBzdHJsZW4oc3RyKSArIDE7 CisgICAgbnZyYW1fc2V0X3N0cmluZyhudnJhbSwgYWRkciwgc3RyLCBsZW4pOworCisgICAgcmV0 dXJuIGFkZHIgKyBsZW47Cit9CisKK3N0YXRpYyB2b2lkIG52cmFtX2ZpbmlzaF9wYXJ0aXRpb24g KG00OHQ1OV90ICpudnJhbSwgdWludDMyX3Qgc3RhcnQsCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB1aW50MzJfdCBlbmQpCit7CisgICAgdW5zaWduZWQgaW50IGksIHN1bTsK KworICAgIC8vIExlbmd0aCBkaXZpZGVkIGJ5IDE2CisgICAgbTQ4dDU5X3dyaXRlKG52cmFtLCBz dGFydCArIDIsICgoZW5kIC0gc3RhcnQpID4+IDEyKSAmIDB4ZmYpOworICAgIG00OHQ1OV93cml0 ZShudnJhbSwgc3RhcnQgKyAzLCAoKGVuZCAtIHN0YXJ0KSA+PiA0KSAmIDB4ZmYpOworICAgIC8v IENoZWNrc3VtCisgICAgc3VtID0gbTQ4dDU5X3JlYWQobnZyYW0sIHN0YXJ0KTsKKyAgICBmb3Ig KGkgPSAwOyBpIDwgMTQ7IGkrKykgeworICAgICAgICBzdW0gKz0gbTQ4dDU5X3JlYWQobnZyYW0s IHN0YXJ0ICsgMiArIGkpOworICAgICAgICBzdW0gPSAoc3VtICsgKChzdW0gJiAweGZmMDApID4+ IDgpKSAmIDB4ZmY7CisgICAgfQorICAgIG00OHQ1OV93cml0ZShudnJhbSwgc3RhcnQgKyAxLCBz dW0gJiAweGZmKTsKK30KKwogc3RhdGljIG00OHQ1OV90ICpudnJhbTsKIAogZXh0ZXJuIGludCBu b2dyYXBoaWM7CkBAIC0xMjgsNyArMTU2LDggQEAKICAgICAgICAgICAgICAgICAgICAgICAgaW50 IG1hY2hpbmVfaWQpCiB7CiAgICAgdW5zaWduZWQgY2hhciB0bXAgPSAwOwotICAgIGludCBpLCBq OworICAgIHVuc2lnbmVkIGludCBpLCBqOworICAgIHVpbnQzMl90IHN0YXJ0LCBlbmQ7CiAKICAg ICAvLyBUcnkgdG8gbWF0Y2ggUFBDIE5WUkFNCiAgICAgbnZyYW1fc2V0X3N0cmluZyhudnJhbSwg MHgwMCwgIlFFTVVfQklPUyIsIDE2KTsKQEAgLTE1MSw4ICsxODAsMzAgQEAKICAgICBudnJhbV9z ZXRfd29yZChudnJhbSwgICAweDU2LCBoZWlnaHQpOwogICAgIG52cmFtX3NldF93b3JkKG52cmFt LCAgIDB4NTgsIGRlcHRoKTsKIAorICAgIC8vIE9wZW5CSU9TIG52cmFtIHZhcmlhYmxlcworICAg IC8vIFZhcmlhYmxlIHBhcnRpdGlvbgorICAgIHN0YXJ0ID0gMjUyOworICAgIG00OHQ1OV93cml0 ZShudnJhbSwgc3RhcnQsIDB4NzApOworICAgIG52cmFtX3NldF9zdHJpbmcobnZyYW0sIHN0YXJ0 ICsgNCwgInN5c3RlbSIsIDEyKTsKKworICAgIGVuZCA9IHN0YXJ0ICsgMTY7CisgICAgZm9yIChp ID0gMDsgaSA8IG5iX3Byb21fZW52czsgaSsrKQorICAgICAgICBlbmQgPSBudnJhbV9zZXRfdmFy KG52cmFtLCBlbmQsIHByb21fZW52c1tpXSk7CisKKyAgICBtNDh0NTlfd3JpdGUobnZyYW0sIGVu ZCsrICwgMCk7CisgICAgZW5kID0gc3RhcnQgKyAoKGVuZCAtIHN0YXJ0ICsgMTUpICYgfjE1KTsK KyAgICBudnJhbV9maW5pc2hfcGFydGl0aW9uKG52cmFtLCBzdGFydCwgZW5kKTsKKworICAgIC8v IGZyZWUgcGFydGl0aW9uCisgICAgc3RhcnQgPSBlbmQ7CisgICAgbTQ4dDU5X3dyaXRlKG52cmFt LCBzdGFydCwgMHg3Zik7CisgICAgbnZyYW1fc2V0X3N0cmluZyhudnJhbSwgc3RhcnQgKyA0LCAi ZnJlZSIsIDEyKTsKKworICAgIGVuZCA9IDB4MWZkMDsKKyAgICBudnJhbV9maW5pc2hfcGFydGl0 aW9uKG52cmFtLCBzdGFydCwgZW5kKTsKKwogICAgIC8vIFN1bjRtIHNwZWNpZmljIHVzZQotICAg IGkgPSAweDFmZDg7CisgICAgc3RhcnQgPSBpID0gMHgxZmQ4OwogICAgIG00OHQ1OV93cml0ZShu dnJhbSwgaSsrLCAweDAxKTsKICAgICBtNDh0NTlfd3JpdGUobnZyYW0sIGkrKywgbWFjaGluZV9p ZCk7CiAgICAgaiA9IDA7CkBAIC0xNjQsMTAgKzIxNSwxMCBAQAogICAgIG00OHQ1OV93cml0ZShu dnJhbSwgaSwgbWFjYWRkcltqXSk7CiAKICAgICAvKiBDYWxjdWxhdGUgY2hlY2tzdW0gKi8KLSAg ICBmb3IgKGkgPSAweDFmZDg7IGkgPCAweDFmZTc7IGkrKykgewotCXRtcCBePSBtNDh0NTlfcmVh ZChudnJhbSwgaSk7CisgICAgZm9yIChpID0gc3RhcnQ7IGkgPCBzdGFydCArIDE1OyBpKyspIHsK KyAgICAgICAgdG1wIF49IG00OHQ1OV9yZWFkKG52cmFtLCBpKTsKICAgICB9Ci0gICAgbTQ4dDU5 X3dyaXRlKG52cmFtLCAweDFmZTcsIHRtcCk7CisgICAgbTQ4dDU5X3dyaXRlKG52cmFtLCBzdGFy dCArIDE1LCB0bXApOwogfQogCiBzdGF0aWMgdm9pZCAqc2xhdmlvX2ludGN0bDsKSW5kZXg6IHFl bXUvaHcvc3VuNHUuYwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBxZW11Lm9yaWcvaHcvc3VuNHUuYwkyMDA3LTA0 LTI5IDE5OjQzOjU5LjAwMDAwMDAwMCArMDAwMAorKysgcWVtdS9ody9zdW40dS5jCTIwMDctMDQt MzAgMTY6Mjc6MDAuMDAwMDAwMDAwICswMDAwCkBAIC0xNzAsNiArMTcwLDM0IEBACiAgICAgcmV0 dXJuIGNyYzsKIH0KIAorc3RhdGljIHVpbnQzMl90IG52cmFtX3NldF92YXIgKG00OHQ1OV90ICpu dnJhbSwgdWludDMyX3QgYWRkciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29u c3QgdW5zaWduZWQgY2hhciAqc3RyKQoreworICAgIHVpbnQzMl90IGxlbjsKKworICAgIGxlbiA9 IHN0cmxlbihzdHIpICsgMTsKKyAgICBOVlJBTV9zZXRfc3RyaW5nKG52cmFtLCBhZGRyLCBzdHIs IGxlbik7CisKKyAgICByZXR1cm4gYWRkciArIGxlbjsKK30KKworc3RhdGljIHZvaWQgbnZyYW1f ZmluaXNoX3BhcnRpdGlvbiAobTQ4dDU5X3QgKm52cmFtLCB1aW50MzJfdCBzdGFydCwKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGVuZCkKK3sKKyAgICB1bnNp Z25lZCBpbnQgaSwgc3VtOworCisgICAgLy8gTGVuZ3RoIGRpdmlkZWQgYnkgMTYKKyAgICBtNDh0 NTlfd3JpdGUobnZyYW0sIHN0YXJ0ICsgMiwgKChlbmQgLSBzdGFydCkgPj4gMTIpICYgMHhmZik7 CisgICAgbTQ4dDU5X3dyaXRlKG52cmFtLCBzdGFydCArIDMsICgoZW5kIC0gc3RhcnQpID4+IDQp ICYgMHhmZik7CisgICAgLy8gQ2hlY2tzdW0KKyAgICBzdW0gPSBtNDh0NTlfcmVhZChudnJhbSwg c3RhcnQpOworICAgIGZvciAoaSA9IDA7IGkgPCAxNDsgaSsrKSB7CisgICAgICAgIHN1bSArPSBt NDh0NTlfcmVhZChudnJhbSwgc3RhcnQgKyAyICsgaSk7CisgICAgICAgIHN1bSA9IChzdW0gKyAo KHN1bSAmIDB4ZmYwMCkgPj4gOCkpICYgMHhmZjsKKyAgICB9CisgICAgbTQ4dDU5X3dyaXRlKG52 cmFtLCBzdGFydCArIDEsIHN1bSAmIDB4ZmYpOworfQorCiBleHRlcm4gaW50IG5vZ3JhcGhpYzsK IAogaW50IHN1bjR1X05WUkFNX3NldF9wYXJhbXMgKG00OHQ1OV90ICpudnJhbSwgdWludDE2X3Qg TlZSQU1fc2l6ZSwKQEAgLTE4Miw2ICsyMTAsOCBAQAogICAgICAgICAgICAgICAgICAgICAgICAg ICBpbnQgd2lkdGgsIGludCBoZWlnaHQsIGludCBkZXB0aCkKIHsKICAgICB1aW50MTZfdCBjcmM7 CisgICAgdW5zaWduZWQgaW50IGk7CisgICAgdWludDMyX3Qgc3RhcnQsIGVuZDsKIAogICAgIC8q IFNldCBwYXJhbWV0ZXJzIGZvciBPcGVuIEhhY2snV2FyZSBCSU9TICovCiAgICAgTlZSQU1fc2V0 X3N0cmluZyhudnJhbSwgMHgwMCwgIlFFTVVfQklPUyIsIDE2KTsKQEAgLTIxMiw2ICsyNDIsMjcg QEAKICAgICBjcmMgPSBOVlJBTV9jb21wdXRlX2NyYyhudnJhbSwgMHgwMCwgMHhGOCk7CiAgICAg TlZSQU1fc2V0X3dvcmQobnZyYW0sICAweEZDLCBjcmMpOwogCisgICAgLy8gT3BlbkJJT1MgbnZy YW0gdmFyaWFibGVzCisgICAgLy8gVmFyaWFibGUgcGFydGl0aW9uCisgICAgc3RhcnQgPSAyNTI7 CisgICAgbTQ4dDU5X3dyaXRlKG52cmFtLCBzdGFydCwgMHg3MCk7CisgICAgTlZSQU1fc2V0X3N0 cmluZyhudnJhbSwgc3RhcnQgKyA0LCAic3lzdGVtIiwgMTIpOworCisgICAgZW5kID0gc3RhcnQg KyAxNjsKKyAgICBmb3IgKGkgPSAwOyBpIDwgbmJfcHJvbV9lbnZzOyBpKyspCisgICAgICAgIGVu ZCA9IG52cmFtX3NldF92YXIobnZyYW0sIGVuZCwgcHJvbV9lbnZzW2ldKTsKKworICAgIG00OHQ1 OV93cml0ZShudnJhbSwgZW5kKysgLCAwKTsKKyAgICBlbmQgPSBzdGFydCArICgoZW5kIC0gc3Rh cnQgKyAxNSkgJiB+MTUpOworICAgIG52cmFtX2ZpbmlzaF9wYXJ0aXRpb24obnZyYW0sIHN0YXJ0 LCBlbmQpOworCisgICAgLy8gZnJlZSBwYXJ0aXRpb24KKyAgICBzdGFydCA9IGVuZDsKKyAgICBt NDh0NTlfd3JpdGUobnZyYW0sIHN0YXJ0LCAweDdmKTsKKyAgICBOVlJBTV9zZXRfc3RyaW5nKG52 cmFtLCBzdGFydCArIDQsICJmcmVlIiwgMTIpOworCisgICAgZW5kID0gMHgxZmQwOworICAgIG52 cmFtX2ZpbmlzaF9wYXJ0aXRpb24obnZyYW0sIHN0YXJ0LCBlbmQpOwogICAgIHJldHVybiAwOwog fQogCkluZGV4OiBxZW11L3ZsLmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gcWVtdS5vcmlnL3ZsLmMJMjAwNy0w NC0yOSAxOTo0ODozMS4wMDAwMDAwMDAgKzAwMDAKKysrIHFlbXUvdmwuYwkyMDA3LTA0LTMwIDE2 OjI3OjAwLjAwMDAwMDAwMCArMDAwMApAQCAtMTk0LDYgKzE5NCwxMCBAQAogaW50IHNlbWlob3N0 aW5nX2VuYWJsZWQgPSAwOwogaW50IGF1dG9zdGFydCA9IDE7CiBjb25zdCBjaGFyICpxZW11X25h bWU7CisjaWZkZWYgVEFSR0VUX1NQQVJDCit1bnNpZ25lZCBpbnQgbmJfcHJvbV9lbnZzID0gMDsK K2NvbnN0IGNoYXIgKnByb21fZW52c1tNQVhfUFJPTV9FTlZTXTsKKyNlbmRpZgogCiAvKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAv KiB4ODYgSVNBIGJ1cyBzdXBwb3J0ICovCkBAIC02NDczLDYgKzY0NzcsOSBAQAogCSAgICItZGFl bW9uaXplICAgICAgZGFlbW9uaXplIFFFTVUgYWZ0ZXIgaW5pdGlhbGl6aW5nXG4iCiAjZW5kaWYK IAkgICAiLW9wdGlvbi1yb20gcm9tIGxvYWQgYSBmaWxlLCByb20sIGludG8gdGhlIG9wdGlvbiBS T00gc3BhY2VcbiIKKyNpZmRlZiBUQVJHRVRfU1BBUkMKKyAgICAgICAgICAgIi1wcm9tLWVudiB2 YXJpYWJsZT12YWx1ZSAgc2V0IE9wZW5CSU9TIG52cmFtIHZhcmlhYmxlc1xuIgorI2VuZGlmCiAg ICAgICAgICAgICJcbiIKICAgICAgICAgICAgIkR1cmluZyBlbXVsYXRpb24sIHRoZSBmb2xsb3dp bmcga2V5cyBhcmUgdXNlZnVsOlxuIgogICAgICAgICAgICAiY3RybC1hbHQtZiAgICAgIHRvZ2ds ZSBmdWxsIHNjcmVlblxuIgpAQCAtNjU2NCw2ICs2NTcxLDcgQEAKICAgICBRRU1VX09QVElPTl9v cHRpb25fcm9tLAogICAgIFFFTVVfT1BUSU9OX3NlbWlob3N0aW5nLAogICAgIFFFTVVfT1BUSU9O X25hbWUsCisgICAgUUVNVV9PUFRJT05fcHJvbV9lbnYsCiB9OwogCiB0eXBlZGVmIHN0cnVjdCBR RU1VT3B0aW9uIHsKQEAgLTY2NTgsNiArNjY2Niw5IEBACiAgICAgeyAic2VtaWhvc3RpbmciLCAw LCBRRU1VX09QVElPTl9zZW1paG9zdGluZyB9LAogI2VuZGlmCiAgICAgeyAibmFtZSIsIEhBU19B UkcsIFFFTVVfT1BUSU9OX25hbWUgfSwKKyNpZiBkZWZpbmVkKFRBUkdFVF9TUEFSQykKKyAgICB7 ICJwcm9tLWVudiIsIEhBU19BUkcsIFFFTVVfT1BUSU9OX3Byb21fZW52IH0sCisjZW5kaWYKICAg ICB7IE5VTEwgfSwKIH07CiAKQEAgLTczODksNiArNzQwMCwxNiBAQAogICAgICAgICAgICAgY2Fz ZSBRRU1VX09QVElPTl9uYW1lOgogICAgICAgICAgICAgICAgIHFlbXVfbmFtZSA9IG9wdGFyZzsK ICAgICAgICAgICAgICAgICBicmVhazsKKyNpZmRlZiBUQVJHRVRfU1BBUkMKKyAgICAgICAgICAg IGNhc2UgUUVNVV9PUFRJT05fcHJvbV9lbnY6CisgICAgICAgICAgICAgICAgaWYgKG5iX3Byb21f ZW52cyA+PSBNQVhfUFJPTV9FTlZTKSB7CisgICAgICAgICAgICAgICAgICAgIGZwcmludGYoc3Rk ZXJyLCAiVG9vIG1hbnkgcHJvbSB2YXJpYWJsZXNcbiIpOworICAgICAgICAgICAgICAgICAgICBl eGl0KDEpOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBwcm9tX2VudnNbbmJf cHJvbV9lbnZzXSA9IG9wdGFyZzsKKyAgICAgICAgICAgICAgICBuYl9wcm9tX2VudnMrKzsKKyAg ICAgICAgICAgICAgICBicmVhazsKKyNlbmRpZgogICAgICAgICAgICAgfQogICAgICAgICB9CiAg ICAgfQpJbmRleDogcWVtdS92bC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHFlbXUub3JpZy92bC5oCTIwMDct MDQtMjkgMTk6NDg6MzIuMDAwMDAwMDAwICswMDAwCisrKyBxZW11L3ZsLmgJMjAwNy0wNC0zMCAx NjoyNzowMC4wMDAwMDAwMDAgKzAwMDAKQEAgLTE2Nyw2ICsxNjcsMTIgQEAKIGV4dGVybiBjb25z dCBjaGFyICpvcHRpb25fcm9tW01BWF9PUFRJT05fUk9NU107CiBleHRlcm4gaW50IG5iX29wdGlv bl9yb21zOwogCisjaWZkZWYgVEFSR0VUX1NQQVJDCisjZGVmaW5lIE1BWF9QUk9NX0VOVlMgMTI4 CitleHRlcm4gY29uc3QgY2hhciAqcHJvbV9lbnZzW01BWF9QUk9NX0VOVlNdOworZXh0ZXJuIHVu c2lnbmVkIGludCBuYl9wcm9tX2VudnM7CisjZW5kaWYKKwogLyogWFhYOiBtYWtlIGl0IGR5bmFt aWMgKi8KICNkZWZpbmUgTUFYX0JJT1NfU0laRSAoNCAqIDEwMjQgKiAxMDI0KQogI2lmIGRlZmlu ZWQgKFRBUkdFVF9QUEMpIHx8IGRlZmluZWQgKFRBUkdFVF9TUEFSQzY0KQo= ------=_Part_5096_984774.1177961132067--