Ye Li [Mon, 7 Aug 2017 06:00:15 +0000 (01:00 -0500)]
MLK-16149 arm64: dts: imx8qm/qxp: Remove memory reserve entry for M4 and ATF
Since u-boot will process the owned memory in current partition and modify
the DTB memory nodes for kernel at runtime, no need to set the first 128MB memory
as "memreserve" in DTS.
ATF: 0x80000000 -- 0x801fffff.
- This area will be cleaned out of available memory by u-boot.
M4: 0x88000000 -- 0x8fffffff.
- A memory reserve entry will be added to DTB by u-boot.
Signed-off-by: Ye Li <ye.li@nxp.com>
Ye Li [Wed, 2 Aug 2017 09:00:33 +0000 (04:00 -0500)]
MLK-16126 arm64: dts: imx8qm: Fix pd_sata0 node's name
Should use PD_HSIO_SATA_0 not the PD_HSIO_SATA0 to align with imx8_pd.h.
Signed-off-by: Ye Li <ye.li@nxp.com>
Ranjani Vaidyanathan [Thu, 27 Jul 2017 20:13:09 +0000 (15:13 -0500)]
MLK16091-2 clk:imx8qxp - Add VPU encoder/decoder clocks
Add VPU encoder/decoder clocks.
Signed-off-by: Ranjani Vaidyanathan <Ranjani.Vaidyanathan@nxp.com>
Ranjani Vaidyanathan [Thu, 27 Jul 2017 20:11:20 +0000 (15:11 -0500)]
MLK16091-1 clks:imx8qx - Add VPU encoder and decoder clocks
VPU encoder and decoder clocks can be enabled/disabled by
Linux on iMX8QX.
Signed-off-by: Ranjani Vaidyanathan <Ranjani.Vaidyanathan@nxp.com>
Li Jun [Thu, 3 Aug 2017 17:24:35 +0000 (01:24 +0800)]
MLK-16135 usb: gadget: utp: bulk out req amount divisible by 512
As the code comments say, the bulk out req amount should be divisible
by 512, fix this by using set_bulk_out_req_length().
Acked-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Thu, 27 Jul 2017 15:14:52 +0000 (23:14 +0800)]
MLK-16013-38 ARM64: imx8mq-evk: add typec controller dts node
Add nxp typec&PD controller ptn5110 dts node, which is a tcpci compliant
typec port controller.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Fri, 28 Jul 2017 10:20:42 +0000 (18:20 +0800)]
MLK-16013-37 staging: typec: Power swap force discharge for source
VBus off only means the vbus falls to be below 4v, we can use vbus
force discharge and vbus low alarm to go forward.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Fri, 28 Jul 2017 10:05:46 +0000 (18:05 +0800)]
MLK-16013-36 staging: typec: wait for cc change on ERROR_RECOVERY
We should wait at least tErrorRecovery before move to unattached state.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Fri, 28 Jul 2017 10:01:06 +0000 (18:01 +0800)]
MLK-16013-35 staging: typec: Move to SRC_ATTACHED if condition is met
If the other end is trying to be a sink and not driving vbus, we should
move to SRC_ATTACHED directly.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Fri, 28 Jul 2017 09:43:01 +0000 (17:43 +0800)]
MLK-16013-34 staging: typec: Support cc changes on RP pull-up value
CC line changes on souce side RP value is permitted per standard, in
this case we should move to SNK_ATTACH_WAIT.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Fri, 28 Jul 2017 09:37:25 +0000 (17:37 +0800)]
MLK-16013-33 staging: typec: Do not switch to unattached state for BIST
If we received unsupported BIST command, we should by pass it and ready
to accept following command for test, not unconditionly to set the port
to be unattached state and terminate the test.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Fri, 28 Jul 2017 09:30:50 +0000 (17:30 +0800)]
MLK-16013-32 staging: typec: refine source to sink swap handling
To early start sink power after source turn off vbus, move the set power
role after vbus is turned off in PR_SWAP_SRC_SNK_SOURCE_OFF, also per
spec, we should do error recovery if the sink side does not turn on
vbus in PD_T_PS_SOURCE_ON.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Fri, 28 Jul 2017 09:19:13 +0000 (17:19 +0800)]
MLK-16013-31 staging: typec: Set to unattached state if souce disconnected
In SNK_HARD_RESET_SINK_ON, if the source disconnected, we should set
state to be unattached state intead of startup sink.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Fri, 28 Jul 2017 09:11:12 +0000 (17:11 +0800)]
MLK-16013-30 staging: typec: Reset hard_reset_count to be 0 after send source cap
Per standard, we should clear the hard reset count to be 0 after souce
sent the source cap.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Fri, 28 Jul 2017 08:55:33 +0000 (16:55 +0800)]
MLK-16013-29 staging: typec: tcpm: Don't reset message id after soft reset
If the power source sent soft reset and the other end accepted, we should
not reset the message id as it was already updated by pd_transmit when
handling the soft reset.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Fri, 28 Jul 2017 08:12:42 +0000 (16:12 +0800)]
MLK-16013-28 staging: typec: tcpci: Populate config from dt
Instead of static config, use dt to pass basic PD config for
below settings:
- Source pdo list
- Sink pdo list
- Max sink voltage
- Max sink current
- Sink operating power
- TypeC port type
- TypeC port preferred role
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Thu, 27 Jul 2017 17:09:12 +0000 (01:09 +0800)]
MLK-16013-27 staging: typec: add super speed signal mux selection
According to the polarity of cc line, we need to do USB3 signal mux
selection if it's controlled by software.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Thu, 27 Jul 2017 15:27:15 +0000 (23:27 +0800)]
MLK-16013-26 staging: typec: tcpm: update PD timing
This patch is to update several PD timings for PD compliance, all
those timing definitions should be configurable via user config,
this can be improved later, for now I just update its values in PD
spec defined range.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Thu, 27 Jul 2017 14:49:06 +0000 (22:49 +0800)]
MLK-16013-25 staging: typec: tcpm: correct the PD_T_SENDER_RESPONSE value
Per PD spec, the sender response should be in a small range 24~30ms, so
correct the PD_T_SENDER_RESPONSE to be 25.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Thu, 27 Jul 2017 14:43:52 +0000 (22:43 +0800)]
MLK-16013-24 staging: typec: tcpm: use hrtimer for send response
As the sender response timer have very small margin(25~30ms), so
use a hrtimer to handle it.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Thu, 27 Jul 2017 14:24:13 +0000 (22:24 +0800)]
MLK-16013-23 staging: typec: tcpm: Do soft reset for unexpected get sink cap
A source or sink should receive the get_sink_cap message when in SRC_RDY or
SNK_RDY, if the port receives a get sink capability request before ready,
which means there is message sync error, we should do soft reset to recover
from it, instead of sending a reject message.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Thu, 27 Jul 2017 14:00:54 +0000 (22:00 +0800)]
MLK-16013-22 staging: typec: tcpm: split operations of power swap from sink to source
Add one more state:PR_SWAP_SNK_SRC_ASSERT_RP, as the next state of
PR_SWAP_SNK_SRC_SINK_OFF, it will turn on vbus and wait the vbus
is really on and then send the PS_RDY to the other side.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Thu, 27 Jul 2017 13:47:51 +0000 (21:47 +0800)]
MLK-16013-21 staging: typec: tcpm: handle pd message send failure
If the PD message send failed, we need to do soft reset, further if
soft reset failed, we have to start a hard reset.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Thu, 27 Jul 2017 13:38:13 +0000 (21:38 +0800)]
MLK-16013-20 staging: typec: Add bist test mode support
BIST(Built In Self-Test – Power Delivery testing mechanism for
the PHY Layer), see PD 3.0 spec 5.9 Built in Self-Test (BIST), is
added to support BIST message handling in PD compliance test.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Thu, 27 Jul 2017 13:13:19 +0000 (21:13 +0800)]
MLK-16013-19 staging: typec: tcpci: Only touch target bit when enable vconn
We need a read and then write back to avoid touch any other bits when
enable or disable vconn.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Thu, 27 Jul 2017 12:58:54 +0000 (20:58 +0800)]
MLK-16013-18 staging: typec: handle unexpected vbus from sink
Power source detected the attachment of sink, will firstly check
the vbus level to make sure power sink isn't sourcing vbus(< 600mv)
before going forward, otherwise it will terminate the session and
go to SRC_UNATTACHED state, this is required by PD compliance.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Wed, 26 Jul 2017 23:33:42 +0000 (07:33 +0800)]
MLK-16013-17 staging: typec: tcpm: optimise cc toggling for drp port
We should only enable drp auto toggling when unattached, so add one
more parameter; when attached, we set the cc line state according to
the other end cc status.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Wed, 26 Jul 2017 17:08:27 +0000 (01:08 +0800)]
MLK-16013-16: staging: typec: tcpm: tcpm init sequence update
Force an error recovery is not a good way to handle all cases and may
break the case of power up with typec already connected. Also the tcpc
init should start after tcpm init setup is done, as tcpc init will
turn on HW event alert so may generate events immediately and drive
tcpm state machine go forward, so move it at the end of tcpm_init.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Wed, 26 Jul 2017 16:57:32 +0000 (00:57 +0800)]
MLK-16013-15: staging: typec: tcpci: Enable vbus force discharge
Enable vbus low voltage alert and do force discharge, this can aid turn
off vbus quickly.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Wed, 26 Jul 2017 16:39:37 +0000 (00:39 +0800)]
MLK-16013-14: staging: typec: tcpci: handle fault event
We need clear any fault alerts to make tcpci controller to recover
from fault.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Wed, 26 Jul 2017 16:36:54 +0000 (00:36 +0800)]
MLK-16013-13: staging: typec: tcpci: handle rx buffer overflow event
Add rx buffer overflow event handling.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Wed, 26 Jul 2017 16:19:55 +0000 (00:19 +0800)]
MLK-16013-12: staging: typec: tcpci: clear pending events before request irq
Clear all possible pending events before request irq.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Wed, 26 Jul 2017 16:08:15 +0000 (00:08 +0800)]
MLK-16013-11 staging: typec: only clear alert events for enabled irq
Uncondtionaly clear all events may impact the typec controller state
machine, so save the enabled irq and only clear alert events for enabled
irq.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Wed, 26 Jul 2017 15:50:29 +0000 (23:50 +0800)]
MLK-16013-10 staging: typec: add vbus detection for power sink
Typec port controller may need enable vbus detection to detect
the vbus from power source.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Wed, 26 Jul 2017 14:08:14 +0000 (22:08 +0800)]
MLK-16013-9 usb: typec: add interface to get port type and role
Add interface to get typec port type and default power role from
dt. To validate a correct setting is specified, add TYPEC_PORT_TYPE_UNKNOWN
and TYPEC_ROLE_UNKNOWN for typec_port_type and typec_role enum.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Guenter Roeck [Thu, 27 Apr 2017 21:09:57 +0000 (14:09 -0700)]
staging: typec: Type-C Port Controller Interface driver (tcpci)
The port controller interface driver interconnects the Type-C Port
Manager with a Type-C Port Controller Interface (TCPCI) compliant
port controller.
Signed-off-by: Guenter Roeck <groeck@chromium.org>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit
74e656d6b0551999194b5ab1e45ff8b1e82b898e)
Guenter Roeck [Thu, 27 Apr 2017 21:09:56 +0000 (14:09 -0700)]
staging: typec: USB Type-C Port Manager (tcpm)
This driver implements the USB Type-C Power Delivery state machine
for both source and sink ports. Alternate mode support is not
fully implemented.
The driver attaches to the USB Type-C class code implemented in
the following patches.
usb: typec: add driver for Intel Whiskey Cove PMIC USB Type-C PHY
usb: USB Type-C connector class
This driver only implements the state machine. Lower level drivers are
responsible for
- Reporting VBUS status and activating VBUS
- Setting CC lines and providing CC line status
- Setting line polarity
- Activating and deactivating VCONN
- Setting the current limit
- Activating and deactivating PD message transfers
- Sending and receiving PD messages
The driver provides both a functional API as well as callbacks for
lower level drivers.
Signed-off-by: Guenter Roeck <groeck@chromium.org>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit
f0690a25a140b853b1842fa80faf828601bb47e8)
Heikki Krogerus [Tue, 21 Mar 2017 11:56:47 +0000 (13:56 +0200)]
usb: USB Type-C connector class
The purpose of USB Type-C connector class is to provide
unified interface for the user space to get the status and
basic information about USB Type-C connectors on a system,
control over data role swapping, and when the port supports
USB Power Delivery, also control over power role swapping
and Alternate Modes.
Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Reviewed-and-Tested-by: Felipe Balbi <felipe.balbi@linux.intel.com>
Tested-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit
fab9288428ec0fbd09adb67d3a17c51d78196f9c)
Heikki Krogerus [Tue, 21 Mar 2017 11:56:46 +0000 (13:56 +0200)]
lib/string: add sysfs_match_string helper
Make a simple helper for matching strings with sysfs
attribute files. In most parts the same as match_string(),
except sysfs_match_string() uses sysfs_streq() instead of
strcmp() for matching. This is more convenient when used
with sysfs attributes.
Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Reviewed-by: Felipe Balbi <felipe.balbi@linux.intel.com>
Tested-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit
e1fe7b6a7b376bfb54558725ddb2a89aaaa4adcc)
Oliver Brown [Fri, 4 Aug 2017 06:31:35 +0000 (14:31 +0800)]
MLK-16137 video: fbdev: add defer probe for mxs framebuffer
When mxs framebuffer probes, the DISPDRV (here is MIPI DSI driver) is likely
not ready, then mxsfb_dispdrv_init() will fail which in turn causes framebuffer
dirver probe fails. Add the defer probe schema for second probe later to fix it.
Signed-off-by: Oliver Brown <oliver.brown@nxp.com>
Signed-off-by: Robby Cai <robby.cai@nxp.com>
Reviewed-by: Fancy Fang <chen.fang@nxp.com>
Adriana Reus [Tue, 1 Aug 2017 07:28:46 +0000 (10:28 +0300)]
MLK-16124 clk: imx: clean-up: Add defines for gate enable bits.
Use defines for gate enable bits instead of raw values.
Signed-off-by: Adriana Reus <adriana.reus@nxp.com>
Shengjiu Wang [Thu, 3 Aug 2017 02:05:45 +0000 (10:05 +0800)]
MLK-16129: ASoC: fsl_hifi4: refine the copyright
As the fsl_hifi4.c uses the function from uboot/cmd/elf.c,
so need to add the copyright of elf.c, and change licence to
Dual BSD/GPL.
And mxc_hifi4.h is used by user space, so change license to BSD.
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Reviewed-by: Frank Li <frank.li@nxp.com>
Xianzhong [Thu, 3 Aug 2017 11:01:31 +0000 (19:01 +0800)]
MGS-3155 [#imx-697] fix gpu hang when insmod galcore secondly
gpu hang alway happen when insmod galcore secondly on i.mx8mq,
this problem is related gpu mmu setup with virtual command buffer.
revert the virtual command buffer change to align 6.2.2 driver.
Date: Aug 03, 2017
Signed-off-by: Xianzhong <xianzhong.li@nxp.com>
Haibo Chen [Thu, 3 Aug 2017 09:02:42 +0000 (17:02 +0800)]
MLK-15950 input: egalax_ts: switch to i2c interface before wake up
For HannStar (HSD100PXN1 Rev: 1-A00C11 F/W:0634) LVDS touch screen,
it has a special request for the EETI touch controller. The host
needs to trigger I2C event to device FW at booting first, and then
the FW can switch to I2C interface. Otherwise, the FW can’t work
with I2C interface, and can't generate any interrupt when touch
the screen.
This patch send an I2C command before the device wake up, make sure
the device switch to I2C interface first.
Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
Reviewed-by: Andy Duan <fugang.duan@nxp.com>
Shengjiu Wang [Thu, 3 Aug 2017 03:08:24 +0000 (11:08 +0800)]
MLK-16130-4: ARM64: dts: add hdmi audio device node
add hdmi audio device node
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Shengjiu Wang [Tue, 1 Aug 2017 10:09:12 +0000 (18:09 +0800)]
MLK-16130-3: ARM64: defconfig: built-in cadence hdmi sound card
built-in cadence hdmi sound card
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Shengjiu Wang [Tue, 1 Aug 2017 10:08:54 +0000 (18:08 +0800)]
MLK-16130-2: ASoC: fsl: add machine driver for cadence hdmi
The machine driver will call the API which is provided by
the cadence to configure the audio features.
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Shengjiu Wang [Tue, 1 Aug 2017 08:10:38 +0000 (16:10 +0800)]
MLK-16130-1: ASoC: fsl_sai: enable TCE/RCE according to input channels
If there is only two channels input and slots is 2, then enable one
port is enough for data transfer. so enable the TCE/RCE according to
the input channels and slots configuration.
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Anson Huang [Thu, 3 Aug 2017 03:19:21 +0000 (11:19 +0800)]
MLK-16131 arm64: dts: freescale: imx8mq: disable pwm led for over-drive mode
On i.MX8MQ EVK A1 board, GPIO1_IO13 pin is shared between
GPIO regulator and PWM2, when using over-drive dtb, there
will be no PWM2 function, disable PWM LED to avoid below
message during suspend/resume test:
[ 19.754862] PM: resume of devices complete after 118.732 msecs
[ 19.761740] Restarting tasks ...
[ 19.761741] leds_pwm pwmleds: unable to request PWM for PWM2: -517
[ 19.773557] done.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Sandor Yu [Thu, 3 Aug 2017 04:10:22 +0000 (12:10 +0800)]
MLK-16119-05: dts: Disabled hdmi property
HDMI driver loading depend on HDMI FW.
But not all boards default included HDMI FW.
So disabled hdmi property in dts now.
Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
Sandor Yu [Wed, 2 Aug 2017 06:49:29 +0000 (14:49 +0800)]
MLK-16119-04: defconfig: Add mx8 hdmi driver to build list
Add CONFIG_FB_MX8_HDMI to default build list.
Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
Sandor Yu [Wed, 2 Aug 2017 06:48:29 +0000 (14:48 +0800)]
MLK-16119-03: dts: Enable hdmi driver to imx8mq evk dts
Add hdmi driver property to imx8mq evk.
Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
Sandor Yu [Wed, 2 Aug 2017 06:46:17 +0000 (14:46 +0800)]
MLK-16119-02: fbdev: add hdmi and api to kernel build
Add hdmi and api driver to kernel build.
Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
Sandor Yu [Tue, 1 Aug 2017 09:41:01 +0000 (17:41 +0800)]
MLK-16119-01: fbdev: Add mx8 hdmi driver
Add hdmi api code from cadence.
Add mx8 hdmi driver.
Basic hdmi function:
no hotplug and no video mode dynamic change.
Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
Liu Ying [Wed, 2 Aug 2017 06:19:10 +0000 (14:19 +0800)]
MLK-16120 gpu: imx: dpu: fetchdecode: Use interpolate upsampling mode for NV16/61
According to dpu spec, we should use interpolate upsampling mode for NV16/61.
This patch changes the mode from replicate to interpolate for the two pixel
formats.
Signed-off-by: Liu Ying <victor.liu@nxp.com>
Xianzhong [Wed, 2 Aug 2017 01:51:08 +0000 (09:51 +0800)]
MGS-3150 gpu: Integrate 6.2.3 official driver release
Upgrade GPU driver to enable OpenVX 1.1 for i.MX8QM,
Integrated more bug-fixing for critical gpu issues.
Signed-off-by: Xianzhong <xianzhong.li@nxp.com>
Richard Zhu [Wed, 2 Aug 2017 01:45:41 +0000 (09:45 +0800)]
MLK-16108 PCI: imx: turn on pd for imx8mq pcie
Root cause:
Poewr domain of the PCIEs are turned off, and
not turned on properly in previous ATF.
The PDs of PCIE1/2 have the dependency.
Both of the PDs should be operated at same time.
This issue is gone after update the PDs operations
in ATF.
In order to make sure that the PDs are turned on,
Turn power domain for imx8mq pcie explicitly in
driver.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Anson Huang [Wed, 2 Aug 2017 06:41:53 +0000 (14:41 +0800)]
MLK-16121-2 arm64: dts: freescale: imx8mq: add over-drive mode support
i.MX8MQ can run at over-drive mode, it will need to increase
VDD_ARM voltage, add new dtb to support it, this feature
is only available on A1 board with GPIO1_IO13 to control
VDD_ARM voltage.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Anson Huang [Wed, 2 Aug 2017 06:39:18 +0000 (14:39 +0800)]
MLK-16121-1 cpufreq: imx8mq: add gpio regulator support
i.MX8MQ can run at over-drive mode which needs
increasing VDD_ARM voltage, add gpio regulator support
for over-drive mode.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Frank Li [Tue, 1 Aug 2017 17:16:58 +0000 (12:16 -0500)]
MLK-16114: RPMSG: Fixed ulp can't boot after e12586
Need call MU_Init before call other function
Signed-off-by: Frank Li <Frank.Li@nxp.com>
Signed-off-by: Shenwei Wang <shenwei.wang@nxp.com>
Peter Chen [Mon, 24 Jul 2017 02:30:01 +0000 (10:30 +0800)]
MLK-16054-2 ARM64: dts: fsl-imx8qm-lpddr4-arm2: add OTG1 vbus power pinctrl
Add OTG1 vbus power pinctrl.
Signed-off-by: Peter Chen <peter.chen@nxp.com>
Peter Chen [Mon, 3 Jul 2017 07:19:31 +0000 (15:19 +0800)]
MLK-16054-1 ARM64: dts: fsl-imx8qxp-lpddr4-arm2: add OTG1 vbus power pinctrl
Add OTG1 vbus power pinctrl.
Signed-off-by: Peter Chen <peter.chen@nxp.com>
Anson Huang [Tue, 1 Aug 2017 07:56:45 +0000 (15:56 +0800)]
MLK-16109-2 arm64: defconfig: add CONFIG_DEVICE_THERMAL support
Add CONFIG_DEVICE_THERMAL support by default.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Anson Huang [Tue, 1 Aug 2017 07:53:31 +0000 (15:53 +0800)]
MLK-16109-1 thermal: qoriq: add device cooling support
On i.MX8MQ, once temperautre exceeds hot threshold, some
modules like GPU etc. can reduce its frequency to cool down
the chip. All modules can register this device cooling
notifier to receive thermal HOT notification.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Anson Huang [Tue, 1 Aug 2017 06:27:34 +0000 (14:27 +0800)]
arm64: dts: freescale: imx8qm: add reserve memory for rpmsg
RPMSG needs to share memory with M4, and SCD needs to set
this shared memory property accordingly, so the memory
region needs to be fixed.
Here make CMA range same as its size, so that SCD only sets
this region as share property. And also reserve another
4MB for RPMSG.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Robin Gong [Mon, 31 Jul 2017 08:44:32 +0000 (16:44 +0800)]
MLK-16104-2 dma: imx-sdma: add index for multi sdma devices case
On i.mx8mscale, there are two sdma instances here, and common dma
frameowrk will get channel dynamicly from any available channel whatever
it's from the first sdma device or the second sdma device. But actually,
some IP like SAI only work in sdma2 not sdma1. To make sure get sdma
channel from the right sdma device, add index to match.
Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Robin Gong [Mon, 31 Jul 2017 08:59:26 +0000 (16:59 +0800)]
MLK-16104-1 dma: imx-sdma: add i.mx8m for multi sdma devices
Add i.mx8m for multi sdma devices.
Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Chenyan Feng [Mon, 31 Jul 2017 07:22:00 +0000 (15:22 +0800)]
MGS-3145 gpu: dts: update GPU clock parent on i.MX8MQ
Referred to the mscale design document, GPU has the designated clock PLL
targeting for 800MHz, update the assigned-clk-parent to GPU_PLL_OUT in
GPU device tree, fsl-imx8mq.dtsi.
Signed-off-by: Chenyan Feng <ella.feng@nxp.com>
Bai Ping [Mon, 31 Jul 2017 02:43:28 +0000 (10:43 +0800)]
MLK-16102 driver: clk: fix clock source sels for gpu ahb on i.mx8mq
One of the GPU clock source should be from 'gpu_pll_out', not gpu_pll'.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
Weiguang Kong [Mon, 31 Jul 2017 01:43:29 +0000 (09:43 +0800)]
MLK-16099-2: ASoc: fsl: length is not same for alloc and free memory
In fsl_hifi4_probe(), the length for dma_alloc_coherent() is
MSG_BUF_SIZE + INPUT_BUF_SIZE + OUTPUT_BUF_SIZE +
FIRMWARE_DATA_BUF_SIZE + SCRATCH_DATA_BUF_SIZE;
However, in fsl_hifi4_remove(), the length for dma_free_coherent()
is MSG_BUF_SIZE + INPUT_BUF_SIZE + OUTPUT_BUF_SIZE +
FIRMWARE_DATA_BUF_SIZE;
By keeping the same length between dma_alloc_coherent() and
dma_free_coherent() to fix this issue.
Signed-off-by: Weiguang Kong <weiguang.kong@nxp.com>
Weiguang Kong [Fri, 28 Jul 2017 08:42:32 +0000 (16:42 +0800)]
MLK-16099-1: ASoc: fsl: fix crash issue when no dsp core lib
When dsp driver can't find the dsp core lib in loading codec
process, the kernel will be crashed. This issue is caused
by unreasonable way of error handling.
By changing the way of error handling to fix this issue.
Signed-off-by: Weiguang Kong <weiguang.kong@nxp.com>
Anson Huang [Fri, 28 Jul 2017 02:30:35 +0000 (10:30 +0800)]
MLK-16093-3 cpufreq: imx8mq: add cooling device support
Add i.MX8MQ cooling device support, when temperature
exceeds passive threshold, cpu-freq will drop to lowest
set-point, and once temperature drops below passive
threshold, cpu-freq will restore.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Anson Huang [Fri, 28 Jul 2017 02:22:48 +0000 (10:22 +0800)]
MLK-16093-2 thermal: qoriq: add necessary callbacks for cooling support
Add get_trend and set_trip_temp to support i.MX8MQ cooling
device, get_trend is to customize cooling governor behavior,
once temperature exceeds passive trip, cooling device will work
at full function, and set_trip_temp is for updating trip
temp when do thermal test via modifying trip temp from sysfs.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Anson Huang [Fri, 28 Jul 2017 02:20:51 +0000 (10:20 +0800)]
MLK-16093-1 arm64: dts: freescale: imx8mq: add cpu cooling device
Add cpu cooling device support for i.MX8MQ.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Dong Aisheng [Thu, 13 Jul 2017 12:40:25 +0000 (20:40 +0800)]
MLK-15978 arm64: dts: imx8: change can clock rate to 40Mhz
CAN needs at least 40Mhz PE clock rate to support CAN FD well.
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Frank Li [Fri, 28 Jul 2017 20:10:28 +0000 (15:10 -0500)]
MLK-16101 MU: avoid read mu version register every scu call
Generally read mu registers will take about 225ns.
Overall scu_clk_enable function takes about 8000ns to 150000ns.
Although read version register just take 3% time,
it is not necessary to read version register every time.
Signed-off-by: Frank Li <Frank.Li@nxp.com>
Sandor Yu [Fri, 28 Jul 2017 03:48:23 +0000 (11:48 +0800)]
MLK-16062-5: dts: i.MX8QM arm2 default support 4 mipi sensors
i.MX8QM can support 4 camera sensors or 8 camera sensors.
For eight sensors case, it must need all eight sensors on board,
and for four sensors case, it must need all four sensors on board,
otherwise all mipi sensor can't work.
Four mipi sensors case is more popular than eight sensors.
so change to default support four sensors.
Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
Sandor Yu [Mon, 24 Jul 2017 06:20:20 +0000 (14:20 +0800)]
MLK-16062-4: dts: Add imaging ss drivers to i.MX8QXP arm2
Add imaging SS drivers to i.MX8QXP lpddr4 arm2 board.
Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
Sandor Yu [Mon, 24 Jul 2017 02:38:44 +0000 (10:38 +0800)]
MLK-16062-3: mx8qxp clk: imaging SS clock power domain update
Update i.MX8QXP imaging SS clock power domain setting.
Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
Sandor Yu [Fri, 28 Jul 2017 03:08:27 +0000 (11:08 +0800)]
MLK-16062-2: i.MX8 imaging: Add debug log to imaging SS driver
Add debug log to imaging SS drivers.
Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
Sandor Yu [Thu, 27 Jul 2017 10:21:56 +0000 (18:21 +0800)]
MLK-16062-1: Fix PXL mipi csi0/1 clock gate register address
mipi csi0/1 clock gate register address swapped.
It will cause mipi csi0/1 failed to work.
Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
Sandor Yu [Fri, 21 Jul 2017 04:07:44 +0000 (12:07 +0800)]
MLK-16046: mx8 imaging SS: Fix build warning
Fix build warning:
warning: missing braces around initializer [-Wmissing-braces]
Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
Mihai Serban [Wed, 26 Jul 2017 08:17:09 +0000 (11:17 +0300)]
MLK-16007-2: ASoC: fsl_asrc: Enable automatic configuration for P2P
Use automatic selection of processing options and internal measured
ratio for P2P conversions.
The conversion done by ASRC depends on the IPG master clock frequency
that can have any value between 130MHz and 200MHz. The documentation
states that to support 10 channels with 192KHz sampling rate the
master clock frequency must be at least 160MHz.
When the master clock cannot be configured to faster frequencies the
ASRC can still convert the samples but it have to be configured to
automatically adjust the processing options and conversion ratio.
Signed-off-by: Mihai Serban <mihai.serban@nxp.com>
Reviewed-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Mihai Serban [Wed, 26 Jul 2017 13:24:29 +0000 (16:24 +0300)]
MLK-16007-1: ASoC: fsl_asrc: Fix automatic mode configuration
Fix configuration for automatic selection of processing options and
internal measured ratio.
ASRC can automatically select its pre-processing and post-processing
options based on the frequencies it detects. To use this option the
two parameter registers ASR76K and ASR56K must be correctly configured
based on IPG clock frequency and the corresponding ATSx bits from the
ASRCTR register must be set.
When both the input sampling clock and the output sampling clock are
physically available, the rate conversion can work by configuring the
physical clocks. For this use case the ASRCTR:USRx and ASRCTR:IRDx
bits have to be configured as 1 and 0 respectively.
Signed-off-by: Mihai Serban <mihai.serban@nxp.com>
Reviewed-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Fugang Duan [Fri, 28 Jul 2017 03:21:13 +0000 (11:21 +0800)]
MLK-16096 arm64: dts: imx8qxp-lpddr4-arm2: correct i2c1 bus pinctrl
Correct i2c1 bus scl pin mux.
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
Fugang Duan [Thu, 27 Jul 2017 10:11:22 +0000 (18:11 +0800)]
MLK-16095-02 arm64: dts: imx8qxp-mek: enable i2c bus switch PCA9646
- Enable i2c bus switch PCA9646.
- Enable gpio expander gpio support on MEK board.
- Add i2c1 device sensor in dts file.
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
Fugang Duan [Fri, 28 Jul 2017 03:22:31 +0000 (11:22 +0800)]
MLK-16095-01 i2c: mux: pca954x: add i2c bus switch PCA9646 chip support
Add i2c bus switch PCA9646 chip support, which 2-wire bus switch
and buffered 4-channel.
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
Richard Zhu [Fri, 28 Jul 2017 04:39:54 +0000 (12:39 +0800)]
MLK-16097-2 PCI: imx: specify the imx8qxp form imx8qm
On iMX8QM, functions of PCIEB relied on PCIEA.
But PCIEB used on iMX8QXP can work standalone.
Specify the iMX8QXP PCIE in driver.
Up to now, only iMX6QP PCIE may use the EXT OSC,
specify the EXT/EXT_SRC clocks for iMX6QP only.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Richard Zhu [Fri, 28 Jul 2017 04:38:28 +0000 (12:38 +0800)]
MLK-16097-1 ARM64: imx8qxp: distinguish qm and qxp for pcie
Use imx8qxp to specify the imx8qxp pcie support
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Richard Zhu [Thu, 27 Jul 2017 07:58:27 +0000 (15:58 +0800)]
MLK-16052-2 PCI: imx: fix the pcieb link down issue
The calibration value of PCIEA is mandatory required
by PCIEB on iMX8QM.
The RSTs of the PCIEA would be cleared when the PDs
of PCIEA are turned off.
The calibration value of PCIEA would be lost when the
RSTs of PCIEA are cleared.
So, the RSTs of PCIEA should be asserted when enable
the PCIEB port. Otherwise, PCIEB wouldn't be functional.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Richard Zhu [Mon, 24 Jul 2017 03:20:09 +0000 (11:20 +0800)]
MLK-16052-1 arm64: imx8qm: refine pcie power on imx8qm
- Refine the pd definitions of the imx8qm/qxp hsio.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Viorel Suman [Thu, 27 Jul 2017 08:47:05 +0000 (11:47 +0300)]
MLK-13951-3 arm64: dts: fsl-imx8qm: enable AMIX
Enable AMIX in i.MX8 QM.
Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
Viorel Suman [Mon, 24 Jul 2017 11:16:26 +0000 (14:16 +0300)]
MLK-13951-2 arm64: dts: fsl-imx8qm: enable SAI6, SAI7 and AMIX
Enable SAI6, SAI7 and AMIX nodes.
Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
Viorel Suman [Thu, 27 Jul 2017 07:49:45 +0000 (10:49 +0300)]
MLK-13951-1 clk: imx8qm: fix PD for SAI1 and SAI2 MCLK_SELs
Fix PD for SAI1 and SAI2 MCLK_SELs
Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
Cristina Ciocan [Thu, 6 Jul 2017 09:28:16 +0000 (12:28 +0300)]
MLK-15986-9: arm64: config: video: fbdev: Add fbdev config options
This patch enables fbdev configs for LCDIF, MIPI DSI Northwest, Truly panel
and ADV7535 MIPI-to-HDMI converter.
Signed-off-by: Cristina Ciocan <cristina-mihaela.ciocan@nxp.com>
Cristina Ciocan [Wed, 5 Jul 2017 17:26:39 +0000 (20:26 +0300)]
MLK-15986-8: video: fbdev: Add 64bit framebuffer support for ADV7535
This patch adds support for ADV7535 MIPI-to-HDMI converter for 64bit
platforms.
ADV7535 driver changes are added from Fancy Fang's commit
ca389b0895c9
("MLK-15322-11: video: fbdev: adv7535: enable adv7535 driver").
Signed-off-by: Cristina Ciocan <cristina-mihaela.ciocan@nxp.com>
Cristina Ciocan [Wed, 5 Jul 2017 17:14:47 +0000 (20:14 +0300)]
MLK-15986-7: video: fbdev: Add MIPI DSI NORTHWEST support for 64bit platforms
This patch adds support for 64bit platforms, on top of existing 32bit
support. Among some noticeable differences that occurred for the MIPI DSI
Northwest controller: 4 lane support is added and power management differs.
MIPI DSI Northwest driver changes are added from Fancy Fang's commit
df47fccaf6 "MLK-15322-8 video: fbdev: imx_northwest_dsi: enable Northwest
mipi dsi driver".
Signed-off-by: Cristina Ciocan <cristina-mihaela.ciocan@nxp.com>
Cristina Ciocan [Wed, 5 Jul 2017 15:25:53 +0000 (18:25 +0300)]
MLK-15986-6: video: fbdev: Add LCDIF 64bit support
This patch enables LCDIF support for 64bit platforms.
Code for the LCDIF can be found in drivers/video/fbdev/mxsfb.c. Add 64bit
debug conditional directives to LCDIF code since this is a new option for
64bit platforms.
LCDIF driver changes are added from Fancy Fang's commit
c12dd5e1c24c
("MLK-15322-4 video: fbdev: imx: lcdif: enable lcdif driver for imx8mq").
Signed-off-by: Cristina Ciocan <cristina-mihaela.ciocan@nxp.com>
Cristina Ciocan [Wed, 5 Jul 2017 14:10:30 +0000 (17:10 +0300)]
MLK-15986-5: video: fbdev: Add 64bit fbdev option
Add FB_IMX64 config option that will allow fbdev drivers to offer future
support for 64bit platforms.
Signed-off-by: Cristina Ciocan <cristina-mihaela.ciocan@nxp.com>
Cristina Ciocan [Wed, 5 Jul 2017 13:31:42 +0000 (16:31 +0300)]
MLK-15986-4: video: fbdev: Separate display framework code from fb driver code
The display driver framework code in drivers/video/fbdev/mxc/mxc_dispdrv.c
is currently compiled along with fb driver code in
drivers/video/fbdev/mxc. This is a framework that is also used by another
fb driver that can be found in drivers/video/fbdev/mxsfb.c.
This patch separates the framework compilation by pulling it into its
own CONFIG_FB_MXC_DISP_FRAMEWORK that can be selected by any fb driver
and/or panel whose implementation relies on this framework.
Signed-off-by: Cristina Ciocan <cristina-mihaela.ciocan@nxp.com>