Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 22 Nov 2011 15:47:41 +0000
From:      Nima Misaghian <nmisaghian@sandvine.com>
To:        Pegasus Mc Cleaft <ken@mthelicon.com>, "freebsd-current@freebsd.org" <freebsd-current@freebsd.org>
Cc:        "andre@albsmeier.net" <andre@albsmeier.net>
Subject:   RE: Adding disk firmware programming capability to camcontrol
Message-ID:  <0A3573FC36A1BE41AAA3DFF287C7968453400CEB@wtl-exch-1.sandvine.com>
In-Reply-To: <201111201454.49863.ken@mthelicon.com>
References:  <20111028200227.GA50663@sandvine.com> <201111201454.49863.ken@mthelicon.com>

next in thread | previous in thread | raw e-mail | index | archive | help
--_002_0A3573FC36A1BE41AAA3DFF287C7968453400CEBwtlexch1sandvin_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

Hi,

Sorry for the late reply. As I mentioned in the man page, the fwdownload co=
mmand currently only supports SCSI disks.

"fwdownload: Program firmware of the named <<SCSI>> device using the image =
file provided."

We have added firmware download command to atacontrol at work, for which I =
have attached a patch against 8.2 to this email.

The format of the command is similar to the camcontrol counterpart:

atacontrol fwdownload <device_name> <path_to_image_file>

But ultimately we would like to add the support to program ATA/SATA disks t=
o camcontrol as well.


Nima Misaghian
nmisaghian@sandvine.com


> -----Original Message-----
> From: owner-freebsd-current@freebsd.org [mailto:owner-freebsd-
> current@freebsd.org] On Behalf Of Pegasus Mc Cleaft
> Sent: Sunday, November 20, 2011 9:55 AM
> To: freebsd-current@freebsd.org
> Cc: andre@albsmeier.net; Nima Misaghian
> Subject: Re: Adding disk firmware programming capability to camcontrol
>=20
> Hi Nima,
>=20
> 	I have tried your latest patch against current, but I am having
> difficulty
> getting it to work. I was wondering, is this feature limited to SCSI
> drives?
> I have been trying it against my SATA drives but it looks like it is
> failing
> on issuing a TUR.
>=20
> IE:
>=20
> feathers# camcontrol fwdownload ada5 -f JP0NB3MA.BD -s -v
> Running in simulation mode
> camcontrol: Device is not ready
> (pass5:ahcich4:0:0:0): TEST UNIT READY. CDB: 0 0 0 0 0 0
> (pass5:ahcich4:0:0:0): CAM status: CCB request was invalid
> Firmware download failed
>=20
>=20
> I have tried issuing a TUR to all my drives to see if it was controller
> or
> drive specific, but all of them return the same error (The drives are
> Seagate,
> Hitachi and WD).
>=20
> What am I doing wrong?
>=20
> Ta
> Peg
> _______________________________________________
> freebsd-current@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-
> unsubscribe@freebsd.org"

--_002_0A3573FC36A1BE41AAA3DFF287C7968453400CEBwtlexch1sandvin_
Content-Type: application/octet-stream; name="atacontrol.diff"
Content-Description: atacontrol.diff
Content-Disposition: attachment; filename="atacontrol.diff"; size=5495;
	creation-date="Tue, 22 Nov 2011 15:40:04 GMT";
	modification-date="Tue, 22 Nov 2011 15:40:04 GMT"
Content-Transfer-Encoding: base64

