uboot/include
Gabe Black 19d1d41e84 ahci: Make the AHCI code find the capacity of disks > 128 GB properly
In the structure returned by the ATA identify device command, there are two
fields which describe the device capacity. One is a 32 bit data type which
reports the number of sectors as a 28 bit LBA, and the other is a 64 bit data
type which is for a 48 bit LBA. If the device doesn't support 48 bit LBAs,
the small value is the only value with the correct size. If it supports more,
if the number of sectors is small enough to fit into 28 bits, both fields
reflect the correct value. If it's too large, the smaller field has 28 bits of
1s, 0xfffffff, and the other field has the correct value.

The AHCI driver is implemented by attaching to the generic SCSI code and
translating on the fly between SCSI binary data structures and AHCI data
structures. It responds to requests to execute specific SCSI commands by
executing the equivalent AHCI commands and then crafting a response which
matches what a SCSI disk would send.

The AHCI driver now considers both fields and chooses the correct one when
implementing both the SCSI READ CAPACITY (10) and READ CAPACITY (16) commands.

Signed-off-by: Gabe Black <gabeblack@chromium.org>
Signed-off-by: Simon Glass <sjg@chromium.org>
2012-11-02 15:20:41 -07:00
..
andestech
asm-generic Add gpio_request() to asm-generic header 2012-09-21 21:11:25 +02:00
bedbug
configs am335x_evm: Add CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG support 2012-11-02 15:14:28 -07:00
cramfs
faraday
galileo
jffs2
linux COMMON: Add __stringify() function 2012-10-15 11:53:47 -07:00
lzma
mtd cfi_flash: add support for Spansion flash PPB sector protection 2012-08-13 14:34:35 +02:00
pcmcia
synopsys
u-boot lib: zlib: include deflate into zlib build 2012-09-29 07:26:08 -07:00
usb usb: ulpi: add indicator configuration function 2012-10-15 11:54:01 -07:00
zfs zfs: Add ZFS filesystem support 2012-08-09 23:42:20 +02:00
.gitignore
74xx_7xx.h
ACEX1K.h
MCD_dma.h
MCD_progCheck.h
MCD_tasksInit.h
SA-1100.h
_exports.h
addr_map.h lib/powerpc: addrmap_phys_to_virt() should return a pointer 2012-07-06 17:30:32 -05:00
aes.h Add AES crypto library 2012-05-15 08:31:37 +02:00
ahci.h ahci: cosmetics and cleanup 2012-11-02 15:20:41 -07:00
ali512x.h
altera.h
amba_clcd.h
ambapp.h
api_public.h
arm925t.h
armcoremodule.h
asm-offsets.h
at45.h
at91rm9200_i2c.h
at91rm9200_net.h
ata.h
atmel_hlcdc.h video: atmel/lcd: add LCD driver for new Atmel SoC 2012-06-05 11:19:02 +02:00
atmel_lcdc.h
atmel_mci.h mmc: at91: add multi block read/write support. 2012-10-17 11:28:54 +02:00
bcd.h
bcm5221.h
bmp_layout.h
bootcount.h Consolidate bootcount code into drivers/bootcount 2012-09-01 14:26:02 +02:00
bootstage.h Merge branch 'agust@denx.de-next' of git://git.denx.de/u-boot-staging 2012-10-15 13:37:22 -07:00
bouncebuf.h COMMON: Implement common bounce buffer 2012-10-22 02:53:35 -05:00
bus_vcxk.h
bzlib.h
cbfs.h fs: Add a Coreboot Filesystem (CBFS) driver and commands 2012-10-22 08:29:55 -07:00
circbuf.h
cmd_spl.h
command.h common: Discard the __u_boot_cmd section 2012-10-22 08:29:42 -07:00
common.h Support setenv_ulong() and setenv_addr() for powerpc 2012-11-02 15:20:40 -07:00
commproc.h PPC: remove dead boards (AMX860, c2mon, ETX094, IAD210, LANTEC, SCM) 2012-10-28 20:17:25 +01:00
compiler.h
config_cmd_all.h zfs: Add ZFS filesystem support 2012-08-09 23:42:20 +02:00
config_cmd_default.h
config_cmd_defaults.h
config_defaults.h
config_fallbacks.h fs: separate CONFIG_FS_{FAT, EXT4} from CONFIG_CMD_{FAT, EXT*} 2012-10-29 14:21:19 -07:00
config_phylib_all_drivers.h phylib: Enable SMSC LAN87xx PHY support 2012-10-22 15:52:46 -05:00
config_uncmd_spl.h OMAP: networking support for SPL 2012-10-01 10:02:14 -07:00
cpsw.h cpsw: add driver for cpsw ethernet device 2012-09-01 14:58:10 +02:00
crc.h
da9030.h
dataflash.h
ddr_spd.h powerpc/mpc8xxx: Add fine timing support for DDR3 2012-08-23 12:16:55 -05:00
dfu.h dfu: DFU backend implementation 2012-09-01 16:21:50 +02:00
dialog_pmic.h pmic: dialog: Avoid name conflicts 2012-05-15 08:31:34 +02:00
div64.h
dm9000.h
dm9161.h
dp83848.h
ds1722.h
ds4510.h
dtt.h
dwmmc.h mmc: dw-mmc: support DesignWare MMC Controller 2012-10-22 02:56:25 -05:00
e500.h poweprc/85xx: add QMan frequency info and fdt fixup. 2012-10-22 15:52:46 -05:00
elf.h
env_default.h Add board_name to CONFIG_ENV_VARS_UBOOT_CONFIG 2012-11-02 15:13:30 -07:00
environment.h env: make "env default" selective, check and apply 2012-09-18 12:01:52 -07:00
errno.h
exports.h
ext4fs.h fs: separate CONFIG_FS_{FAT, EXT4} from CONFIG_CMD_{FAT, EXT*} 2012-10-29 14:21:19 -07:00
ext_common.h fs: add filesystem switch libary, implement ls and fsload commands 2012-10-29 14:21:20 -07:00
fat.h FAT: implement fat_set_blk_dev(), convert cmd_fat.c 2012-10-25 12:07:47 -07:00
fdc.h
fdt.h
fdt_support.h
fdtdec.h Merge branch 'agust@denx.de' of git://git.denx.de/u-boot-staging 2012-09-21 16:22:18 -07:00
fis.h
flash.h arm: Remove support for lpc2292 2012-10-26 22:35:20 +02:00
fm_eth.h fm/mEMAC: add mEMAC frame work 2012-10-22 14:31:25 -05:00
fpga.h
fs.h fs: add filesystem switch libary, implement ls and fsload commands 2012-10-29 14:21:20 -07:00
fsl_diu_fb.h
fsl_esdhc.h fsl_esdhc: Remove cache snooping for i.MX 2012-09-01 14:58:30 +02:00
fsl_mdio.h fm/mEMAC: add mEMAC frame work 2012-10-22 14:31:25 -05:00
fsl_nfc.h mxc nand: Homogenize IP revisions with Linux 2012-09-17 19:51:45 -05:00
fsl_pmic.h mx53loco: Turn on VUSB regulator 2012-05-15 08:31:34 +02:00
g_dnl.h dfu:usb: Support for g_dnl composite download gadget. 2012-09-01 16:21:50 +02:00
gdsys_fpga.h powerpc/ppc4xx: Remove typedefs for gdsys FPGA 2012-04-30 15:01:29 +02:00
hush.h
hwconfig.h
i2c.h i2c:soft:multi: Support for multiple soft I2C buses at Samsung boards 2012-09-17 09:39:50 +02:00
i8042.h input: i8042: Provide feature to disable keyboard before booting kernel 2012-10-19 15:25:43 -07:00
ide.h ide: Add printf format string for CONFIG_SYS_64BIT_LBA option 2012-10-22 08:29:55 -07:00
image.h fdt: Check for a token to skip auto-hash validation 2012-10-15 19:20:32 -04:00
input.h input: Add ANSI 3.64 escape sequence generation. 2012-10-19 15:25:44 -07:00
iomux.h
ioports.h
ipu_pixfmt.h i.MX: mxc_ipuv3_fb: add ipuv3_fb_shutdown() routine to stop IPU frame buffer 2012-09-24 10:48:19 +02:00
key_matrix.h input: Allow key ghosting filter to be disabled 2012-10-15 11:54:04 -07:00
keyboard.h
kgdb.h
ks8721.h
lattice.h
lcd.h video: add dp_enabled variable in vidinfo structure 2012-09-01 14:58:24 +02:00
lcdvideo.h
led-display.h
libata.h
libfdt.h libfdt: Add helper function to create a trivial, empty tree 2012-10-15 22:24:36 -04:00
libfdt_env.h
libtizen.h create lib/tizen directory 2012-05-25 09:15:10 +02:00
linker_lists.h common: Implement support for linker-generated arrays 2012-10-22 08:29:29 -07:00
linux_logo.h
lmb.h lmb: do not export anything without CONFIG_LMB 2012-06-19 22:35:10 +02:00
logbuff.h
lxt971a.h
lynxkdi.h
malloc.h malloc: remove extern declarations of malloc_bin_reloc() in board.c files 2012-09-26 11:08:32 -07:00
max8997_pmic.h misc:pmic:max8997 MAX8997 support for PMIC driver 2012-05-15 08:31:29 +02:00
max8998_pmic.h ARM: Exynos4: ADC: Universal_C210: Enable LDO4 power line for ADC measurement 2012-05-15 08:31:28 +02:00
mb862xx.h
mc9sdz60.h
mc13783.h
mc13892.h
menu.h
micrel.h
mii_phy.h
miiphy.h
mk48t59.h
mmc.h mmc: detect boot sectors using EXT_CSD_BOOT_MULT too 2012-09-07 13:54:31 -07:00
mpc5xx.h
mpc5xxx.h mpc5xxx: add pci_mpc5xxx_init prototype to common header 2012-09-01 14:19:02 +02:00
mpc5xxx_sdma.h
mpc8xx.h
mpc8xx_irq.h
mpc83xx.h mpc83xx: add support for mpc8309 2012-10-23 15:23:26 -05:00
mpc85xx.h
mpc86xx.h
mpc106.h
mpc824x.h
mpc8220.h
mpc8260.h
mpc8260_irq.h
mtd_node.h
mv88e6352.h net/phy: support the mv88e6352 switch 2012-09-27 12:21:56 -05:00
mvmfp.h
nand.h nand: Make NAND lock status compatible with Micron 2012-09-17 17:33:43 -05:00
net.h net: Filter incoming netconsole packets by IP 2012-09-24 13:55:44 -05:00
netdev.h net: Add driver for Zynq Gem IP 2012-09-26 12:36:32 -05:00
nios2-epcs.h
nios2-io.h
nios2-yanu.h
nios2.h COMMON: Use __stringify() instead of rest of implementations 2012-10-15 11:53:47 -07:00
nomadik.h
ns9750_bbus.h
ns9750_mem.h
ns9750_ser.h
ns9750_sys.h
ns16550.h serial/ns16550: ns16550 has a different register layout on SOC_DA8XX 2012-09-01 14:58:10 +02:00
ns87308.h
onenand_uboot.h
os.h
part.h disk: part_efi: parse and store partition UUID 2012-09-25 15:05:44 -07:00
pc_keyb.h
pca953x.h
pca9564.h
pca9698.h
pci.h
pci_ids.h pci: update pci_ids.h with a few new entries 2012-09-02 14:18:52 +02:00
pcmcia.h PPC: remove dead boards (AMX860, c2mon, ETX094, IAD210, LANTEC, SCM) 2012-10-28 20:17:25 +01:00
phy.h
pmic.h pmic: dialog: Avoid name conflicts 2012-05-15 08:31:34 +02:00
post.h
ppc_asm.tmpl
ppc_defs.h
ps2mult.h
pwm.h
radeon.h
reiserfs.h cmd_reiser: use common get_device_and_partition function 2012-09-25 14:49:18 -07:00
rtc.h
s6e63d6.h
s_record.h
sata.h sata.h: Make all sata/ata drivers include <sata.h> 2012-10-15 11:54:03 -07:00
scsi.h ahci: Make the AHCI code find the capacity of disks > 128 GB properly 2012-11-02 15:20:41 -07:00
sdhci.h mmc: sdhci: Add a quirk to add delay during completion of sdhci_send_cmd 2012-10-22 02:53:36 -05:00
search.h env: check and apply changes on delete/destroy 2012-09-18 12:01:52 -07:00
sed156x.h
sed13806.h
serial.h serial: Implement default_serial_puts() 2012-10-17 07:55:50 -07:00
sh_pfc.h sh: Add support pin function control using GPIO 2012-08-08 10:24:41 +09:00
sh_tmu.h arm: rmobile: Add support TMU base timer function 2012-10-03 02:04:24 +02:00
sha1.h
sha256.h
sja1000.h
sm501.h
smiLynxEM.h
spartan2.h
spartan3.h
spd.h
spd_sdram.h
spi.h
spi_flash.h
spl.h OMAP: networking support for SPL 2012-10-01 10:02:14 -07:00
status_led.h PPC: remove dead boards (AMX860, c2mon, ETX094, IAD210, LANTEC, SCM) 2012-10-28 20:17:25 +01:00
stdio_dev.h
stratixII.h
sym53c8xx.h
systemace.h
tegra-kbc.h tegra: Add tegra keyboard driver 2012-05-15 08:31:40 +02:00
timestamp.h
tpm.h
tps6586x.h i2c: Add TPS6586X driver 2012-05-15 08:31:37 +02:00
tsec.h
tsi108.h
tsi148.h
twl4030.h
twl6030.h
twl6035.h omap5: pbias ldo9 turn on 2012-05-15 08:31:25 +02:00
tws.h
ubi_uboot.h
universe.h
usb.h usb.h: Add udc_disconnect prototype to usb.h 2012-10-15 11:54:02 -07:00
usb_cdc_acm.h
usb_defs.h
usb_ether.h net: introduce transparent driver private in ueth_data 2012-09-26 12:36:29 -05:00
usbdescriptors.h
usbdevice.h
version.h
video.h include/video.h: drop unused video_printf() 2012-05-25 09:15:09 +02:00
video_ad7176.h
video_ad7177.h
video_ad7179.h
video_easylogo.h
video_fb.h
video_font.h
video_font_data.h
video_logo.h
virtex2.h
vsc7385.h
vsprintf.h
vxworks.h ppc4xx: Remove IOP480 support 2012-10-15 11:53:59 -07:00
w83c553f.h
watchdog.h
xilinx.h
xyzModem.h
zfs_common.h cmd_zfs: use common get_device_and_partition function 2012-09-25 14:49:17 -07:00