summaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)Author
2017-08-17dm: imx: cm_fx6: Enable more driver model supportSimon Glass
Enable driver model for MMC (including BLK), SATA and USB. Note that USB does not yet work correctly since the nodes are disabled. Hopefully this can be resolved by the maintainer. Signed-off-by: Simon Glass <[email protected]>
2017-08-17dm: mmc: fsl_esdhc: Update to support MMC operationsSimon Glass
This driver does not currently support CONFIG_DM_MMC_OPS. Update it to fully convert it to driver model. Signed-off-by: Simon Glass <[email protected]>
2017-08-17dm: mmc: fsl_esdhc: Update to support livetreeSimon Glass
Update this driver to support a live device tree. Signed-off-by: Simon Glass <[email protected]>
2017-08-17dm: mmc: fsl_esdhc: Drop mmc_init() call from fsl_esdhc_init()Simon Glass
We want to use fsl_esdhc_init() with driver model. Move the mmc_init() out of this function so that we can use it for our common init. Signed-off-by: Simon Glass <[email protected]>
2017-08-17dm: mmc: fsl_esdhc: Set up platform dataSimon Glass
With driver model we want to store the mmc and configuration structure in platform data. Set up structure up and use it for non-DM as well. Signed-off-by: Simon Glass <[email protected]>
2017-08-17dm: mmc: fsl_esdhc: Detect init failureSimon Glass
Since esdhc_init_common() can fail it should return an error code. Update this and also adjust the timeout mechanism to use get_timer(), which is a more common approach. Signed-off-by: Simon Glass <[email protected]>
2017-08-17dm: mmc: fsl_esdhc: Detect reset failureSimon Glass
Since esdhc_reset() can fail it should return an error code. Update this and also adjust the timeout mechanism to use get_timer(), which is a more common approach. Signed-off-by: Simon Glass <[email protected]>
2017-08-17dm: mmc: fsl_esdhc: Set up common versions of operationsSimon Glass
Driver model wants to use the core functions in this file but accesses the driver-private data in a different way. Move the code into new 'common' functions and set up stubs to call these. Also sort the operations into alphabetical order for consistency. Signed-off-by: Simon Glass <[email protected]>
2017-08-17dm: mmc: fsl_esdhc: Pass private data to internal functionsSimon Glass
With driver model we will not use mmc->priv to access driver-private data. To accomodate this, update internal functions so that we can pass the private data directly. This will allow the caller to obtain it as it prefers. Signed-off-by: Simon Glass <[email protected]>
2017-08-17dm: sata: dwc_ahsata: Add support for driver modelSimon Glass
Update this driver to support driver model. This involves implementing the AHCI operations and reusing existing common code. Signed-off-by: Simon Glass <[email protected]>
2017-08-17dm: sata: Update the AHCI uclass to support operationsSimon Glass
At present the AHCI uclass is just a shell and we still use the global functions to access SATA. Fix this by adding operations to the uclass. Signed-off-by: Simon Glass <[email protected]>
2017-08-17dm: sata: dw_sata: Set up common versions of operationsSimon Glass
Driver model wants to use the core functions in this file but accesses the uclass-private data in a different way. Move the code into new 'common' functions and set up stubs to call these. Signed-off-by: Simon Glass <[email protected]>
2017-08-17dm: sata: dw_sata: More ahci_init_one() futher downSimon Glass
This function will not be used with driver model and it relates to the other exported functions. Move it down next to them. Signed-off-by: Simon Glass <[email protected]>
2017-08-17dm: sata: dw_sata: Drop is_readySimon Glass
This variable is set but never used. Drop it. Signed-off-by: Simon Glass <[email protected]>
2017-08-17dm: sata: dw_sata: Rename the dwc_ahsata private headerSimon Glass
Rename dwc_ahsata.h to indicate that it is a private header file. We plan to create another header with some public functions. Signed-off-by: Simon Glass <[email protected]>
2017-08-17dm: sata: dw_sata: Sort #include directivesSimon Glass
Sort the header file inclusions into the correct order. Signed-off-by: Simon Glass <[email protected]>
2017-08-17dm: sata: dw_sata: Drop unnecessary bracketsSimon Glass
There is a strange &(var) coding style in this driver. Adjust it to use &var instead, which is more usual. Signed-off-by: Simon Glass <[email protected]>
2017-08-17dm: sata: dw_sata: Pass uc_priv to internal functionsSimon Glass
With driver model sata_dev_desc[] does not exist. We still want to use the common code of this driver so update it to pass struct ahci_uc_priv * to each of these functions, instead of an integer which must be looked up in sata_dev_desc[]. Signed-off-by: Simon Glass <[email protected]>
2017-08-17dm: sata: dw_sata: Drop unnecessary castsSimon Glass
Most of the casts in this driver are not necessary. With driver model we do not cast from void *. Update the driver to follow this rule. Signed-off-by: Simon Glass <[email protected]>
2017-08-17dm: sata: dw_sata: Rename 'probe_ent' to uc_privSimon Glass
With driver model this becomes uclass-private data. Rename the parameter varable to reflect this. With the driver model conversion we will not have any exported functions. Move all exported functions to be together at the end of the file so that we can deal with them in one #ifdef block. Signed-off-by: Simon Glass <[email protected]>
2017-08-17dm: sata: dw_sata: Move exported functions to the endSimon Glass
With the driver model conversion we will not have any exported functions. Move all exported functions to be together at the end of the file so that we can deal with them in one #ifdef block. Signed-off-by: Simon Glass <[email protected]>
2017-08-17dm: sata: dw_sata: Drop dwc_ahsata_rw_ncq_cmd()Simon Glass
This function is not called from anywhere. Drop it. Signed-off-by: Simon Glass <[email protected]>
2017-08-17dm: sata: dwc_ahsata: Make functions staticSimon Glass
Some functions are not called from outside this file. Make these static to make that obvious. Signed-off-by: Simon Glass <[email protected]>
2017-08-17dm: blk: Update return value in blk_create_devicef()Simon Glass
This returns 'ret' but the value is always zero. Update it to simply return 0, for clarity. Signed-off-by: Simon Glass <[email protected]>
2017-08-17dm: blk: Add a function to find an interface-type nameSimon Glass
Add a function to find the name of an interface type (e.g. "sata", "scsi") from the interface type enum. This is useful for generic code (not specific to SATA or SCSI, for example) that wants to display the type of interface it is dealing with. Signed-off-by: Simon Glass <[email protected]>
2017-08-17dm: core: Avoid calling dm_scan_fdt_dev() with of-platdataSimon Glass
We cannot call dm_scan_fdt_dev() with of-platdata since there is no device tree. Fix this with an #if check. Fixes: 3be9a37 (dm: syscon: scan sub-nodes of the syscon node) Signed-off-by: Simon Glass <[email protected]>
2017-08-17mmc: gen_atmel_mci: Fix wrong arguments used of bind()[email protected]
The bind() method is called before the device is probed and so the device has no private data, should use the platform data, and set up a new struct to hold the mmc and cfg members. Signed-off-by: Wenyou Yang <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2017-08-17mmc: sd_sdhi: Enable clock using clock frameworkMarek Vasut
Since we now have clock driver for the RCar Gen3 , add support for enabling the clock into the SH SDHI driver to prevent hacks in the board files. Signed-off-by: Marek Vasut <[email protected]> Cc: Nobuhiro Iwamatsu <[email protected]> Cc: Jaehoon Chung <[email protected]> Reviewed-by: Nobuhiro Iwamatsu <[email protected]>
2017-08-17mmc: sh_sdhi: Fix the ACMD handlingMarek Vasut
The command handling in this driver is awful, esp. because the driver depends on command numbers to determine whether this is APPCMD or not. Also, handling of command RSP response types is totally wrong. This patch at least plucks out some of the custom command encoding and fixes the APPCMD handling. The RSP handling still needs work, yet that might not be needed as it turns out the uniphier-sd.c driver is in much better shape and supports the same IP, so we might be able to just drop this driver in favor of the uniphier one. Signed-off-by: Marek Vasut <[email protected]> Cc: Hiroyuki Yokoyama <[email protected]> Cc: Nobuhiro Iwamatsu <[email protected]> Cc: Jaehoon Chung <[email protected]> Reviewed-by: Nobuhiro Iwamatsu <[email protected]>
2017-08-17mmc: sh_sdhi: Add DM and DT probing supportMarek Vasut
Add MMC DM and DT probing support into the SH SDHI driver. This patch abstracts out the common bits of the send command and set ios functions, so they can be used both by DM and non DM setups and adds the DM probe support. Signed-off-by: Marek Vasut <[email protected]> Cc: Hiroyuki Yokoyama <[email protected]> Cc: Nobuhiro Iwamatsu <[email protected]> Cc: Jaehoon Chung <[email protected]> Reviewed-by: Nobuhiro Iwamatsu <[email protected]>
2017-08-17mmc: uniphier-sd: Fix long response processingMarek Vasut
The long response entry 0..3 LSByte comes from the next response register MSByte, not from the next response register LSByte. Fix this to make the driver report correct values in response 136 . Signed-off-by: Marek Vasut <[email protected]> Cc: Masahiro Yamada <[email protected]> Cc: Jaehoon Chung <[email protected]> Acked-by: Masahiro Yamada <[email protected]>
2017-08-16Merge git://www.denx.de/git/u-boot-imxTom Rini
Update pfla02 for setenv changes and PHYLIB/etc migration to Kconfig. Signed-off-by: Tom Rini <[email protected]>
2017-08-16Merge git://git.denx.de/u-boot-spiTom Rini
2017-08-16sf: Preserve QE bit when clearing BP# bits for Macronix flashBin Meng
On some flash (like Macronix), QE (quad enable) bit is in the same status register as BP# bits, and we need preserve its original value during a reboot cycle as this is required by some platforms (like Intel ICH SPI controller working under descriptor mode). Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Jagan Teki <[email protected]> [Refined code for readability] Signed-off-by: Jagan Teki <[email protected]>
2017-08-16env: Rename some other getenv()-related functionsSimon Glass
We are now using an env_ prefix for environment functions. Rename these other functions as well, for consistency: getenv_vlan() getenv_bootm_size() getenv_bootm_low() getenv_bootm_mapsize() env_get_default() Suggested-by: Wolfgang Denk <[email protected]> Signed-off-by: Simon Glass <[email protected]>
2017-08-16env: Rename eth_getenv_enetaddr() to eth_env_get_enetaddr()Simon Glass
Rename this function for consistency with env_get(). Signed-off-by: Simon Glass <[email protected]>
2017-08-16env: Rename getenv_hex(), getenv_yesno(), getenv_ulong()Simon Glass
We are now using an env_ prefix for environment functions. Rename these for consistency. Also add function comments in common.h. Suggested-by: Wolfgang Denk <[email protected]> Signed-off-by: Simon Glass <[email protected]>
2017-08-16env: Rename getenv/_f() to env_get()Simon Glass
We are now using an env_ prefix for environment functions. Rename these two functions for consistency. Also add function comments in common.h. Quite a few places use getenv() in a condition context, provoking a warning from checkpatch. These are fixed up in this patch also. Suggested-by: Wolfgang Denk <[email protected]> Signed-off-by: Simon Glass <[email protected]>
2017-08-16env: Rename eth_setenv_enetaddr() to eth_env_set_enetaddr()Simon Glass
Rename this function for consistency with env_set(). Signed-off-by: Simon Glass <[email protected]>
2017-08-16env: Rename common functions related to setenv()Simon Glass
We are now using an env_ prefix for environment functions. Rename these commonly used functions, for consistency. Also add function comments in common.h. Suggested-by: Wolfgang Denk <[email protected]> Signed-off-by: Simon Glass <[email protected]>
2017-08-16env: Rename setenv() to env_set()Simon Glass
We are now using an env_ prefix for environment functions. Rename setenv() for consistency. Also add function comments in common.h. Suggested-by: Wolfgang Denk <[email protected]> Signed-off-by: Simon Glass <[email protected]>
2017-08-15env: Drop saveenv() in favour of env_save()Simon Glass
Use the env_save() function directly now that there is only one implementation of saveenv(). Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Wolfgang Denk <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2017-08-14driver: net: ldpaa: Update priv->phydev after free()Prabhakar Kushwaha
Even after memory free of phydev, priv is still pointing to the obsolete address. So update priv->phydev as NULL after memory free. Signed-off-by: Prabhakar Kushwaha <[email protected]> Signed-off-by: Ashish Kumar <[email protected]> Acked-by: Joe Hershberger <[email protected]>
2017-08-14usb: net: Add support for Microchip LAN75xx and LAN78xxYuiko Oshino
Add support for Microchip LAN7500, LAN7800 and LAN7850, USB to 10/100/1000 Ethernet Controllers. Signed-off-by: Yuiko Oshino <[email protected]> Acked-by: Joe Hershberger <[email protected]>
2017-08-14net: fman: add support RGMII_TXID to memacMadalin Bucur
Signed-off-by: Madalin Bucur <[email protected]> Acked-by: Joe Hershberger <[email protected]>
2017-08-14Merge branch 'master' of git://git.denx.de/u-boot-rockchipTom Rini
2017-08-13stm32f1: remove stm32f1 supportPatrice Chotard
A few years ago STM32F1 SoCs support has been added : 0144caf22ce6acd5c gpio: stm32: add stm32f1 support 2d18ef2364fd3561a ARMv7M: add STM32F1 support But neither STM32F1 dedicated defconfig nor board was associated to these commits. Got confirmation from Tom Rini and Matt Porter to remove all this code [1] [1] http://u-boot.10912.n7.nabble.com/Remove-STM32F1-support-td301603.html Signed-off-by: Patrice Chotard <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2017-08-13wdt: Update uclass to make clear that the timeout is in msAndy Shevchenko
Convert name to show explicitly that we are using milliseconds. For a watchdog timer this is precise enough. No functional change intended. Signed-off-by: Andy Shevchenko <[email protected]> Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Bin Meng <[email protected]>
2017-08-13nvme: Handle zero Maximum Data Transfer Size (MDTS)Bin Meng
Maximum Data Transfer Size (MDTS) field indicates the maximum data transfer size between the host and the controller. The host should not submit a command that exceeds this transfer size. The value is in units of the minimum memory page size and is reported as a power of two (2^n). The spec also says: a value of 0h indicates no restrictions on transfer size. On the real NVMe card this is normally not 0 due to hardware restrictions, but with QEMU emulated NVMe device it reports as 0. In nvme_blk_read/write() below we have the following algorithm for maximum number of logic blocks per transfer: u16 lbas = 1 << (dev->max_transfer_shift - ns->lba_shift); dev->max_transfer_shift being 0 will for sure cause lbas to overflow. Let's use 20. With this fix, the NVMe driver works on QEMU emulated NVMe device. Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2017-08-13nvme: Fix number of blocks detectionJon Nettleton
NVMe should use the nsze value from the queried device. This will reflect the total number of blocks of the device and fix detecting my Samsung 960 EVO 256GB. Original: Capacity: 40386.6 MB = 39.4 GB (82711872 x 512) Fixed: Capacity: 238475.1 MB = 232.8 GB (488397168 x 512) Signed-off-by: Jon Nettleton <[email protected]> Reviewed-by: Bin Meng <[email protected]> Tested-by: Bin Meng <[email protected]> Reviewed-by: Tom Rini <[email protected]>