Age | Commit message (Collapse) | Author |
|
This adds support for the Toradex Capacitive Touch Display 10.1" LVDS.
The patch adds the display as well set the correct pwm frequency for
backlight dimming and some sensible values for backlight-pwm.
It also adds the Atmel Maxtouch device on the standard pins.
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
This fixes the linking error:
arch/arm/mach-imx/busfreq_optee.o: In function `init_freq_optee':
busfreq_optee.c:(.text+0x3d8): undefined reference to `imx_smp_wfe_optee'
busfreq_optee.c:(.text+0x3dc): undefined reference to `imx_smp_wfe_optee'
busfreq_optee.c:(.text+0x3e8): undefined reference to `imx_smp_wfe_optee_end'
busfreq_optee.c:(.text+0x3ec): undefined reference to `imx_smp_wfe_optee'
busfreq_optee.c:(.text+0x3f0): undefined reference to `imx_smp_wfe_optee_end'
busfreq_optee.c:(.text+0x3f4): undefined reference to `imx_smp_wfe_optee'
busfreq_optee.c:(.text+0x50c): undefined reference to `imx_smp_wfe_optee'
busfreq_optee.c:(.text+0x514): undefined reference to `imx_smp_wfe_optee'
make: *** [Makefile:1020: vmlinux] Error 1
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
|
|
This fixes a compilation error:
CC drivers/rtc/rtc-lib.o
In file included from drivers/phy/ti/phy-omap-usb2.c:30:0:
./include/linux/phy/omap_control_phy.h:46:2: error: redeclaration of enumerator ‘USB_MODE_HOST’
USB_MODE_HOST,
^~~~~~~~~~~~~
In file included from ./include/linux/usb/otg.h:14:0,
from ./include/linux/phy/omap_usb.h:23,
from drivers/phy/ti/phy-omap-usb2.c:24:
./include/linux/usb/phy.h:69:2: note: previous definition of ‘USB_MODE_HOST’ was here
USB_MODE_HOST,
^~~~~~~~~~~~~
In file included from drivers/phy/ti/phy-omap-usb2.c:30:0:
./include/linux/phy/omap_control_phy.h:47:2: error: redeclaration of enumerator ‘USB_MODE_DEVICE’
USB_MODE_DEVICE,
^~~~~~~~~~~~~~~
In file included from ./include/linux/usb/otg.h:14:0,
from ./include/linux/phy/omap_usb.h:23,
from drivers/phy/ti/phy-omap-usb2.c:24:
./include/linux/usb/phy.h:70:2: note: previous definition of ‘USB_MODE_DEVICE’ was here
USB_MODE_DEVICE,
^~~~~~~~~~~~~~~
make[3]: *** [scripts/Makefile.build:328: drivers/phy/ti/phy-omap-usb2.o] Error 1
AR drivers/pps/clients/built-in.o
make[2]: *** [scripts/Makefile.build:587: drivers/phy/ti] Error 2
make[1]: *** [scripts/Makefile.build:587: drivers/phy] Error 2
make[1]: *** Waiting for unfinished jobs....
CC drivers/rtc/hctosys.o
Related to: #50570
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
|
|
For not gcc >= 9 compilers the fix for gcc9 introduced compiler errors.
| ./include/linux/module.h:131:6: error: ‘init_module’ declared as function returning a function
| int init_module(void) __copy(initfn) __attribute__((alias(#initfn)));
Fixes backport 865ca1d1e
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
[ Upstream commit a6e60d84989fa0e91db7f236eda40453b0e44afa ]
The upcoming GCC 9 release extends the -Wmissing-attributes warnings
(enabled by -Wall) to C and aliases: it warns when particular function
attributes are missing in the aliases but not in their target.
In particular, it triggers for all the init/cleanup_module
aliases in the kernel (defined by the module_init/exit macros),
ending up being very noisy.
These aliases point to the __init/__exit functions of a module,
which are defined as __cold (among other attributes). However,
the aliases themselves do not have the __cold attribute.
Since the compiler behaves differently when compiling a __cold
function as well as when compiling paths leading to calls
to __cold functions, the warning is trying to point out
the possibly-forgotten attribute in the alias.
In order to keep the warning enabled, we decided to silence
this case. Ideally, we would mark the aliases directly
as __init/__exit. However, there are currently around 132 modules
in the kernel which are missing __init/__exit in their init/cleanup
functions (either because they are missing, or for other reasons,
e.g. the functions being called from somewhere else); and
a section mismatch is a hard error.
A conservative alternative was to mark the aliases as __cold only.
However, since we would like to eventually enforce __init/__exit
to be always marked, we chose to use the new __copy function
attribute (introduced by GCC 9 as well to deal with this).
With it, we copy the attributes used by the target functions
into the aliases. This way, functions that were not marked
as __init/__exit won't have their aliases marked either,
and therefore there won't be a section mismatch.
Note that the warning would go away marking either the extern
declaration, the definition, or both. However, we only mark
the definition of the alias, since we do not want callers
(which only see the declaration) to be compiled as if the function
was __cold (and therefore the paths leading to those calls
would be assumed to be unlikely).
Cc: <stable@vger.kernel.org> # 4.14+
Link: https://lore.kernel.org/lkml/20190123173707.GA16603@gmail.com/
Link: https://lore.kernel.org/lkml/20190206175627.GA20399@gmail.com/
Suggested-by: Martin Sebor <msebor@gcc.gnu.org>
Acked-by: Jessica Yu <jeyu@kernel.org>
Signed-off-by: Miguel Ojeda <miguel.ojeda.sandonis@gmail.com>
Signed-off-by: Stefan Agner <stefan@agner.ch>
|
|
[ Upstream commit c0d9782f5b6d7157635ae2fd782a4b27d55a6013
From the GCC manual:
copy
copy(function)
The copy attribute applies the set of attributes with which function
has been declared to the declaration of the function to which
the attribute is applied. The attribute is designed for libraries
that define aliases or function resolvers that are expected
to specify the same set of attributes as their targets. The copy
attribute can be used with functions, variables, or types. However,
the kind of symbol to which the attribute is applied (either
function or variable) must match the kind of symbol to which
the argument refers. The copy attribute copies only syntactic and
semantic attributes but not attributes that affect a symbol’s
linkage or visibility such as alias, visibility, or weak.
The deprecated attribute is also not copied.
https://gcc.gnu.org/onlinedocs/gcc/Common-Function-Attributes.html
The upcoming GCC 9 release extends the -Wmissing-attributes warnings
(enabled by -Wall) to C and aliases: it warns when particular function
attributes are missing in the aliases but not in their target, e.g.:
void __cold f(void) {}
void __alias("f") g(void);
diagnoses:
warning: 'g' specifies less restrictive attribute than
its target 'f': 'cold' [-Wmissing-attributes]
Using __copy(f) we can copy the __cold attribute from f to g:
void __cold f(void) {}
void __copy(f) __alias("f") g(void);
This attribute is most useful to deal with situations where an alias
is declared but we don't know the exact attributes the target has.
For instance, in the kernel, the widely used module_init/exit macros
define the init/cleanup_module aliases, but those cannot be marked
always as __init/__exit since some modules do not have their
functions marked as such.
Cc: <stable@vger.kernel.org> # 4.14+
Suggested-by: Martin Sebor <msebor@gcc.gnu.org>
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
Signed-off-by: Miguel Ojeda <miguel.ojeda.sandonis@gmail.com>
Signed-off-by: Stefan Agner <stefan@agner.ch>
|
|
Add the configuration to use the touchscreen hardware provided on
the Apalis iMX8 QM. Keep it in disabled state though to allow the
ADC1 to be used as ADC channels.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
The Apalis iMX8 QM module provides this touchscreen hardware.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Any IIO ADC can be used with the driver, so do not depend
on VF610_ADC.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Clarify properties.
Drop unused pinctrl-2 state 'gpio'.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
This commit adds io-channel-cells property to the ADC node. This
property is required in order for an IIO consumer driver to work.
Especially required for Apalis iMX8 QM, as the touchscreen driver
uses ADC channels with the ADC driver based on IIO framework.
Based on commit 9b1793afe.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
This commit adds io-channel-cells property to the ADC node. This
property is required in order for an IIO consumer driver to work.
Based on commit 9b1793afe.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
This is used with the USB_C port on Colibri iMX8X.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
The existing usage of extcon in chipidea driver freezes the kernel
presumably due to OTGSC register access.
Prevent accessing any OTG registers for SoC with dual role devices
but no true OTG support. Use the flag CI_HDRC_DUAL_ROLE_NOT_OTG for
those devices and in case extcon is present, do the role switch
using extcon only.
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
(cherry picked from commit 28291538966f8828be6d9e86d72cb3ea9ada28f1)
[rebased ontop of 4.9]
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
(cherry picked from commit 241a15ed4b8ebd49de06b7ce7e13db213d3bdee6)
4.14: follow changed extcon_get_cable_state_() -> extcon_get_state_()
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Alphabetically re-order device tree nodes.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Change sound card name to be more in-line with our other modules.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Alphabetically re-order device tree properties.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Complement device tree node comments and clarify pin usage. While at it
also improve indentation and pull comments out to the top.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Rather than powering the USB host power enable pin via an always on
regulator do actually hook it up via resp. USB PHY node.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Rename regulators according to schematics and to be more consistent with
how we do this on our other modules.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Improve default console bootargs.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Those are specified as enabled by default in fsl-imx8qm-device.dtsi.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Get rid of LPUART DMA disabling which dates back to an initial bring-up
BSP on V1.0A hardware.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Rename spidev2 to spidev1 to be more consistent with how we do this on
our other modules.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Add Ethernet PHY reset handling via resp. GPIO.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Fix I2C pin muxing of Apalis I2C1, Apalis I2C2 (DDC), Apalis I2C3 (CAM)
and on-module I2C. We use high drive strength and OPEN_DRAIN_INPUT
configuration. While at it also add a comment indicating which bus is
used on-module.
This fixes DDC/EDID issues as seen on Apalis Evaluation Board V1.1A
with certain HDMI screens.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Fix ENET0_REFCLK as well as ETH_RESET# pin muxing and add a comment
noting us currently using them ENET0 pads in 3.3V mode.
Note: We currently violate specification as NXP has not validated
Gigabit Ethernet operation with them ENET0 pads being in 3.3V mode
(as per note in IMX8QMAEC Rev. H, 8/2018, page 74, section 4.10.5)!
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Improve USB over-current handling by muxing USBH_OC# as GPIO and
USBO1_OC# as native USB_OTG1_OC. This is especially important as they
default to I2C pin muxing which may interfere with the actual pins we
use for resp. I2C instance. While at it also improve indentation and
pull comments out to the top.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
IMX8QM_AUD_ACM_AUD_REC_CLK0_DIV and maybe IMX8QM_AUD_MCLKOUT0 is set by
more than one node as a parent clock with a fixed frequency. Using the
same frequency everywhere fixes audio out being played at around half
the needed sample rate.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
The SAI1_RXD ball is used to get data from the codec into the SoC.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
The Apalis iMX8 design does not make use of the dedicated HDMI DDC/EDID
pins aka HDMI_TX0_DDC_SCL/SDA being under exclusive HDMI transmitter
firmware control but rather uses HDMI_TX0_TS_SCL/SDA. This patch enables
using them as a regular DDC I2C bus.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Implement optional regular DDC/EDID I2C bus handling which may be
enabled via ddc-i2c-bus device tree property.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
This reverts commit 82aaeaf1d8b8d0ea83d2c6c404656d2bf7c918af.
As we further progressed on this HDMI DDC/EDID issue we will solve this
in a smarter way by a subsequent commit "drm/imx/hdp: implement optional
regular ddc/edid i2c bus handling".
|
|
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
We are using the dma_i2c on the ddc pins. When using the hdmi_ts_i2c
the driver freezes, likely the clk configuration is not set up properly.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Note the the enable gpio binding changed.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Once DDC/EDID works delete the unused one.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
This implements wake-up from WAKE1_MICO pin.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|