Age | Commit message (Collapse) | Author |
|
The config option WIRELESS_EXT and WEXT_PRIV use to build external
drivers, such as backports. Make these options storable in config file
to be able to set them independently.
Related-to: ELB-2388
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
|
|
As suggested by the reference manual in a note in chapter 13.2
this commit disables the keeper and enables a 100k pull-down on the
adc pins.
Related-to: ELB-2690
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
(cherry picked from commit d5a3675860d03d783689de3ed7cb3dec27e6a155)
|
|
Allow to disable extended attribute support.
This aids in reliability testing, especially since some xattr
related bugs have surfaced.
Also an embedded system might not need it, so this allows for a
slightly smaller kernel (about 4KiB).
Signed-off-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Richard Weinberger <richard@nod.at>
(cherry picked from commit 7e5471ce6dba5f28a3c7afdfe168655d236f677b)
|
|
When write syscall is called, every time security label is searched to
determine that file's privileges should be changed.
If LSM(Linux Security Model) is not used, this is useless.
So introduce CONFIG_UBIFS_SECURITY to disable security labels. it's default
value is "y".
Signed-off-by: Hyunchul Lee <cheol.lee@lge.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
(cherry picked from commit 8326c1eec2449f0e868f7b19a5fa7bfa0386ab48)
|
|
The correct spelling for the property is gpios, otherwise the regulator
will neither reserve nor control any gpio(s).
Thus any SD/MMC card which can use UHS 1 modes will fail.
Related-to: #46566
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Enable the code from commit 'aa5fc842bb05 usb: chipidea: use of extcon
framework to work for non OTG case' if ID and/or VBUS signals are taken
from extcon.
Otherwise (observed on a Colibri iMX6ULL) when booting in the ROLE_HOST
and then changing to ROLE_GADGET the gadget does not appear on the bus
and switching back to ROLE_HOST does also no longer detect any connected
USB devices.
Related-to: #50573
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
This reverts commit c3b206c34b2eccdde14fee1012d85ef3e9448c3e.
With the forward port to 4.9 this is now obsolete. The following commit
already added this:
'5c256b68348e usb: phy: mxs: add "fsl,imx6ul-usbphy" compatible string'
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Create and register a rpmsg device for use with the rpmsg user space
interface, allowing user space to access SMD channels.
Also provide the "rpmsg_name" device attribute to expose the edge name
in sysfs, allowing the user to write udev rules for specific rpmsg
devices and their children.
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
|
|
Add support for polling the status of the write buffer so that user
space can use rpmsg character devices in non-blocking mode.
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
|
|
This allows rpmsg backends to implement polling of the outgoing buffer,
which provides poll support to user space when using the rpmsg character
device.
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
|
|
Provide function stubs for the rpmsg API to allow clients to be compile
tested without having CONFIG_RPMSG enabled.
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
|
|
If one used display timings in devicetree the display_flags like
pixelclk-active have not been applied.
This commit fixes that and puts some nice debug messages so one can
see from where those timings are applied.
This fixes commit f397f60efbb24c2906cd95f443607b2642b49b24
"video: fbdev: mxsfb: allow setting display timings via kernel
command line"
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
This commit should not be in 4.9 and was accidentally introduced from
4.1 to 4.9 merge.
It originally was deleted with commit:
"f397f60efbb video: fbdev: mxsfb: allow setting display timings via
kernel command line"
This reverts commit 0342aaf0e15ffe05eccfcf173cf47b88b008be52.
|
|
This takes the mainline part that adds the wifi chip. This patch
solves the issue that exists when resuming from suspend.
Signed-off-by: Philippe Schenker <philippe.schenker@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>
|
|
Specify the start dealy cell point when send first CMD19
in tuning procedure. This fixes these tunning procedure issues, and
lets to use UHS-I mode properly:
sdhci: Tuning procedure failed, falling back to fixed sampling clock
mmcblk0: error -84 transferring data, sector 0, nr 8, cmd response 0x900,
card status 0xb00
Fixes: http://redmine.toradex.int/issues/46566
Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
|
|
- adding mute/unmute control for Capture block allows
alsa-compatible sound recorders automatically unmute
ADC block to record sound.
Related to: #48500
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
|
|
Fix regression bug, introduced in
commit f3762a6b4a0d059fae4a7aa2e4941f251a3744d5.
Related to: #48500
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
|
|
Increase wait to 600 ms for VAG ramp up
for Toradex's SoM based on iMX6/7.
Related to: #48500
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
|
|
Add handlers for HP/DAC/ADC power on/off event.
Mute outputs on power on/off of any chip block to
avoid pops.
Improve logic for VAG to power on/off to avoid muxing pops.
Fix DAPM widgets' definitions to use new handlers.
Related to: #48500
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
|
|
Define SND_SOC_DAPM_PRE_POST_PMU to reduce code.
Related to: #48500
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
|
|
Clear any interrupt that still is on the device on every channel
this driver is activated for in probe and specific channels in
the timeout handler.
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
(cherry picked from commit ed1f310ee23d277d5386f532165911df69afe62f)
|
|
Use wait_for_completion_timeout instead of
wait_for_completion_interuptible_timeout.
The interruptible variant gets constantly interrupted if a user
program is compiled with the -pg option.
The killable variant was not used due to the fact that a second
program, reading on this device, that gets killed is then also killing
that wait.
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
(cherry picked from commit e813dde6f83343012239a44e433eacc22de1079c)
|
|
This commit will enable the interrupts of all channels handled by this
driver only once in the probe function.
This will improve performance because one byte less has to be written over
i2c on each read out of the adc. On the fastest ADC mode this will improve
read out speed by 15%.
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
(cherry picked from commit 4bd44bb2b470459d795c4bac328ed8edb7ebd132)
|
|
In some cases, the wait_completion got interrupted. This caused the
error-handling to mutex_unlock the function. The before turned on
interrupt then got called anyway. In the ISR then completion() was
called causing wrong adc-values returned in a following adc-readout.
Reinitialise completion struct to make sure the counter is zero
when beginning a new adc-conversion.
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
(cherry picked from commit 263d21cd5e85eb4d96fd560eee814d98c5b89546)
|
|
Add the compatible name to the driver so it gets loaded when the proper
node in DT is detected.
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
(cherry picked from commit 2abd293703ebafe8ae64876936ad345c6716cd9a)
|
|
Remove unnecessary assignment. This could potentially cause an issue, if
the wait function runs into a timeout. Furthermore is this assignment also
not there in stmpe_read_temp()
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
(cherry picked from commit b1f4c9a3c78c70b05b2d844cc72c17d3620ba543)
|
|
Add the stmpe-adc DT node as found on Toradex iMX6 modules
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
This adds the devicetree bindings for the STMPE ADC. This also corrects
a typo in st,sample-time it is rather "6 -> 124 clocks" according
to the datasheet and not 144.
We need to use the naming stmpe_adc in devicetree because this is given
by the mfd device.
Signed-off-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
(cherry-picked from commit 81cdab79818988d27d8aeb162b7988c9e6dde936)
|
|
This adds an ADC driver for the STMPE device using the industrial
input/output interface. The driver supports raw reading of values.
The driver depends on the MFD STMPE driver. If the touchscreen
block is enabled too, only four of the 8 ADC channels are available.
Signed-off-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
(cherry-picked from commit 9f3d084965a5544f096d4f769e274d4c2892079b)
|
|
This patch removes common ADC settings in favor to use
stmpe811_adc_common_init that is present in MFD. This is necessary in
preparation for the stmpe-adc driver, because those two drivers have
common settings for the ADC.
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
(cherry-picked from 88f29d0f2c8f0d8097dfca9fc3619dfe893e0b15)
|
|
Move defines that are ADC related to the header of the overlying MFD,
so they can be used from multiple sub-devices.
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
(cherry-picked from 063755ab1d1c1127adc09703185967862584935b)
|
|
This patch reformats the parameter list for stmpe device in a
table-style so it is more clear to read.
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
(cherry-picked from 270a60bcc8f23254d749987f3d2acb79ea5c599e)
|
|
This prepares the MFD for the STMPE ADC driver. This commit introduces
devicetree settings that are used by the ADC and adds an init function.
Common ADC settings that are shared with the touchscreen driver can now
reside in the overlying MFD.
Signed-off-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
(cherry-picked from commit 6377cfa3b857ced301f2079ac97de6c19057ab65)
|
|
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
This reverts commit 8a0cc368e527f1e977c2852aaa67b8d4c974a551.
In preparation to add the mainline version.
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
- increase trailing delay after VAG power down to reduce trailing pop;
- mute HP/LINE output before VAG power up.
Related to: #48500
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
|
|
- mute headphone on change of sound path;
- keeping VAG power if LINE_IN is muxed to HP leads to loud pops.
Remove VAG power keeping logic.
Related to: #48500
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
|
|
- set up parameters to read card registers via sysfs
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
|
|
- assign manually the source of charge pump ONLY if
automatic selection can't perform.
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
|
|
- change HP_ZCD_EN/ADC_ZCD_EN bits only in CHIP_ANA_CTRL register.
Related to: #48500
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
|
|
- adding mute/unmute controls for headphone and lineout allows
alsa-compatible sound players automatically unmute output
port to play music.
Related to: #48500
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
|
|
- define the SMALL_POP as a 1-bit mask, not value;
- properly set the SMALL_POP on device probing.
Related to: #48500
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
|
|
- add recovery mode for applicable i2c buses for
Colibri iMX7 module.
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
|
|
- fix the name of pinctrl set for i2c2 recovery mode;
- add recovery mode for applicable i2c buses for
Apalis/Colibri iMX6Q/D/DL modules.
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
Related to: #49059
|
|
Commit 41ec065fc5841 fixes ecspi sdma script type for spi1-4 only.
Commit df07101e1c4a2 sets wrong type of sdma script for SPI5.
The workaroud sdma script NOT work in SPBA bus, so return back
the correct sdma script type for spi5.
Related to: #48675
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
|
|
|
|
toradex_4.9-2.3.x-imx-next
|
|
4.9 2.3.x imx
|