[PATCH] drm/radeon/kms: add accel parameter

Alex Deucher alexdeucher at gmail.com
Fri Apr 23 14:12:46 PDT 2010


passing accel=0 will disable acceleration.

This is useful for debugging.

Signed-off-by: Alex Deucher <alexdeucher at gmail.com>
---
 drivers/gpu/drm/radeon/evergreen.c  |    2 +-
 drivers/gpu/drm/radeon/r100.c       |    2 +-
 drivers/gpu/drm/radeon/r300.c       |    2 +-
 drivers/gpu/drm/radeon/r420.c       |    2 +-
 drivers/gpu/drm/radeon/r520.c       |    2 +-
 drivers/gpu/drm/radeon/r600.c       |    2 +-
 drivers/gpu/drm/radeon/radeon.h     |    1 +
 drivers/gpu/drm/radeon/radeon_drv.c |    4 ++++
 drivers/gpu/drm/radeon/rs400.c      |    2 +-
 drivers/gpu/drm/radeon/rs600.c      |    2 +-
 drivers/gpu/drm/radeon/rs690.c      |    2 +-
 drivers/gpu/drm/radeon/rv515.c      |    2 +-
 drivers/gpu/drm/radeon/rv770.c      |    2 +-
 13 files changed, 16 insertions(+), 11 deletions(-)

diff --git a/drivers/gpu/drm/radeon/evergreen.c
b/drivers/gpu/drm/radeon/evergreen.c
index 0137a4c..af19080 100644
--- a/drivers/gpu/drm/radeon/evergreen.c
+++ b/drivers/gpu/drm/radeon/evergreen.c
@@ -2111,7 +2111,7 @@ int evergreen_init(struct radeon_device *rdev)

 	rdev->accel_working = false;
 	r = evergreen_startup(rdev);
