Age | Commit message (Collapse) | Author |
|
For ECSPI test, add these two dts files.
imx6ul-14x14-evk-ecspi.dts: enable ecspi4 function. Because ethernet2
uses the same pins with ecspi4, so disable fec1/fec2.
imx6ul-14x14-evk-ecspi-slave.dts: Add "spi-slave" attribute to enable
slave mode.
Wire Connection:
J1704:
3 - SCS
4 - MOSI
5 - MISO
6 - SCK
7 - GND
Modify "Makefile" to build these two dts files.
Signed-off-by: Clark Wang <xiaoning.wang@nxp.com>
|
|
- Fix busfreq optee mode to not install the linux assembly function
used to synchronize all CPU in case of SMP mode
- Fix l2cache OPTEE/Linux share mutex operations
Signed-off-by: Cedric Neveux <cedric.neveux@nxp.com>
(cherry picked from commit 68f47bb3328e56c63d647f855fc654f4736658ce)
|
|
Default value must be prefixed by "0".
Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
(cherry picked from commit 4ce702331a6c7b5a84fe4fdc210b62147e04fa84)
|
|
add audio routing for wm8960 in dts.
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
|
|
Modification of the L2 Cache operations to use
a TEE/Linux Shared mutex
Signed-off-by: Cedric Neveux <cedric.neveux@nxp.com>
|
|
i.MX7ULP SoC revision is available from B0, the SIM_JTAG_ID
register bit[31:28] indicates SoC revision as below:
4b'0001 B0
4b'0010 B1
This register is NOT available on A0, tested on B1 chip
as below:
root@imx7ulpevk:~# cat /sys/devices/soc0/revision
2.1
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
Tested-by: Ye Li <ye.li@nxp.com>
|
|
This patch fixes coverity issue of "divide by 0".
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
|
|
- When OPTEE OS is present and if it support the busfreq
for the running the i.MX, the busfreq is executed in
the OPTEE OS by calling a specific SMC function
- Only a WFE function is copied into the OCRAM to
synchronize all Cores in multi-core devices
- OPTEE OS add a DT property 'busfreq=1' in the 'firmware/optee'
node to indicate the busfreq support
Signed-off-by: Cedric Neveux <cedric.neveux@nxp.com>
|
|
After commit 2911e974c845 ("MLK-19098 ARM: dts: imx7ulp-evk: use OTG
ID function instead of GPIO") , the ID pinctrl is set by chipidea
driver, so we need to restore its setting after system resume
due to pinctrl setting is lost at VLLS state.
Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
|
i.MX7ULP LPSPI also use both ipg/per clock for the module, which ipg
clock was not exposed. Add one dummy clock as ipg clock to make the
lpspi code neat and clear.
Reviewed-by: Pan Gao <pandy.gao@nxp.com>
Signed-off-by: Han Xu <han.xu@nxp.com>
|
|
change dual fifo script to multi fifo script for SSI.
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
(cherry picked from commit 417c76c51f0fde7b66cd499e405b1465df18da57)
|
|
note for the rework:
eMMC on EVK board has pad conflict with NAND and Micro-SD.
NAND on EVK board has pin conflict with QSPI and SD2(eMMC).
Signed-off-by: Robby Cai <robby.cai@nxp.com>
Reviewed-by: Dong Aisheng <aisheng.dong@nxp.com>
|
|
The i.MX6ULZ is sw compatible with i.MX6ULL, and the EVK board has
no big difference, so include i.mx6ull evk dts file do reduce code
redundancy.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
|
|
The i.MX6ULZ is new SOC of the i.MX6 series. it
is SW compatile with i.MX6ULL, so most of the code
can be reuse from i.MX6ULL. To maximum the SW reuse,
i.MX6ULZ don't have an independent SOC id in anamix.
so a dummy ID is used to identify it.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
|
|
Add "spi-slave" attribute for recognizing slave mode.
If it is not in slave mode, please delete this attribute.
Usage can be found at spi-fsl-lpspi.txt.
Modify "Makefile" to build "imx7ulp-evk-spi-slave.dtb".
Signed-off-by: Xiaoning Wang <xiaoning.wang@nxp.com>
|
|
Add spi slave mode and enable spi slave time/system control
functions.
Example for SPI slave time:
SLAVE: # echo spi-slave-time > /sys/class/spi_slave/spi0/slave
MASTER: # spidev_test -D /dev/spidev0.0 -p dummy-8B -v
spi mode: 0x0
bits per word: 8
max speed: 500000 Hz (500 KHz)
RX | 00 00 04 6D 00 09 5B BB __ __ __ __ __ __ __ _...
^^^^^ ^^^^^^^^
seconds microseconds
Example for SPI slave system control:
SLAVE: # echo spi-slave-system-control >
/sys/class/spi_slave/spi0/slave
BOTH: # reboot='\x7c\x50'
BOTH: # poweroff='\x71\x3f'
BOTH: # halt='\x38\x76'
BOTH: # suspend='\x1b\x1b'
MASTER: # spidev_test -D /dev/spidev0.0 -p $suspend
or $reboot, $poweroff, $halt
Signed-off-by: Xiaoning Wang <xiaoning.wang@nxp.com>
|
|
According to the latest datasheet(Rev,1.3 08/2018). the VDD_SOC voltage
need to be updated to 1.225V when cpu running at 900MHz. we need to add
25mV margin to cover the board tolerance and IR drop. so the voltage
need to be updated to 1.25V.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
Reviewed-by: Anson Huang <anson.huang@nxp.com>
|
|
Add dmas and dma-names for ecspi1~4 to fix boot error:
"spi_imx 30840000.ecspi: dma setup error -19, use pio".
Signed-off-by: Xiaoning Wang <xiaoning.wang@nxp.com>
|
|
Make sure the time between power off and power on sd card meet the
sd SPEC, otherwise after suspend and resume, SD3.0 card will no longer
be recognized as SD3.0, but SD2.0
Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
|
|
add board compatible string for imx7ulp and m845s
Signed-off-by: Xianzhong <xianzhong.li@nxp.com>
|
|
Due to HW board design, FEC2 depend on FEC1's MII bus. But FEC1's PHY
locates on adapter PHY board that may not connect with sabreauto board.
And FEC1 depend on MAX732X to select 1.8v IO voltage, MAX732X chip is
also installed on adapter board.
In such case, MAX732X expander gpio chip is not registered, and pinctrl
driver cannot detect the gpio chip and return deferred_probe, FEC1 driver
also do defer probe and never has chance to get probed. so its MII bus is
also not regisgered. Then FEC2 also cannot work without MII bus.
To avoid FEC1 depends on MAX732X, move the output IO setting to max732x
driver by setting the default value.
Reviewed-by: Haibo Chen <haibo.chen@nxp.com>
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
|
|
Since IMX7ULP_PAD_PTC13 has OTG ID function, so change the iomux
to be OTG ID instead of GPIO, with that we can use usb ID event
directly for role switch, which is more quick than extcon driver.
which also help on pass the type-C compliance test: "TD 4.5.6 DRP
connect Try.SNK DRP Test"
Acked-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
|
|
support playback and record for rpmsg device
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
(cherry picked from commit b06f0122c6c280eff3bb83b0dfa284ce93526ef3)
|
|
Set gpu physical base address and size into dts for 7ulp.
Date: Dec 21, 2016
Signed-off-by: Meng Mingming <mingming.meng@nxp.com>
(cherry picked from commit b5ae6ee5c84b8eb197af34d78f572be667ed0574)
(cherry picked from commit 64ba25ed48ec760a5b783ecf3c0defb5d71916be)
|
|
Using new "fsl,tx-d-cal" for dts, and update document accordingly.
Acked-by: Jun Li <jun.li@nxp.com>
Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
|
meet axi bus error when setting 3G/1G user/kernel VM space layout,
it is casued by gpu with legacy mmu, which requires cma under 2GB.
in this case, 6dl cma exceed 2G with 3G/1G user /kernel VM layerout.
Reserved memory: created CMA memory pool at 0x7a000000, size 320 MiB
set gpu base-address with 256M to avoid axi bus error on 2G board.
Signed-off-by: Xianzhong <xianzhong.li@nxp.com>
|
|
Per design requirement, AHB clock parent switch and divider
change needs to keep previous/current parent enabled but
when we switch the clock parent, previous AHB clock parent
may be disabled by common clock framework if the use count
is 0, so here we have to make sure AHB's previous parent
pfd2_270m is enabled during AHB set rate.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Robin Gong <yibin.gong@nxp.com>
(cherry picked from commit 41cb188e5f4732c7fdb83894399c4dc1303fd774)
|
|
The low_bus_freq_handler can be scheduled again between when it starts
executing and when it takes the bus_freq_mutex. This can result in
calling reduce_bus_freq twice as shown in the following trace:
[ 762.101949] set_low_bus_freq(743): begin
[ 762.101971] set_low_bus_freq(768): schedule low_bus_freq
[ 762.114111] set_low_bus_freq(771): scheduled low_bus_freq
[ 765.125161] reduce_bus_freq_handler(722): lock...
[ 765.125174] bus_freq_daemon_handler(1043): lock...
[ 765.125191] bus_freq_daemon_handler(1048): call set_low_bus_freq
[ 765.125200] set_low_bus_freq(743): begin
[ 765.125210] set_low_bus_freq(768): schedule low_bus_freq
[ 765.125228] set_low_bus_freq(771): scheduled low_bus_freq
[ 765.125239] bus_freq_daemon_handler(1052): unlock...
[ 765.160624] reduce_bus_freq_handler(726): call reduce
[ 765.166952] reduce_bus_freq(685): begin
[ 765.170865] busfreq_notify(159): notify low enter
[ 765.176095] Bus freq set to 24000000 start...
[ 765.182731] Bus freq set to 24000000 done! cpu=0
[ 765.192646] imx_busfreq soc:busfreq: Bus freq set to low mode. Count: high 0, med 0, audio 0
[ 765.203912] reduce_bus_freq(717): end
[ 765.208903] reduce_bus_freq_handler(733): unlock...
[ 768.166631] reduce_bus_freq_handler(722): lock...
[ 768.172386] reduce_bus_freq_handler(726): call reduce
[ 768.186330] reduce_bus_freq(685): begin
[ 768.191310] busfreq_notify(159): notify low enter
Prevent this scenario by explicitly calling cancel_low_bus_freq_handler
from inside reduce_bus_freq_handler.
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Acked-by: Anson Huang <Anson.Huang@nxp.com>
|
|
The only user of busfreq notifiers is imx_thermal and if it receives a
double LOW_BUSFREQ_ENTER it will incorrectly decrease the reference
count on its clk. Since tempmon uses pll3 directly this can cause
problems like uart hangs.
Guard against this scenario with an explicit check and warn inside
busfreq_notify. This is not a high-performance path so it's better to be
safe.
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Acked-by: Anson Huang <Anson.Huang@nxp.com>
|
|
The resources retrieved by CAAM driver was wrong as the size
was not correct hence future uses might have issues.
before:
[ 3.010744] caam 30900000.caam:
sm res: [start: 0000000000100000,
end: 0000000000107ffe,
name: /caam-sm@00100000,
flags:0x200 desc:0x0] -> size: 0x7fff
modif to actual size:
[ 3.012495] caam 30900000.caam:
sm res: [start: 0000000000100000,
end: 0000000000107fff,
name: /caam-sm@00100000,
flags:0x200 desc:0x0] -> size: 0x8000
Signed-off-by: Franck LENORMAND <franck.lenormand@nxp.com>
|
|
Signed-off-by: Franck LENORMAND <franck.lenormand@nxp.com>
|
|
Signed-off-by: Franck LENORMAND <franck.lenormand@nxp.com>
|
|
The charger led definition ported from imx_4.9.y use the same gpio with
another definition introduced by upstream commit 702bfbef1c98 ("ARM:
dts: imx6qdl-sabresd.dtsi: Add red led")
Fix by explicitly overwriting the upstream definition with ours.
Fixes: 491c8dc6801e ("MLK-11703-6: ARM: imx6: Add charging led support on Sabresd board")
Fixes: 4aada993e5be ("MLK-11703-7: ARM: dts: imx6qdl-sabresd: add retain-state-suspended property in dts")
This commit could be squashed in the above on next rebase.
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Acked-by: Anson Huang <Anson.Huang@nxp.com>
|
|
Port imx_4.9.y vivante drm driver to 4.14 kernel.
Date: Jul 13, 2018
Signed-off-by Yong Gan <yong.gan@ncp.com>
|
|
This makes it possible to enable earlycon for debugging by just passing
an empty "earlycon" argument on the kernel command-line.
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
Acked-by: Ye Li <ye.li@nxp.com>
|
|
Add property "cap-power-off-card" to fix the module loadable issue.
Reviewed-by: Frank Li <frank.li@nxp.com>
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
|
|
Add Cypress wifi bcm4339 support with fmac driver for below platforms:
- imx6q/dl/qp-sabresd
- imx6sl/sll-evk
- imx6sx-sdb
Reviewed-by: Frank Li <frank.li@nxp.com>
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
|
|
The sw2iso count should cover ARM LDO ramp-up time,
the MAX ARM LDO ramp-up time may be up to more than
100us, this patch sets sw2iso to 0xf (~384us) which
is the default value.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
|
|
Add wifi bcm4339 support with fmac driver.
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
|
|
Add WIFI bcm4339 support with fmac driver.
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
|
|
Add qualcomm Qca9377-3 bt wifi support for i.MX7ULP B0 chip
EVK RevA3 board.
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
(cherry picked and merged from commit: f85c441d095602edcd39d79db8509618a2f2f515)
|
|
This was removed by upstream commit 5eaeaccdaedb
("ARM: dts: imx7d-sdb: Pass 'enable-gpios' and 'power-supply' properties")
That commit claims that GPIO1_IO01 is not a PWM because it's connected
to a pin labelled "PWREN" of J14 connector. However that pin does behave
as a pwm despite the name.
The exact same pattern happens with imx6ul-evk which has an LCD8000-43T
display on J901.
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
|
|
Upstream modified imx7s.dtsi pwm to have #pwm-cells = <3> so now our
out-of-tree boards need to be modified to use 3 cells.
See commit 9be48d2d9881 ("ARM: dts: imx7: use 3 PWM cells")
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Review-by: Liu Ying <victor.liu@nxp.com>
|
|
Two different regulators are defined with the same name and label but
distinct properties.
The first definition was added with the first board dts and the second
was added when upstream added flexcan support.
Looking at schematics it is indeed gpio2 14 connected to the STB pin of
the CAN transceiver so remove the first definition. This also makes it
consisent with imx_4.9.y.
The second definition entirely overrides the first so this already
worked and this patch results in no DTB change, just a cleanup.
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
|
|
In upstream the flexcan2 regulator was added with its own pinctrl group
and the EPDC_DATA14 pin is claimed even if the can controller is marked
as disabled.
Mark the regulator itself with status = "disabled" so it won't claim the
pin.
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Acked-by: Robert Chiras <robert.chiras@nxp.com>
|
|
This reverts commit e10bb395568fbda30eb76cf0d0d6e479ed30648f.
The mxsfb driver uses old bindings so we need to provide those
Acked-by: Robert Chiras <robert.chiras@nxp.com>
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
|
|
This reverts commit d8236af53074c61b7f88af773357f3cdcf378a9d.
The mxsfb driver uses old bindings so we need to provide those.
The LCD timings were already upstreamed but then an upstream commit
removed them in favor of adding a DRM path. Making mxsfb work requires
reverting this upstream commit
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Acked-by: Robert Chiras <robert.chiras@nxp.com>
|
|
In imx6qdl-sabresd.dtsi imx_4.9.y defines ov564x_mipi@3c with
compatible="ovti,ov564x_mipi". Upstream added camera@3c with
compatible="ovti,ov5640" on the same bus and this results in i2c errors
on boot:
i2c i2c-1: Failed to register i2c client ov564x_mipi at 0x3c (-16)
i2c i2c-1: of_i2c: Failure registering /soc/aips-bus@02100000/i2c@021a4000/ov564x_mipi@3c
i2c i2c-1: Failed to create I2C device for /soc/aips-bus@02100000/i2c@021a4000/ov564x_mipi@3c
Fix by removing upstream definition.
The other camera camera added by upstream, &ov5642: camera@3c on &i2c0
was already removed/overwritten with our definition during porting.
Fixes: 2b48156760e5 ("MLK-11508-5: dts: Add imx v4l2 capture driver")
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Laurentiu Palcu <laurentiu.palcu@nxp.com>
|
|
Suspend fails on sabreauto because the i2c mux is set to the default
state before suspending sensors:
dpm_run_callback(): isl29023_suspend+0x0/0x3c returns -11
PM: Device 2-0044 failed to suspend: error -11
PM: Some devices failed to suspend, or early wake event detected
Fix this by moving sensons to i2cmux/i2c@1 just like the rest of I2C3
devices. This is a porting issue, in imx_4.9.y there is no dynamic
muxing for i2c3.
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Acked-by: Fugang Duan <fugang.duan@nxp.com>
|
|
Upstream added new separate pinctrl groups:
* pinctrl_i2c3mux for MX6QDL_PAD_EIM_A24__GPIO5_IO04
* pinctrl_max7310 for MX6QDL_PAD_SD2_DAT0__GPIO1_IO15
During imx_4.9.y porting these were both added to pinctrl_hog instead
and this now causes a pin conflict. Drop this part and keep them in
per-device pin groups.
Fixes: 2b48156760e5 ("MLK-11508-5: dts: Add imx v4l2 capture driver")
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Acked-by: Fugang Duan <fugang.duan@nxp.com>
|