summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-03-04dt-bindings: micrel-ksz90x1: Add rxc-dll and txc-dll propertiesPhilippe Schenker
This commit adds two properties to control the RX DLL and TX DLL 2ns delay on RXC/TXC RGMII clock lines. This is especially needed if the MAC does not provide TXC delay by itself. Related-to: ELB-1299 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-03-04net: phy: micrel: Add KSZ9131 rxdll txdll bypass dt propertiesPhilippe Schenker
With this patch one is able to control the rx dll and tx dll bypass bits, hence the 2ns delay on rxc and txc lines in devicetree. Related-to: ELB-1299 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-03-04ARM64: dts: apalis-imx8qm-v1.1: Remove RXC delay in MACPhilippe Schenker
The RXC delay is provided in both PHYs used (KSZ9031 and KSZ9131) on the PHY itself so it is not needed on the MAC. Related-to: ELB-1299 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-03-04ARM: mach-imx6q: add ksz9131rn_phy_fixupPhilippe Schenker
The MAC of the i.MX6 SoC is compliant with RGMII v1.3. The KSZ9131 PHY is like KSZ9031 adhering to RGMII v2.0 specification. This means the MAC should provide a delay to the TXC line. Because the i.MX6 MAC does not provide this delay this has to be done in the PHY. This patch adds by default ~1.4ns delay to the TXC line. This should be good for all boards that have all RGMII signals routed with the same length. The KSZ9131 has relatively high tolerances on skew registers from MMD 2.4 to MMD 2.8. Therefore the new DLL-based delay of 2ns is used and then as little as possibly subtracted from that so we get more accurate delay. This is actually needed because the i.MX6 SoC has an asyn skew on TXC from -100ps to 900ps. Related-to: ELB-1299 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-03-04dt-bindings: net: add support for Microchip KSZ9131Yuiko Oshino
Add support for Microchip Technology KSZ9131 10/100/1000 Ethernet PHY Signed-off-by: Yuiko Oshino <yuiko.oshino@microchip.com> Signed-off-by: David S. Miller <davem@davemloft.net> (cherry picked from commit bff5b4b3737219195ca0caef4ff7884303cb5dc1) Related-to: ELB-1299 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-03-04net: phy: micrel: add Microchip KSZ9131 initial driverYuiko Oshino
Add support for Microchip Technology KSZ9131 10/100/1000 Ethernet PHY Signed-off-by: Yuiko Oshino <yuiko.oshino@microchip.com> Signed-off-by: David S. Miller <davem@davemloft.net> (cherry picked from commit bff5b4b3737219195ca0caef4ff7884303cb5dc1) Backport: Added the line: '.config_aneg = genphy_config_aneg,' to KSZ9131 data structure Related-to: ELB-1299 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-02-24perf: Make perf able to build with latest libbfdChangbin Du
libbfd has changed the bfd_section_* macros to inline functions bfd_section_<field> since 2019-09-18. See below two commits: o http://www.sourceware.org/ml/gdb-cvs/2019-09/msg00064.html o https://www.sourceware.org/ml/gdb-cvs/2019-09/msg00072.html This fix make perf able to build with both old and new libbfd. Signed-off-by: Changbin Du <changbin.du@gmail.com> Acked-by: Jiri Olsa <jolsa@redhat.com> Cc: Peter Zijlstra <peterz@infradead.org> Link: http://lore.kernel.org/lkml/20200128152938.31413-1-changbin.du@gmail.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> (cherry picked from commit 0ada120c883d4f1f6aafd01cf0fbb10d8bbba015)
2020-02-24spi: spidev: fix a showing of speed setting messageOleksandr Suvorov
The debug message of max device speed setting is shown when an error in spi_setup() occurs. It should be shown when the setup call is succeeded instead. Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-02-24spi: spidev: fix debug message valueOleksandr Suvorov
The debug message in spidev_message() shows wrong xfer speed: ... [ 1227.702714] spidev spi0.0: setup mode 0, 32 bits/w, 20000000 Hz max --> 0 (real speed sets to 20000000Hz) [ 1227.731801] spidev spi0.0: xfer len 4096 tx 32bits 0 usec 10000000Hz (debug message shows 10000000Hz that is the original max speed of this spidev set from DT) ... Fix the data source for the debug message. Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-02-24Revert "spi: spidev: fix setting of max speed"Oleksandr Suvorov
This is wrong approach to fix the speed issue. This reverts commit 6eb4142030916c2db5c3dd0a4301dbd1141593e2. Related-to: ELB-2387 Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-02-24ARM64: dts: verdin-imx8mm: add ctrl_sleep_mociMarcel Ziswiler
Add CTRL_SLEEP_MOCI required for e.g. the Dahlia carrier board. Related-to: ELB-2520 Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-02-19spi: spidev: fix setting of max speedOleksandr Suvorov
spi->max_speed_hz always sets to the previous value. Fixing the logic allows IOCTL command SPI_IOC_WR_MAX_SPEED_HZ to store the new requested value to spi->max_speed_hz. Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-02-19spi: fsl-lpspi: remove unneeded arrayOleksandr Suvorov
- replace the array with the shift operation - remove the extra comparing operation. Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-02-17ARM64: dts: verdin-imx8mm: Add off-on-delay to usdhc2Philippe Schenker
The hardware of verdin has some bypass caps after the switch that switches power to the sd-card. These caps are resulting in a slow discharge. Add off-on-delay to set a minimum off-time of the regulator so it can fully discharge until it turns on again. Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-02-17ARM: dts: imx7-colibri: Fix frequency for eMMCOleksandr Suvorov
eMMC, used in Colibri iMX7D eMMC modules, supports 200Mhz mode with vccq=1.8v. Remove the max-frequency limit, it increases the performance significantly: == before fix ==== root@colibri-imx7-emmc:~# hdparm -t /dev/mmcblk1 /dev/mmcblk1: Timing buffered disk reads: `^H252 MB in 3.02 seconds = 83.54 MB/sec ================== === after fix ==== root@colibri-imx7-emmc:~# hdparm -t /dev/mmcblk0 /dev/mmcblk0: Timing buffered disk reads: 408 MB in 3.00 seconds = 135.94 MB/sec ================== Related-to: ELB-1442 Fixes: f928a4a377e4 ("ARM: dts: imx7: add Toradex Colibri iMX7D 1GB (eMMC) support") Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-02-12ARM64: dts: apalis-imx8qm: V1.0 devicetree inherit from V1.1 dtsPhilippe Schenker
This commit basically deletes the devicetree for V1.0 Apalis iMX8 modules. It includes V1.1 devicetree then and only puts in the differences and deletes the nodes that are not used in V1.0. This is done to prevent code duplication and have better overview of what has changed. Related-to: ELB-1254 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-02-12ARM64: dts: apalis-imx8qm: add new v1.1-eval.dtsPhilippe Schenker
Related-to: ELB-1254 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-02-12ARM64: dts: apalis-imx8qm: changes to v1.1 modulePhilippe Schenker
Related-to: ELB-1254 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-02-12ARM64: dts: apalis-imx8qm: copy v1.0 devicetree to v1.1Philippe Schenker
This commit does no code changes it just copies fsl-imx8qm-apalis.dtsi to fsl-imx8qm-apalis-v1.1.dtsi. This is done to be able to track changes made between those versions. Related-to: ELB-1254 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-02-12ARM: dts: imx6q-apalis: Fix pin nameOleksandr Suvorov
The interface of Apalis modules is MXM3, not SODIMM. Just fix the name of the reset touch pin. Fixes: 96458caa3562 ("ARM: dts: imx6: Add touchscreens used on Toradex eval boards") Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-02-11spi: imx: Use dynamic bursts only when bits_per_word is 8, 16 or 32Maxime Chevallier
commit 2801b2f5fad3d1e9ea0ac8484584051071065645 upstream The dynamic bursts mode allows to group together multiple words into a single burst. To do so, it's necessary that words can be packed into the 32-bits FIFO entries, so we can't allow using this mode with bit_per_words different to 8, 16 or 32. This prevents shitfing out extra clock ticks for transfers with bit_per_word values not aligned on 8 bits. With that , we are sure that only the correct number of bits is shifted out at each transfer, so we don't need to mask out the remaining parts of the words. Related-to: ELB-1418 Signed-off-by: Maxime Chevallier <maxime.chevallier@bootlin.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2020-02-06ARM64: dts: verdin-imx8mm: bump copyright yearPhilippe Schenker
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-02-06ARM64: dts: add sn65dsi84 dsi-to-lvds bridge to devicetreePhilippe Schenker
Related-to: ELB-2289 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-02-06ARM64: dts: verdin-imx8mm: add atmel_mxt_ts touchscreen controllerPhilippe Schenker
Related-to: ELB-2289 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-02-06ARM64: dts: imx8mm-verdin: add backlightPhilippe Schenker
Related-to: ELB-2289 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-02-06sn65dsi83: Add ti,sn65dsi83 dsi to lvds bridge driverValentin Raevsky
Related-to: ELB-2289 Signed-off-by: Valentin Raevsky <valentin@compulab.co.il> Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-02-03ARM64: dts: apalis-imx8qm: add wifi power down pin to pcie supplyPhilippe Schenker
Related-to: ELB-2359 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-02-03ARM64: dts: apalis-imx8qm: add sleep-mode to fecPhilippe Schenker
Note: there is still backfeeding present at this moment from those pads: SC_P_ENET0_RGMII_TXD0 SC_P_ENET0_RGMII_TXD1 SC_P_ENET0_RGMII_RXD0 SC_P_ENET0_RGMII_RXD1 Related-to: ELB-1254 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-01-31ARM64: dts: apalis-imx8qm: add phy interrupt and led-modePhilippe Schenker
Related-to: ELB-1254 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-01-31ARM64: dts: apalis-imx8qm: add power-domain to power down ETH PHYPhilippe Schenker
Related-to: ELB-1254 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-01-31ARM64: defconfig: add SIMPLE_PM_BUS used for powering down ETH PHYPhilippe Schenker
Related-to: ELB-1254 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-01-20drm: panel-simple: fix typo in pixelclock frequency for lt170410_2whcPhilippe Schenker
Fixes: 6862ae242104 ("drm/panel: simple: add display timings for logic technologies displays") Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com> Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-01-16arm64: dts: fsl-imx8mm-verdin: eth phy: prevent backfeeding during sleepMax Krummenacher
Add a 'sleep' pinmuxing which prevents driving RGMII pins and backfeed the unpowered Ethernet PHY. When switching the Ethernet PHY supply off, it takes about 400 ms for the PHY power to go down. So wait a minimum of 500 ms before reenabling the PHY supply. Related-to: HAR-2339 Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-01-16arm64: dts: fsl-imx8mm-verdin: eth phy: improve startupMax Krummenacher
After the Ethernet PHY supply is enabled an RC holds the reset asserted for about 120 ms. Reduce the time waited from 1000 ms to 200 ms which should account for any possible tolerance. U-Boot enables the PHY supply, switching it off in Linux with the RGMII pins allready muxed creates backfeeding, thus set regulator-boot-on. Related-to: HAR-2339 Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-01-09Revert "arm64: dts: imx8qm-apalis: disable dsp"Max Krummenacher
The driver now checks the fuses for a disabled DSP. Thus enable the DSP device in the device tree and let the driver decide at run-time if the DSP can be used or not. This reverts commit 862886b0c48296d34b0e63d7497fa671e6fe25d7. Related-to: ELB-1380 Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-01-09fsl_dsp.c: test for dsp existence before installing driverMax Krummenacher
The DSP is an optional silicon feature of i.MX8, i.MX8X SoCs. This prevents the following message which is often followed by a kernel oops. | Failed power operation on resource 512 sc_err 3, power_on 1 Test the DSP disable fuse in the drivers init call and don't install the driver if the SoC we are running on has no DSP. Fuse code taken from vpu_encoder_b0.c. Related-to: ELB-1380 Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2019-12-24apalis/colibri_imx6/-imx6ull/_imx7_defconfig: fix ip firewall (bpf/cgroup)Verdin-iMX8MM_Console-Image_3.0b3.118-20200101Colibri-iMX8X_Console-Image_3.0b3.118-20200101Colibri-iMX7_Console-Image_3.0b3.118-20200101Colibri-iMX7-eMMC_Console-Image_3.0b3.118-20200101Colibri-iMX6_Console-Image_3.0b3.118-20200101Colibri-iMX6ULL_Console-Image_3.0b3.118-20200101Apalis-iMX8_Console-Image_3.0b3.118-20200101Apalis-iMX8X_Console-Image_3.0b3.118-20191231Apalis-iMX6_Console-Image_3.0b3.118-20191231Marcel Ziswiler
This fixes the following systemd error during boot: [ 4.225226] systemd[1]: File /lib/systemd/system/systemd-journald. service:36 configures an IP firewall (IPAddressDeny=any), but the local system does not support BPF/cgroup based firewalling. [ 4.242360] systemd[1]: Proceeding WITHOUT firewalling in effect! (This warning is only shown for the first loaded unit using IP firewalling.) Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> (similar to arm64 commit cfbad309c60a13bb7fb0ad4b1139a52d485db0cd)
2019-12-19Merge remote-tracking branch 'fslc/4.14-2.0.x-imx' into ↵Marcel Ziswiler
toradex_4.14-2.0.x-imx-next
2019-12-19Merge pull request #56 from toradex/4.14-2.0.x-imxOtavio Salvador
crypto: mxs-dcp: remove merge conflict markers
2019-12-19crypto: mxs-dcp: remove merge conflict markersMarcel Ziswiler
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com> Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2019-12-19Merge branch 'github.com/Freescale/linux-fslc/4.14-2.0.x-imx' into ↵Marcel Ziswiler
toradex_4.14-2.0.x-imx-next Conflicts: sound/soc/codecs/sgtl5000.c
2019-12-19Merge pull request #55 from toradex/4.14-2.0.x-imxOtavio Salvador
4.14 2.0.x imx
2019-12-18Merge tag 'v4.14.159' into 4.14-2.0.x-imxMarcel Ziswiler
This is the 4.14.159 stable release Conflicts: arch/arm/Kconfig.debug arch/arm/boot/dts/imx7s.dtsi arch/arm/mach-imx/cpuidle-imx6sx.c drivers/crypto/caam/caamalg.c drivers/crypto/mxs-dcp.c drivers/dma/imx-sdma.c drivers/input/keyboard/imx_keypad.c drivers/net/can/flexcan.c drivers/net/can/rx-offload.c drivers/net/wireless/ath/ath10k/pci.c drivers/pci/dwc/pci-imx6.c drivers/spi/spi-fsl-lpspi.c drivers/usb/dwc3/gadget.c
2019-12-17Linux 4.14.159Greg Kroah-Hartman
2019-12-17of: unittest: fix memory leak in attach_node_and_childrenErhard Furtner
[ Upstream commit 2aacace6dbbb6b6ce4e177e6c7ea901f389c0472 ] In attach_node_and_children memory is allocated for full_name via kasprintf. If the condition of the 1st if is not met the function returns early without freeing the memory. Add a kfree() to fix that. This has been detected with kmemleak: Link: https://bugzilla.kernel.org/show_bug.cgi?id=205327 It looks like the leak was introduced by this commit: Fixes: 5babefb7f7ab ("of: unittest: allow base devicetree to have symbol metadata") Signed-off-by: Erhard Furtner <erhard_f@mailbox.org> Reviewed-by: Michael Ellerman <mpe@ellerman.id.au> Reviewed-by: Tyrel Datwyler <tyreld@linux.ibm.com> Signed-off-by: Rob Herring <robh@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-12-17raid5: need to set STRIPE_HANDLE for batch headGuoqing Jiang
[ Upstream commit a7ede3d16808b8f3915c8572d783530a82b2f027 ] With commit 6ce220dd2f8ea71d6afc29b9a7524c12e39f374a ("raid5: don't set STRIPE_HANDLE to stripe which is in batch list"), we don't want to set STRIPE_HANDLE flag for sh which is already in batch list. However, the stripe which is the head of batch list should set this flag, otherwise panic could happen inside init_stripe at BUG_ON(sh->batch_head), it is reproducible with raid5 on top of nvdimm devices per Xiao oberserved. Thanks for Xiao's effort to verify the change. Fixes: 6ce220dd2f8ea ("raid5: don't set STRIPE_HANDLE to stripe which is in batch list") Reported-by: Xiao Ni <xni@redhat.com> Tested-by: Xiao Ni <xni@redhat.com> Signed-off-by: Guoqing Jiang <guoqing.jiang@cloud.ionos.com> Signed-off-by: Song Liu <songliubraving@fb.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-12-17gpiolib: acpi: Add Terra Pad 1061 to the run_edge_events_on_boot_blacklistHans de Goede
[ Upstream commit 2727315df3f5ffbebcb174eed3153944a858b66f ] The Terra Pad 1061 has the usual micro-USB-B id-pin handler, but instead of controlling the actual micro-USB-B it turns the 5V boost for the tablet's USB-A connector and its keyboard-cover connector off. The actual micro-USB-B connector on the tablet is wired for charging only, and its id pin is *not* connected to the GPIO which is used for the (broken) id-pin event handler in the DSDT. While at it not only add a comment why the Terra Pad 1061 is on the blacklist, but also fix the missing comment for the Minix Neo Z83-4 entry. Fixes: 61f7f7c8f978 ("gpiolib: acpi: Add gpiolib_acpi_run_edge_events_on_boot option and blacklist") Signed-off-by: Hans de Goede <hdegoede@redhat.com> Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-12-17kernel/module.c: wakeup processes in module_wq on module unloadKonstantin Khorenko
[ Upstream commit 5d603311615f612320bb77bd2a82553ef1ced5b7 ] Fix the race between load and unload a kernel module. sys_delete_module() try_stop_module() mod->state = _GOING add_unformed_module() old = find_module_all() (old->state == _GOING => wait_event_interruptible()) During pre-condition finished_loading() rets 0 schedule() (never gets waken up later) free_module() mod->state = _UNFORMED list_del_rcu(&mod->list) (dels mod from "modules" list) return The race above leads to modprobe hanging forever on loading a module. Error paths on loading module call wake_up_all(&module_wq) after freeing module, so let's do the same on straight module unload. Fixes: 6e6de3dee51a ("kernel/module.c: Only return -EEXIST for modules that have finished loading") Reviewed-by: Prarit Bhargava <prarit@redhat.com> Signed-off-by: Konstantin Khorenko <khorenko@virtuozzo.com> Signed-off-by: Jessica Yu <jeyu@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-12-17gfs2: fix glock reference problem in gfs2_trans_remove_revokeBob Peterson
[ Upstream commit fe5e7ba11fcf1d75af8173836309e8562aefedef ] Commit 9287c6452d2b fixed a situation in which gfs2 could use a glock after it had been freed. To do that, it temporarily added a new glock reference by calling gfs2_glock_hold in function gfs2_add_revoke. However, if the bd element was removed by gfs2_trans_remove_revoke, it failed to drop the additional reference. This patch adds logic to gfs2_trans_remove_revoke to properly drop the additional glock reference. Fixes: 9287c6452d2b ("gfs2: Fix occasional glock use-after-free") Cc: stable@vger.kernel.org # v5.2+ Signed-off-by: Bob Peterson <rpeterso@redhat.com> Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-12-17net/mlx5e: Fix SFF 8472 eeprom lengthEran Ben Elisha
[ Upstream commit c431f8597863a91eea6024926e0c1b179cfa4852 ] SFF 8472 eeprom length is 512 bytes. Fix module info return value to support 512 bytes read. Fixes: ace329f4ab3b ("net/mlx5e: ethtool, Remove unsupported SFP EEPROM high pages query") Signed-off-by: Eran Ben Elisha <eranbe@mellanox.com> Reviewed-by: Aya Levin <ayal@mellanox.com> Signed-off-by: Saeed Mahameed <saeedm@mellanox.com> Signed-off-by: Sasha Levin <sashal@kernel.org>