diff mbox

mmc-utils: Fix reported offset for enhanced user area start address

Message ID fbed5a25-65a0-47f1-e4b4-839149973441@vaisala.com (mailing list archive)
State New, archived
Headers show

Commit Message

Tomas Melin Aug. 25, 2016, 4:23 a.m. UTC
Block-addressed devices should have address multiplied with sector size.

Clarify with comment how is_blockaddressed() is calculated.

Signed-off-by: Tomas Melin<tomas.melin@vaisala.com>
---
  mmc_cmds.c | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)

-- 
2.1.4

Comments

Ulf Hansson Aug. 25, 2016, 7:05 a.m. UTC | #1
+ Chris

On 25 August 2016 at 06:23,  <tomas.melin@vaisala.com> wrote:
> Block-addressed devices should have address multiplied with sector size.
>
> Clarify with comment how is_blockaddressed() is calculated.
>
> Signed-off-by: Tomas Melin<tomas.melin@vaisala.com>

Chris Ball maintains mmc-utils, you need to send these changes to him.
I have added him on cc this time.

Kind regards
Uffe

> ---
>   mmc_cmds.c | 4 ++--
>   1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/mmc_cmds.c b/mmc_cmds.c
> index 295d505..21ddd55 100644
> --- a/mmc_cmds.c
> +++ b/mmc_cmds.c
> @@ -794,7 +794,7 @@ unsigned int get_sector_count(__u8 *ext_csd)
>   int is_blockaddresed(__u8 *ext_csd)
>   {
>       unsigned int sectors = get_sector_count(ext_csd);
> -
> +        /* over 2GiB devices are block-addressed */
>       return (sectors > (2u * 1024 * 1024 * 1024) / 512);
>   }
>
> @@ -1659,7 +1659,7 @@ int do_read_extcsd(int nargs, char **argv)
>           printf("Enhanced User Data Start Address"
>               " [ENH_START_ADDR]: 0x%06x\n", regl);
>           printf(" i.e. %lu bytes offset\n", (is_blockaddresed(ext_csd) ?
> -                1l : 512l) * regl);
> +                512l : 1l) * regl);
>
>           /* A441]: reserved [135] */
>           printf("Bad Block Management mode"
> --
> 2.1.4
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Tomas Melin Sept. 1, 2016, 5:56 a.m. UTC | #2
VGhhbmtzIGZvciBhcHBseWluZyB0aGUgcGF0Y2hlcywgaG93ZXZlciwgaXQgbG9va3MgYXMgY29t
bWl0IDc1MjA3MmRhZmU5Y2I4IGdvdCBtZXJnZWQgd3JvbmcgYW5kIGEgZmV3DQoNCmNoYW5nZXMg
d2VyZSBsZWZ0IG91dC4gVGhlIGJlbG93IHBhdGNoIHN0aWxsIG5lZWRzIHRvIGJlIGFwcGxpZWQu
DQoNClRvbWFzDQoNCi0tLQ0KDQpTdWJqZWN0OiBbUEFUQ0hdIEFkZCBtaXNzaW5nIC1jIGZvciB3
cml0ZV9yZWxpYWJpbGl0eQ0KDQpGaXhlcyB1cHN0cmVhbS1tZXJnZSBpbiA3NTIwNzJkYWZlOWNi
ODk1N2VmYjViMGNhNzA3MDQzZTE5ZjdjZTEzDQpXcml0ZV9yZWxpYWJpbGl0eSAtYyBhZGRpdGlv
biBmcm9tIHBhdGNoIHdhcyBtaXNzaW5nLg0KDQpTaWduZWQtb2ZmLWJ5OiBUb21hcyBNZWxpbiA8
dG9tYXMubWVsaW5AdmFpc2FsYS5jb20+DQotLS0NCiBtbWNfY21kcy5jIHwgNyArKysrKy0tDQog
MSBmaWxlIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkNCg0KZGlmZiAt
LWdpdCBhL21tY19jbWRzLmMgYi9tbWNfY21kcy5jDQppbmRleCAyNzkwZWFkLi42Yjg2MTE1IDEw
MDY0NA0KLS0tIGEvbW1jX2NtZHMuYw0KKysrIGIvbW1jX2NtZHMuYw0KQEAgLTEyMzQsMTEgKzEy
MzQsMTQgQEAgaW50IGRvX3dyaXRlX3JlbGlhYmlsaXR5X3NldChpbnQgbmFyZ3MsIGNoYXIgKiph
cmd2KQ0KICAgICBpbnQgcGFydGl0aW9uOw0KICAgICBjaGFyICpkZXZpY2U7DQogDQotICAgIENI
RUNLKG5hcmdzICE9IDQsICJVc2FnZTogbW1jIHdyaXRlX3JlbGlhYmlsaXR5IHNldCA8LXl8LW4+
ICINCisgICAgQ0hFQ0sobmFyZ3MgIT0gNCwgIlVzYWdlOiBtbWMgd3JpdGVfcmVsaWFiaWxpdHkg
c2V0IDwteXwtbnwtYz4gIg0KICAgICAgICAgICAgICI8cGFydGl0aW9uPiA8L3BhdGgvdG8vbW1j
YmxrWD5cbiIsIGV4aXQoMSkpOw0KIA0KLSAgICBpZiAoIXN0cmNtcCgiLXkiLCBhcmd2WzFdKSkN
CisgICAgaWYgKCFzdHJjbXAoIi15IiwgYXJndlsxXSkpIHsNCiAgICAgICAgIGRyeV9ydW4gPSAw
Ow0KKyAgICB9IGVsc2UgaWYgKCFzdHJjbXAoIi1jIiwgYXJndlsxXSkpIHsNCisgICAgICAgIGRy
eV9ydW4gPSAyOw0KKyAgICB9DQogDQogICAgIHBhcnRpdGlvbiA9IHN0cnRvbChhcmd2WzJdLCBO
VUxMLCAxMCk7DQogICAgIGRldmljZSA9IGFyZ3ZbM107DQotLSANCjIuMS40DQoNCi0tLQ0KDQpP
biAwOC8yOS8yMDE2IDA3OjA1IFBNLCBDaHJpcyBCYWxsIHdyb3RlOg0KPiBUaGFua3MgVWxmISBU
b21hcywgSSd2ZSBhcHBsaWVkIGFsbCBmaXZlIG9mIHlvdXIgcmVjZW50IHBhdGNoZXMgdG8gbW1j
LXV0aWxzIG1hc3RlciwgSSBoYWQgdG8gcmViYXNlIHRoZW0gc28gcGxlYXNlIGNoZWNrIHRoYXQg
dGhlIG1lcmdlIGxvb2tzIGdvb2QsIHRoYW5rcyENCj4NCj4gLSBDaHJpcy4NCj4NCj4gT24gVGh1
LCBBdWcgMjUsIDIwMTYgYXQgMzowNSBBTSwgVWxmIEhhbnNzb24gPHVsZi5oYW5zc29uQGxpbmFy
by5vcmcgPG1haWx0bzp1bGYuaGFuc3NvbkBsaW5hcm8ub3JnPj4gd3JvdGU6DQo+DQo+ICAgICAr
IENocmlzDQo+DQo+ICAgICBPbiAyNSBBdWd1c3QgMjAxNiBhdCAwNjoyMywgIDx0b21hcy5tZWxp
bkB2YWlzYWxhLmNvbSA8bWFpbHRvOnRvbWFzLm1lbGluQHZhaXNhbGEuY29tPj4gd3JvdGU6DQo+
ICAgICA+IEJsb2NrLWFkZHJlc3NlZCBkZXZpY2VzIHNob3VsZCBoYXZlIGFkZHJlc3MgbXVsdGlw
bGllZCB3aXRoIHNlY3RvciBzaXplLg0KPiAgICAgPg0KPiAgICAgPiBDbGFyaWZ5IHdpdGggY29t
bWVudCBob3cgaXNfYmxvY2thZGRyZXNzZWQoKSBpcyBjYWxjdWxhdGVkLg0KPiAgICAgPg0KPiAg
ICAgPiBTaWduZWQtb2ZmLWJ5OiBUb21hcyBNZWxpbjx0b21hcy5tZWxpbkB2YWlzYWxhLmNvbSA8
bWFpbHRvOnRvbWFzLm1lbGluQHZhaXNhbGEuY29tPj4NCj4NCj4gICAgIENocmlzIEJhbGwgbWFp
bnRhaW5zIG1tYy11dGlscywgeW91IG5lZWQgdG8gc2VuZCB0aGVzZSBjaGFuZ2VzIHRvIGhpbS4N
Cj4gICAgIEkgaGF2ZSBhZGRlZCBoaW0gb24gY2MgdGhpcyB0aW1lLg0KPg0KPiAgICAgS2luZCBy
ZWdhcmRzDQo+ICAgICBVZmZlDQo+DQo+ICAgICA+IC0tLQ0KPiAgICAgPiAgIG1tY19jbWRzLmMg
fCA0ICsrLS0NCj4gICAgID4gICAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRl
bGV0aW9ucygtKQ0KPiAgICAgPg0KPiAgICAgPiBkaWZmIC0tZ2l0IGEvbW1jX2NtZHMuYyBiL21t
Y19jbWRzLmMNCj4gICAgID4gaW5kZXggMjk1ZDUwNS4uMjFkZGQ1NSAxMDA2NDQNCj4gICAgID4g
LS0tIGEvbW1jX2NtZHMuYw0KPiAgICAgPiArKysgYi9tbWNfY21kcy5jDQo+ICAgICA+IEBAIC03
OTQsNyArNzk0LDcgQEAgdW5zaWduZWQgaW50IGdldF9zZWN0b3JfY291bnQoX191OCAqZXh0X2Nz
ZCkNCj4gICAgID4gICBpbnQgaXNfYmxvY2thZGRyZXNlZChfX3U4ICpleHRfY3NkKQ0KPiAgICAg
PiAgIHsNCj4gICAgID4gICAgICAgdW5zaWduZWQgaW50IHNlY3RvcnMgPSBnZXRfc2VjdG9yX2Nv
dW50KGV4dF9jc2QpOw0KPiAgICAgPiAtDQo+ICAgICA+ICsgICAgICAgIC8qIG92ZXIgMkdpQiBk
ZXZpY2VzIGFyZSBibG9jay1hZGRyZXNzZWQgKi8NCj4gICAgID4gICAgICAgcmV0dXJuIChzZWN0
b3JzID4gKDJ1ICogMTAyNCAqIDEwMjQgKiAxMDI0KSAvIDUxMik7DQo+ICAgICA+ICAgfQ0KPiAg
ICAgPg0KPiAgICAgPiBAQCAtMTY1OSw3ICsxNjU5LDcgQEAgaW50IGRvX3JlYWRfZXh0Y3NkKGlu
dCBuYXJncywgY2hhciAqKmFyZ3YpDQo+ICAgICA+ICAgICAgICAgICBwcmludGYoIkVuaGFuY2Vk
IFVzZXIgRGF0YSBTdGFydCBBZGRyZXNzIg0KPiAgICAgPiAgICAgICAgICAgICAgICIgW0VOSF9T
VEFSVF9BRERSXTogMHglMDZ4XG4iLCByZWdsKTsNCj4gICAgID4gICAgICAgICAgIHByaW50Zigi
IGkuZS4gJWx1IGJ5dGVzIG9mZnNldFxuIiwgKGlzX2Jsb2NrYWRkcmVzZWQoZXh0X2NzZCkgPw0K
PiAgICAgPiAtICAgICAgICAgICAgICAgIDFsIDogNTEybCkgKiByZWdsKTsNCj4gICAgID4gKyAg
ICAgICAgICAgICAgICA1MTJsIDogMWwpICogcmVnbCk7DQo+ICAgICA+DQo+ICAgICA+ICAgICAg
ICAgICAvKiBBNDQxXTogcmVzZXJ2ZWQgWzEzNV0gKi8NCj4gICAgID4gICAgICAgICAgIHByaW50
ZigiQmFkIEJsb2NrIE1hbmFnZW1lbnQgbW9kZSINCj4gICAgID4gLS0NCj4gICAgID4gMi4xLjQN
Cj4NCj4NCj4NCj4NCj4gLS0gDQo+IENocmlzIEJhbGwgICA8aHR0cDovL3ByaW50Zi5uZXQvPg0K
Pg0K
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/mmc_cmds.c b/mmc_cmds.c
index 295d505..21ddd55 100644
--- a/mmc_cmds.c
+++ b/mmc_cmds.c
@@ -794,7 +794,7 @@  unsigned int get_sector_count(__u8 *ext_csd)
  int is_blockaddresed(__u8 *ext_csd)
  {
      unsigned int sectors = get_sector_count(ext_csd);
-
+        /* over 2GiB devices are block-addressed */
      return (sectors > (2u * 1024 * 1024 * 1024) / 512);
  }

@@ -1659,7 +1659,7 @@  int do_read_extcsd(int nargs, char **argv)
          printf("Enhanced User Data Start Address"
              " [ENH_START_ADDR]: 0x%06x\n", regl);
          printf(" i.e. %lu bytes offset\n", (is_blockaddresed(ext_csd) ?
-                1l : 512l) * regl);
+                512l : 1l) * regl);

          /* A441]: reserved [135] */
          printf("Bad Block Management mode"