27 Nov, 2018

10 commits


26 Nov, 2018

7 commits

  • This patch fixes the interrupts used by ADV7535. Initial patch
    configured the GPIO0 IO00 as IO pin for the DSI_INT, used by ADV7535,
    but the correct one is IO01, since IO00 is used by PWM.

    Fixes: c2f1eceb5629 ("arm64: dts: imx8qm/qxp mek: Configure interrupts
    for adv7535")
    Signed-off-by: Robert Chiras

    Robert Chiras
     
  • The system can be wakeuped only when system is totally suspend, when the
    wakeup event comes during suspend will cause the system hang. For the reason
    that CAN will not call flexcan_noirq_resume() callback if the wakeup event
    comes before noirq suspend stage.

    The way to fix the issue is that assure the system to call
    flexcan_noirq_suspend() during suspend and then call
    flexcan_noirq_resume() during resume.

    Signed-off-by: Joakim Zhang

    Joakim Zhang
     
  • When dev->power.can_wakeup set to true, device_prepare() may runtime resume the device:
    dpm_suspend_start()
    dpm_prepare(state);
    dev->driver->pm->prepare()
    pm_genpd_prepare()
    if (resume_needed(dev, genpd))
    pm_runtime_resume(dev);

    And imx8qm/qxp power domain driver don't implement the active_wakeup() callback, then
    resume_needed() always return "true" when dev->power.can_wakeup is true.

    Once CAN device is runtime active status, then CAN's clock's count is 1 during system
    suspend. And CAN0/CAN1/CAN2 share the same module clock, so we can say all CAN's module
    clock is enabled during system suspended.

    flexcan_runtime_resume()
    flexcan_clks_enable(priv);

    i.MX8QM/QXP SCU code clock logic requires linux kernel clocks should be disabled during
    suspend, otherwise SCU don't enable them after system resume back.

    There are two ways to fix the issue:
    1. CAN driver should check the runtime status to ensure all clocks are disabled during
    system suspend.
    2. Don't set CAN wakeup capability during probe, move it into flexcan_open().

    Signed-off-by: Fugang Duan
    Signed-off-by: Joakim Zhang

    Fugang Duan
     
  • M4 will run flexspi XIP image on iMX8MM. Thus, we have to disable flexspi
    in M4 dedicated DTS, otherwise the M4 will crash because flexspi probe
    in kernel will re-configure the controller.

    Signed-off-by: Ye Li
    Reviewed-by: Richard Zhu
    (cherry picked from commit 2a370901a663bb518303ed2d5e774f1faa41f5fd)

    Ye Li
     
  • The description of dmas pointed to the common description of dma,
    and the introduction of dmas was unclear. Add a doc link to sdma
    introduction.

    Signed-off-by: Clark Wang

    Clark Wang
     
  • Fix the wrong configuration of "dmas" in dts. This leads the spi
    transfer error in dma mode and cause this issue.

    Signed-off-by: Clark Wang

    Clark Wang
     
  • 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

    Clark Wang
     

23 Nov, 2018

23 commits