20 Mar, 2015

1 commit

  • System will be no response after resume back under low busfreq mode. The
    root cause of this issue is that when the system is under ultra_low_bus_freq
    mode on i.MX6SL, resume process has a low bus mode deamon in background,
    cause system enter low bus mode twice, busfreq driver will notify thermal
    driver to turn off PLL3 twice, and cause PLL3 usecount incorrect and UART
    no message out.

    Signed-off-by: Bai Ping

    Bai Ping
     

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

3 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
     
  • Enable CONFIG_NETFILTER as requested by Yocto community.

    Signed-off-by: Nitin Garg

    Nitin Garg
     

05 Mar, 2015

2 commits

  • In imx6sl/sx dts, the lcdif display bpp is setting to 16,
    and sii902x hdmi driver bpp is 32.
    The sii902x driver will overwrite the display bpp when it loading,
    but some module such as v4l2 output driver is misses bpp change event.
    So align sii902x hdmi driver bpp with lcdif display bpp.

    Signed-off-by: Sandor Yu
    (cherry picked from commit 0fd274cc93a71c8636551c17d7d4157e97fe5cf2)

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

    Sandor Yu
     

04 Mar, 2015

3 commits


02 Mar, 2015

1 commit

  • Fix the clock index for cfg clock and use MACRO instead of hard-codes.

    This patch fixes the following issue.
    -----------------------------------------------------------
    root@imx6qdlsolo:~# /unit_tests/mxc_v4l2_capture.out -d /dev/video1 1.yuv
    in_width = 176, in_height = 144
    out_width = 176, out_height = 144
    top = 0, left = 0
    mipi csi2 can not receive sensor clk!
    ...

    ERROR: v4l2 capture: mxc_v4l_dqueue timeout enc_counter 0
    VIDIOC_DQBUF failed.ERROR: v4l2 capture: VIDIOC_QBUF: buffer already queued
    -----------------------------------------------------------

    Signed-off-by: Robby Cai
    (cherry picked from commit 6e4ee449de591d3cfb93575ca639ca32944832bc)

    Robby Cai
     

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
     

26 Feb, 2015

2 commits


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

4 commits


11 Feb, 2015

17 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
     
  • since the pcie is power-ed by disp_mix domain,
    add disp_mix domain into pcie device node.

    Signed-off-by: Richard Zhu
    (cherry picked from commit 9ba62b896a873bf35df95b7d1c899021f3d7e9d6)

    Richard Zhu
     
  • enable imx6qdl pcie support on imx_3.14 kernel

    Signed-off-by: Richard Zhu
    (cherry picked from commit 87326992bc29c36abdd3c8a23f8766cfa136ab37)

    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
     
  • Correct the function and structure since update the below patch
    (24d70aa Revert "base: power: Add generic OF-based power domain look-up")
    (dc092bc PM / Domains: Add generic OF-based PM domain look-up)
    Signed-off-by: Robin Gong

    (cherry picked from commit bddfa2a6ffa844d9a21a63dab974b993e4eccc41)

    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
     
  • The intent of this callback is to simplify detachment of devices from
    their PM domains. Further patches will show the benefit.

    Signed-off-by: Ulf Hansson
    Reviewed-by: Dmitry Torokhov
    Signed-off-by: Rafael J. Wysocki
    (cherry picked from commit c3099a5294f2c7266234e8ea35cbffc20a41aa9a)
    (cherry picked from commit 96257e7b72821bbaa5681b1d2042050c6aab0ea1)

    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