From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lukasz Kosewski Subject: [PATCH 2.6.14-rc1 1/3] Add disk hotswap support to libata RESEND #3 Date: Thu, 15 Sep 2005 01:06:11 -0400 Message-ID: <355e5e5e05091422061a3a9f28@mail.gmail.com> Reply-To: lkosewsk@gmail.com Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_5264_29713980.1126760771300" Return-path: Received: from zproxy.gmail.com ([64.233.162.196]:53827 "EHLO zproxy.gmail.com") by vger.kernel.org with ESMTP id S1030360AbVIOFGN (ORCPT ); Thu, 15 Sep 2005 01:06:13 -0400 Received: by zproxy.gmail.com with SMTP id i11so197550nzi for ; Wed, 14 Sep 2005 22:06:12 -0700 (PDT) Sender: linux-ide-owner@vger.kernel.org List-Id: linux-ide@vger.kernel.org To: Jeff Garzik Cc: linux-kernel@vger.kernel.org, linux-ide@vger.kernel.org, linux-scsi@vger.kernel.org ------=_Part_5264_29713980.1126760771300 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Patch 1/3 for libata hotswapping. Properly masks out interrupts for Promise SATAII150 Tx2Plus/Tx4 controllers. More comments in patch header. Luke Kosewski ------=_Part_5264_29713980.1126760771300 Content-Type: text/x-patch; name="01-promise_sataII150_support-2.6.14-rc1.diff" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="01-promise_sataII150_support-2.6.14-rc1.diff" MTUuMDkuMDUgICAgTHVrZSBLb3Nld3NraSAgIDxsa29zZXdza0BuaXQuY2E+CgoJKiBBIHBhdGNo IHRvIHRoZSBzYXRhX3Byb21pc2UgZHJpdmVyIGluIGxpYmF0YSBmb3IgaXQgdG8gY29ycmVjdGx5 IG1hc2sKCSAgb3V0IGhvdHBsdWcgaW50ZXJydXB0cyBvbiBTQVRBSUkxNTAgVHg0L1R4MiBQbHVz IGNvbnRyb2xsZXJzLgoJKiBUaGlzIGlzIHJlc2VuZCAjMy4gIEl0IG5vIGxvbmdlciBhcHBsaWVz IHRvIGEgLW1tIHRyZWUsIGJ1dCB0bwoJICAyLjYuMTQtcmMxLiAgVGhlcmVmb3JlLCB0aGUgZW50 cnkgZm9yIGJvYXJkXzIwNTd4IG5vIGxvbmdlciBoYXMKCSAgQVRBX0ZMQUdfU0FUQSBjb21tZW50 ZWQgb3V0LgoKZGlmZiAtcnB1TiBsaW51eC0yLjYuMTQtcmMxL2RyaXZlcnMvc2NzaS9zYXRhX3By b21pc2UuYyBsaW51eC0yLjYuMTQtcmMxLW5ldy9kcml2ZXJzL3Njc2kvc2F0YV9wcm9taXNlLmMK LS0tIGxpbnV4LTIuNi4xNC1yYzEvZHJpdmVycy9zY3NpL3NhdGFfcHJvbWlzZS5jCTIwMDUtMDkt MTIgMjM6MTI6MDkuMDAwMDAwMDAwIC0wNDAwCisrKyBsaW51eC0yLjYuMTQtcmMxLW5ldy9kcml2 ZXJzL3Njc2kvc2F0YV9wcm9taXNlLmMJMjAwNS0wOS0xNCAxNDoxMTo0OS4wMDAwMDAwMDAgLTA0 MDAKQEAgLTU3LDYgKzU3LDcgQEAgZW51bSB7CiAJUERDX0dMT0JBTF9DVEwJCT0gMHg0OCwgLyog R2xvYmFsIGNvbnRyb2wvc3RhdHVzIChwZXIgcG9ydCkgKi8KIAlQRENfQ1RMU1RBVAkJPSAweDYw LAkvKiBJREUgY29udHJvbCBhbmQgc3RhdHVzIChwZXIgcG9ydCkgKi8KIAlQRENfU0FUQV9QTFVH X0NTUgk9IDB4NkMsIC8qIFNBVEEgUGx1ZyBjb250cm9sL3N0YXR1cyByZWcgKi8KKwlQREMyX1NB VEFfUExVR19DU1IJPSAwWDYwLCAvKiBTQVRBSUkgUGx1ZyBjb250cm9sL3N0YXR1cyByZWcgKi8K IAlQRENfU0xFV19DVEwJCT0gMHg0NzAsIC8qIHNsZXcgcmF0ZSBjb250cm9sIHJlZyAqLwogCiAJ UERDX0VSUl9NQVNLCQk9ICgxPDwxOSkgfCAoMTw8MjApIHwgKDE8PDIxKSB8ICgxPDwyMikgfApA QCAtNjUsOCArNjYsMTAgQEAgZW51bSB7CiAJYm9hcmRfMjAzN3gJCT0gMCwJLyogRmFzdFRyYWsg UzE1MCBUWDJwbHVzICovCiAJYm9hcmRfMjAzMTkJCT0gMSwJLyogRmFzdFRyYWsgUzE1MCBUWDQg Ki8KIAlib2FyZF8yMDYxOQkJPSAyLAkvKiBGYXN0VHJhayBUWDQwMDAgKi8KKwlib2FyZF8yMDU3 eAkJPSAzLAkvKiBTQVRBSUkxNTAgVHgycGx1cyAqLworCWJvYXJkXzQwNTE4CQk9IDQsCS8qIFNB VEFJSTE1MCBUeDQgKi8KIAotCVBEQ19IQVNfUEFUQQkJPSAoMSA8PCAxKSwgLyogUERDMjAzNzUg aGFzIFBBVEEgKi8KKwlQRENfSEFTX1BBVEEJCT0gKDEgPDwgMSksIC8qIFBEQzIwMzc1LzIwNTc1 IGhhcyBQQVRBICovCiAKIAlQRENfUkVTRVQJCT0gKDEgPDwgMTEpLCAvKiBIRE1BIHJlc2V0ICov CiB9OwpAQCAtNzcsNiArODAsMTAgQEAgc3RydWN0IHBkY19wb3J0X3ByaXYgewogCWRtYV9hZGRy X3QJCXBrdF9kbWE7CiB9OwogCitzdHJ1Y3QgcGRjX2hvc3RfcHJpdiB7CisJaW50CQkJaG90cGx1 Z19vZmZzZXQ7Cit9OworCiBzdGF0aWMgdTMyIHBkY19zYXRhX3Njcl9yZWFkIChzdHJ1Y3QgYXRh X3BvcnQgKmFwLCB1bnNpZ25lZCBpbnQgc2NfcmVnKTsKIHN0YXRpYyB2b2lkIHBkY19zYXRhX3Nj cl93cml0ZSAoc3RydWN0IGF0YV9wb3J0ICphcCwgdW5zaWduZWQgaW50IHNjX3JlZywgdTMyIHZh bCk7CiBzdGF0aWMgaW50IHBkY19hdGFfaW5pdF9vbmUgKHN0cnVjdCBwY2lfZGV2ICpwZGV2LCBj b25zdCBzdHJ1Y3QgcGNpX2RldmljZV9pZCAqZW50KTsKQEAgLTE5MCw2ICsxOTcsMjggQEAgc3Rh dGljIHN0cnVjdCBhdGFfcG9ydF9pbmZvIHBkY19wb3J0X2luZgogCQkudWRtYV9tYXNrCT0gMHg3 ZiwgLyogdWRtYTAtNiA7IEZJWE1FICovCiAJCS5wb3J0X29wcwk9ICZwZGNfcGF0YV9vcHMsCiAJ fSwKKworCS8qIGJvYXJkXzIwNTd4ICovCisJeworCQkuc2h0CQk9ICZwZGNfYXRhX3NodCwKKwkJ Lmhvc3RfZmxhZ3MJPSBBVEFfRkxBR19TQVRBIHwgQVRBX0ZMQUdfTk9fTEVHQUNZIHwKKwkJCQkg IEFUQV9GTEFHX1NSU1QgfCBBVEFfRkxBR19NTUlPLAorCQkucGlvX21hc2sJPSAweDFmLCAvKiBw aW8wLTQgKi8KKwkJLm13ZG1hX21hc2sJPSAweDA3LCAvKiBtd2RtYTAtMiAqLworCQkudWRtYV9t YXNrCT0gMHg3ZiwgLyogdWRtYTAtNiA7IEZJWE1FICovCisJCS5wb3J0X29wcwk9ICZwZGNfc2F0 YV9vcHMsCisJfSwKKworCS8qIGJvYXJkXzQwNTE4ICovCisJeworCQkuc2h0CQk9ICZwZGNfYXRh X3NodCwKKwkJLmhvc3RfZmxhZ3MJPSBBVEFfRkxBR19TQVRBIHwgQVRBX0ZMQUdfTk9fTEVHQUNZ IHwKKwkJCQkgIEFUQV9GTEFHX1NSU1QgfCBBVEFfRkxBR19NTUlPLAorCQkucGlvX21hc2sJPSAw eDFmLCAvKiBwaW8wLTQgKi8KKwkJLm13ZG1hX21hc2sJPSAweDA3LCAvKiBtd2RtYTAtMiAqLwor CQkudWRtYV9tYXNrCT0gMHg3ZiwgLyogdWRtYTAtNiA7IEZJWE1FICovCisJCS5wb3J0X29wcwk9 ICZwZGNfc2F0YV9vcHMsCisJfSwKIH07CiAKIHN0YXRpYyBzdHJ1Y3QgcGNpX2RldmljZV9pZCBw ZGNfYXRhX3BjaV90YmxbXSA9IHsKQEAgLTIwNCw5ICsyMzMsOSBAQCBzdGF0aWMgc3RydWN0IHBj aV9kZXZpY2VfaWQgcGRjX2F0YV9wY2lfCiAJeyBQQ0lfVkVORE9SX0lEX1BST01JU0UsIDB4MzM3 NiwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCwgMCwgMCwKIAkgIGJvYXJkXzIwMzd4IH0sCiAJeyBQ Q0lfVkVORE9SX0lEX1BST01JU0UsIDB4MzU3NCwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCwgMCwg MCwKLQkgIGJvYXJkXzIwMzd4IH0sCisJICBib2FyZF8yMDU3eCB9LAogCXsgUENJX1ZFTkRPUl9J RF9QUk9NSVNFLCAweDNkNzUsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQsIDAsIDAsCi0JICBib2Fy ZF8yMDM3eCB9LAorCSAgYm9hcmRfMjA1N3ggfSwKIAogCXsgUENJX1ZFTkRPUl9JRF9QUk9NSVNF LCAweDMzMTgsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQsIDAsIDAsCiAJICBib2FyZF8yMDMxOSB9 LApAQCAtMjE3LDcgKzI0Niw3IEBAIHN0YXRpYyBzdHJ1Y3QgcGNpX2RldmljZV9pZCBwZGNfYXRh X3BjaV8KIAl7IFBDSV9WRU5ET1JfSURfUFJPTUlTRSwgMHgzZDE3LCBQQ0lfQU5ZX0lELCBQQ0lf QU5ZX0lELCAwLCAwLAogCSAgYm9hcmRfMjAzMTkgfSwKIAl7IFBDSV9WRU5ET1JfSURfUFJPTUlT RSwgMHgzZDE4LCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lELCAwLCAwLAotCSAgYm9hcmRfMjAzMTkg fSwKKwkgIGJvYXJkXzQwNTE4IH0sCiAKIAl7IFBDSV9WRU5ET1JfSURfUFJPTUlTRSwgMHg2NjI5 LCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lELCAwLCAwLAogCSAgYm9hcmRfMjA2MTkgfSwKQEAgLTQ3 OCwxNCArNTA3LDE1IEBAIHN0YXRpYyBpcnFyZXR1cm5fdCBwZGNfaW50ZXJydXB0IChpbnQgaXIK IAkJVlBSSU5USygiUVVJQ0sgRVhJVCAyXG4iKTsKIAkJcmV0dXJuIElSUV9OT05FOwogCX0KKwor CXNwaW5fbG9jaygmaG9zdF9zZXQtPmxvY2spOworCiAJbWFzayAmPSAweGZmZmY7CQkvKiBvbmx5 IDE2IHRhZ3MgcG9zc2libGUgKi8KIAlpZiAoIW1hc2spIHsKIAkJVlBSSU5USygiUVVJQ0sgRVhJ VCAzXG4iKTsKLQkJcmV0dXJuIElSUV9OT05FOworCQlnb3RvIGRvbmVfaXJxOwogCX0KIAotCXNw aW5fbG9jaygmaG9zdF9zZXQtPmxvY2spOwotCiAJd3JpdGVsKG1hc2ssIG1taW9fYmFzZSArIFBE Q19JTlRfU0VRTUFTSyk7CiAKIAlmb3IgKGkgPSAwOyBpIDwgaG9zdF9zZXQtPm5fcG9ydHM7IGkr KykgewpAQCAtNTAyLDEwICs1MzIsMTAgQEAgc3RhdGljIGlycXJldHVybl90IHBkY19pbnRlcnJ1 cHQgKGludCBpcgogCQl9CiAJfQogCi0gICAgICAgIHNwaW5fdW5sb2NrKCZob3N0X3NldC0+bG9j ayk7Ci0KIAlWUFJJTlRLKCJFWElUXG4iKTsKIAorZG9uZV9pcnE6CisJc3Bpbl91bmxvY2soJmhv c3Rfc2V0LT5sb2NrKTsKIAlyZXR1cm4gSVJRX1JFVFZBTChoYW5kbGVkKTsKIH0KIApAQCAtNTgz LDYgKzYxMyw4IEBAIHN0YXRpYyB2b2lkIHBkY19hdGFfc2V0dXBfcG9ydChzdHJ1Y3QgYXQKIHN0 YXRpYyB2b2lkIHBkY19ob3N0X2luaXQodW5zaWduZWQgaW50IGNoaXBfaWQsIHN0cnVjdCBhdGFf cHJvYmVfZW50ICpwZSkKIHsKIAl2b2lkIF9faW9tZW0gKm1taW8gPSBwZS0+bW1pb19iYXNlOwor CXN0cnVjdCBwZGNfaG9zdF9wcml2ICpocCA9IHBlLT5wcml2YXRlX2RhdGE7CisJaW50IGhvdHBs dWdfb2Zmc2V0ID0gaHAtPmhvdHBsdWdfb2Zmc2V0OwogCXUzMiB0bXA7CiAKIAkvKgpAQCAtNTk3 LDEyICs2MjksMTIgQEAgc3RhdGljIHZvaWQgcGRjX2hvc3RfaW5pdCh1bnNpZ25lZCBpbnQgYwog CXdyaXRlbCh0bXAsIG1taW8gKyBQRENfRkxBU0hfQ1RMKTsKIAogCS8qIGNsZWFyIHBsdWcvdW5w bHVnIGZsYWdzIGZvciBhbGwgcG9ydHMgKi8KLQl0bXAgPSByZWFkbChtbWlvICsgUERDX1NBVEFf UExVR19DU1IpOwotCXdyaXRlbCh0bXAgfCAweGZmLCBtbWlvICsgUERDX1NBVEFfUExVR19DU1Ip OworCXRtcCA9IHJlYWRsKG1taW8gKyBob3RwbHVnX29mZnNldCk7CisJd3JpdGVsKHRtcCB8IDB4 ZmYsIG1taW8gKyBob3RwbHVnX29mZnNldCk7CiAKIAkvKiBtYXNrIHBsdWcvdW5wbHVnIGludHMg Ki8KLQl0bXAgPSByZWFkbChtbWlvICsgUERDX1NBVEFfUExVR19DU1IpOwotCXdyaXRlbCh0bXAg fCAweGZmMDAwMCwgbW1pbyArIFBEQ19TQVRBX1BMVUdfQ1NSKTsKKwl0bXAgPSByZWFkbChtbWlv ICsgaG90cGx1Z19vZmZzZXQpOworCXdyaXRlbCh0bXAgfCAweGZmMDAwMCwgbW1pbyArIGhvdHBs dWdfb2Zmc2V0KTsKIAogCS8qIHJlZHVjZSBUQkcgY2xvY2sgdG8gMTMzIE1oei4gKi8KIAl0bXAg PSByZWFkbChtbWlvICsgUERDX1RCR19NT0RFKTsKQEAgLTYyNCw2ICs2NTYsNyBAQCBzdGF0aWMg aW50IHBkY19hdGFfaW5pdF9vbmUgKHN0cnVjdCBwY2lfCiB7CiAJc3RhdGljIGludCBwcmludGVk X3ZlcnNpb247CiAJc3RydWN0IGF0YV9wcm9iZV9lbnQgKnByb2JlX2VudCA9IE5VTEw7CisJc3Ry dWN0IHBkY19ob3N0X3ByaXYgKmhwOwogCXVuc2lnbmVkIGxvbmcgYmFzZTsKIAl2b2lkIF9faW9t ZW0gKm1taW9fYmFzZTsKIAl1bnNpZ25lZCBpbnQgYm9hcmRfaWR4ID0gKHVuc2lnbmVkIGludCkg ZW50LT5kcml2ZXJfZGF0YTsKQEAgLTY3MSw2ICs3MDQsMTggQEAgc3RhdGljIGludCBwZGNfYXRh X2luaXRfb25lIChzdHJ1Y3QgcGNpXwogCX0KIAliYXNlID0gKHVuc2lnbmVkIGxvbmcpIG1taW9f YmFzZTsKIAorCWhwID0ga21hbGxvYyhzaXplb2YoKmhwKSwgR0ZQX0tFUk5FTCk7CisJaWYgKGhw ID09IE5VTEwpCisJeworCQlyYyA9IC1FTk9NRU07CisJCWdvdG8gZXJyX291dF9mcmVlX2VudDsK Kwl9CisJbWVtc2V0KGhwLCAwLCBzaXplb2YoKmhwKSk7CisKKwkvKiBTZXQgZGVmYXVsdCBob3Rw bHVnIG9mZnNldCAqLworCWhwLT5ob3RwbHVnX29mZnNldCA9IFBEQ19TQVRBX1BMVUdfQ1NSOwor CXByb2JlX2VudC0+cHJpdmF0ZV9kYXRhID0gaHA7CisKIAlwcm9iZV9lbnQtPnNodAkJPSBwZGNf cG9ydF9pbmZvW2JvYXJkX2lkeF0uc2h0OwogCXByb2JlX2VudC0+aG9zdF9mbGFncwk9IHBkY19w b3J0X2luZm9bYm9hcmRfaWR4XS5ob3N0X2ZsYWdzOwogCXByb2JlX2VudC0+cGlvX21hc2sJPSBw ZGNfcG9ydF9pbmZvW2JvYXJkX2lkeF0ucGlvX21hc2s7CkBAIC02OTAsNiArNzM1LDkgQEAgc3Rh dGljIGludCBwZGNfYXRhX2luaXRfb25lIChzdHJ1Y3QgcGNpXwogCiAJLyogbm90aWNlIDQtcG9y dCBib2FyZHMgKi8KIAlzd2l0Y2ggKGJvYXJkX2lkeCkgeworCWNhc2UgYm9hcmRfNDA1MTg6CisJ CS8qIE92ZXJyaWRlIGhvdHBsdWcgb2Zmc2V0IGZvciBTQVRBSUkxNTAgKi8KKwkJaHAtPmhvdHBs dWdfb2Zmc2V0ID0gUERDMl9TQVRBX1BMVUdfQ1NSOwogCWNhc2UgYm9hcmRfMjAzMTk6CiAgICAg ICAgCQlwcm9iZV9lbnQtPm5fcG9ydHMgPSA0OwogCkBAIC02OTksNiArNzQ3LDkgQEAgc3RhdGlj IGludCBwZGNfYXRhX2luaXRfb25lIChzdHJ1Y3QgcGNpXwogCQlwcm9iZV9lbnQtPnBvcnRbMl0u c2NyX2FkZHIgPSBiYXNlICsgMHg2MDA7CiAJCXByb2JlX2VudC0+cG9ydFszXS5zY3JfYWRkciA9 IGJhc2UgKyAweDcwMDsKIAkJYnJlYWs7CisJY2FzZSBib2FyZF8yMDU3eDoKKwkJLyogT3ZlcnJp ZGUgaG90cGx1ZyBvZmZzZXQgZm9yIFNBVEFJSTE1MCAqLworCQlocC0+aG90cGx1Z19vZmZzZXQg PSBQREMyX1NBVEFfUExVR19DU1I7CiAJY2FzZSBib2FyZF8yMDM3eDoKICAgICAgICAJCXByb2Jl X2VudC0+bl9wb3J0cyA9IDI7CiAJCWJyZWFrOwo= ------=_Part_5264_29713980.1126760771300--