summaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)Author
2015-10-26ubi,ubifs: sync with linux v4.2Heiko Schocher
sync with linux v4.2 commit 64291f7db5bd8150a74ad2036f1037e6a0428df2 Author: Linus Torvalds <[email protected]> Date: Sun Aug 30 11:34:09 2015 -0700 Linux 4.2 This update is needed, as it turned out, that fastmap was in experimental/broken state in kernel v3.15, which was the last base for U-Boot. Signed-off-by: Heiko Schocher <[email protected]> Tested-by: Ezequiel Garcia <[email protected]>
2015-10-26linux, compat: add missing definitions for ubiHeiko Schocher
add missing definitions for the ubi/ubifs sync with linux 4.2, also change "#define kfree ..." into a static inline, so prevent ubi compile error: CC drivers/mtd/ubi/fastmap.o drivers/mtd/ubi/fastmap.c: In function 'scan_pool': drivers/mtd/ubi/fastmap.c:475:3: error: called object 'free' is not a function Signed-off-by: Heiko Schocher <[email protected]>
2015-10-25spi: zynq_qspi: Minor cleanupsJagan Teki
- Use __func__ on debug - Removed unnecessary comment - Fix function name in debug as zynq_qspi_xfer instead of spi_xfer Signed-off-by: Jagan Teki <[email protected]>
2015-10-25sf: Add FSR support to spi_flash_cmd_wait_readyJagan Teki
This patch adds flag status register reading support to spi_flash_cmd_wait_ready. Cc: Simon Glass <[email protected]> Cc: Marek Vasut <[email protected]> Cc: Michal Simek <[email protected]> Cc: Siva Durga Prasad Paladugu <[email protected]> Cc: Stefan Roese <[email protected]> Cc: Tom Warren <[email protected]> Cc: Tom Rini <[email protected]> Cc: Hou Zhiqiang <[email protected]> Tested-by: Jagan Teki <[email protected]> Tested-by: Bin Meng <[email protected]> Signed-off-by: Jagan Teki <[email protected]>
2015-10-25sf: Update status reg check in spi_flash_cmd_wait_readyJagan Teki
Current flash wait_ready logic is not modular to add new register status check, hence updated the status check for adding few more register checks in future. Below are the sf speed runs with 'sf update' on whole flash, 16MiB. => sf update 0x100 0x0 0x1000000 device 0 whole chip 16777216 bytes written, 0 bytes skipped in 59.564s, speed 289262 B/s => sf update 0x100 0x0 0x1000000 device 0 whole chip 16777216 bytes written, 0 bytes skipped in 62.549s, speed 275036 B/s => sf update 0x100 0x0 0x1000000 device 0 whole chip 16777216 bytes written, 0 bytes skipped in 61.276s, speed 284359 B/s Cc: Simon Glass <[email protected]> Cc: Marek Vasut <[email protected]> Cc: Michal Simek <[email protected]> Cc: Siva Durga Prasad Paladugu <[email protected]> Cc: Stefan Roese <[email protected]> Cc: Tom Warren <[email protected]> Cc: Tom Rini <[email protected]> Tested-by: Jagan Teki <[email protected]> Signed-off-by: Jagan Teki <[email protected]> Tested-by: Bin Meng <[email protected]>
2015-10-25sf: Make flash->flags use for generic usageJagan Teki
Use the flash->flags for generic usage, not only for dm-spi-flash, this will be used for future flag additions. [Correct the spi flash flags detect logic] Signed-off-by: Bin Meng <[email protected]> Tested-by: Bin Meng <[email protected]> Signed-off-by: Jagan Teki <[email protected]>
2015-10-25sf: Optimize BAR write codeJagan Teki
Optimized spi-flash bar writing code and also removed unnecessary bank_sel in read_ops. Cc: Simon Glass <[email protected]> Cc: Michal Simek <[email protected]> Cc: Siva Durga Prasad Paladugu <[email protected]> Signed-off-by: Jagan Teki <[email protected]>
2015-10-25sf: Add spi_flash_read_barJagan Teki
Add spi_flash_read_bar function for reading bar and discovering bar commands at probe time. Cc: Michal Simek <[email protected]> Cc: Siva Durga Prasad Paladugu <[email protected]> Signed-off-by: Jagan Teki <[email protected]>
2015-10-25sf: Return bank_sel, if flash->bank_curr == bank_selJagan Teki
If computed bank_sel is same as flash->bank_curr which is computed at probe time, then return the bank_sel instead of zero. Cc: Michal Simek <[email protected]> Cc: Siva Durga Prasad Paladugu <[email protected]> Signed-off-by: Jagan Teki <[email protected]>
2015-10-25spi: zynq_spi: Remove unneeded headersJagan Teki
- Removed unneeded inclusion of header files - Add "Xilinx" on license text Cc: Michal Simek <[email protected]> Cc: Siva Durga Prasad Paladugu <[email protected]> Signed-off-by: Jagan Teki <[email protected]>
2015-10-25spi: zynq_qspi: Fix to configure CPOL, CPHA maskJagan Teki
priv->mode is initialized when .set_speed triggers with mode value, so checking mode for configuring CPOL, CPHA using priv->mode is invalid hence use mode from .set_speed argument, and at the end priv->mode will initialized with mode. This patch also replaces formatting string to use speed instead of mode in .set_speed ops. Signed-off-by: Jagan Teki <[email protected]>
2015-10-25sf: params: Add IS25LP128 part supportJagan Teki
Added support for IS25LP128 flash part. Signed-off-by: Jagan Teki <[email protected]> Cc: Siva Durga Prasad Paladugu <[email protected]> Cc: Michal Simek <[email protected]>
2015-10-25sf: params: Add IS25LP064 part supportJagan Teki
Added support for IS25LP064 flash part. Signed-off-by: Jagan Teki <[email protected]> Cc: Siva Durga Prasad Paladugu <[email protected]> Cc: Michal Simek <[email protected]>
2015-10-25sf: params: Add IS25LP032 part supportJagan Teki
Added support for IS25LP032 flash part. Signed-off-by: Jagan Teki <[email protected]> Cc: Siva Durga Prasad Paladugu <[email protected]> Cc: Michal Simek <[email protected]>
2015-10-25spi: zynq_spi: Store cs value into private dataJagan Teki
Store cs value into private data and use it while activating chipselect instead of passing through function. Signed-off-by: Jagan Teki <[email protected]>
2015-10-25spi: zynq_spi: Rename baudrate divisor mask nameJagan Teki
Rename ZYNQ_SPI_CR_BRD_MASK to ZYNQ_SPI_CR_BAUD_MASK for more readable. Signed-off-by: Jagan Teki <[email protected]>
2015-10-25spi: zynq_spi: Add config reg shift named macrosJagan Teki
Update the numerical values for baudrate and chipselect with config reg shift named macro's Signed-off-by: Jagan Teki <[email protected]>
2015-10-25spi: Kconfig: Add Zynq QSPI controller entryJagan Teki
Add Zynq QSPI controller Kconfig entry. Signed-off-by: Jagan Teki <[email protected]> Reviewed-by: Simon Glass <[email protected]> Acked-by: Michal Simek <[email protected]> Cc: Siva Durga Prasad Paladugu <[email protected]>
2015-10-25spi: Add zynq qspi controller driverJagan Teki
Added zynq qspi controller driver for Xilinx Zynq APSOC, this driver is driver-model driven with devicetree support. => sf probe SF: Detected S25FL128S_64K with page size 256 Bytes, erase size 64 KiB, total 16 MiB => mw.b 0x100 0xCC 0x1000000 => sf update 0x100 0x0 0x1000000 device 0 whole chip 16777216 bytes written, 0 bytes skipped in 59.842s, speed 289262 B/s => sf read 0x3000000 0x0 0x1000000 device 0 whole chip SF: 16777216 bytes @ 0x0 Read: OK => cmp.b 0x3000000 0x100 0x1000000 Total of 16777216 byte(s) were the same Signed-off-by: Jagan Teki <[email protected]> Reviewed-by: Simon Glass <[email protected]> Cc: Michal Simek <[email protected]> Acked-by: Siva Durga Prasad Paladugu <[email protected]> Tested-by: Jagan Teki <[email protected]>
2015-10-24Fix bad return value checks (detected with Coccinelle)Thomas Huth
In the "Getting Started with Coccinelle - KVM edition" presentation that has been held by Julia Lawall at the KVM forum 2015 (see the slides at http://events.linuxfoundation.org/sites/events/files/slides/tutorial_kvm_0.pdf), she pointed out some bad return value checks in U-Boot that can be detected with Coccinelle by using the following config file: @@ identifier x,y; identifier f; statement S; @@ x = f(...); ( if (x < 0) S | if ( - y + x < 0) S ) This patch now fixes these issues. Signed-off-by: Thomas Huth <[email protected]>
2015-10-24allow LED initialization without STATUS_LED_BOOTBernhard Nortmann
For current U-Boot to initialize status LEDs via status_led_init(), it is required to have both CONFIG_STATUS_LED and STATUS_LED_BOOT defined. This may be a particular concern with GPIO LEDs, where __led_init() is required to correctly set up the GPIO (gpio_request and gpio_direction_output). Without STATUS_LED_BOOT the initialization isn't called, which could leave the user with a non-functional "led" command - due to the fact that the LED routines in gpio_led.c use gpio_set_value() just fine, but the GPIO never got set up properly in the first place. I think having CONFIG_STATUS_LED is sufficient to justify a corresponding call to status_led_init(), even with no STATUS_LED_BOOT defined. To do so, common/board_r.c needs call that routine, so it now is exposed via status_led.h. Signed-off-by: Bernhard Nortmann <[email protected]> [trini: Add dummy __led_init to pca9551_led.c] Signed-off-by: Tom Rini <[email protected]>
2015-10-23add generic stubs for GPIO LEDsBernhard Nortmann
For boards that support LEDs driven via GPIO (CONFIG_GPIO_LED), it may be useful to have some generic stubs (wrapper functions) for the "colored" LEDs. This allows defining STATUS_LED_* values directly to GPIO numbers, e.g.: #define STATUS_LED_GREEN 248 /* = PH24 */ To keep those optional, it's probably best to introduce an additional configuration setting. I've chosen CONFIG_GPIO_LED_STUBS for that. Placing the code in drivers/misc/gpio_led.c also ensures that it automatically depends on CONFIG_GPIO_LED too. Signed-off-by: Bernhard Nortmann <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2015-10-23dm: tpm: Drop CONFIG_DM_TPMSimon Glass
Now that all TPM drivers use driver model, we can drop the special driver model CONFIG option. Signed-off-by: Simon Glass <[email protected]> Acked-by: Christophe Ricard<[email protected]>
2015-10-23dm: tpm: Every TPM drivers should depends on DM_TPMChristophe Ricard
Every TPM drivers should now depends on DM_TPM and not only TPM. Signed-off-by: Christophe Ricard <[email protected]> Reviewed-by: Tom Rini <[email protected]> Acked-by: Simon Glass <[email protected]>
2015-10-23dm: tpm: Remove every compilation switch for TPM driver modelChristophe Ricard
As every TPM drivers support UCLASS_TPM, we can only rely on DM_TPM functions. This simplify a bit the code. Signed-off-by: Christophe Ricard <[email protected]> Reviewed-by: Tom Rini <[email protected]> Acked-by: Simon Glass <[email protected]>
2015-10-23dm: tpm: Add Driver Model support for tpm_atmel_twi driverChristophe Ricard
tpm_atmel_twi can fit perfectly to the new UCLASS_TPM class. Signed-off-by: Christophe Ricard <[email protected]> Reviewed-by: Tom Rini <[email protected]> Acked-by: Simon Glass <[email protected]>
2015-10-23dm: tpm: Move tpm_tis_i2c to tpm_i2c_infineonChristophe Ricard
As there is no TCG specification or recommendation for i2c TPM 1.2, move tpm_tis_i2c driver to tpm_i2c_infineon. Other tpm vendors like Atmel or STMicroelectronics may have a different transport protocol for i2c. Signed-off-by: Christophe Ricard <[email protected]> Reviewed-by: Tom Rini <[email protected]> Acked-by: Simon Glass <[email protected]>
2015-10-23dm: Rename dev_get_parentdata() to dev_get_parent_priv()Simon Glass
The current name is inconsistent with other driver model data access functions. Rename it and fix up all users. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Joe Hershberger <[email protected]>
2015-10-23dm: keystone: serial: Add driver model supportLokesh Vutla
Add driver model support for keystone serial driver. Signed-off-by: Lokesh Vutla <[email protected]> Acked-by: Simon Glass <[email protected]>
2015-10-23net: convert altera_tse to driver model and phylibThomas Chou
Convert altera_tse to driver model and phylib. Signed-off-by: Thomas Chou <[email protected]> Reviewed-by: Marek Vasut <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2015-10-23nios2: convert altera sysid to driver modelThomas Chou
Convert altera sysid to driver model with misc uclass. Signed-off-by: Thomas Chou <[email protected]> Acked-by: Chin Liang See <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2015-10-23dm: implement a Miscellaneous uclassThomas Chou
Implement a Miscellaneous uclass with generic read or write operations. This class is used only for those do not fit other more general classes. Signed-off-by: Thomas Chou <[email protected]> Acked-by: Simon Glass <[email protected]>
2015-10-23serial: remove altera serial initializationsThomas Chou
Both altera_jtag_serial_initialize() and altera_serial_initialize() are no longer used after they are converted to driver model. Signed-off-by: Thomas Chou <[email protected]> Acked-by: Simon Glass <[email protected]> Acked-by: Marek Vasut <[email protected]>
2015-10-23nios2: convert altera timer to driver modelThomas Chou
Convert altera timer to driver model. Signed-off-by: Thomas Chou <[email protected]> Acked-by: Chin Liang See <[email protected]>
2015-10-23dm: implement a Timer uclassThomas Chou
Implement a Timer uclass to work with lib/time.c. Signed-off-by: Thomas Chou <[email protected]> Acked-by: Simon Glass <[email protected]>
2015-10-23nios2 : convert altera_pio to driver modelThomas Chou
Convert altera_pio to driver model. Signed-off-by: Thomas Chou <[email protected]> Acked-by: Chin Liang See <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2015-10-23spi : convert altera_spi to driver modelThomas Chou
Convert altera_spi to driver model Signed-off-by: Thomas Chou <[email protected]> Reviewed-by: Jagan Teki <[email protected]>
2015-10-23nios2: convert altera_uart to driver modelThomas Chou
Convert altera_uart to driver model. Signed-off-by: Thomas Chou <[email protected]> Reviewed-by: Simon Glass <[email protected]> Acked-by: Marek Vasut <[email protected]>
2015-10-23nios2: convert altera_jtag_uart to driver modelThomas Chou
Convert altera_jtag_uart to driver model. Signed-off-by: Thomas Chou <[email protected]> Acked-by: Marek Vasut <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2015-10-22drivers: gpio: omap: add support for parsing additional gpio parametersMugunthan V N
With DM_GPIO, gpio parameters like ACTIVE_(LOW/HIGH) are to be parsed in xlate gpio drivers-ops. Since xlate is not implemented in omap_gpio driver, the driver considers all gpio to be ACTIVE_HIGH which is the default case and fails to return actual gpio status for ACTIVE_LOW gpios. So adding .xlate ops to omap_gpio. Signed-off-by: Mugunthan V N <[email protected]> Reviewed-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2015-10-22drivers: serial: serial_omap: add comaptibles for all ti platformsMugunthan V N
Adding compatibles for am335x, am437x and dra7 platforms. Signed-off-by: Mugunthan V N <[email protected]> Reviewed-by: Lokesh Vutla <[email protected]>
2015-10-22drivers: serial: serial_omap: populate default clock frequency when not ↵Mugunthan V N
found in dt In some platforms like am437x, serial node is not populated with clock-frequency node. So in that case have a default clock-clock frequency. Signed-off-by: Mugunthan V N <[email protected]> Reviewed-by: Lokesh Vutla <[email protected]>
2015-10-22drivers: mmc: omap_hsmmc: convert driver to adopt device driver modelMugunthan V N
adopt omap_hsmmc driver to device driver model Signed-off-by: Mugunthan V N <[email protected]>
2015-10-22ARM: k2g: add SD card and eMMC supportRoger Quadros
Add MMC support for k2g Signed-off-by: Roger Quadros <[email protected]> Signed-off-by: Lokesh Vutla <[email protected]> Tested-by: Mugunthan V N <[email protected]>
2015-10-22driver: net: keystone_net: removing unused codeMugunthan V N
remove unused code as the same is achieved when configuring sgmii and link status is verifed. Signed-off-by: Mugunthan V N <[email protected]> Signed-off-by: Lokesh Vutla <[email protected]>
2015-10-22driver: net: keystone_net: add support for rgmii phyVitaly Andrianov
In K2G, Ethernet doesn't support SGMII instead it support RGMII, adding support to the driver to connect to RGMII phy. Signed-off-by: Vitaly Andrianov <[email protected]> Signed-off-by: Mugunthan V N <[email protected]> Signed-off-by: Lokesh Vutla <[email protected]>
2015-10-22dma: keystone_nav: Fix linkram sizeVitaly Andrianov
Fix Linkram size. Signed-off-by: Vitaly Andrianov <[email protected]> Signed-off-by: Mugunthan V N <[email protected]> Signed-off-by: Lokesh Vutla <[email protected]>
2015-10-22driver: net: keystone_net: fix phy mode configurationMugunthan V N
Phy mode is a board property and it can be different between multiple board and ports, so it should not be hardcoded in driver to one specific mode. So adding a field in eth_priv_t structure to pass phy mode to driver. Signed-off-by: Mugunthan V N <[email protected]> Signed-off-by: Lokesh Vutla <[email protected]>
2015-10-22remoteproc: Introduce a sandbox dummy driverNishanth Menon
Introduce a dummy driver for sandbox that allows us to verify basic functionality. This is not meant to do anything functional - but is more or less meant as a framework plumbing debug helper. The sandbox remoteproc driver maintains absolutey no states and is a simple driver which just is filled with empty hooks. Idea being to give an approximate idea to implement own remoteproc driver using this as a template. Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Nishanth Menon <[email protected]> Acked-by: Simon Glass <[email protected]>
2015-10-22drivers: Introduce a simplified remoteproc frameworkNishanth Menon
Many System on Chip(SoC) solutions are complex with multiple processors on the same die dedicated to either general purpose of specialized functions. Many examples do exist in today's SoCs from various vendors. Typical examples are micro controllers such as an ARM M3/M0 doing a offload of specific function such as event integration or power management or controlling camera etc. Traditionally, the responsibility of loading up such a processor with a firmware and communication has been with a High Level Operating System(HLOS) such as Linux. However, there exists classes of products where Linux would need to expect services from such a processor or the delay of Linux and operating system being able to load up such a firmware is unacceptable. To address these needs, we need some minimal capability to load such a system and ensure it is started prior to an Operating System(Linux or any other) is started up. NOTE: This is NOT meant to be a solve-all solution, instead, it tries to address certain class of SoCs and products that need such a solution. A very simple model is introduced here as part of the initial support that supports microcontrollers with internal memory (no MMU, no execution from external memory, or specific image format needs). This basic framework can then (hopefully) be extensible to other complex SoC processor support as need be. Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Nishanth Menon <[email protected]> Acked-by: Simon Glass <[email protected]>