summaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)Author
2016-02-18drivers: usb: ohci-at91: clean up the PLLB codeWenyou Yang
Due to introducing the new PLLB clock handle functions, use these functions to clean up the PLLB enable/disable code. Signed-off-by: Wenyou Yang <[email protected]> Reviewed-by: Andreas Bießmann <[email protected]> Tested-by: Heiko Schocher <[email protected]>
2016-02-18drivers: usb: atmel: clean up the UTMI PLL codeWenyou Yang
Due to introducing the new UTMI PLL clock handle functions, use these function to reduce the duplicated code. Signed-off-by: Wenyou Yang <[email protected]> Tested-by: Heiko Schocher <[email protected]> Reviewed-by: Andreas Bießmann <[email protected]>
2016-02-18drivers: at91: clean up peripheral clock codeWenyou Yang
Due to introducing the new peripheral clock handle functions, use these functions to reduce the duplicated code. Signed-off-by: Wenyou Yang <[email protected]> Tested-by: Heiko Schocher <[email protected]> [fixup for missing clk.h in at91_emac.c] Signed-off-by: Andreas Bießmann <[email protected]>
2016-02-18net: phy: marvell: Fix problem with phy_reset() clearing BMCRStefan Roese
With commit a058052c [net: phy: do not read configuration register on reset], phy_reset() will clear the BMCR register. Resulting in bit 12 being cleared (A/N enable). This leads to autonegotiation link problems, at least on the Marvell Armada ClearFog board. I suspect that other boards using this driver will be affected as well. At the of m88e1111s_config(), phy_reset() is called. This is not needed for the PHY to load the changed configuration, as phy_reset() is called a few lines before already. So lets call genphy_restart_aneg() here instead to start the AN correctly. Tested on clearfog. Signed-off-by: Stefan Roese <[email protected]> Cc: Stefan Agner <[email protected]> Cc: Hao Zhang <[email protected]> Cc: Michal Simek <[email protected]> Cc: Andy Fleming <[email protected]> Cc: Joe Hershberger <[email protected]> Acked-by: Joe Hershberger <[email protected]>
2016-02-18net: phy: marvell: Call phy_reset() where possibleStefan Roese
Instead of coding the soft PHY reset function multiple times in marvell.c, lets call the common phy_reset() function from phy.c. Signed-off-by: Stefan Roese <[email protected]> Cc: Stefan Agner <[email protected]> Cc: Hao Zhang <[email protected]> Cc: Michal Simek <[email protected]> Cc: Andy Fleming <[email protected]> Cc: Joe Hershberger <[email protected]> Acked-by: Joe Hershberger <[email protected]>
2016-02-16tegra: video: Move LCD driver to use the DM PWM driverSimon Glass
Use the driver-model PWM driver in preference to the old code. Signed-off-by: Simon Glass <[email protected]> Acked-by: Anatolij Gustschin <[email protected]> Signed-off-by: Tom Warren <[email protected]>
2016-02-16tegra: Convert CONFIG_PWM_TEGRA to KconfigSimon Glass
Move this option to Kconfig and clean up the header files. Adjust the only user (the LCD driver) to work with the new driver. Signed-off-by: Simon Glass <[email protected]> Signed-off-by: Tom Warren <[email protected]>
2016-02-16tegra: video: Move all fdt-decoding into a single functionSimon Glass
Join the two functions which decode the device tree and put them in the ofdata_to_platdata() method. Signed-off-by: Simon Glass <[email protected]> Acked-by: Anatolij Gustschin <[email protected]> Signed-off-by: Tom Warren <[email protected]>
2016-02-16tegra: video: Move LCD enums into the driverSimon Glass
There is no need to have these in a separate file as they are not referenced from anywhere else. Signed-off-by: Simon Glass <[email protected]> Acked-by: Anatolij Gustschin <[email protected]> Signed-off-by: Tom Warren <[email protected]>
2016-02-16tegra: video: Remove the static variablesSimon Glass
We can move the static variables into the driver-private data. Signed-off-by: Simon Glass <[email protected]> Acked-by: Anatolij Gustschin <[email protected]> Signed-off-by: Tom Warren <[email protected]>
2016-02-16tegra: video: Convert tegra20 LCD driver to driver modelSimon Glass
Move this driver over to use driver model. This involves rearranging the code somewhat. The effect is that everything is run from the probe() method. Boards which use this are fixed up, but only seaboard is tested. Signed-off-by: Simon Glass <[email protected]> Acked-by: Anatolij Gustschin <[email protected]> Signed-off-by: Tom Warren <[email protected]>
2016-02-16tegra: video: Merge the two config structures togetherSimon Glass
We have a structure for the display panel and another for the controller. There is some overlap between them. Merge them to simplify the driver. Signed-off-by: Simon Glass <[email protected]> Acked-by: Anatolij Gustschin <[email protected]> Signed-off-by: Tom Warren <[email protected]>
2016-02-16tegra: video: Move the check for CONFIG_OF_CONTROL to KconfigSimon Glass
We can check this in Kconfig now. Signed-off-by: Simon Glass <[email protected]> Acked-by: Anatolij Gustschin <[email protected]> Signed-off-by: Tom Warren <[email protected]>
2016-02-16tegra: video: Merge the display driver into one fileSimon Glass
At present we have code in arch/arm and code in drivers/video. Move it all into drivers/video since it is a display driver and our current approach is to put all driver code in drivers/. Make a few functions static now that they are not used outside the file. Signed-off-by: Simon Glass <[email protected]> Acked-by: Anatolij Gustschin <[email protected]> Signed-off-by: Tom Warren <[email protected]>
2016-02-16tegra: video: Rename CONFIG_VIDEO_TEGRA to CONFIG_VIDEO_TEGRA20Simon Glass
This option refers only to the tegra20 video driver, so name it as such to avoid confusion with tegra124. Also move this option to Kconfig. Signed-off-by: Simon Glass <[email protected]> Acked-by: Anatolij Gustschin <[email protected]> Signed-off-by: Tom Warren <[email protected]>
2016-02-16tegra: nyan-big: Move the LCD driver to driver modelSimon Glass
Adjust the driver to use driver model. The SOR becomes a bridge device. We use the normal simple_panel driver to handle the display itself. We also need to enable some options such as regulators, PWMs and DM_VIDEO itself. Signed-off-by: Simon Glass <[email protected]> Acked-by: Anatolij Gustschin <[email protected]> Signed-off-by: Tom Warren <[email protected]>
2016-02-16tegra: lcd: Merge tegra124-lcd.c into display.cSimon Glass
There isn't a lot of benefit of have two separate files. With driver model the code needs to be in the same driver, so it's better to have it in the same file. Signed-off-by: Simon Glass <[email protected]> Acked-by: Anatolij Gustschin <[email protected]> Signed-off-by: Tom Warren <[email protected]>
2016-02-16tegra: pwm: Add a driver for the tegra PWMSimon Glass
This PWM supports four channels. The driver always uses the 32KHz clock, and adjusts the duty cycle accordingly. Signed-off-by: Simon Glass <[email protected]> Signed-off-by: Tom Warren <[email protected]>
2016-02-16tegra: gpio: Show the GPIO value for outputsSimon Glass
The tegra GPIO controller has two ways of reading the value of a GPIO. It can supply the 'input' value (which is the value read from the pin) and the 'output' value (which is the value being driven from the pin. With a GPIO set to output mode, the 'input' value is always low which is not very useful. This has the unfortunate result that setting a GPIO high still leaves it showing as low in the 'gpio status' command. Adjust the driver to check which direction the GPIO is set to, then read the value from the appropriate register: 'input' for input GPIOs, 'output' for output GPIOs. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Joe Hershberger <[email protected]> Signed-off-by: Tom Warren <[email protected]>
2016-02-16tegra: mmc: Fix comments in the MMC driver initSimon Glass
Fix the SoC names in two comments. Signed-off-by: Simon Glass <[email protected]> Signed-off-by: Tom Warren <[email protected]>
2016-02-16dm: video: Flush the cache after a puts()Simon Glass
This helps keep the display consistent. puts() is used when printing the prompt, so is a useful way to make sure the current display contents is visible. Signed-off-by: Simon Glass <[email protected]> Acked-by: Anatolij Gustschin <[email protected]> Signed-off-by: Tom Warren <[email protected]>
2016-02-16tegra: keyboard: Fix the init orderSimon Glass
We need to add the base tables before adding the function tables. Fix the init order so the keyboard scans keys correctly. Signed-off-by: Simon Glass <[email protected]> Signed-off-by: Tom Warren <[email protected]>
2016-02-14Merge branch 'master' of git://git.denx.de/u-boot-uniphierTom Rini
2016-02-14usb: remove UniPhier EHCI driverMasahiro Yamada
Now, all this driver does can be covered by the generic EHCI driver (drivers/usb/host/ehci-generic.c). UniPhier SoCs have switched to use it. Delete this driver rather than bothering to convert it to Driver Model. Signed-off-by: Masahiro Yamada <[email protected]> Acked-by: Marek Vasut <[email protected]>
2016-02-14clk: uniphier: add Media I/O clock driver for UniPhier SoCsMasahiro Yamada
This is the initial commit for the UniPhier clock drivers. Currently, only the Media I/O clock is supported. Signed-off-by: Masahiro Yamada <[email protected]>
2016-02-12arasan: nfc: Add initial nand driver support for arasanSiva Durga Prasad Paladugu
Added initial nand driver support for arasan nand flash controller.This supports nand erase,nand read, nand write This uses the hardware ECC for read and write operations ZynqMP uses this driver. Signed-off-by: Siva Durga Prasad Paladugu <[email protected]> [scottwood: Fix checkpatch warnings] Signed-off-by: Scott Wood <[email protected]>
2016-02-12zynqmp: nand: Add Nand driver support for zynqmpSiva Durga Prasad Paladugu
Add nand driver support for zynqmp. The Nand controller used in ZynqMP is Arasan Nand Flash controller. Signed-off-by: Siva Durga Prasad Paladugu <[email protected]> [scottwood: Fix checkpatch warning] Signed-off-by: Scott Wood <[email protected]>
2016-02-12mtd: pxa3xx_nand: Don't alloc unneeded memoryKevin Smith
The allocation size is reduced from what was introduced from the Linux kernel, as U-boot uses the statically allocated nand_info instead of needing to dynamically allocate an mtd_info instance. Signed-off-by: Kevin Smith <[email protected]> Cc: Stefan Roese <[email protected]> Cc: Luka Perkov <[email protected]> Cc: Scott Wood <[email protected]>
2016-02-12mtd: pxa3xx_nand: Correct offset calculationKevin Smith
Correct some pointer math in initialization. An offset was added to a struct-typed pointer instead of one casted to a byte-size, resulting in a much larger offset than intended. Signed-off-by: Kevin Smith <[email protected]> Cc: Stefan Roese <[email protected]> Cc: Luka Perkov <[email protected]> Cc: Scott Wood <[email protected]>
2016-02-12mtd: pxa3xx_nand: Correct null dereferenceKevin Smith
Correct a null pointer dereference in board_nand_init(). Zeroed memory was allocated, then immediately dereferenced. The dereference is completely removed, since this pointer is later initialized in alloc_nand_resources. Signed-off-by: Kevin Smith <[email protected]> Cc: Stefan Roese <[email protected]> Cc: Luka Perkov <[email protected]> Cc: Scott Wood <[email protected]>
2016-02-12nand: mxs: fix error handling for mxs_nand_initPeng Fan
Fix error handling for mxs_nand_init. The original error handling is wrong for err2 and err1. Should first free desc[x], then free desc. This patch also correctly handle err3, should use MXS_DMA_CHANNEL_AHB_APBH_GPMI0 as the check point. Cc: Stefano Babic <[email protected]> CC: Fabio Estevam <[email protected]> Cc: Scott Wood <[email protected]> Cc: Marek Vasut <[email protected]> Signed-off-by: Peng Fan <[email protected]> Reviewed-by: Marek Vasut <[email protected]>
2016-02-11Merge branch 'master' of git://git.denx.de/u-boot-videoTom Rini
2016-02-11dm: video: Add a temporary work-around for old stdout varSimon Glass
Boards with a saved environment may use 'lcd' in their stdout environment variable, expecting that this will enable output to the LCD. When the board moves to use driver model for video, this will no-longer work. Add a work-around to fix this. A warning messages is printed, and we will remove the work-around at the end of 2016. Signed-off-by: Simon Glass <[email protected]> Acked-by: Anatolij Gustschin <[email protected]> Tested-by: Stephen Warren <[email protected]>
2016-02-08s3c24xx: serial: Remove dead codeDavid Müller (ELSOFT AG)
Signed-off-by: David Müller <[email protected]>
2016-02-08Remove unused CONFIG_HWFLOW option and associated dead code.David Müller (ELSOFT AG)
Signed-off-by: David Müller <[email protected]>
2016-02-08Remove unused CONFIG_MODEM_SUPPORT option and associated dead code.David Müller (ELSOFT AG)
Signed-off-by: David Müller <[email protected]>
2016-02-08drivers: net: keystone_net: convert driver to adopt device driver modelMugunthan V N
Adopt keystone_net driver to adopt device driver model Signed-off-by: Mugunthan V N <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2016-02-08drivers: net: phy: micrel: fix build errors with CONFIG_DM_ETHMugunthan V N
When Micrel phy is selected without CONFIG_PHY_MICREL_KSZ9031 or CONFIG_PHY_MICREL_KSZ9021 there is a build error. Fixing this by adding proper ifdefs drivers/net/phy/micrel.c:370:39: error: array type has incomplete element type static const struct ksz90x1_reg_field ksz9031_ctl_grp[] = ^ drivers/net/phy/micrel.c:372:39: error: array type has incomplete element type static const struct ksz90x1_reg_field ksz9031_clk_grp[] = ^ drivers/net/phy/micrel.c: In function ‘ksz9031_of_config’: drivers/net/phy/micrel.c:377:23: error: array type has incomplete element type struct ksz90x1_ofcfg ofcfg[] = { ^ drivers/net/phy/micrel.c:379:13: error: ‘ksz90x1_rxd_grp’ undeclared (first use in this function) { MII_KSZ9031_EXT_RGMII_RX_DATA_SKEW, 2, ksz90x1_rxd_grp, 4 }, ^ drivers/net/phy/micrel.c:379:13: note: each undeclared identifier is reported only once for each function it appears in drivers/net/phy/micrel.c:380:13: error: ‘ksz90x1_txd_grp’ undeclared (first use in this function) { MII_KSZ9031_EXT_RGMII_TX_DATA_SKEW, 2, ksz90x1_txd_grp, 4 }, ^ drivers/net/phy/micrel.c:386:3: warning: implicit declaration of function ‘ksz90x1_of_config_group’ [-Wimplicit-function-declaration] ret = ksz90x1_of_config_group(phydev, &(ofcfg[i])); ^ drivers/net/phy/micrel.c:377:23: warning: unused variable ‘ofcfg’ [-Wunused-variable] struct ksz90x1_ofcfg ofcfg[] = { ^ drivers/net/phy/micrel.c: At top level: drivers/net/phy/micrel.c:370:39: warning: ‘ksz9031_ctl_grp’ defined but not used [-Wunused-variable] static const struct ksz90x1_reg_field ksz9031_ctl_grp[] = ^ drivers/net/phy/micrel.c:372:39: warning: ‘ksz9031_clk_grp’ defined but not used [-Wunused-variable] static const struct ksz90x1_reg_field ksz9031_clk_grp[] = ^ scripts/Makefile.build:277: recipe for target 'drivers/net/phy/micrel.o' failed make[1]: *** [drivers/net/phy/micrel.o] Error 1 Makefile:1201: recipe for target 'drivers/net/phy' failed make: *** [drivers/net/phy] Error 2 make: *** Waiting for unfinished jobs.... Signed-off-by: Mugunthan V N <[email protected]> Reviewed-by: Tom Rini <[email protected]> Acked-by: Joe Hershberger <[email protected]>
2016-02-08dm: pxa: serial: Drop serial_sa1100 serial driverSimon Glass
This does not appear to be used, and has not been converted to driver model by the deadline (doc/driver-model/serial-howto.txt). Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2016-02-08dm: serial: Drop serial_max3100 serial driverSimon Glass
This does not appear to be used, and has not been converted to driver model by the deadline (doc/driver-model/serial-howto.txt). Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2016-02-08dm: freescale: serial: Drop serial_imx serial driverSimon Glass
This does not appear to be used, and has not been converted to driver model by the deadline (doc/driver-model/serial-howto.txt). Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2016-02-08dm: opencores: Drop opencores_yanu serial driverSimon Glass
This does not appear to be used, and has not been converted to driver model by the deadline (doc/driver-model/serial-howto.txt). Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2016-02-08dm: freescale: Drop mxs_auart serial driverSimon Glass
This does not appear to be used, and has not been converted to driver model by the deadline (doc/driver-model/serial-howto.txt). Signed-off-by: Simon Glass <[email protected]>
2016-02-08serial: serial_stm32: move clock config from driver to boardVikas Manocha
This patch removes the uart clock enable from serial driver & move it in the board code. Signed-off-by: Vikas Manocha <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2016-02-08Merge branch '[email protected]' of git://git.denx.de/u-boot-stagingTom Rini
2016-02-06video: bcm2835: use bus_to_phys() on FB addressStephen Warren
The FB address is generated by the firmware running on the GPU/VideoCore and is a "bus" address. This address is the other side of an IOMMU from the ARM upon which U-Boot is running. Use bus_to_phys() to convert this to an ARM physical address. Without this, U-Boot seems to work just fine, but once the Linux kernel boots on an RPi2, accessing the FB memory often causes a hard system hang. This is related to: 122426d46e31 ARM: bcm2835: use phys_to_bus() for mbox 5c0beb5c58c8 usb: dwc2: use phys_to_bus/bus_to_phys 79340db7f1f6 ARM: bcm2835: implement phys_to_bus/bus_to_phys Signed-off-by: Stephen Warren <[email protected]>
2016-02-06net: davinci_emac: fix NULL check after pointer dereferenceVishwas Srivastava
NULL check is made after the pointer dereference. This patch fixes this issue. Signed-off-by: Vishwas Srivastava <[email protected]> CC: Joe Hershberger <[email protected]> Reviewed-by: Tom Rini <[email protected]> Acked-by: Joe Hershberger <[email protected]> Signed-off-by: Anatolij Gustschin <[email protected]>
2016-02-06net: fix wrong initialization in davinci-emac driverVishwas Srivastava
emac module of the davinci platform supports only 8 tx and 8 rx channels (total 16). emac driver for davinci platform, however, while doing initialization of the dma descriptor head pointers, wrongly initializes the 16 head pointers (instead of 8) for tx dma and 16 head pointers (insted of 8) for rx dma, which is wrong. The result is, that this register initilization spills over the other registers which was not intended and is undesirable. This patch fixes this problem. Signed-off-by: Vishwas Srivastava <[email protected]> CC: Joe Hershberger <[email protected]> Acked-by: Joe Hershberger <[email protected]> Signed-off-by: Anatolij Gustschin <[email protected]>
2016-02-06video: Use 'int' for loop variables instead of shortSimon Glass
Using short doesn't save anything and is confusing when the width and height variables are ulong. This may fix Coverity CID134902 but I doubt it. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2016-02-06Use correct spelling of "U-Boot"Bin Meng
Correct spelling of "U-Boot" shall be used in all written text (documentation, comments in source files etc.). Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Heiko Schocher <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Minkyu Kang <[email protected]>