26 Jun, 2015

1 commit


07 May, 2015

1 commit


19 Mar, 2015

1 commit


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)

    Sandor Yu
     

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)

    Shenwei Wang
     
  • 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 -110

    It 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)

    Dong Aisheng
     

05 Mar, 2015

1 commit


04 Mar, 2015

1 commit


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)

    Peter Chen
     
  • 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 1

    Signed-off-by: Peter Chen
    (cherry picked from commit b4b5728425454c1713d152855f09af9c9c12d78d)

    Peter Chen
     

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)

    Robby Cai
     

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)

    Li Jun
     
  • 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)

    Han Xu
     

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)

    Sandor Yu
     
  • 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)

    Sandor Yu
     

11 Feb, 2015

23 commits

  • disp_mix power domain is mandatory requried by imx6sx
    pcie. Add the related operations for imx6sx pcie

    Signed-off-by: Richard Zhu
    (cherry picked from commit 84b448770a67bae34d7db41839390426a70600d2)

    Richard Zhu
     
  • 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)

    Richard Zhu
     
  • 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)

    Li Jun
     
  • 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)

    Li Jun
     
  • 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)

    Robin Gong
     
  • 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)

    Ulf Hansson
     
  • 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)

    Ulf Hansson
     
  • 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)

    Ulf Hansson
     
  • This reverts commit ef2c90dea437f8955b7dc089ff1579c2aa06a6b7.
    Signed-off-by: Robin Gong

    (cherry picked from commit e2c50506fee918f95425babbccc7ecf28d3d2f87)

    Robin Gong
     
  • 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)

    Tomasz Figa
     
  • Signed-off-by: Geert Uytterhoeven
    Signed-off-by: Rafael J. Wysocki
    (cherry picked from commit 12e10bb60be2a4259373c05dfbf8f71b87a17421)
    (cherry picked from commit f1c3e733b6823274d4de2c599e2f0bb96baa5d83)

    Geert Uytterhoeven
     
  • 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)

    Ulf Hansson
     
  • 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)

    Ulf Hansson
     
  • 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)

    Ulf Hansson
     
  • 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)

    Ulf Hansson
     
  • 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)

    Ulf Hansson
     
  • 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)

    Ulf Hansson
     
  • 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)

    Ulf Hansson
     
  • 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)

    Ulf Hansson
     
  • 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)

    Tushar Behera
     
  • 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)

    Paul Gortmaker
     
  • This reverts commit 4aa055cb0634bc8d0389070104fe6aa7cfa99b8c.
    Signed-off-by: Robin Gong

    (cherry picked from commit e599f64de890a60a3b9884dd5838c43472f145e2)

    Robin Gong
     
  • 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

    Ranjani Vaidyanathan
     

10 Feb, 2015

1 commit


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)

    Liu Ying