summaryrefslogtreecommitdiff
path: root/drivers/block
Commit message (Collapse)AuthorAgeLines
* remove unnecessary code in ata_piixPavel Herrmann2012-09-28-3/+0
| | | | | | | | | | We set sata_curr_device to 0 right after returning from init_sata(), so there's no point in setting it to the last scanned driver at this point. Note: there are more duplicities with cmd_sata, but those might be required, as the code seems to reset the entire controller on every scan, ignoring the requested port number. Signed-off-by: Pavel Herrmann <morpheus.ibis@gmail.com>
* block: systemace: Simplify base and width initializationMichal Simek2012-09-11-13/+25
| | | | | | | Use CONFIG parameters only at one location to simplify the code. Also create ace_readw/writew functions. Signed-off-by: Michal Simek <monstr@monstr.eu>
* Remove remaining mdelay() macrosAnatolij Gustschin2012-07-08-1/+0
| | | | | | | Drop mdelay() macros since we already have a common mdelay() func. Signed-off-by: Anatolij Gustschin <agust@denx.de> Acked-by: Mike Frysinger <vapier@gentoo.org>
* Block: Remove MG DISK supportMarek Vasut2012-06-21-731/+0
| | | | | | | | This driver is unused and obsolete. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Wolfgang Denk <wd@denx.de> Cc: unsik Kim <donari75@gmail.com>
* SATA: add driver for MX5 / MX6 SOCsStefano Babic2012-05-15-0/+1305
| | | | | | | | | | This driver is part of Freescale's LTIB for MX5 / MX6. Signed-off-by: Stefano Babic <sbabic@denx.de> Signed-off-by: Terry Lv <r65388@freescale.com> CC: Fabio Estevam <fabio.estevam@freescale.com> CC: Dirk Behme <dirk.behme@de.bosch.com>
* Blackfin: pata_bfin: fix printf warningMike Frysinger2012-02-12-1/+1
| | | | | | | | pata_bfin.c: In function 'bfin_ata_identify': pata_bfin.c:887:2: warning: format '%x' expects type 'unsigned int', but argument 2 has type 'lbaint_t' Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* mvsata: fix ide_preinit for missing disksSimon Guinot2011-12-06-6/+8
| | | | | | | | Consider that ide_preinit() succeed if at least one port is successfully initialized. This allows to iniatialize IDE support on a board with two SATA ports but a single hard disk available. Signed-off-by: Simon Guinot <simon.guinot@sequanux.org>
* drivers/block/sata_dwc.c: Fix GCC 4.6 build warningWolfgang Denk2011-12-02-5/+1
| | | | | | | | | | Fix: sata_dwc.c: In function 'scan_sata': sata_dwc.c:535:38: warning: variable 'udma_mask' set but not used [-Wunused-but-set-variable] Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Kazuaki Ichinohe <kazuichi@fsi.co.jp>
* powerpc/85xx: always implement the work-around for Erratum SATA_A001Timur Tabi2011-11-29-21/+1
| | | | | | | | | | On the P1022/P1013, the work-around for erratum SATA_A001 was implemented only if U-Boot initializes SATA, but SATA is not initialized by default. So move the work-around to the CPU initialization function, so that it's always executed on the SOCs that need it. Signed-off-by: Timur Tabi <timur@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* ftide020: fix incorrect information display formatMacpaul Lin2011-11-18-3/+2
| | | | | | Fix incorrect information display format when probing the device. Signed-off-by: Macpaul Lin <macpaul@andestech.com>
* sata_dwc.c: Fix GCC 4.6 build warningsStefan Roese2011-11-16-32/+3
| | | | | | | | | | | | | | | | | | Fix: sata_dwc.c: In function 'sata_dwc_softreset': sata_dwc.c:444:5: warning: variable 'status' set but not used [-Wunused-but-set-variable] sata_dwc.c:443:6: warning: variable 'serror' set but not used [-Wunused-but-set-variable] sata_dwc.c: In function 'scan_sata': sata_dwc.c:654:16: warning: variable 'lba_desc' set but not used [-Wunused-but-set-variable] sata_dwc.c:538:16: warning: variable 'xfer_mask' set but not used [-Wunused-but-set-variable] sata_dwc.c: In function 'ata_dev_read_id': sata_dwc.c:747:14: warning: variable 'reason' set but not used [-Wunused-but-set-variable] sata_dwc.c: In function 'ata_dev_read_sectors': sata_dwc.c:1810:6: warning: variable 'rc' set but not used [-Wunused-but-set-variable] sata_dwc.c: In function 'ata_dev_write_sectors': sata_dwc.c:1994:6: warning: variable 'rc' set but not used [-Wunused-but-set-variable] Signed-off-by: Stefan Roese <sr@denx.de>
* drivers/block/sym53c8xx.c: Fix GCC 4.6 build warningWolfgang Denk2011-11-16-2/+0
| | | | | | | | | Fix: sym53c8xx.c: In function 'scsi_write_dsp': sym53c8xx.c:456:16: warning: variable 'val' set but not used [-Wunused-but-set-variable] Signed-off-by: Wolfgang Denk <wd@denx.de>
* drivers/block/sata_sil3114.c: Fix GCC 4.6 build warningKumar Gala2011-11-16-0/+4
| | | | | | | | | | | | | | | | | | Fix: sata_sil3114.c: In function 'scan_sata': sata_sil3114.c:793:7: warning: array subscript is above array bounds [-Warray-bounds] sata_sil3114.c:794:7: warning: array subscript is above array bounds [-Warray-bounds] sata_sil3114.c:795:39: warning: array subscript is above array bounds [-Warray-bounds] sata_sil3114.c:795:7: warning: array subscript is above array bounds [-Warray-bounds] sata_sil3114.c:797:7: warning: array subscript is above array bounds [-Warray-bounds] sata_sil3114.c:800:7: warning: array subscript is above array bounds [-Warray-bounds] sata_sil3114.c:801:7: warning: array subscript is above array bounds [-Warray-bounds] sata_sil3114.c:802:39: warning: array subscript is above array bounds [-Warray-bounds] sata_sil3114.c:802:7: warning: array subscript is above array bounds [-Warray-bounds] sata_sil3114.c:804:7: warning: array subscript is above array bounds [-Warray-bounds] Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* drivers/block/ahci.c: Fix GCC 4.6 build warningKumar Gala2011-11-16-3/+0
| | | | | | | | | Fix: ahci.c: In function 'ata_scsiop_read10': ahci.c:564:6: warning: variable 'lba' set but not used [-Wunused-but-set-variable] Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* GCC4.6: Squash warnings in sata_sil3114.cMarek Vasut2011-10-27-1/+1
| | | | | | | | | | | sata_sil3114.c: In function 'sata_identify': sata_sil3114.c:174: warning: format '%x' expects type 'unsigned int', but argument 2 has type 'lbaint_t' Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Wolfgang Denk <wd@denx.de> Cc: Simon Glass <sjg@chromium.org> Cc: Mike Frysinger <vapier@gentoo.org>
* GCC4.6: Squash warnings in ahci.cMarek Vasut2011-10-27-1/+1
| | | | | | | | | | | ahci.c: In function 'ahci_port_start': ahci.c:401: warning: format '%x' expects type 'unsigned int', but argument 2 has type 'struct ahci_cmd_hdr *' Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Wolfgang Denk <wd@denx.de> Cc: Simon Glass <sjg@chromium.org> Cc: Mike Frysinger <vapier@gentoo.org>
* consolidate mdelay by providing a common function for all usersAnatolij Gustschin2011-10-22-9/+0
| | | | | | | | | There are several mdelay() definitions in the driver and board code. Remove them all and provide a common mdelay() in lib/time.c. Signed-off-by: Anatolij Gustschin <agust@denx.de> Acked-by: Mike Frysinger <vapier@gentoo.org>
* drivers: add the support for Silicon Image SATA controllerTang Yuantian2011-10-22-0/+952
| | | | | | | | | | | | | | | | | Add the Silicon Image series PCI Express to Serial ATA controller support, including Sil3132, Sil3131 and Sil3124. The SATA controller can be used to load kernel. The features list: - Supports 1-lane 2.5 Gbit/s PCI Express - Supports one/two/four independent Serial ATA channels - Supports Serial ATA Generation 2 transfer rate of 3.0 Gbit/s - Supports LBA28 and LBA48 Signed-off-by: Tang Yuantian <b29983@freescale.com> Signed-off-by: Aaron Williams <Aaron.Williams@cavium.com> Tested-by: Lan Chunhe <b25806@freescale.com>
* fsl_sata: Fix compile error when CONFIG_LBA48 is not definedTang Yuantian2011-10-09-5/+10
| | | | | | | | If CONFIG_LBA48 is not defined, the element lba48 of struct sata_dev_desc is not avaible, and can't be used. Signed-off-by: Tang Yuantian <b29983@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* ATA: Squash warnings in mxc_ata.Marek Vasut2011-09-30-13/+9
| | | | | | | | | | | | | mxc_ata.c: In function ‘set_ata_bus_timing’: mxc_ata.c:118: warning: dereferencing type-punned pointer will break strict-aliasing rules mxc_ata.c:125: warning: dereferencing type-punned pointer will break strict-aliasing rules mxc_ata.c:129: warning: dereferencing type-punned pointer will break strict-aliasing rules Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Stefano Babic <sbabic@denx.de>
* Convert ISO-8859 files to UTF-8Albert ARIBAUD2011-08-04-2/+2
| | | | | | | | There was a mix of UTF-8 and ISO-8859 files in the U-Boot source tree, which could cause issues with the patchwork review system. This commit converts all ISO-8859 files to UTF-8. Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
* Timer: Allow reset_timer() only for systems with low resolution timersGraeme Russ2011-07-26-0/+2
|
* disk/part.c: Make features optionalMatthew McClintock2011-07-26-0/+4
| | | | | | | | | If we don't want to build support for any partition types we can now add #undef CONFIG_PARTITIONS in a board config file to keep this from being compiled in. Otherwise boards assume this is compiled in by default Signed-off-by: Matthew McClintock <msm@freescale.com>
* scsi/ahci: add support for non-PCI controllersRob Herring2011-07-26-8/+62
| | | | | | | Add support for AHCI controllers that are not PCI based. Signed-off-by: Rob Herring <rob.herring@calxeda.com> Cc: Wolfgang Denk <wd@denx.de>
* scsi/ahci: ata id little endian fixRob Herring2011-07-26-1/+1
| | | | | | The ata id string always needs swapping, not just on BE machines. Signed-off-by: Rob Herring <rob.herring@calxeda.com>
* mvsata: issue hard reset on initializationMichael Walle2011-05-23-1/+9
| | | | | | | | | | | | Before the actual initialization do a hard reset of the SATA port and the connected device. changes v1->v2: - add comment for udelay Signed-off-by: Michael Walle <michael@walle.cc> Cc: Prafulla Wadaskar <prafulla@marvell.com> Cc: Albert Aribaud <albert.u.boot@aribaud.net>
* ftide020: add faraday ide ahb controllerMacpaul Lin2011-05-12-0/+651
| | | | | | | | | | | | | | Faraday's ftide020_s is an IDE-AHB controller for SoC design. This patch add the u-boot driver (PIO) of ftide020 ATA (IDE) driver. IDE commands include read, info, and other functions has been implemented. Because this IDE controller support AHB interface only which is differ from other most IDE controller supports PCI interface. Some registers access is required during CMD/DATA I/O. Hence a configuration "CONFIG_IDE_AHB" is required to be defined according to the feature in cmd_ide.c. Signed-off-by: Macpaul Lin <macpaul@andestech.com>
* Replace obsolete e-mail addressAlbert ARIBAUD2011-04-27-2/+2
| | | | Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
* MXC: removed warnings from IMX51 ATA driverStefano Babic2011-02-02-3/+0
| | | | | | | | Drop warnings due to unused variables. Signed-off-by: Stefano Babic <sbabic@denx.de> CC: Marek Vasut <marek.vasut@gmail.com> Acked-by: Marek Vasut <marek.vasut@gmail.com>
* BLOCK: Add freescale IMX51 PATA driverMarek Vasut2011-02-02-0/+150
| | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Acked-by: Stefano Babic <sbabic@denx.de> Acked-by: Wolfgang Denk <wd@denx.de>
* Switch from archive libraries to partial linkingSebastien Carlier2010-11-17-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Before this commit, weak symbols were not overridden by non-weak symbols found in archive libraries when linking with recent versions of binutils. As stated in the System V ABI, "the link editor does not extract archive members to resolve undefined weak symbols". This commit changes all Makefiles to use partial linking (ld -r) instead of creating library archives, which forces all symbols to participate in linking, allowing non-weak symbols to override weak symbols as intended. This approach is also used by Linux, from which the gmake function cmd_link_o_target (defined in config.mk and used in all Makefiles) is inspired. The name of each former library archive is preserved except for extensions which change from ".a" to ".o". This commit updates references accordingly where needed, in particular in some linker scripts. This commit reveals board configurations that exclude some features but include source files that depend these disabled features in the build, resulting in undefined symbols. Known such cases include: - disabling CMD_NET but not CMD_NFS; - enabling CONFIG_OF_LIBFDT but not CONFIG_QE. Signed-off-by: Sebastien Carlier <sebastien.carlier@gmail.com>
* mvsata_ide: adjust port init sequenceAlbert Aribaud2010-10-13-9/+33
| | | | | | | | | | | mvsata_ide_initialize_port(): adjust init sequence (SStatus should be checked only after all writes to SControl) and return success/failure to ide_preinit(). Also, as some tests showed init durations in the hundreds of us, raise the time-out to 01 ms to be on the safe side. Signed-off-by: Albert Aribaud <albert.aribaud@free.fr>
* ide: add mvsata_ide driverAlbert Aribaud2010-08-08-0/+141
| | | | | | | | This driver only provides initialization code; actual driving is done by cmd_ide.c using the ATA compatibility mode of the Marvell SATAHC controller. Signed-off-by: Albert Aribaud <albert.aribaud@free.fr>
* ide: reorder object files alphabeticallyAlbert Aribaud2010-08-08-3/+3
| | | | Signed-off-by: Albert Aribaud <albert.aribaud@free.fr>
* Blackfin: pata_bfin: convert to portmux frameworkMike Frysinger2010-07-13-13/+12
| | | | | | | Rather than bang MMRs directly, use the new portmux framework to handle the details. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* 85xx/fsl-sata: Use is_serdes_configured() to determine if SATA is enabledKumar Gala2010-05-12-1/+13
| | | | | | | | | | | | On the MPC85xx platform if we have SATA its connected on SERDES. Determing if SATA is enabled via sata_initialize should not be board specific and thus we move it out of the MPC8536DS board code. Additionally, now that we have is_serdes_configured() we can determine if the given SATA port is enabled and error out if its not in the driver. Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* fsl_sata: Move the snoop bit to another placeDave Liu2010-04-26-2/+6
| | | | | | | | For P1022 SATA host controller, the data snoop bit of DW3 in PRDT is moved to bit28. Signed-off-by: Dave Liu <daveliu@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* fsl_sata: Add the workaround for errata SATA-A001Dave Liu2010-04-26-0/+22
| | | | | | | | | | | After power on, the SATA host controller of P1022 Rev1 is configured in legacy mode instead of the expected enterprise mode. Software needs to clear bit[28] of HControl register to change to enterprise mode after bringing the host offline. Signed-off-by: Dave Liu <daveliu@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* Misc SATA fixupsGraeme Russ2009-09-04-19/+6
| | | | | | | | | | | | | | | | | Cast first parameter to sata_cpy() In /drivers/block/ata_piix.h, ata_id_has_lba48(), ata_id_has_lba(), ata_id_has_dma(), ata_id_u32(), ata_id_u64() are all defined in include/libata.h which is included in ata.h which is included by all files which include ata_piix.h (only ata_piix.c) so these definitions are supurflous to (and conlict with) this in libata.h. Interestingly, my compiler complains about ata_id_u64 already being defined, but not ata_id_u32 ata_dump_id() is defined in include/libata.h and should not be static (maybe should even use ata_dump_id() in libata.c Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
* Update Freescale copyrights to remove "All Rights Reserved"Kumar Gala2009-07-29-1/+1
| | | | | | "All Rights Reserved" conflicts with the GPL. Signed-off-by: Kumar Gala <kumar.gala@freescale.com>
* ahci: Fix gcc 4.4 compiler warningKumar Gala2009-07-23-8/+6
| | | | | | | ahci.c: In function 'ata_scsiop_read_capacity10': ahci.c:616: warning: dereferencing type-punned pointer will break strict-aliasing rules Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* fsl_sata: Fix compiler warnings shown by gcc-4.4galak2009-07-20-81/+19
| | | | | | | | | | | | | | | | | | | | Update fsl_sata to use common structures instead of casting back and forth between the fsl specific ones and the common ones (which are identical). fsl_sata.c: In function 'scan_sata': fsl_sata.c:550: warning: dereferencing pointer 'cfis' does break strict-aliasing rules fsl_sata.c:549: warning: dereferencing pointer 'cfis' does break strict-aliasing rules fsl_sata.c:548: warning: dereferencing pointer 'cfis' does break strict-aliasing rules fsl_sata.c:545: note: initialized from here fsl_sata.c:592: warning: dereferencing pointer 'cfis' does break strict-aliasing rules fsl_sata.c:590: warning: dereferencing pointer 'cfis' does break strict-aliasing rules fsl_sata.c:588: warning: dereferencing pointer 'cfis' does break strict-aliasing rules fsl_sata.c:586: warning: dereferencing pointer 'cfis' does break strict-aliasing rules fsl_sata.c:579: warning: dereferencing pointer 'cfis' does break strict-aliasing rules ... Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* Canyonlands SATA harddisk driverKazuaki Ichinohe2009-07-19-0/+2588
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds a SATA harddisk driver for the canyonlands. This patch is kernel driver's porting. This patch corresponded to not cmd_scsi but cmd_sata. This patch divided an unused member with ifndef __U_BOOT__ in the structure. [environment variable, boot script] setenv bootargs root=/dev/sda7 rw setenv bootargs ${bootargs} console=ttyS0,115200 ext2load sata 0:2 0x400000 /canyonlands/uImage ext2load sata 0:2 0x800000 /canyonlands/canyonlands.dtb fdt addr 0x800000 0x4000 bootm 0x400000 - 0x800000 If you drive SATA-2 disk on Canyonlands, you must change parts from PI2PCIE212 to PI2PCIE2212 on U25. We confirmed to boot by using following disks: 1.Vendor: Fujitsu Type: MHW2040BS 2.Vendor: Fujitsu Type: MHW2060BK 3.Vendor: HAGIWARA SYS-COM:HFD25S-032GT 4.Vendor: WesternDigital Type: WD3200BJKT (CONFIG_LBA48 required) 5.Vendor: WesternDigital Type: WD3200BEVT (CONFIG_LBA48 required) 6.Vendor: Hitachi Type: HTS543232L9A300 (CONFIG_LBA48 required) 7.Vendor: Seagate Type: ST31000333AS (CONFIG_LBA48 required) 8.Vendor: Transcend Type: TS32GSSD25S-M 9.Vendor: MTRON Type: MSD-SATA1525-016 Signed-off-by: Kazuaki Ichinohe <kazuichi at fsi.co.jp>
* sata: namespace curr_device variableMike Frysinger2009-07-17-3/+3
| | | | | | | | | | | The curr_device variable really should be namespaced with a "sata_" prefix since it is only used by the sata code. It also avoids random conflicts with other pieces of code (like cmd_mmc): common/libcommon.a(cmd_sata.o):(.data.curr_device+0x0): multiple definition of `curr_device' common/libcommon.a(cmd_mmc.o):(.data.curr_device+0x0): first defined here Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Update CHANGELOG, coding style cleanup.Wolfgang Denk2009-04-05-1/+0
|
* mflash: Initial mflash supportunsik Kim2009-04-03-2/+730
| | | | | | | | | | | | | | | | | | | | Mflash is fusion memory device mainly targeted consumer eletronic and mobile phone. Internally, it have nand flash and other hardware logics and supports some different operation (ATA, IO, XIP) modes. IO mode is custom mode for the host that doesn't have IDE interface. (Many mobile targeted SoC doesn't have IDE bus) This driver support mflash IO mode. Followings are brief descriptions about IO mode. 1. IO mode based on ATA protocol and uses some custom command. (read confirm, write confirm) 2. IO mode uses SRAM bus interface. Signed-off-by: unsik Kim <donari75@gmail.com>
* sata_sil3114: fix compiler warningKim Phillips2009-02-19-2/+2
| | | | | | | | | | | | | judging from other printfs in the same file, it seems ata should be postpended with the interface number, not the address of the global port variable. Fixes this for current u-boot-mpc83xx tree: Configuring for MPC8349ITX board... sata_sil3114.c: In function 'sata_bus_softreset': sata_sil3114.c:99: warning: format '%u' expects type 'unsigned int', but argument 2 has type 'struct sata_port *' sata_sil3114.c:108: warning: format '%u' expects type 'unsigned int', but argument 2 has type 'struct sata_port *' Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
* drivers/block/ahci: Fix pci mapping bugBecky Bruce2009-02-10-5/+2
| | | | | | | | The code assumes that the pci bus address and the virtual address used to access a region are the same, but they might not be. Fix this assumption. Signed-off-by: Becky Bruce <beckyb@kernel.crashing.org>
* Blackfin: add driver for on-chip ATAPI controllerSonic Zhang2009-02-02-0/+1375
| | | | | | | This is a port of the Linux Blackfin on-chip ATAPI driver to U-Boot. Signed-off-by: Sonic Zhang <Sonic.Zhang@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Cleanup: fix "MHz" spellingWolfgang Denk2008-10-21-2/+2
| | | | Signed-off-by: Wolfgang Denk <wd@denx.de>