summaryrefslogtreecommitdiffstats
path: root/drivers
Commit message (Collapse)AuthorAgeFilesLines
* mtd: nand: omap_gpmc: fix: remove bch4 string extantHeinrich.Toews@wago.com2018-05-311-1/+0
| | | | | | | | | | | Remove an erroneous bch4 string leftover that leads to a false ecc mode mapping. BCH4 support was previously removed by Teresa Remmet: d316cda 'mtd: nand: omap_gpmc: Remove BCH4 support' Signed-off-by: Heinrich Toews <heinrich.toews@wago.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* mtd: nand: nand_omap_gpmc: Fix ecc stepsTeresa Remmet2018-05-241-60/+55
| | | | | | | | | | | | | | | | The eccsteps where set wrong for OMAP_ECC_BCH8_CODE_HW_ROMCODE. So the ECC was only corrected for the first 512 bytes chunk of a 2k page. Moved out the ecc step iteration out of the correcting loop to make it more alike the generic nand functions. And made sure that the ECC is caclulated for all chunks. This patch is based on work of Sascha Hauer. Fixes commit dec7b4d2bf9c ("mtd: nand_omap_gpmc: fix BCH error correction"). Signed-off-by: Teresa Remmet <t.remmet@phytec.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Merge branch 'for-next/socfpga'Sascha Hauer2018-05-091-0/+1
|\
| * net: make SoCFPGA-specific designware driver work againAntony Pavlov2018-04-121-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | If MFD_SYSCON is disabled in .config then socfpga_designware_eth probe fails with this message: socfpga_designware_eth ff702000.ethernet: Could not get sysmgr-syscon node Thanks to Steffen for hint! Cc: Steffen Trumtrar <s.trumtrar@pengutronix.de> Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | Merge branch 'for-next/serdev'Sascha Hauer2018-05-099-82/+6
|\ \
| * | serial: Drop .remove functions from all driversAndrey Smirnov2018-04-178-82/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Depending on specifics, some 'serdev' devices might need prevent parent console device from being removed and corresponding memory deallocated to properly function until the very end of Barebox's execution. An example of such a use-case would be a reset handler relying on a serdev device for transport. To avoid having to develop complicatione reference counting/ownership scheme drop all of the code that calls console_unregister() and frees the memory effectively making the problem above impossible to arise. All of the de-initialization that serial drivers were doing in their .remove functions was somewhat superflous anyway, so this change should be pretty harmless. Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | console: Add simplified 'serdev' framework from Linux kernelAndrey Smirnov2018-04-171-0/+6
| |/ | | | | | | | | | | | | | | | | Port 'serdev' UART-slave deivce framework found in recent Linux kernels (post 4.13) in order to be able to port 'serdev' slave drivers from Linux. Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | Merge branch 'for-next/net'Sascha Hauer2018-05-091-0/+1
|\ \
| * | net: phy: micrel: fix too late link upChristian Hemp2018-04-121-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit a4cee7207a1 ("net: phy: micrel: Add workaround for bad autoneg") by Philipp Zabel <p.zabel@pengutronix.de>: Based on kernel commit d2fd719bcb0e ("net/phy: micrel: Add workaround for bad autoneg") by Nathan Sullivan <nathan.sullivan@ni.com>: Very rarely, the KSZ9031 will appear to complete autonegotiation, but will drop all traffic afterwards. When this happens, the idle error count will read 0xFF after autonegotiation completes. Reset the PHY when in that state. is it possible that we get the link to late and barebox reports "Network is down". The problem is that ksz9031_config_init is called again in an error case. In this case autoneg will restart but waiting for finish is missing. Signed-off-by: Christian Hemp <c.hemp@phytec.de> Tested-by: Stefan Müller-Klieser <s.mueller-klieser@phytec.de>
* | | Merge branch 'for-next/misc'Sascha Hauer2018-05-099-5/+1203
|\ \ \
| * | | watchdog: Port RAVE SP watchdog driver from Linux kernelAndrey Smirnov2018-05-043-0/+432
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Port RAVE SP watchdog driver from Linux kernel Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | mfd: Port RAVE SP driver from Linux kernelAndrey Smirnov2018-05-043-0/+767
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Port MFD driver for RAVE SP from Linux kernel. Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | usbnet: increase bulk message timeoutNikita Yushchenko2018-05-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Timeout of 1ms is too low for case when device operates in Full Speed mode. This causes most incoming frames to be lost. Since timeout is only used to get out of polling loop in case of no response from hardware, increasing it should be safe for all platforms. Signed-off-by: Nikita Yushchenko <nikita.yoush@cogentembedded.com> Tested-By: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | video: tc358767: don't link AUX i2c adapter to parent OF nodeLucas Stach2018-04-251-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Otherwise the i2c core will try to populate the TC358767 child nodes as i2c devices, which is wrong. Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | pinctrl-vf610: Make use of BIT macroAndrey Smirnov2018-04-111-3/+3
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | | | Merge branch 'for-next/mfd-dialog'Sascha Hauer2018-05-092-12/+149
|\ \ \ \
| * | | | mfd: da9063: update Kconfig for DA9062Stefan Christ2018-04-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Stefan Christ <s.christ@phytec.de> Signed-off-by: Christian Hemp <c.hemp@phytec.de>
| * | | | mfd: da9063: read out and report device idEnrico Scholz2018-04-121-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | just some kind of debugging atm... Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de> Tested-by: Stefan Christ <s.christ@phytec.de> Signed-off-by: Christian Hemp <c.hemp@phytec.de>
| * | | | mfd: da9063: added of_device_id informationEnrico Scholz2018-04-121-0/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de> Tested-by: Stefan Christ <s.christ@phytec.de> Signed-off-by: Christian Hemp <c.hemp@phytec.de>
| * | | | mfd: da9063: add device specific init functionEnrico Scholz2018-04-121-1/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Provide some more information about the used PMIC type; later patches will add support for DA9062 which needs a custom init function. Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de> Tested-by: Stefan Christ <s.christ@phytec.de> Signed-off-by: Christian Hemp <c.hemp@phytec.de>
| * | | | mfd: da9063: use da906x_reg_update()Enrico Scholz2018-04-121-9/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use the previously added da906x_reg_update() function. NOTE: patch depends on another patchset ("da9063: reset watchdog timer"), Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de> Tested-by: Stefan Christ <s.christ@phytec.de> Signed-off-by: Christian Hemp <c.hemp@phytec.de>
| * | | | mfd: da9063: added generic reg_update() functionEnrico Scholz2018-04-121-0/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Used to set or clear bits of a register. The calculation of 'client' might look odd and unnecessary complicated. But style prepares access to other register banks which is added in following patches. Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de> Tested-by: Stefan Christ <s.christ@phytec.de> Signed-off-by: Christian Hemp <c.hemp@phytec.de>
| * | | | mfd: da9063: reset watchdog timerEnrico Scholz2018-04-121-2/+34
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Setting the new timeout does not suffice for restarting the watchdog; the self-clearing bit in CONTROL_F must be set too. barebox does not provide a ping function in its watchdog api to restart the watchdog timer. Detect ping vs. set_timeout() by comparing the actual with the previous timeout value. Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de> Tested-by: Stefan Christ <s.christ@phytec.de> Signed-off-by: Christian Hemp <c.hemp@phytec.de>
* | | | Merge branch 'for-next/imx'Sascha Hauer2018-05-092-4/+26
|\ \ \ \
| * | | | serial/lpuart: Do not enable UART FIFOAndrey Smirnov2018-04-161-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Using FIFO in LPUART results in subtle serial input draining issues which are quite difficult to reproduce and troubleshoot. Since the change offered only moderate performance gain revert the code to operate in no-FIFO mode to avoid FIFO-related problems alltogether. Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | clk: i.MX6: Fix enfc_sel for i.MX6dqpSascha Hauer2018-04-161-1/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The plus SoC variants have some differences in the clock controller. For now fix the NAND controller clock. There are more differences that might be relevant, but for now are left for a future excercise. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | clk: i.MX6: Adjust GPMI parent clockSascha Hauer2018-04-121-0/+7
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Based on the corresponding Kernel code: The gpmi needs 100MHz frequency in the EDO/Sync mode, We can not get the 100MHz from the pll2_pfd0_352m. So choose pll2_pfd2_396m as enfc_sel's parent. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | | | Merge branch 'for-next/fb'Sascha Hauer2018-05-092-1/+4
|\ \ \ \
| * | | | video: IPUv3-LDB: demote dual-channel message to info levelLucas Stach2018-04-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Dual channel mode is a valid mode of operation, so there is no reason to print this at the warning level. Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | fb: reject enable request when framebuffer has no modeLucas Stach2018-04-091-0/+3
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If no display is connected or the display modes are incompatible with the scanout hardware we might end up with a registered framebuffer with no modes. Trying to enable such a framebuffer will blow up with NULL ptr dereferences in various places, so just don't do it. Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | | | Merge branch 'for-next/aiodev'Sascha Hauer2018-05-094-0/+256
|\ \ \ \
| * | | | aiodev: mc13xxx: add adc supportAndrey Gusakov2018-04-104-0/+244
| | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Andrey Gusakov <andrey.gusakov@cogentembedded.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | | mfd: mc13xxx: add function returning mc13xxx typeAndrey Gusakov2018-04-101-0/+12
| |/ / / | | | | | | | | | | | | | | | | Signed-off-by: Andrey Gusakov <andrey.gusakov@cogentembedded.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | | | watchdog: omap: set hwdev before call watchdog_registerAndreas Schmidt2018-04-251-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since watchdog_register access to hwdev (see commit 65a644388e845bde01215bf378d4df2a6a260a6a) hwdev has to be initiate/set before calling watchdog_register. Signed-off-by: Andreas Schmidt <mail@schmidt-andreas.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | | | watchdog: core: check hwdev before use itAndreas Schmidt2018-04-251-2/+4
| |/ / |/| | | | | | | | | | | | | | | | | | | | Avoid null pointer access, if hwdev was not set before call watchdog_register. Signed-off-by: Andreas Schmidt <mail@schmidt-andreas.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | | mfd: da9063: Fix compilationSascha Hauer2018-04-121-1/+1
|/ / | | | | | | | | | | Fixes: 1ef7cd07a3 watchdog: rename dev to hwdev Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | Merge branch 'for-next/watchdog'Sascha Hauer2018-04-069-36/+148
|\ \
| * | watchdog: add watchdog pollerOleksij Rempel2018-03-262-6/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In some cases it is practical to supervise as much as possible of the barebox execution with a watchdog (or multiple watchdogs). This patch provides an async poller for watchdog core framework which can be enabled by the user and stores this configuration to nv. Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | watchdog: provide timeout_cur valueOleksij Rempel2018-03-231-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | timeout_cur will be used for watchdog poller. Provided values should be good enough for most users and still can be changed for separate projects and fit to needed requirements. Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | watchdog: set some reasonable timeout_max value if no other is availableOleksij Rempel2018-03-231-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | Some drivers do not provide timeout_max value. Using some value is probably better then setting timeout_max to 0. Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | watchdog: move max timeout test in to wd_coreOleksij Rempel2018-03-235-23/+16
| | | | | | | | | | | | | | | | | | | | | this also will be needed for watchdog poller as well Signed-off-by: Oleksij Rempel <linux@rempel-privat.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | watchdog: register watchdog virtual device with short name wdogOleksij Rempel2018-03-231-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the watchdog hwdev is usually named with devicetree schema which is not practical for CLI. On device registration "wdog" will be extended with some index number extracted from devicetree (if awailable) or automatically assigned first available number. End result will be "wdog0" .. etc. Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | watchdog: rename dev to hwdevSascha Hauer2018-03-228-10/+10
| | | | | | | | | | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | | Merge branch 'for-next/mtd'Sascha Hauer2018-04-062-0/+5
|\ \ \
| * | | mtd: spi-nor: add manufacturer IDs for ISSI and Winbondmichael grassmann2018-03-221-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch includes new NOR flash IDs to support flashes from the manufacturers ISSI and Winbond - ISSI IS25LP128-JBLA3 and IS25LP128-JBLE - Winbond W25Q128JVSIM Signed-off-by: michael grassmann <m.grassmann@phytec.de> Signed-off-by: Christian Hemp <c.hemp@phytec.de>
| * | | mtd: nand: Add Winbond manufacturer IDStefan Riedmueller2018-03-221-0/+1
| |/ / | | | | | | | | | | | | | | | | | | | | | Add Winbond 0xef manufacturer ID for NAND flashes to support Winbond as an additional manufacturer. Signed-off-by: Stefan Riedmueller <s.riedmueller@phytec.de> Signed-off-by: Christian Hemp <c.hemp@phytec.de>
* | | Merge branch 'for-next/misc'Sascha Hauer2018-04-062-5/+5
|\ \ \
| * | | of: demote "no ranges" message to debug levelLucas Stach2018-03-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are valid cases where there is no way to translate a OF node to a MMIO address via ranges, so do the same as the Linux kernel and don't print an error message in that case, but make it available as a debug message. Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * | | video: tc358767: register aux i2c bus after validating linkAndrey Gusakov2018-03-121-4/+4
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | Register AUX i2c adapter only if AUX link is functional. This should avoid possible hung during tc358767 probe when no display connected. Signed-off-by: Andrey Gusakov <andrey.gusakov@cogentembedded.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | | Merge branch 'for-next/imx'Sascha Hauer2018-04-064-2/+24
|\ \ \