-	if (r) {
+	if (r || (radeon_accel == 0)) {
 		dev_err(rdev->dev, "disabling GPU acceleration\n");
 		r700_cp_fini(rdev);
 		r600_wb_fini(rdev);
diff --git a/drivers/gpu/drm/radeon/r100.c b/drivers/gpu/drm/radeon/r100.c
index 6443d9e..0441e80 100644
--- a/drivers/gpu/drm/radeon/r100.c
+++ b/drivers/gpu/drm/radeon/r100.c
@@ -3738,7 +3738,7 @@ int r100_init(struct radeon_device *rdev)
 	r100_set_safe_registers(rdev);
 	rdev->accel_working = true;
 	r = r100_startup(rdev);
-	if (r) {
+	if (r || (radeon_accel == 0)) {
 		/* Somethings want wront with the accel init stop accel */
 		dev_err(rdev->dev, "Disabling GPU acceleration\n");
 		r100_cp_fini(rdev);
diff --git a/drivers/gpu/drm/radeon/r300.c b/drivers/gpu/drm/radeon/r300.c
index 590f6a8..30a9112 100644
--- a/drivers/gpu/drm/radeon/r300.c
+++ b/drivers/gpu/drm/radeon/r300.c
@@ -1443,7 +1443,7 @@ int r300_init(struct radeon_device *rdev)
 	r300_set_reg_safe(rdev);
 	rdev->accel_working = true;
 	r = r300_startup(rdev);
-	if (r) {
+	if (r || (radeon_accel == 0)) {
 		/* Somethings want wront with the accel init stop accel */
 		dev_err(rdev->dev, "Disabling GPU acceleration\n");
 		r100_cp_fini(rdev);
diff --git a/drivers/gpu/drm/radeon/r420.c b/drivers/gpu/drm/radeon/r420.c
index be092d2..ebb9017 100644
--- a/drivers/gpu/drm/radeon/r420.c
+++ b/drivers/gpu/drm/radeon/r420.c
@@ -376,7 +376,7 @@ int r420_init(struct radeon_device *rdev)
 	r420_set_reg_safe(rdev);
 	rdev->accel_working = true;
 	r = r420_startup(rdev);
-	if (r) {
+	if (r || (radeon_accel == 0)) {
 		/* Somethings want wront with the accel init stop accel */
 		dev_err(rdev->dev, "Disabling GPU acceleration\n");
 		r100_cp_fini(rdev);
diff --git a/drivers/gpu/drm/radeon/r520.c b/drivers/gpu/drm/radeon/r520.c
index 870111e..38caca5 100644
--- a/drivers/gpu/drm/radeon/r520.c
+++ b/drivers/gpu/drm/radeon/r520.c
@@ -290,7 +290,7 @@ int r520_init(struct radeon_device *rdev)
 	rv515_set_safe_registers(rdev);
 	rdev->accel_working = true;
 	r = r520_startup(rdev);
-	if (r) {
+	if (r || (radeon_accel == 0)) {
 		/* Somethings want wront with the accel init stop accel */
 		dev_err(rdev->dev, "Disabling GPU acceleration\n");
 		r100_cp_fini(rdev);
diff --git a/drivers/gpu/drm/radeon/r600.c b/drivers/gpu/drm/radeon/r600.c
index 4a35c54..d11632f 100644
--- a/drivers/gpu/drm/radeon/r600.c
+++ b/drivers/gpu/drm/radeon/r600.c
@@ -2324,7 +2324,7 @@ int r600_init(struct radeon_device *rdev)

 	rdev->accel_working = true;
 	r = r600_startup(rdev);
-	if (r) {
+	if (r || (radeon_accel == 0)) {
 		dev_err(rdev->dev, "disabling GPU acceleration\n");
 		r600_cp_fini(rdev);
 		r600_wb_fini(rdev);
diff --git a/drivers/gpu/drm/radeon/radeon.h b/drivers/gpu/drm/radeon/radeon.h
index d284270..fc0574c 100644
--- a/drivers/gpu/drm/radeon/radeon.h
+++ b/drivers/gpu/drm/radeon/radeon.h
@@ -93,6 +93,7 @@ extern int radeon_dynpm;
 extern int radeon_audio;
 extern int radeon_disp_priority;
 extern int radeon_hw_i2c;
+extern int radeon_accel;

 /*
  * Copy from radeon_drv.h so we don't have to include both and have conflicting
diff --git a/drivers/gpu/drm/radeon/radeon_drv.c
b/drivers/gpu/drm/radeon/radeon_drv.c
index 4b05563..cfe5cd8 100644
--- a/drivers/gpu/drm/radeon/radeon_drv.c
+++ b/drivers/gpu/drm/radeon/radeon_drv.c
@@ -95,6 +95,7 @@ int radeon_dynpm = -1;
 int radeon_audio = 1;
 int radeon_disp_priority = 0;
 int radeon_hw_i2c = 0;
+int radeon_accel = 1;

 MODULE_PARM_DESC(no_wb, "Disable AGP writeback for scratch registers");
 module_param_named(no_wb, radeon_no_wb, int, 0444);
@@ -144,6 +145,9 @@ module_param_named(disp_priority,
radeon_disp_priority, int, 0444);
 MODULE_PARM_DESC(hw_i2c, "hw i2c engine enable (0 = disable)");
 module_param_named(hw_i2c, radeon_hw_i2c, int, 0444);

+MODULE_PARM_DESC(accel, "acceleration (0 = disable)");
+module_param_named(accel, radeon_accel, int, 0444);
+
 static int radeon_suspend(struct drm_device *dev, pm_message_t state)
 {
 	drm_radeon_private_t *dev_priv = dev->dev_private;
diff --git a/drivers/gpu/drm/radeon/rs400.c b/drivers/gpu/drm/radeon/rs400.c
index dc76fe7..e36f193 100644
--- a/drivers/gpu/drm/radeon/rs400.c
+++ b/drivers/gpu/drm/radeon/rs400.c
@@ -528,7 +528,7 @@ int rs400_init(struct radeon_device *rdev)
 	r300_set_reg_safe(rdev);
 	rdev->accel_working = true;
 	r = rs400_startup(rdev);
-	if (r) {
+	if (r || (radeon_accel == 0)) {
 		/* Somethings want wront with the accel init stop accel */
 		dev_err(rdev->dev, "Disabling GPU acceleration\n");
 		r100_cp_fini(rdev);
diff --git a/drivers/gpu/drm/radeon/rs600.c b/drivers/gpu/drm/radeon/rs600.c
index b312b72..fbdc6be 100644
--- a/drivers/gpu/drm/radeon/rs600.c
+++ b/drivers/gpu/drm/radeon/rs600.c
@@ -789,7 +789,7 @@ int rs600_init(struct radeon_device *rdev)
 	rs600_set_safe_registers(rdev);
 	rdev->accel_working = true;
 	r = rs600_startup(rdev);
-	if (r) {
+	if (r || (radeon_accel == 0)) {
 		/* Somethings want wront with the accel init stop accel */
 		dev_err(rdev->dev, "Disabling GPU acceleration\n");
 		r100_cp_fini(rdev);
diff --git a/drivers/gpu/drm/radeon/rs690.c b/drivers/gpu/drm/radeon/rs690.c
index 56a0aec..1a38699 100644
--- a/drivers/gpu/drm/radeon/rs690.c
+++ b/drivers/gpu/drm/radeon/rs690.c
@@ -749,7 +749,7 @@ int rs690_init(struct radeon_device *rdev)
 	rs600_set_safe_registers(rdev);
 	rdev->accel_working = true;
 	r = rs690_startup(rdev);
-	if (r) {
+	if (r || (radeon_accel == 0)) {
 		/* Somethings want wront with the accel init stop accel */
 		dev_err(rdev->dev, "Disabling GPU acceleration\n");
 		r100_cp_fini(rdev);
diff --git a/drivers/gpu/drm/radeon/rv515.c b/drivers/gpu/drm/radeon/rv515.c
index c513473..104e285 100644
--- a/drivers/gpu/drm/radeon/rv515.c
+++ b/drivers/gpu/drm/radeon/rv515.c
@@ -523,7 +523,7 @@ int rv515_init(struct radeon_device *rdev)
 	rv515_set_safe_registers(rdev);
 	rdev->accel_working = true;
 	r = rv515_startup(rdev);
-	if (r) {
+	if (r || (radeon_accel == 0)) {
 		/* Somethings want wront with the accel init stop accel */
 		dev_err(rdev->dev, "Disabling GPU acceleration\n");
 		r100_cp_fini(rdev);
diff --git a/drivers/gpu/drm/radeon/rv770.c b/drivers/gpu/drm/radeon/rv770.c
index a74683e..779a89e 100644
--- a/drivers/gpu/drm/radeon/rv770.c
+++ b/drivers/gpu/drm/radeon/rv770.c
@@ -1123,7 +1123,7 @@ int rv770_init(struct radeon_device *rdev)

 	rdev->accel_working = true;
 	r = rv770_startup(rdev);
-	if (r) {
+	if (r || (radeon_accel == 0)) {
 		dev_err(rdev->dev, "disabling GPU acceleration\n");
 		r700_cp_fini(rdev);
 		r600_wb_fini(rdev);
-- 
1.5.6.3

--001485f1d90e2acc450484ee027e
Content-Type: text/plain; charset=US-ASCII; 
	name="0001-drm-radeon-kms-add-accel-parameter.patch"
Content-Disposition: attachment; 
	filename="0001-drm-radeon-kms-add-accel-parameter.patch"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_g8diaflg0

RnJvbSAxMTRmMzQ5MWE0MTFmNTBhMGRlMWQ1OTQ3NWZjMjY3ZWZkNWFmYTZhIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGV4IERldWNoZXIgPGFsZXhkZXVjaGVyQGdtYWlsLmNvbT4K
RGF0ZTogRnJpLCAyMyBBcHIgMjAxMCAxNzoxMjo0NiAtMDQwMApTdWJqZWN0OiBbUEFUQ0hdIGRy
bS9yYWRlb24va21zOiBhZGQgYWNjZWwgcGFyYW1ldGVyCgpwYXNzaW5nIGFjY2VsPTAgd2lsbCBk
aXNhYmxlIGFjY2VsZXJhdGlvbi4KClRoaXMgaXMgdXNlZnVsIGZvciBkZWJ1Z2dpbmcuCgpTaWdu
ZWQtb2ZmLWJ5OiBBbGV4IERldWNoZXIgPGFsZXhkZXVjaGVyQGdtYWlsLmNvbT4KLS0tCiBkcml2
ZXJzL2dwdS9kcm0vcmFkZW9uL2V2ZXJncmVlbi5jICB8ICAgIDIgKy0KIGRyaXZlcnMvZ3B1L2Ry
bS9yYWRlb24vcjEwMC5jICAgICAgIHwgICAgMiArLQogZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9y
MzAwLmMgICAgICAgfCAgICAyICstCiBkcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3I0MjAuYyAgICAg
ICB8ICAgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9yYWRlb24vcjUyMC5jICAgICAgIHwgICAgMiAr
LQogZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yNjAwLmMgICAgICAgfCAgICAyICstCiBkcml2ZXJz
L2dwdS9kcm0vcmFkZW9uL3JhZGVvbi5oICAgICB8ICAgIDEgKwogZHJpdmVycy9ncHUvZHJtL3Jh
ZGVvbi9yYWRlb25fZHJ2LmMgfCAgICA0ICsrKysKIGRyaXZlcnMvZ3B1L2RybS9yYWRlb24vcnM0
MDAuYyAgICAgIHwgICAgMiArLQogZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yczYwMC5jICAgICAg
fCAgICAyICstCiBkcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JzNjkwLmMgICAgICB8ICAgIDIgKy0K
IGRyaXZlcnMvZ3B1L2RybS9yYWRlb24vcnY1MTUuYyAgICAgIHwgICAgMiArLQogZHJpdmVycy9n
cHUvZHJtL3JhZGVvbi9ydjc3MC5jICAgICAgfCAgICAyICstCiAxMyBmaWxlcyBjaGFuZ2VkLCAx
NiBpbnNlcnRpb25zKCspLCAxMSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dw
dS9kcm0vcmFkZW9uL2V2ZXJncmVlbi5jIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9ldmVyZ3Jl
ZW4uYwppbmRleCAwMTM3YTRjLi5hZjE5MDgwIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v
cmFkZW9uL2V2ZXJncmVlbi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vZXZlcmdyZWVu
LmMKQEAgLTIxMTEsNyArMjExMSw3IEBAIGludCBldmVyZ3JlZW5faW5pdChzdHJ1Y3QgcmFkZW9u
X2RldmljZSAqcmRldikKIAogCXJkZXYtPmFjY2VsX3dvcmtpbmcgPSBmYWxzZTsKIAlyID0gZXZl
cmdyZWVuX3N0YXJ0dXAocmRldik7Ci0JaWYgKHIpIHsKKwlpZiAociB8fCAocmFkZW9uX2FjY2Vs
ID09IDApKSB7CiAJCWRldl9lcnIocmRldi0+ZGV2LCAiZGlzYWJsaW5nIEdQVSBhY2NlbGVyYXRp
b25cbiIpOwogCQlyNzAwX2NwX2ZpbmkocmRldik7CiAJCXI2MDBfd2JfZmluaShyZGV2KTsKZGlm
ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcjEwMC5jIGIvZHJpdmVycy9ncHUvZHJt
L3JhZGVvbi9yMTAwLmMKaW5kZXggNjQ0M2Q5ZS4uMDQ0MWU4MCAxMDA2NDQKLS0tIGEvZHJpdmVy
cy9ncHUvZHJtL3JhZGVvbi9yMTAwLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yMTAw
LmMKQEAgLTM3MzgsNyArMzczOCw3IEBAIGludCByMTAwX2luaXQoc3RydWN0IHJhZGVvbl9kZXZp
Y2UgKnJkZXYpCiAJcjEwMF9zZXRfc2FmZV9yZWdpc3RlcnMocmRldik7CiAJcmRldi0+YWNjZWxf
d29ya2luZyA9IHRydWU7CiAJciA9IHIxMDBfc3RhcnR1cChyZGV2KTsKLQlpZiAocikgeworCWlm
IChyIHx8IChyYWRlb25fYWNjZWwgPT0gMCkpIHsKIAkJLyogU29tZXRoaW5ncyB3YW50IHdyb250
IHdpdGggdGhlIGFjY2VsIGluaXQgc3RvcCBhY2NlbCAqLwogCQlkZXZfZXJyKHJkZXYtPmRldiwg
IkRpc2FibGluZyBHUFUgYWNjZWxlcmF0aW9uXG4iKTsKIAkJcjEwMF9jcF9maW5pKHJkZXYpOwpk
aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yMzAwLmMgYi9kcml2ZXJzL2dwdS9k
cm0vcmFkZW9uL3IzMDAuYwppbmRleCA1OTBmNmE4Li4zMGE5MTEyIDEwMDY0NAotLS0gYS9kcml2
ZXJzL2dwdS9kcm0vcmFkZW9uL3IzMDAuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3Iz
MDAuYwpAQCAtMTQ0Myw3ICsxNDQzLDcgQEAgaW50IHIzMDBfaW5pdChzdHJ1Y3QgcmFkZW9uX2Rl
dmljZSAqcmRldikKIAlyMzAwX3NldF9yZWdfc2FmZShyZGV2KTsKIAlyZGV2LT5hY2NlbF93b3Jr
aW5nID0gdHJ1ZTsKIAlyID0gcjMwMF9zdGFydHVwKHJkZXYpOwotCWlmIChyKSB7CisJaWYgKHIg
fHwgKHJhZGVvbl9hY2NlbCA9PSAwKSkgewogCQkvKiBTb21ldGhpbmdzIHdhbnQgd3JvbnQgd2l0
aCB0aGUgYWNjZWwgaW5pdCBzdG9wIGFjY2VsICovCiAJCWRldl9lcnIocmRldi0+ZGV2LCAiRGlz
YWJsaW5nIEdQVSBhY2NlbGVyYXRpb25cbiIpOwogCQlyMTAwX2NwX2ZpbmkocmRldik7CmRpZmYg
LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3I0MjAuYyBiL2RyaXZlcnMvZ3B1L2RybS9y
YWRlb24vcjQyMC5jCmluZGV4IGJlMDkyZDIuLmViYjkwMTcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv
Z3B1L2RybS9yYWRlb24vcjQyMC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcjQyMC5j
CkBAIC0zNzYsNyArMzc2LDcgQEAgaW50IHI0MjBfaW5pdChzdHJ1Y3QgcmFkZW9uX2RldmljZSAq
cmRldikKIAlyNDIwX3NldF9yZWdfc2FmZShyZGV2KTsKIAlyZGV2LT5hY2NlbF93b3JraW5nID0g
dHJ1ZTsKIAlyID0gcjQyMF9zdGFydHVwKHJkZXYpOwotCWlmIChyKSB7CisJaWYgKHIgfHwgKHJh
ZGVvbl9hY2NlbCA9PSAwKSkgewogCQkvKiBTb21ldGhpbmdzIHdhbnQgd3JvbnQgd2l0aCB0aGUg
YWNjZWwgaW5pdCBzdG9wIGFjY2VsICovCiAJCWRldl9lcnIocmRldi0+ZGV2LCAiRGlzYWJsaW5n
IEdQVSBhY2NlbGVyYXRpb25cbiIpOwogCQlyMTAwX2NwX2ZpbmkocmRldik7CmRpZmYgLS1naXQg
YS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3I1MjAuYyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24v
cjUyMC5jCmluZGV4IDg3MDExMWUuLjM4Y2FjYTUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2Ry
bS9yYWRlb24vcjUyMC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcjUyMC5jCkBAIC0y
OTAsNyArMjkwLDcgQEAgaW50IHI1MjBfaW5pdChzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldikK
IAlydjUxNV9zZXRfc2FmZV9yZWdpc3RlcnMocmRldik7CiAJcmRldi0+YWNjZWxfd29ya2luZyA9
IHRydWU7CiAJciA9IHI1MjBfc3RhcnR1cChyZGV2KTsKLQlpZiAocikgeworCWlmIChyIHx8IChy
YWRlb25fYWNjZWwgPT0gMCkpIHsKIAkJLyogU29tZXRoaW5ncyB3YW50IHdyb250IHdpdGggdGhl
IGFjY2VsIGluaXQgc3RvcCBhY2NlbCAqLwogCQlkZXZfZXJyKHJkZXYtPmRldiwgIkRpc2FibGlu
ZyBHUFUgYWNjZWxlcmF0aW9uXG4iKTsKIAkJcjEwMF9jcF9maW5pKHJkZXYpOwpkaWZmIC0tZ2l0
IGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yNjAwLmMgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9u
L3I2MDAuYwppbmRleCA0YTM1YzU0Li5kMTE2MzJmIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k
cm0vcmFkZW9uL3I2MDAuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3I2MDAuYwpAQCAt
MjMyNCw3ICsyMzI0LDcgQEAgaW50IHI2MDBfaW5pdChzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRl
dikKIAogCXJkZXYtPmFjY2VsX3dvcmtpbmcgPSB0cnVlOwogCXIgPSByNjAwX3N0YXJ0dXAocmRl
dik7Ci0JaWYgKHIpIHsKKwlpZiAociB8fCAocmFkZW9uX2FjY2VsID09IDApKSB7CiAJCWRldl9l
cnIocmRldi0+ZGV2LCAiZGlzYWJsaW5nIEdQVSBhY2NlbGVyYXRpb25cbiIpOwogCQlyNjAwX2Nw
X2ZpbmkocmRldik7CiAJCXI2MDBfd2JfZmluaShyZGV2KTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMv
Z3B1L2RybS9yYWRlb24vcmFkZW9uLmggYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbi5o
CmluZGV4IGQyODQyNzAuLmZjMDU3NGMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yYWRl
b24vcmFkZW9uLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb24uaApAQCAtOTMs
NiArOTMsNyBAQCBleHRlcm4gaW50IHJhZGVvbl9keW5wbTsKIGV4dGVybiBpbnQgcmFkZW9uX2F1
ZGlvOwogZXh0ZXJuIGludCByYWRlb25fZGlzcF9wcmlvcml0eTsKIGV4dGVybiBpbnQgcmFkZW9u
X2h3X2kyYzsKK2V4dGVybiBpbnQgcmFkZW9uX2FjY2VsOwogCiAvKgogICogQ29weSBmcm9tIHJh
ZGVvbl9kcnYuaCBzbyB3ZSBkb24ndCBoYXZlIHRvIGluY2x1ZGUgYm90aCBhbmQgaGF2ZSBjb25m
bGljdGluZwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fZHJ2LmMg
Yi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9kcnYuYwppbmRleCA0YjA1NTYzLi5jZmU1
Y2Q4IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9kcnYuYworKysg
Yi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9kcnYuYwpAQCAtOTUsNiArOTUsNyBAQCBp
bnQgcmFkZW9uX2R5bnBtID0gLTE7CiBpbnQgcmFkZW9uX2F1ZGlvID0gMTsKIGludCByYWRlb25f
ZGlzcF9wcmlvcml0eSA9IDA7CiBpbnQgcmFkZW9uX2h3X2kyYyA9IDA7CitpbnQgcmFkZW9uX2Fj
Y2VsID0gMTsKIAogTU9EVUxFX1BBUk1fREVTQyhub193YiwgIkRpc2FibGUgQUdQIHdyaXRlYmFj
ayBmb3Igc2NyYXRjaCByZWdpc3RlcnMiKTsKIG1vZHVsZV9wYXJhbV9uYW1lZChub193YiwgcmFk
ZW9uX25vX3diLCBpbnQsIDA0NDQpOwpAQCAtMTQ0LDYgKzE0NSw5IEBAIG1vZHVsZV9wYXJhbV9u
YW1lZChkaXNwX3ByaW9yaXR5LCByYWRlb25fZGlzcF9wcmlvcml0eSwgaW50LCAwNDQ0KTsKIE1P
RFVMRV9QQVJNX0RFU0MoaHdfaTJjLCAiaHcgaTJjIGVuZ2luZSBlbmFibGUgKDAgPSBkaXNhYmxl
KSIpOwogbW9kdWxlX3BhcmFtX25hbWVkKGh3X2kyYywgcmFkZW9uX2h3X2kyYywgaW50LCAwNDQ0
KTsKIAorTU9EVUxFX1BBUk1fREVTQyhhY2NlbCwgImFjY2VsZXJhdGlvbiAoMCA9IGRpc2FibGUp
Iik7Cittb2R1bGVfcGFyYW1fbmFtZWQoYWNjZWwsIHJhZGVvbl9hY2NlbCwgaW50LCAwNDQ0KTsK
Kwogc3RhdGljIGludCByYWRlb25fc3VzcGVuZChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBwbV9t
ZXNzYWdlX3Qgc3RhdGUpCiB7CiAJZHJtX3JhZGVvbl9wcml2YXRlX3QgKmRldl9wcml2ID0gZGV2
LT5kZXZfcHJpdmF0ZTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcnM0MDAu
YyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcnM0MDAuYwppbmRleCBkYzc2ZmU3Li5lMzZmMTkz
IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JzNDAwLmMKKysrIGIvZHJpdmVy
cy9ncHUvZHJtL3JhZGVvbi9yczQwMC5jCkBAIC01MjgsNyArNTI4LDcgQEAgaW50IHJzNDAwX2lu
aXQoc3RydWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYpCiAJcjMwMF9zZXRfcmVnX3NhZmUocmRldik7
CiAJcmRldi0+YWNjZWxfd29ya2luZyA9IHRydWU7CiAJciA9IHJzNDAwX3N0YXJ0dXAocmRldik7
Ci0JaWYgKHIpIHsKKwlpZiAociB8fCAocmFkZW9uX2FjY2VsID09IDApKSB7CiAJCS8qIFNvbWV0
aGluZ3Mgd2FudCB3cm9udCB3aXRoIHRoZSBhY2NlbCBpbml0IHN0b3AgYWNjZWwgKi8KIAkJZGV2
X2VycihyZGV2LT5kZXYsICJEaXNhYmxpbmcgR1BVIGFjY2VsZXJhdGlvblxuIik7CiAJCXIxMDBf
Y3BfZmluaShyZGV2KTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcnM2MDAu
YyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcnM2MDAuYwppbmRleCBiMzEyYjcyLi5mYmRjNmJl
IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JzNjAwLmMKKysrIGIvZHJpdmVy
cy9ncHUvZHJtL3JhZGVvbi9yczYwMC5jCkBAIC03ODksNyArNzg5LDcgQEAgaW50IHJzNjAwX2lu
aXQoc3RydWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYpCiAJcnM2MDBfc2V0X3NhZmVfcmVnaXN0ZXJz
KHJkZXYpOwogCXJkZXYtPmFjY2VsX3dvcmtpbmcgPSB0cnVlOwogCXIgPSByczYwMF9zdGFydHVw
KHJkZXYpOwotCWlmIChyKSB7CisJaWYgKHIgfHwgKHJhZGVvbl9hY2NlbCA9PSAwKSkgewogCQkv
KiBTb21ldGhpbmdzIHdhbnQgd3JvbnQgd2l0aCB0aGUgYWNjZWwgaW5pdCBzdG9wIGFjY2VsICov
CiAJCWRldl9lcnIocmRldi0+ZGV2LCAiRGlzYWJsaW5nIEdQVSBhY2NlbGVyYXRpb25cbiIpOwog
CQlyMTAwX2NwX2ZpbmkocmRldik7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9u
L3JzNjkwLmMgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JzNjkwLmMKaW5kZXggNTZhMGFlYy4u
MWEzODY5OSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yczY5MC5jCisrKyBi
L2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcnM2OTAuYwpAQCAtNzQ5LDcgKzc0OSw3IEBAIGludCBy
czY5MF9pbml0KHN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2KQogCXJzNjAwX3NldF9zYWZlX3Jl
Z2lzdGVycyhyZGV2KTsKIAlyZGV2LT5hY2NlbF93b3JraW5nID0gdHJ1ZTsKIAlyID0gcnM2OTBf
c3RhcnR1cChyZGV2KTsKLQlpZiAocikgeworCWlmIChyIHx8IChyYWRlb25fYWNjZWwgPT0gMCkp
IHsKIAkJLyogU29tZXRoaW5ncyB3YW50IHdyb250IHdpdGggdGhlIGFjY2VsIGluaXQgc3RvcCBh
Y2NlbCAqLwogCQlkZXZfZXJyKHJkZXYtPmRldiwgIkRpc2FibGluZyBHUFUgYWNjZWxlcmF0aW9u
XG4iKTsKIAkJcjEwMF9jcF9maW5pKHJkZXYpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt
L3JhZGVvbi9ydjUxNS5jIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9ydjUxNS5jCmluZGV4IGM1
MTM0NzMuLjEwNGUyODUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcnY1MTUu
YworKysgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3J2NTE1LmMKQEAgLTUyMyw3ICs1MjMsNyBA
QCBpbnQgcnY1MTVfaW5pdChzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldikKIAlydjUxNV9zZXRf
c2FmZV9yZWdpc3RlcnMocmRldik7CiAJcmRldi0+YWNjZWxfd29ya2luZyA9IHRydWU7CiAJciA9
IHJ2NTE1X3N0YXJ0dXAocmRldik7Ci0JaWYgKHIpIHsKKwlpZiAociB8fCAocmFkZW9uX2FjY2Vs
ID09IDApKSB7CiAJCS8qIFNvbWV0aGluZ3Mgd2FudCB3cm9udCB3aXRoIHRoZSBhY2NlbCBpbml0
IHN0b3AgYWNjZWwgKi8KIAkJZGV2X2VycihyZGV2LT5kZXYsICJEaXNhYmxpbmcgR1BVIGFjY2Vs
ZXJhdGlvblxuIik7CiAJCXIxMDBfY3BfZmluaShyZGV2KTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMv
Z3B1L2RybS9yYWRlb24vcnY3NzAuYyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcnY3NzAuYwpp
bmRleCBhNzQ2ODNlLi43NzlhODllIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9u
L3J2NzcwLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9ydjc3MC5jCkBAIC0xMTIzLDcg
KzExMjMsNyBAQCBpbnQgcnY3NzBfaW5pdChzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldikKIAog
CXJkZXYtPmFjY2VsX3dvcmtpbmcgPSB0cnVlOwogCXIgPSBydjc3MF9zdGFydHVwKHJkZXYpOwot
CWlmIChyKSB7CisJaWYgKHIgfHwgKHJhZGVvbl9hY2NlbCA9PSAwKSkgewogCQlkZXZfZXJyKHJk
ZXYtPmRldiwgImRpc2FibGluZyBHUFUgYWNjZWxlcmF0aW9uXG4iKTsKIAkJcjcwMF9jcF9maW5p
KHJkZXYpOwogCQlyNjAwX3diX2ZpbmkocmRldik7Ci0tIAoxLjUuNi4zCgo=
--001485f1d90e2acc450484ee027e--


More information about the dri-devel mailing list