summaryrefslogtreecommitdiffstats
path: root/drivers/ata
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2012-11-28 13:07:02 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2012-12-03 19:50:52 +0100
commit9fdbbb34e67a50910f3312a76d9faa7a8bb0f2d1 (patch)
tree9885aadd5c643dce8865ef8fd2544d2eff11eb20 /drivers/ata
parenta912f55a6c6a9486712248ebefb053d98501a153 (diff)
downloadbarebox-9fdbbb34e67a50910f3312a76d9faa7a8bb0f2d1.tar.gz
barebox-9fdbbb34e67a50910f3312a76d9faa7a8bb0f2d1.tar.xz
ata: Allow partitions > 4GiB
Since barebox now uses 64bit for device accesses this is no issue anymore. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers/ata')
-rw-r--r--drivers/ata/disk_ata_drive.c10
1 files changed, 1 insertions, 9 deletions
diff --git a/drivers/ata/disk_ata_drive.c b/drivers/ata/disk_ata_drive.c
index d5c583790c..6bb72a9756 100644
--- a/drivers/ata/disk_ata_drive.c
+++ b/drivers/ata/disk_ata_drive.c
@@ -540,14 +540,6 @@ static struct block_device_ops ata_ops = {
#endif
};
-/* until Barebox can handle 64 bit offsets */
-static int limit_disk_size(uint64_t val)
-{
- if (val > (__INT_MAX__ / SECTOR_SIZE))
- return (__INT_MAX__ / SECTOR_SIZE);
- return (int)val;
-}
-
/**
* Register an ATA drive behind an IDE like interface
* @param dev The interface device
@@ -584,7 +576,7 @@ int register_ata_drive(struct device_d *dev, struct ata_ioports *io)
if (rc == -1)
pr_err("Cannot find a free index for the disk node\n");
- drive->blk.num_blocks = limit_disk_size(ata_id_n_sectors(drive->id));
+ drive->blk.num_blocks = ata_id_n_sectors(drive->id);
drive->blk.cdev.name = asprintf("disk%d", rc);
drive->blk.blockbits = SECTOR_SHIFT;