Age | Commit message (Collapse) | Author |
|
This helps knowing which test did fail.
Related-to: ELB-2702
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Documentation/devicetree/bindings/gpio/gpio.txt says: "The names are
assigned starting from line offset 0 from left to right from the
passed array. An incomplete array (where the number of passed named
are less than ngpios) will still be used up until the last provided
valid line index". This patch makes it actually work this way.
Signed-off-by: Christophe Blaess <christophe.blaess@logilin.fr>
Signed-off-by: Patrick Boettcher <p@yai.se>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
(cherry picked from commit 8dc196974429b28f1a2f2563d30d02b7561a46aa)
Related-to: ELB-1143
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
Commit aec2aa8cd60b5 ("MLK-11360-01 crypto: caam_snvs: add snvs clock
management") allows for an 'optional' clock property, so demote the
kernel output to info if the clock is missing.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
This reverts commit dc1f576a8423568cb16eb077f7406c08affec9ec.
This patch breaks dma for HDMI-Audio. So reverting it.
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Conflicts:
drivers/dma/imx-sdma.c
|
|
The KSZ9131 provides DLL controlled delays on RXC and TXC lines. This
patch makes use of those delays. The information which delays should
be enabled or disabled comes from the interface names, documented in
ethernet-controller.yaml:
rgmii: Disable RXC and TXC delays
rgmii-id: Enable RXC and TXC delays
rgmii-txid: Enable only TXC delay, disable RXC delay
rgmii-rxid: Enable onlx RXC delay, disable TXC delay
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit bd734a742d5533fb9190ecd8cf25befc1f759a5b)
Replace phy_modify_mmd with phy_read_mmd and phy_write_mmd.
Related-to: ELB-2581
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
This reverts commit f49da0d7dbf67030f7e12a94fd18a7f1a0b845e0.
There is now a mainline solution for that. Drop this solution in favor
of the upstream one. We will use "rgmii-id" tag now to declare that
delays.
Related-to: ELB-2581
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
Signed-off-by: Wojciech Slenska <wojciech.slenska@gmail.com>
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
|
|
Make Epson RX8130 device tree and ACPI aware.
Fixes: ee0981be7704 ("rtc: ds1307: Add support for Epson RX8130CE")
Signed-off-by: Bastian Stender <bst@pengutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
(cherry picked from commit 47dd47292828a552d62d0e68b7cd6bdc99d9e0aa)
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
- replace the array with the shift operation
- remove the extra comparing operation.
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
|
|
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>
|
|
Conflicts:
arch/arm64/boot/dts/freescale/Makefile
arch/arm64/boot/dts/freescale/fsl-imx8qm-device.dtsi
|
|
This is the 4.14.170 stable release
Conflicts:
drivers/net/phy/phy_device.c
drivers/tty/serial/imx.c
include/linux/platform_data/dma-imx-sdma.h
net/wireless/util.c
|
|
|
|
This fixes building with disabled CONFIG_FB_MXC_OVERLAY.
Fixes: dffeff8e10a6 ("MLK-22304-2 fbdev: mxsfb: fix build warnings if CONFIG_PM_SLEEP off")
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Related-to: ELB-2289
Signed-off-by: Valentin Raevsky <valentin@compulab.co.il>
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
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>
|
|
For 5.3 we had to revert a nice ext4 IO pattern improvement, because it
caused a bootup regression due to lack of entropy at bootup together
with arguably broken user space that was asking for secure random
numbers when it really didn't need to.
See commit 72dbcf721566 (Revert "ext4: make __ext4_get_inode_loc plug").
This aims to solve the issue by actively generating entropy noise using
the CPU cycle counter when waiting for the random number generator to
initialize. This only works when you have a high-frequency time stamp
counter available, but that's the case on all modern x86 CPU's, and on
most other modern CPU's too.
What we do is to generate jitter entropy from the CPU cycle counter
under a somewhat complex load: calling the scheduler while also
guaranteeing a certain amount of timing noise by also triggering a
timer.
I'm sure we can tweak this, and that people will want to look at other
alternatives, but there's been a number of papers written on jitter
entropy, and this should really be fairly conservative by crediting one
bit of entropy for every timer-induced jump in the cycle counter. Not
because the timer itself would be all that unpredictable, but because
the interaction between the timer and the loop is going to be.
Even if (and perhaps particularly if) the timer actually happens on
another CPU, the cacheline interaction between the loop that reads the
cycle counter and the timer itself firing is going to add perturbations
to the cycle counter values that get mixed into the entropy pool.
As Thomas pointed out, with a modern out-of-order CPU, even quite simple
loops show a fair amount of hard-to-predict timing variability even in
the absense of external interrupts. But this tries to take that further
by actually having a fairly complex interaction.
This is not going to solve the entropy issue for architectures that have
no CPU cycle counter, but it's not clear how (and if) that is solvable,
and the hardware in question is largely starting to be irrelevant. And
by doing this we can at least avoid some of the even more contentious
approaches (like making the entropy waiting time out in order to avoid
the possibly unbounded waiting).
Cc: Ahmed Darwish <darwish.07@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Theodore Ts'o <tytso@mit.edu>
Cc: Nicholas Mc Guire <hofrat@opentech.at>
Cc: Andy Lutomirski <luto@kernel.org>
Cc: Kees Cook <keescook@chromium.org>
Cc: Willy Tarreau <w@1wt.eu>
Cc: Alexander E. Patrakov <patrakov@gmail.com>
Cc: Lennart Poettering <mzxreary@0pointer.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
(cherry picked from commit 50ee7529ec4500c88f8664560770a7a1b65db72b)
|
|
pxp_soft_reset is writing to registers that are not clocked and then
resulting in a lockup. Interestingly I could only see this behaviour
when starting a kernel using kexec.
This could have something to do with how u-boot enables clocks on a
regular boot.
In this commit this gets fixed with enabling the clocks before doing
a pxp_soft_reset.
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
Improve module help messages and logging operations
in debug mode.
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
|
|
- Fix a probing to handle errors in scu notifier registration.
- Unregister scu notifier properly on unload, so it is possible to
load driver again.
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
|
|
1. Fix this compilation error:
/workdir/oe/tmp-glibc/work-shared/verdin-imx8mm/kernel-source/drivers/
rpmsg/virtio_rpmsg_bus.c:1106:23: error: redeclaration of 'newch'
with no linkage
struct rpmsg_device *newch;
^~~~~
/workdir/oe/tmp-glibc/work-shared/verdin-imx8mm/kernel-source/drivers/
rpmsg/virtio_rpmsg_bus.c:1101:23: note: previous declaration of
'newch' was here
struct rpmsg_device *newch;
2. Fix warnings that are reproduced when RPMsg char device support is
disabled.
Fixes: 1172ee2e ("rpmsg: virtio rpmsg: Add RPMsg char driver support")
Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
|
|
Ordering of stuff in lpspi probe was a little off.
- num_chipselect gets set with devm_spi_register_controller.
- devm_spi_register_controller needs data that gets set into
controller variable
Order stuff appropriate so num_chipselect gets set before it is used.
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
This commit adds the possibility to choose the compatible
"regulator-fixed-clock" in devicetree.
This is a special regulator-fixed that has to have a clock, from which
the regulator gets switched on and off.
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Link: https://lore.kernel.org/r/20190910062103.39641-2-philippe.schenker@toradex.com
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 8959e5324485ace9bedc33ce1e760b759d4dd2ac)
Conflicts:
drivers/regulator/fixed.c
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
virtio rpmsg was not implemented to use RPMsg char driver.
Each virtio ns announcement will create a new RPMsg device which
is supposed to bound to a RPMsg driver. It doesn't support
dynamic endpoints with name service per RPMsg device.
With RPMsg char driver, you can have multiple endpoints per
RPMsg device.
Here is the change from this patch:
* Introduce a macro to indicate if want to use RPMsg char driver
for virtio RPMsg. The RPMsg device can either be bounded to
a simple RPMsg driver or the RPMsg char driver.
* Create Virtio RPMsg char device when the virtio RPMsg driver is
probed.
* when there is a remote service announced, keep it in the virtio
proc remote services list.
* when there is an endpoint created, bind it to a remote service
from the remote services list. If the service doesn't exist yet,
create one and mark the service address as ANY.
That patch ported to our 4.14 kernel + additional fixes added [1].
Example of usage from userspace app:
```
char data_buf [] = {'a', 'b', 'c', 'd', '\0'};
struct rpmsg_endpoint_info ept_info = {"rpmsg-openamp-demo-channel", 0x2, 0x1};
int fd = open("/dev/rpmsg_ctrl0", O_RDWR);
/* create endpoint interface */
ioctl(fd, RPMSG_CREATE_EPT_IOCTL, &ept_info);
/* create endpoint */
int fd_ept = open("/dev/rpmsg0", O_RDWR);
/* receive data from remote device */
read(fd_ept, &data_buf, sizeof(data_buf));
/* send data to remote device */
write(fd_ept, &data_buf, sizeof(data_buf));
/* destroy endpoint */
ioctl(fd_ept, RPMSG_DESTROY_EPT_IOCTL);
close(fd_ept);
close(fd);
```
[1] https://patchwork.kernel.org/patch/10145779/
Signed-off-by: Wendy Liang <jliang@xilinx.com>
Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
|
|
The LDO have a Soft-Start feature. Add enable_time to all LDOs to
account for that.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Some CRTC drivers use and evaluate this information and if missing
print a warning.
| [ 248.956112] imx_sec_dsim_drv 32e10000.mipi_dsi: no bus formats assigned by connector
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
This is at most an informational message.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
This allows to have a clock on clko even if the controller is
disabled.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
The current implementation uses the clko pin always as a clock out.
Implement the binding documentation and use the pin as a start of frame
indication when microchip,clock-out-div is set to 0.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Backport helper functions not available from the 4.14 kernel from 5.3.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
If CONFIG_CAN_MCP25XXFD_DEBUG_FS is not defined but CONFIG_DEBUG_FS is
then the code fails to compile.
Fix this by conditionally compile on CONFIG_CAN_MCP25XXFD_DEBUG_FS.
CONFIG_CAN_MCP25XXFD_DEBUG_FS depends on CONFIG_DEBUG_FS, there is no
need to test for both.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
By masking the FIFO number in the MCP25XXFD_CAN_FLTCON macro, the
mcp25xxfd_can_fifo_clear() function doesn't clear the filters at all, as
the masking makes MCP25XXFD_CAN_FLTCON(32) equal MCP25XXFD_CAN_FLTCON(0).
| mcp25xxfd_can_fifo_clear_regs(cpriv, MCP25XXFD_CAN_FLTCON(0),
| MCP25XXFD_CAN_FLTCON(32));
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
(cherry picked from commit 265153724aa0339bae525d22511377380fa45af5)
|
|
The interrupt handler thread mcp25xxfd_can_int() will reschedule, if
"loops % reschedule_int_thread_after" equals 0. This is the case for the
initial loop.
Change the code to match what the module parameter suggests to do.
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
(cherry picked from commit d4f9db41f6db9c233dd8847171c82c7f2ba0ec2e)
|
|
The timestamp is an u32, so don't cap to upper 16 bit.
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
(cherry picked from commit 6546a196615cae17d1e4c52f5135b02469adc15f)
|
|
Put sbk into echo queue before triggering send.
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
(cherry picked from commit 2c1df7da765455d86f5630e050905aa3b599ed97)
|
|
push skb into networking stack in interrupt handler
Use netif_rx() instead of netif_receive_skb() to push skb into
networking stack from interrupt handler.
Reported-by: Tom Prohaszka <tprohaszka@capp-tech.com>
Tested-by: Tom Prohaszka <tprohaszka@capp-tech.com>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
(cherry picked from commit 62f9531af8e7f470830d3d285b39570b361e6473)
|
|
The xmit callback is serialized by the network stack, no need for
locking.
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
(cherry picked from commit 8d59059d2098ef612fad460e0e9f832ec36d5fbd)
|
|
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
(cherry picked from commit 6f267fd90b21536d3dcb3b4549dbf800357cd944)
|
|
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
(cherry picked from commit 4dc124bd4f631ff0f83a43a2ae9bfafd664b0e34)
|
|
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
(cherry picked from commit 9781ee8b4dc9feb1809e864bbbbe0bd2001aed59)
|
|
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
(cherry picked from commit 6cf806f542afb974470f29324fcfa76539539c8b)
|
|
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
(cherry picked from commit d8a864d5eab58cfb0e4deb137359f80a828dc050)
|
|
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
(cherry picked from commit 5a142c75c22d38f7166e2e3ac8b08b3f834b61bc)
|
|
submit_queue_count
otherwise with switched off DEBUGFS support the driver will not work
anymore.
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
(cherry picked from commit 3d566db75ce8a954c0a4ad67b23d9069e7851175)
|