26 Jun, 2015
1 commit
-
…pt mapping for an imx6 pcie host connected to a P2P bridge when using legacy interrupts
07 May, 2015
1 commit
19 Mar, 2015
1 commit
-
Do not switch the mem view when the imx pcie ep/rc
validation system is enabled.
Otherwise, the RC wouldn't access the mem of the ep
device in the imx pcie ep/rc validation system.Signed-off-by: Richard Zhu
(cherry picked from commit aeab51838317e0843a021b2e8426f942b97b01a8)
16 Mar, 2015
1 commit
-
System will hang if csi unit test mx6s_v4l2_capture.out process
been killed.In csi capture driver function mx6s_csi_enable/disable is called
by vidioc_streamon/streamoff function.
But when csi unit test process is killed, vidioc_streamon/streamoff
will not been called, and csi function still working even the csi
clock is gated.Move mx6s_csi_enable/disable function from
mx6s_vidioc_streamon/streamoff function to
mx6s_start_streaming/ mx6s_stop_streaming function to resolve the
issue.Signed-off-by: Sandor Yu
(cherry picked from commit fe3700b2dc97952ef5a055a48e1d5ba89e11b7dd)
06 Mar, 2015
2 commits
-
…uninstalling ath6kl_sdio after iperf test.
When handing the command "ifconfig wlan0 down", the driver handler did
not notify the disconnected event to the upper layer stack cfg80211,
which would cause the relating resources unable to be released. A
notification of disconnet event to cfg80211 was added when the driver
was changed to the disconnect state.Signed-off-by: Shenwei Wang <shenwei.wang@freescale.com>
(cherry picked from commit 0b7b203a563ac98f5f0c5695a5149ec80d2114b4) -
We can observe the following error during system resume.
dpm_run_callback(): platform_pm_resume+0x0/0x4c returns -110
PM: Device 2090000.can failed to resume: error -110It is caused by the flexcan is in disable state and the clock is disabled
by default while the CAN is not up. During resume, the calling of
flexcan_chip_enable will obviously fail due to no clock.The issue only happened when CAN device is not up. If CAN is up, clock is there
and no issue will happen.Because the CAN is always in disabled state by default if it's not up.
We don't have to disable it again during suspend and enable it after resume.
This patch simply the suspend/resume to only enter/exit disabled mode if CAN
is up.Signed-off-by: Dong Aisheng
(cherry picked from commit 1a8a68cb11ce2de085efb05aa0262a7eca07aba6)
05 Mar, 2015
1 commit
-
There are two ov5640 driver in kernel, one is subdev ov5640 driver,
the other is int-device ov5640 driver.
Rename int-device ov5640 driver to ov564x.Signed-off-by: Sandor Yu
(cherry picked from commit a084ad80684a5b2800d3610e22b4352da88cb749)
04 Mar, 2015
1 commit
-
for i.MX6SX, according to the latest datasheet, added a 198MHz setpoint in cpufreq driver.
The 198MHz setpoint is NOT enough to support playing mp3,the system will stay at a higher
setpoint and high_bus_mode. So when having a setpoint lower than 396MHz, make sure when
the cpufreq is at 396MHz or lower, the busfreq is always in low_bus_mode to save more power.Signed-off-by: Bai Ping
27 Feb, 2015
2 commits
-
We should only do charger detection if both we have enabled
usb charger at kernel configuration and set usb charger enable
at dts. Otherwise, we will do useless things, like toggle dp.Signed-off-by: Peter Chen
(cherry picked from commit 6b677c09dbda0274c6b2e1d61ea0d7f1cc73f621) -
We should signal connect (pull up dp) after we have already
at peripheral mode, otherwise, the dp may be toggled due to
we reset controller or do disconnect during the initialization
for peripheral, then, the host may be confused during the
enumeration, eg, it finds the reset can't succeed, but the
device is still there, see below error message.hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
hub 1-0:1.0: cannot reset port 1 (err = -32)
hub 1-0:1.0: cannot reset port 1 (err = -32)
hub 1-0:1.0: cannot reset port 1 (err = -32)
hub 1-0:1.0: cannot reset port 1 (err = -32)
hub 1-0:1.0: cannot reset port 1 (err = -32)
hub 1-0:1.0: Cannot enable port 1. Maybe the USB cable is bad?
hub 1-0:1.0: cannot reset port 1 (err = -32)
hub 1-0:1.0: cannot reset port 1 (err = -32)
hub 1-0:1.0: cannot reset port 1 (err = -32)
hub 1-0:1.0: cannot reset port 1 (err = -32)
hub 1-0:1.0: cannot reset port 1 (err = -32)
hub 1-0:1.0: Cannot enable port 1. Maybe the USB cable is bad?
hub 1-0:1.0: cannot reset port 1 (err = -32)
hub 1-0:1.0: cannot reset port 1 (err = -32)
hub 1-0:1.0: cannot reset port 1 (err = -32)
hub 1-0:1.0: cannot reset port 1 (err = -32)
hub 1-0:1.0: cannot reset port 1 (err = -32)
hub 1-0:1.0: Cannot enable port 1. Maybe the USB cable is bad?
hub 1-0:1.0: cannot reset port 1 (err = -32)
hub 1-0:1.0: cannot reset port 1 (err = -32)
hub 1-0:1.0: cannot reset port 1 (err = -32)
hub 1-0:1.0: cannot reset port 1 (err = -32)
hub 1-0:1.0: cannot reset port 1 (err = -32)
hub 1-0:1.0: Cannot enable port 1. Maybe the USB cable is bad?
hub 1-0:1.0: unable to enumerate USB device on port 1Signed-off-by: Peter Chen
(cherry picked from commit b4b5728425454c1713d152855f09af9c9c12d78d)
15 Feb, 2015
1 commit
-
The kernel boot stops at "Starting kernel ..." if assign cmdline
"video=mxcfb0:dev=lcd,if=RGB565".The cause is that there's no 'mode_str' property for mxcfb0 in DTS file,
so of_property_read_string() does not touch it and 'mode_str' could be used
uninitialized in mxcfb_get_of_property(), where it's assigned to
plat_data->mode_str and then used uninitialized in fb_find_mode().
This may cause buffer overflow. This patch initializes 'mode_str' to NULL
to fix it.Signed-off-by: Robby Cai
(cherry picked from commit 115d11804b7b56d058ee6be8496b13f57869be93)
13 Feb, 2015
2 commits
-
Since BSV irq is only used for B-device, this patch correct the setting of
BSVIE of otgsc only for case of ID change, that is:
- In otg fsm mode, ID change from 0 to 1 means otg state from A_IDLE to
B_IDLE; ID change from 1 to 0 means otg state from B_IDLE to A_IDLE, so
only disable BSVIE if the current state is B_IDLE(to be update to A_IDLE),
only enable BSVIE if the current state is A_IDLE(to be update to B_IDLE).
- In non-otg-fsm mode, it's already correct.This fix the bug of MLK-10243.
Signed-off-by: Li Jun
Signed-off-by: Peter Chen
(cherry picked from commit c6151e8cc4a01128cbab4b26c09f859cfcd7ff39) -
By default, NAND driver will choose the highest ecc strength that oob
could contain, in this case, for some 8K+744 NAND flash, the ecc
strength will be up to 52bit, which is beyond the i.MX6QDL BCH
capability (40bit).This code change allows the NAND driver try to use minimum required ecc
strength if it failed to use the highest ecc, even without explicitly
claiming "fsl,use-minimum-ecc" in dts.Signed-off-by: Han Xu
(cherry picked from commit aba987c75fcf264d60f4f819dda53fcb828f7c73)
12 Feb, 2015
2 commits
-
After enable dispmix function, vadc driver 50%
failed to detect video mode.
Add video signal state check before read the result
of video mode detect, vadc driver detected correct video mode
increase to 95%.Signed-off-by: Sandor Yu
(cherry picked from commit b95957f4bc258c86683501d60f70371366ce3bd3) -
Vadc in the dispmix power domian, the register will been reset
when dispmix power off, add vadc to generic pm domain,
dispmix will not power off when vadc driver loading.Signed-off-by: Sandor Yu
(cherry picked from commit e06f7339c01d6f77a94cfc8fc22276d03841fecf)
11 Feb, 2015
23 commits
-
disp_mix power domain is mandatory requried by imx6sx
pcie. Add the related operations for imx6sx pcieSigned-off-by: Richard Zhu
(cherry picked from commit 84b448770a67bae34d7db41839390426a70600d2) -
enable imx6qdl pcie on imx_3.14 kernel
and add the pcie pm workaround for imx6qdl.
------
L2 can exit by 'reset' or Inband beacon (from remote EP)
toggling phy_powerdown has same effect as 'inband beacon'
So, toggle bit18 of GPR1, used as a workaround of errata
"PCIe PCIe does not support L2 Power Down"
WARNING: This is not official workaround for ERR005723.
Fortunately, we don't encounter issue with this workaround.
User should take own risk to use it.Signed-off-by: Richard Zhu
(cherry picked from commit 4cdd4fb7fb3b3e746b66838f4cdd24fccd67c78d) -
If CI_HDRC_IMX_VBUS_EARLY_ON is set, turn on vbus before add hcd, and do not
set reg_vbus of ehci_ci_priv, so vbus will not be handled by ehci core.Signed-off-by: Li Jun
(cherry picked from commit a745133191bfe0c2ca408d9f8bcfc2a5204b0dbd) -
Some PHY of imx usb need power supply from vbus to make it work, if there
is no vbus, USB PHY will not in correct state when the controller starts to
work, for host, this requires vbus should be turned on before setting port
power(PP) of ehci, to work with this kind of USB PHY design, this patch adds
a flag CI_HDRC_IMX_VBUS_EARLY_ON, can be checked by host driver to turn on
vbus while start host.Signed-off-by: Li Jun
(cherry picked from commit 1d4c054323817b49897fd7a59bc57b4d36f09491) -
Since some driver which use power domain may use suspend_noirq/resume_noirq
we need implement it in power domain framework.Signed-off-by: Robin Gong
(cherry picked from commit 1ab47908d426ce8252c27db962f54588f5d6b156) -
Previously only the ACPI PM domain was supported by the platform bus.
Let's convert to the common attach/detach functions for PM domains,
which currently means we are extending the support to include the
generic PM domain as well.Signed-off-by: Ulf Hansson
Tested-by: Philipp Zabel
Reviewed-by: Kevin Hilman
Reviewed-by: Dmitry Torokhov
Signed-off-by: Rafael J. Wysocki
(cherry picked from commit cb51841397e8e5714cf82a7f91053f6e1fb80d1f)
(cherry picked from commit cd4edd4cb84f9dadb9e8f12b1e1f10bf2ef28749) -
To maintain scalability let's add common methods to attach and detach
a PM domain for a device, dev_pm_domain_attach|detach().Typically dev_pm_domain_attach() shall be invoked from subsystem level
code at the probe phase to try to attach a device to its PM domain.
The reversed actions may be done a the remove phase and then by
invoking dev_pm_domain_detach().When attachment succeeds, the attach function should assign its
corresponding detach function to a new ->detach() callback added in the
struct dev_pm_domain.Signed-off-by: Ulf Hansson
Tested-by: Philipp Zabel
Reviewed-by: Kevin Hilman
Reviewed-by: Dmitry Torokhov
Signed-off-by: Rafael J. Wysocki
(cherry picked from commit 46420dd73b800f87a19af13af5883855cf38cb08)
(cherry picked from commit 451a5b00e51410adc16f8349ed753f7eced46bc5) -
As as preparation to simplify the detachment of devices from their PM
domains, we assign the ->detach() callback to genpd_dev_pm_detach().Signed-off-by: Ulf Hansson
Reviewed-by: Dmitry Torokhov
Signed-off-by: Rafael J. Wysocki
(cherry picked from commit 86f1e15f5646b4855bd77025c950239650c4843e)
(cherry picked from commit 5856005b1a1f4aecef050de96a02e1c757049fa0) -
This reverts commit ef2c90dea437f8955b7dc089ff1579c2aa06a6b7.
Signed-off-by: Robin Gong(cherry picked from commit e2c50506fee918f95425babbccc7ecf28d3d2f87)
-
This patch introduces generic code to perform PM domain look-up using
device tree and automatically bind devices to their PM domains.Generic device tree bindings are introduced to specify PM domains of
devices in their device tree nodes.Backwards compatibility with legacy Samsung-specific PM domain bindings
is provided, but for now the new code is not compiled when
CONFIG_ARCH_EXYNOS is selected to avoid collision with legacy code.
This will change as soon as the Exynos PM domain code gets converted to
use the generic framework in further patch.This patch was originally submitted by Tomasz Figa when he was employed
by Samsung.Link: http://marc.info/?l=linux-pm&m=139955349702152&w=2
Signed-off-by: Ulf Hansson
Acked-by: Rob Herring
Tested-by: Philipp Zabel
Reviewed-by: Kevin Hilman
Signed-off-by: Rafael J. Wysocki
(cherry picked from commit aa42240ab2544a8bcb2efb400193826f57f3175e)
(cherry picked from commit 4a2d7a846761e3b86e08b903e5a1a088686e2181) -
Signed-off-by: Geert Uytterhoeven
Signed-off-by: Rafael J. Wysocki
(cherry picked from commit 12e10bb60be2a4259373c05dfbf8f71b87a17421)
(cherry picked from commit f1c3e733b6823274d4de2c599e2f0bb96baa5d83) -
As default behavior let genpd at late init try to disable the unused
PM domains.Signed-off-by: Ulf Hansson
Reviewed-by: Kevin Hilman
Signed-off-by: Rafael J. Wysocki
(cherry picked from commit 2fe71dcdfd10d3f71bb559609a8ceda9f76b1e2c)
(cherry picked from commit 5993cf209e1dcc68de523fcd5998f2464cc32990) -
There are no active users of this API. Let's remove it and if future
needs shows up we could consider to have a get/put API instead.Signed-off-by: Ulf Hansson
Reviewed-by: Kevin Hilman
Signed-off-by: Rafael J. Wysocki
(cherry picked from commit d971f0b0eaaf3f2086bf21bbd64f7ea7e2f28459)
(cherry picked from commit 835729a13d0061f55d6bd714811a16ebaecb9b0e) -
The pm_genpd_syscore_poweroff() API and pm_genpd_syscore_poweron() API
makes the pm_genpd_syscore_switch() API redundant.Moreover, since there are no active users, let's just remove it.
Signed-off-by: Ulf Hansson
Reviewed-by: Kevin Hilman
Signed-off-by: Rafael J. Wysocki
(cherry picked from commit d47e6464ae6c96735d4706f5cb0537fe717b6b00)
(cherry picked from commit 9b68cd944341e5a613e9858e65e3432bd5691f92) -
CONFIG_PM_GENERIC_DOMAINS depends on CONFIG_PM, thus there are no need
to check explicity for it.Signed-off-by: Ulf Hansson
Reviewed-by: Kevin Hilman
Signed-off-by: Rafael J. Wysocki
(cherry picked from commit 784b0d3d8bc5b8ac60fc620c3420dc430bba61a7)
(cherry picked from commit d5b35c3260e14bff3f201c6f6ea59b1c91f1cff1) -
The genpd dev_irq_safe configuration somewhat overlaps with the runtime
PM pm_runtime_irq_safe() option. Also, currently genpd don't have a
good way to deal with these device. So, until we figured out if and how
to support this in genpd, let's remove the option to configure it.Signed-off-by: Ulf Hansson
Reviewed-by: Kevin Hilman
Signed-off-by: Rafael J. Wysocki
(cherry picked from commit c5d79ec2a5715489cff16a0d1cf4fa9108a5509e)
(cherry picked from commit 4cffcdb2c92cabbba3e55a0f2d9c7d86d8a756ed) -
There no users of these callbacks, let's simplify the generic power
domain by removing them.Signed-off-by: Ulf Hansson
Reviewed-by: Kevin Hilman
Signed-off-by: Rafael J. Wysocki
(cherry picked from commit 1e0407ca54d28db8e5f02e437ff21cc6416c0be8)
(cherry picked from commit 0f19454e606c6fbc7ce980ca128a703ebc8990fb) -
In a step of simplifying the generic power domain let's move away from
using these callbacks.Signed-off-by: Ulf Hansson
Reviewed-by: Kevin Hilman
Signed-off-by: Rafael J. Wysocki
(cherry picked from commit 67da6d4bf43c4208433ef8f3ee487401b4dc9c74)
(cherry picked from commit b16a428836529af31f23b807065cc6e643c409da) -
There are no users of these APIs. To simplify the generic power domain
let's remove them.Signed-off-by: Ulf Hansson
Reviewed-by: Kevin Hilman
Signed-off-by: Rafael J. Wysocki
(cherry picked from commit 55e15c949fd05d247a889df0ed0177a676fec665)
(cherry picked from commit da452fc0f1a1a75993a6c989a600dd2de309026c) -
Keep all power-domains already enabled by bootloader on, even if no
driver has claimed them. This is useful for debug and development, but
should not be needed on a platform with proper driver support.Signed-off-by: Tushar Behera
Signed-off-by: Rafael J. Wysocki
(cherry picked from commit 39ac5ba51b69a77a30d2e783aed02ec73c9f6d70)
(cherry picked from commit 8507e882be1aa8363d229e6dbc8367c963e37bd3) -
None of these files are actually using any __init type directives
and hence don't need to include . Most are just a
left over from __devinit and __cpuinit removal, or simply due to
code getting copied from one driver to the next.Cc: Len Brown
Signed-off-by: Paul Gortmaker
Acked-by: Pavel Machek
Acked-by: Rafael J. Wysocki
Acked-by: Mark Brown
Signed-off-by: Greg Kroah-Hartman
(cherry picked from commit 4272b9611c30f99f51590085998129480f2fe45e)
(cherry picked from commit 9680398849d6b7f74cf8874522c16064a3df535d) -
This reverts commit 4aa055cb0634bc8d0389070104fe6aa7cfa99b8c.
Signed-off-by: Robin Gong(cherry picked from commit e599f64de890a60a3b9884dd5838c43472f145e2)
-
Add support to leave PLL1 enabled since its required whenever ARM-PODF is
changed. With this patch PLL1 is set to bypassed mode (and enabled) whenever
ARM is sourced from step_clk.Signed-off-by: Ranjani Vaidyanathan
10 Feb, 2015
1 commit
-
The right shift should be changed to left shift. Lower register
address correspond to LSB of the cache_present, if right shift
old cache_present, the valid bits is moved out, then the new
cache_present is not correct.Signed-off-by: Shengjiu Wang
09 Feb, 2015
1 commit
-
We've got a race condition bewteen the interrupt handler mxsfb_irq_handler()
and the function mxsfb_wait_for_vsync() on the flag host->wait4vsync.
If a CUR_FRAME_DONE interrupt comes and we just finish setting host->wait4vsync
to be 1 in mxsfb_wait_for_vsync() before we go to the interrupt handler, we are
likely to see the VSYNC_EDGE interrupt status bit asserted in the interrupt
handler for the CUR_FRAME_DONE interrupt, disable the not yet enabled VSYNC_EDGE
interrupt and finally clear host->wait4vsync.
Then, we go back to mxsfb_wait_for_vsync() and enable the VSYNC_EDGE interrupt
with host->wait4vsync=0. This may leave the VSYNC_EDGE interrupt enabled all
the time and never get a chance to be disabled in the interrupt handler.
So, we are deemed to hang up because the uncleared VSYNC_EDGE interrupt status
bit will cause the CPU to be trapped forever, according to SoC designer's words.
This patch corrects the interrupt handling to handle only the interrupts which
are acknowledged by checking both the interrupt enablement bits and the status
bits but not the status bits only. This may avoid any bogus interrupt from
being handled.Signed-off-by: Liu Ying
(cherry picked from commit 24e1e55076b624f9dc93c1f23e14dd024bdff1c7)