
On 10/05/2012 05:27 PM, Tom Rini wrote:
On 10/05/12 16:17, Stephen Warren wrote:
From: Stephen Warren swarren@nvidia.com
The recent switch to use get_device_and_partition() from do_fat_ls() broke the ability to access a FAT filesystem directly on a whole device; FAT only works within a partition on a device.
This change makes e.g. "fatls mmc 0:0" work; explicitly requesting partition ID 0 is something that get_device_and_partition() fully supports. However, fat_register_device() expects partition ID 1 to be used in the full-disk case; partition ID 1 was previously implicitly specified when the user didn't actually specify a partition ID. Update fat_register_device() to expect the correct ID.
This change does imply that if a user explicitly executes "fatls mmc 0:1" then this will fail, and may be a change in behaviour.
So wait, you can't list device 0, bus 1 after this patch?
That's partition 1 not bus 1.
In the context of having a raw FAT filesystem on a device with no partition table, the partition specification "0:1" doesn't work before or after this patch; I believe (if it worked at all ever before) it was broken by the previous get_device_and_partition() rework.
If you do have a partition table, then "0:1" works just fine with/without this patch.
Note that this still prevents "fatls mmc 0:auto" from working. The next patch will fix that.
Signed-off-by: Stephen Warren swarren@nvidia.com --- Tom, this series is really a bug-fix and should go in before the 9-long series I posted earlier today. I'll need to rebase that other series on top of this and repost, once any comments are addressed.
Should this also go in the release?
I imagine so; that's why I rebased it below the previous series I sent which I assume isn't going into this release.