LS0tIC9ob21lL25taXNhZ2hpYW4vYXRhX3BhdGNoL2F0YWNvbnRyb2wub2xkCTIwMTEtMTEtMjIg
MTA6Mzg6NDQuOTAwMzA3NzAwIC0wNTAwCisrKyAvaG9tZS9ubWlzYWdoaWFuL2F0YV9wYXRjaC9h
dGFjb250cm9sLm5ldwkyMDExLTExLTIyIDEwOjM5OjEzLjA5MTgxOTkwMCAtMDUwMApAQCAtMSw0
ICsxLDUgQEAKIC8qLQorICogQ29weXJpZ2h0IChjKSAyMDExIFNhbmR2aW5lIEluY29ycG9yYXRl
ZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqIENvcHlyaWdodCAoYykgMjAwMCAtIDIwMDYgU/hy
ZW4gU2NobWlkdCA8c29zQEZyZWVCU0Qub3JnPgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAq
CkBAIC0yNywxMSArMjgsMTMgQEAKICAqLwogCiAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisjaW5j
bHVkZSA8c3lzL3N0YXQuaD4KICNpbmNsdWRlIDxzeXMvYXRhLmg+CiAKICNpbmNsdWRlIDxlcnIu
aD4KICNpbmNsdWRlIDxlcnJuby5oPgogI2luY2x1ZGUgPGZjbnRsLmg+CisjaW5jbHVkZSA8aW50
dHlwZXMuaD4KICNpbmNsdWRlIDxzdGRpbnQuaD4KICNpbmNsdWRlIDxzdGRpby5oPgogI2luY2x1
ZGUgPHN0ZGxpYi5oPgpAQCAtMzksNiArNDIsOSBAQAogI2luY2x1ZGUgPHN5c2V4aXRzLmg+CiAj
aW5jbHVkZSA8dW5pc3RkLmg+CiAKKyNkZWZpbmUJTUFYX0ZXX0lNQUdFX1NJWkUJKDB4RkZGRiAq
IDUxMikKKyNkZWZpbmUJRE9XTkxPQURfRldfVElNRU9VVAkyMAkvKiAyMCBzZWNvbmRzICovCisK
IHN0YXRpYyBjb25zdCBjaGFyICoKIG1vZGUyc3RyKGludCBtb2RlKQogewpAQCAtMTI1LDYgKzEz
MSw3IEBACiAJCSIgICAgICAgIGF0YWNvbnRyb2wgbW9kZSBkZXZpY2UgW21vZGVdXG4iCiAJCSIg
ICAgICAgIGF0YWNvbnRyb2wgY2FwIGRldmljZVxuIgogCQkiICAgICAgICBhdGFjb250cm9sIHNw
aW5kb3duIGRldmljZSBbc2Vjb25kc11cbiIKKwkJIiAgICAgICAgYXRhY29udHJvbCBmd2Rvd25s
b2FkIGRldmljZSBmd19pbWFnZV9wYXRoXG4iCiAJKTsKIAlleGl0KEVYX1VTQUdFKTsKIH0KQEAg
LTI4MCw2ICsyODcsMTQyIEBACiAJY2FwX3ByaW50KCZwYXJhbXMpOwogfQogCitzdGF0aWMgaW50
CithdGFfZndfZG93bmxvYWQoaW50IGZkLCBjb25zdCBjaGFyICpmd19pbWdfcGF0aCkKK3sKKwlz
dHJ1Y3QgYXRhX2lvY19yZXF1ZXN0IGlvY19yZXF1ZXN0OworCXN0cnVjdCBhdGFfcGFyYW1zIHBh
cmFtczsKKwlzdHJ1Y3Qgc3RhdCBzdGJ1ZjsKKwljYWRkcl90IGJ1ZjsKKwlvZmZfdCBpbWdfc2l6
ZTsKKwlvZmZfdCBvZmZzZXQ7CisJaW50IGZ3X2ZkOworCWludCB0cmFuc2Zlcl9tb2RlOworCWlu
dCB0cmFuc2Zlcl9ieXRlczsKKwlpbnQgdHJhbnNmZXJfYmxvY2tzOworCWludCBtaW5fdHJhbnNm
ZXJfYmxvY2tzOworCisJaWYgKGlvY3RsKGZkLCBJT0NBVEFHUEFSTSwgJnBhcmFtcykgPCAwKSB7
CisJCXdhcm4oIkNvdW5kIG5vdCBnZXQgQVRBIGlkZW50aWZ5IGRhdGEiKTsKKwkJcmV0dXJuICgx
KTsKKwl9CisJaWYgKCEoKHBhcmFtcy5zdXBwb3J0LmNvbW1hbmQyICYgQVRBX1NVUFBPUlRfTUlD
Uk9DT0RFKSAmJgorCSAgICAocGFyYW1zLmVuYWJsZWQuY29tbWFuZDIgJiBBVEFfU1VQUE9SVF9N
SUNST0NPREUpKSkgeworCQl3YXJueCgiRmlybXdhcmUgZG93bmxvYWQgbm90IHN1cHBvcnRlZCBi
eSBkZXZpY2UiKTsKKwkJcmV0dXJuICgxKTsKKwl9CisJaWYgKChmd19mZCA9IG9wZW4oZndfaW1n
X3BhdGgsIE9fUkRPTkxZKSkgPCAwKSB7CisJCXdhcm4oIkNvdWxkIG5vdCBvcGVuICVzIiwgZndf
aW1nX3BhdGgpOworCQlyZXR1cm4gKDEpOworCX0KKwlpZiAoZnN0YXQoZndfZmQsICZzdGJ1Zikg
PCAwKSB7CisJCXdhcm4oIkNvdWxkIG5vdCBzdGF0ICVzIiwgZndfaW1nX3BhdGgpOworCQlnb3Rv
IGJhaWxvdXQ7CisJfQorCWltZ19zaXplID0gc3RidWYuc3Rfc2l6ZTsKKwlpZiAoaW1nX3NpemUg
PT0gMCkgeworCQl3YXJueCgiRmlsZSAoJXMpIGhhcyB6ZXJvIHNpemUiLCBmd19pbWdfcGF0aCk7
CisJCWdvdG8gYmFpbG91dDsKKwl9CisJaWYgKGltZ19zaXplID4gTUFYX0ZXX0lNQUdFX1NJWkUp
IHsKKwkJd2FybngoIkltYWdlIGZpbGUgKCVzKSBpcyB0b28gbGFyZ2UgKG1heCA9ICVkKSIsIGZ3
X2ltZ19wYXRoLAorCQkgICAgTUFYX0ZXX0lNQUdFX1NJWkUpOworCQlnb3RvIGJhaWxvdXQ7CisJ
fQorCWlmIChpbWdfc2l6ZSAlIDUxMiAhPSAwKSB7CisJCXdhcm54KCJTaXplIG9mICVzIGlzIG5v
dCBhIG11bHRpcGxlIG9mIDUxMiIsIGZ3X2ltZ19wYXRoKTsKKwkJZ290byBiYWlsb3V0OworCX0K
KwlpZiAoKGJ1ZiA9IG1hbGxvYyhpbWdfc2l6ZSkpID09IE5VTEwpIHsKKwkJd2FybngoIkNvdWxk
IG5vdCBhbGxvY2F0ZSBidWZmZXIgdG8gcmVhZCAlcyIsCisJCSAgICBmd19pbWdfcGF0aCk7CisJ
CWdvdG8gYmFpbG91dDsKKwl9CisJLyogUmVhZCBpbWFnZSBpbnRvIGEgYnVmZmVyLiAqLworCWlm
IChyZWFkKGZ3X2ZkLCBidWYsIGltZ19zaXplKSAhPSBpbWdfc2l6ZSkgeworCQl3YXJuKCJDb3Vs
ZCBub3QgcmVhZCBpbWFnZSBmaWxlICVzIiwgZndfaW1nX3BhdGgpOworCQlnb3RvIGJhaWxvdXQx
OworCX0KKwkvKiBEZXRlcm1pbmUgZG93bmxvYWQgdHJhbnNmZXIgbW9kZS4gKi8KKwlpZiAoKChw
YXJhbXMuc3VwcG9ydDIgJiBBVEFfU1VQUE9SVF9NSUNST0NPREUzKSAhPSAwKSAmJgorCSAgICAo
KHBhcmFtcy5lbmFibGVkMiAmIEFUQV9TVVBQT1JUX01JQ1JPQ09ERTMpICE9IDApKSB7CisJCXRy
YW5zZmVyX21vZGUgPSAzOworCQltaW5fdHJhbnNmZXJfYmxvY2tzID0gcGFyYW1zLnJlc2VydmVk
MjI0WzIzNCAtIDIyNF07CisJCWlmICgobWluX3RyYW5zZmVyX2Jsb2NrcyA9PSAwKSB8fAorCQkg
ICAgKG1pbl90cmFuc2Zlcl9ibG9ja3MgPT0gMHhmZmZmKSkKKwkJCW1pbl90cmFuc2Zlcl9ibG9j
a3MgPSAxOworCQkvKiBBbHdheXMgY2hvb3NlIG1pbmltdW0gdHJhbnNmZXIgc2l6ZSBmb3IgbW9k
ZSAzLiAqLworCQl0cmFuc2Zlcl9ibG9ja3MgPSBtaW5fdHJhbnNmZXJfYmxvY2tzOworCX0gZWxz
ZSB7CisJCXRyYW5zZmVyX21vZGUgPSA3OworCQl0cmFuc2Zlcl9ibG9ja3MgPSBpbWdfc2l6ZSAv
IDUxMjsKKwl9CisJdHJhbnNmZXJfYnl0ZXMgPSB0cmFuc2Zlcl9ibG9ja3MgKiA1MTI7CisJaW9j
X3JlcXVlc3QuZmxhZ3MgfD0gQVRBX0NNRF9XUklURTsKKwlpb2NfcmVxdWVzdC51LmF0YS5jb21t
YW5kID0gMHg5MjsgLyogRE9XTkxPQUQgTUlDUk9DT0RFICovCisJaW9jX3JlcXVlc3QudS5hdGEu
ZmVhdHVyZSA9IHRyYW5zZmVyX21vZGU7CisJaW9jX3JlcXVlc3QuY291bnQgPSB0cmFuc2Zlcl9i
eXRlczsKKwlpb2NfcmVxdWVzdC5kYXRhID0gYnVmOworCWlvY19yZXF1ZXN0LnRpbWVvdXQgPSBE
T1dOTE9BRF9GV19USU1FT1VUOworCWlvY19yZXF1ZXN0LnUuYXRhLmNvdW50ID0gdHJhbnNmZXJf
YmxvY2tzICYgMHhmZjsKKwkvKiBEb3dubG9hZCB0aGUgZmlybXdhcmUgaW1hZ2UgaW50byB0aGUg
ZGV2aWNlLiAqLworCWZwcmludGYoc3Rkb3V0LCAiRG93bmxvYWRpbmcgaW1hZ2UgJXMgIHNpemUo
Ynl0ZXMpPSAiCisJICAgICIlIlBSSWQ2NCIgdHJhbnNmZXJfbW9kZT0gJWQgYmxvY2tfc2l6ZShi
eXRlcyk9ICVkXG4iLAorCSAgICBmd19pbWdfcGF0aCwgaW1nX3NpemUsIHRyYW5zZmVyX21vZGUs
IHRyYW5zZmVyX2J5dGVzKTsKKwlmb3IgKG9mZnNldCA9IDA7IG9mZnNldCA8IGltZ19zaXplOyBv
ZmZzZXQgKz0gdHJhbnNmZXJfYnl0ZXMpIHsKKwkJaW9jX3JlcXVlc3QudS5hdGEubGJhID0gKChv
ZmZzZXQgLyA1MTIpIDw8IDgpIHwKKwkJICAgICgodHJhbnNmZXJfYmxvY2tzID4+IDgpICYgMHhm
Zik7CisJCWlmIChpb2N0bChmZCwgSU9DQVRBUkVRVUVTVCwgJmlvY19yZXF1ZXN0KSA8IDApIHsK
KwkJCXdhcm4oImlvY3RsKElPQ0FUQVJFUVVFU1QpIGZhaWxlZCIpOworCQkJZ290byBiYWlsb3V0
MTsKKwkJfQorCQlpZiAodHJhbnNmZXJfbW9kZSA9PSAzKSB7CisJCQlzd2l0Y2ggKGlvY19yZXF1
ZXN0LmVycm9yKSB7CisJCQljYXNlIDA6CS8qIE5vIGVycm9yICovCisJCQkJYnJlYWs7CisJCQlj
YXNlIDE6CS8qIERyaXZlIG5lZWRzIG1vcmUgc2VnbWVudHMuICovCisJCQkJaWYgKG9mZnNldCAr
IHRyYW5zZmVyX2J5dGVzID49IGltZ19zaXplKSAKKwkJCQkJd2FybngoIkRyaXZlIGluZGljYXRl
cyBpdCBuZWVkcyBtb3JlIgorCQkJCQkgICAgIiBzZWdtZW50cyBhZnRlciBkb3dubG9hZCB3YXMi
CisJCQkJCSAgICAiIGNvbXBsZXRlIik7CisJCQkJYnJlYWs7CisJCQljYXNlIDI6IC8qIERyaXZl
IGhhcyBoYWQgZW5vdWdoIG9mIGl0ISAqLworCQkJCWlmIChvZmZzZXQgKyB0cmFuc2Zlcl9ieXRl
cyA8IGltZ19zaXplKSB7CisJCQkJCXdhcm54KCJGaXJtd2FyZSB0cmFuc2ZlciBhYm9ydGVkIGF0
ICUiUFJJZDY0IiIsCisJCQkJCSAgICBvZmZzZXQgKyB0cmFuc2Zlcl9ieXRlcyk7CisJCQkJCWdv
dG8gYmFpbG91dDE7CisJCQkJfQorCQkJCWJyZWFrOworCQkJZGVmYXVsdDoKKwkJCQl3YXJueCgi
RE9XTkxPQURfTUlDUk9DT0RFIHJldHVybmVkIGVycm9yIgorCQkJCSAgICAiIHZhbHVlICVkIiwg
aW9jX3JlcXVlc3QuZXJyb3IpOworCQkJCWdvdG8gYmFpbG91dDE7CisJCQl9CisJCX0KKwkJaW9j
X3JlcXVlc3QuZGF0YSArPSB0cmFuc2Zlcl9ieXRlczsKKwl9CisJaWYgKGlvY19yZXF1ZXN0LmVy
cm9yID09IDIgfHwgaW9jX3JlcXVlc3QuZXJyb3IgPT0gMCkgeworCQlmcHJpbnRmKHN0ZG91dCwg
IkZpcm13YXJlIGRvd25sb2FkIHN1Y2Nlc3NmdWwuXG4iKTsKKwkJLyogCisJCSAqIENhbGwgR2V0
IFBhcmFtIHRvIHVwZGF0ZSBmaXJtd2FyZSByZXZpc2lvbgorCQkgKiBudW1iZXIgaW4gQVRBIGRy
aXZlciBjYWNoZQorCQkgKi8KKwkJaWYgKGlvY3RsKGZkLCBJT0NBVEFHUEFSTSwgJnBhcmFtcykg
PCAwKQorCQkJd2FybngoImlvY3RsKElPQ0FUQUdQQVJNKSBmYWlsZWQiKTsKKwl9IGVsc2Ugewor
CQl3YXJueCgiRmlybXdhcmUgZG93bmxvYWQgZmFpbGVkLiIpOworCQlnb3RvIGJhaWxvdXQxOwor
CX0KKwlmcmVlKGJ1Zik7CisJY2xvc2UoZndfZmQpOworCXJldHVybiAoMCk7CitiYWlsb3V0MToK
KwlmcmVlKGJ1Zik7CitiYWlsb3V0OgorCWNsb3NlKGZ3X2ZkKTsKKyAgICAgICAgcmV0dXJuICgx
KTsKK30KKwogc3RhdGljIHZvaWQKIGluZm9fcHJpbnQoaW50IGZkLCBpbnQgY2hhbm5lbCwgaW50
IHByY2hhbikKIHsKQEAgLTQxMCw2ICs1NTMsMTQgQEAKIAkJZXhpdChFWF9PSyk7CiAJfQogCisJ
aWYgKCFzdHJjbXAoYXJndlsxXSwgImZ3ZG93bmxvYWQiKSAmJiBhcmdjID09IDQpIHsKKwkJaW50
IGVycm9yOworCisJCWZkID0gb3Blbl9kZXYoYXJndlsyXSwgT19SRE9OTFkpOworCQllcnJvciA9
IGF0YV9md19kb3dubG9hZChmZCwgYXJndlszXSk7CisJCWV4aXQoZXJyb3IpOworCX0KKwogCWlm
ICgoZmQgPSBvcGVuKCIvZGV2L2F0YSIsIE9fUkRXUikpIDwgMCkKIAkJZXJyKDEsICJjb250cm9s
IGRldmljZSBub3QgZm91bmQiKTsKIAo=

--_002_0A3573FC36A1BE41AAA3DFF287C7968453400CEBwtlexch1sandvin_--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?0A3573FC36A1BE41AAA3DFF287C7968453400CEB>