23 Feb, 2017

30 commits

  • bcmdhd can't support removing host during suspend and
    driver crash when detect card after resume due to no response
    to CMD7.
    It looks bcmdhd has a special requirement to enumerate card
    by itself which is incompatible with current MMC core.
    So implement post-cd feature to allow driver to detect card
    as it wants, then we add back non-removable capability
    to avoid MMC core to redetect card after resume.

    root@imx6qdlsolo:~# echo standby > /sys/power/state
    PM: Syncing filesystems ... done.
    PM: Preparing system for standby sleep
    Freezing user space processes ... (elapsed 0.001 seconds) done.
    Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done.
    PM: Entering standby sleep
    evbug: Event. Dev: input3, Type: 0, Code: 0, Value: 1
    evbug: Event. Dev: input2, Type: 0, Code: 0, Value: 1
    PM: suspend of devices complete after 652.363 msecs
    PM: suspend devices took 0.660 seconds
    PM: late suspend of devices complete after 1.148 msecs
    PM: noirq suspend of devices complete after 1.043 msecs
    Disabling non-boot CPUs ...
    CPU1: shutdown
    Enabling non-boot CPUs ...
    CPU1 is up
    PM: noirq resume of devices complete after 0.534 msecs
    PM: early resume of devices complete after 0.553 msecs
    evbug: Event. Dev: input2, Type: 1, Code: 116, Value: 1
    evbug: Event. Dev: input2, Type: 0, Code: 0, Value: 0
    evbug: Event. Dev: input2, Type: 1, Code: 116, Value: 0
    evbug: Event. Dev: input2, Type: 0, Code: 0, Value: 0
    mmc1: error -110 during resume (card was removed?)
    PM: resume of devices complete after 605.525 msecs
    PM: resume devices took 0.610 seconds
    PM: Finishing wakeup.
    Restarting tasks ... done.
    WARNING: driver bcmsdh_sdmmc did not remove its interrupt handler!
    root@imx6qdlsolo:~# Unable to handle kernel NULL pointer dereference at virtual address 0000022c
    pgd = 80004000
    [0000022c] *pgd=00000000
    Internal error: Oops: 17 [#1] PREEMPT SMP ARM
    Modules linked in: bcmdhd evbug ov5647_camera_mipi mxc_mipi_csi mx6s_capture
    CPU: 1 PID: 780 Comm: kworker/u4:4 Not tainted 4.1.15-01434-g70f4b36 #1310
    Hardware name: Freescale i.MX7 Dual (Device Tree)
    Workqueue: kmmcd mmc_rescan
    task: a974af80 ti: a846e000 task.ti: a846e000
    PC is at _raw_spin_lock_irqsave+0x1c/0x5c
    LR is at get_parent_ip+0x10/0x2c
    pc : [] lr : [] psr: 60050093
    sp : a846fc20 ip : 0001001f fp : a800b000
    r10: 00000000 r9 : 00000001 r8 : 0000022c
    r7 : 00000002 r6 : 0000022c r5 : a0050013 r4 : 0000022c
    r3 : a974af80 r2 : 00000001 r1 : a846fc44 r0 : 00000000
    Flags: nZCv IRQs off FIQs on Mode SVC_32 ISA ARM Segment kernel
    Control: 10c53c7d Table: a951406a DAC: 00000015
    Process kworker/u4:4 (pid: 780, stack limit = 0xa846e210)
    Stack: (0xa846fc20 to 0xa8470000)
    fc20: 00000000 a846fc50 a846fc44 80061808 00000000 000001dc 00000000 805037fc
    fc40: 8d89d5ec 00000000 a974af80 80053e88 00000000 00000000 ab7293c0 00000000
    fc60: 7f09c828 000000c9 7f09c828 a916a804 00000001 0001001f a800b000 7f0698a4
    fc80: a974afc8 00000001 00000000 00000000 00012ebc a974af80 00000001 80ad46c0
    fca0: a974af80 00000000 a8eeccc0 00000001 0001001f a846fd04 00000000 7f099440
    fcc0: a800b000 7f0699c4 a846fcdf 00000000 00000001 7f068834 a937c900 0105c688
    fce0: a846fd04 a8e20000 00000000 00000001 00000000 7f071f08 a846fd04 a80a0000
    fd00: ffffffff 00000000 ffffffff a8e20000 a8e20000 00000000 7f099440 00000000
    fd20: 00000000 7f099440 a800b000 7f072f4c a974af80 00000000 00000000 80778564
    fd40: a846fd54 a9346550 80330028 00000001 a846e000 a8e20000 7f099440 00000000
    fd60: 18005000 a8eeccc0 00000000 7f099440 a800b000 7f073744 a846fd8c 80052130
    fd80: a9273898 00000000 a800b000 a8e20000 7f099440 00000001 a8eec200 a9270000
    fda0: 00000000 7f099440 a800b000 7f07cd3c 80b81100 8040003f a800b000 00000000
    fdc0: 00000000 a8e20000 7f099440 a9270000 a9273000 a9270000 00000000 7f099440
    fde0: a800b000 7f02df4c 00000001 a8e20000 7f099440 a8eec200 00000000 a916e008
    fe00: 00000000 a90bfb00 a800b000 7f074cbc a9270000 7f099440 a8e20000 00000000
    fe20: a8f81610 7f0765ec 7f0765b0 a8eeccc0 a855df40 7f069310 a916a800 a8eec200
    fe40: 7f09b414 7f06a950 7f06a908 a8f81608 a8f81600 8050e8b8 a8f81608 7f09b414
    fe60: 80b22c70 80379744 a974af80 a8f8163c a8f81608 803797d4 00000005 a81ce930
    fe80: a8f81608 8037923c a8f81608 a8f81608 80b93cf4 80376504 a846fea0 800e0e3c
    fea0: 00000000 00000000 a8f81608 000000bd a833f000 00000000 00000000 8050ed04
    fec0: 00000001 8050dd8c 400f8c0f a833f000 ffffff92 a833f000 a81ce600 8050de30
    fee0: 8050ddbc a833f240 a833f1dc 80506048 a90bfb00 a833f240 a800b000 a81ce600
    ff00: 00000000 800462f0 a81ce600 80043c94 00000000 a800b000 a90bfb18 a800b014
    ff20: a846e000 00000088 80b39379 a90bfb00 a800b000 8004654c 80ad4100 a800b164
    ff40: a90bfb00 00000000 a84856c0 a90bfb00 80046500 00000000 00000000 00000000
    ff60: 00000000 8004b1e8 2df9acc7 00000000 b5f3ff89 a90bfb00 00000000 00000000
    ff80: a846ff80 a846ff80 00000000 00000000 a846ff90 a846ff90 a846ffac a84856c0
    ffa0: 8004b10c 00000000 00000000 8000f568 00000000 00000000 00000000 00000000
    ffc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
    ffe0: 00000000 00000000 00000000 00000000 00000013 00000000 ecd61557 f82769f5
    [] (_raw_spin_lock_irqsave) from [] (add_wait_queue+0x20/0x48)
    [] (add_wait_queue) from [] (__mmc_claim_host+0x58/0x1b0)
    [] (__mmc_claim_host) from [] (sdioh_request_byte+0x1cc/0x2a4 [bcmdhd])
    [] (sdioh_request_byte [bcmdhd]) from [] (sdioh_cfg_write+0x20/0x28 [bcmdhd])
    [] (sdioh_cfg_write [bcmdhd]) from [] (bcmsdh_cfg_write+0x90/0xdc [bcmdhd])
    [] (bcmsdh_cfg_write [bcmdhd]) from [] (dhdsdio_clk_kso_enab+0x38/0x168 [bcmdhd])
    [] (dhdsdio_clk_kso_enab [bcmdhd]) from [] (dhdsdio_clk_devsleep_iovar+0xf4/0x5f4 [bcmdhd])
    [] (dhdsdio_clk_devsleep_iovar [bcmdhd]) from [] (dhdsdio_bussleep+0x2f8/0x4dc [bcmdhd])
    [] (dhdsdio_bussleep [bcmdhd]) from [] (dhd_bus_stop+0x2e8/0x3f0 [bcmdhd])
    [] (dhd_bus_stop [bcmdhd]) from [] (dhd_detach+0x2a4/0x438 [bcmdhd])
    [] (dhd_detach [bcmdhd]) from [] (dhdsdio_release+0x4c/0x1dc [bcmdhd])
    [] (dhdsdio_release [bcmdhd]) from [] (dhdsdio_disconnect+0x3c/0xa0 [bcmdhd])
    [] (dhdsdio_disconnect [bcmdhd]) from [] (bcmsdh_remove+0x3c/0x60 [bcmdhd])
    [] (bcmsdh_remove [bcmdhd]) from [] (bcmsdh_sdmmc_remove+0x48/0x60 [bcmdhd])
    [] (bcmsdh_sdmmc_remove [bcmdhd]) from [] (sdio_bus_remove+0x30/0xf8)
    [] (sdio_bus_remove) from [] (__device_release_driver+0x70/0xe4)
    [] (__device_release_driver) from [] (device_release_driver+0x1c/0x28)
    [] (device_release_driver) from [] (bus_remove_device+0xd8/0x104)
    [] (bus_remove_device) from [] (device_del+0x10c/0x210)
    [] (device_del) from [] (sdio_remove_func+0x1c/0x28)
    [] (sdio_remove_func) from [] (mmc_sdio_remove+0x40/0x70)
    [] (mmc_sdio_remove) from [] (mmc_sdio_detect+0x74/0x100)
    [] (mmc_sdio_detect) from [] (mmc_rescan+0xb8/0x314)
    [] (mmc_rescan) from [] (process_one_work+0x120/0x330)
    [] (process_one_work) from [] (worker_thread+0x4c/0x480)
    [] (worker_thread) from [] (kthread+0xdc/0xf4)
    [] (kthread) from [] (ret_from_fork+0x14/0x2c)
    Code: f10c0080 e3a00001 ebe359b1 f594f000 (e1943f9f)

    Signed-off-by: Dong Aisheng

    Dong Aisheng
     
  • caam_snvs driver involves snvs HP registers access that needs to
    enable snvs clock source. The patch add the clock management.

    Signed-off-by: Fugang Duan
    Signed-off-by: Dan Douglass

    Fugang Duan
     
  • User can specify clocks in devicetree which is used for accessing the registers
    in this regmap.

    Signed-off-by: Dong Aisheng
    (cherry picked from commit 4a89ef5b579e6fb5640df099ee13939ca6d3a325)

    Dong Aisheng
     
  • Interactive governor has lived in Android sources for a very long time
    and this commit is based on the code present in following branch:

    https://android.googlesource.com/kernel/common android-4.4

    The Interactive governor is designed for latency-sensitive workloads,
    such as interactive user interfaces like the mobile phones and tablets.
    The interactive governor aims to be significantly more responsive to
    ramp CPU quickly up when CPU-intensive activity begins.

    Existing governors sample CPU load at a particular rate, typically every
    X ms and then update the frequency from a work-handler. This can lead
    to under-powering UI threads for the period of time during which the
    user begins interacting with a previously-idle system until the next
    sample period happens.

    The 'interactive' governor uses a different approach.

    A real-time thread is used for scaling up, giving the remaining tasks
    the CPU performance benefit, unlike existing governors which are more
    likely to schedule ramp-up work to occur after your performance starved
    tasks have completed.

    The Android version of interactive governor also checks whether to scale
    the CPU frequency up soon after coming out of idle. When the CPU comes
    out of idle, the governor check if the CPU sampling is overdue or not.
    If yes, it immediately starts the sampling. Otherwise, the utilization
    hooks from the scheduler handle the sampling later. If the CPU is very
    busy from exiting idle to when the evaluation happens, then it assumes
    that the CPU is under-powered and ramps it to MAX speed.

    If the CPU was not sufficiently busy to immediately ramp to MAX speed,
    then the governor evaluates the CPU load since the last speed
    adjustment, choosing the highest value between that longer-term load or
    the short-term load since idle exit to determine the CPU speed to ramp
    to.

    Idle notifiers will be be handled later and are not included for now.

    The core of this code is written and maintained (in Android
    repositories) by Mike Chan and Todd Poyner over a long period of time.

    Vireshk has made changes to to the governor to align it with the current
    practices followed with mainline governors, like using utilization hooks
    from the scheduler and handling kobject (for governor's sysfs directory)
    in a race free manner. And of course this included general cleanup of
    the governor as well.

    Signed-off-by: Mike Chan
    Signed-off-by: Todd Poynor
    Signed-off-by: Viresh Kumar

    ---
    V1->V2:
    - Changes to fix compilation issues with updated mainline
    - Timer APIs got updated
    - s/mod_timer_pinned/mod_timer
    - s/init_timer/init_timer_pinned
    - Updated prototypes of cpufreq_frequency_table_target() and
    update_util_handler()

    Viresh Kumar
     
  • The patch updates the document by adding more information to describe the
    DT proporties used by the Freescale Quadspi driver and the childs nodes.

    For the child node for SPI NOR flash, we add the required property
    ("spi-max-frequency"), and refer to spi-nor-flash.txt for the optional
    properties.

    Signed-off-by: Huang Shijie
    (cherry picked from commit d7b296f51eb077b0c77580ad63ffd69ce722bf6c)

    Huang Shijie
     
  • We need a DT property to store the dummy cycles for DDR Quad read.
    This is a common feature for the SPI NOR flash, such as Spansion and Micron
    chips.

    Add this file to describe this specific SPI NOR flash features which will
    be referred by the SPI NOR flash drivers.

    Signed-off-by: Huang Shijie
    (cherry picked from commit dfbe3eb5c7c2c3967c0f1bf32c0279136da7bfce)

    Huang Shijie
     
  • Some registers on pfuze3000 will lost after exit from LPSR, need restore them,
    otherwise system may reboot with below command after system enter LPSR one time:

    root@imx7d_all:~# echo enabled > /sys/class/tty/ttymxc0/power/wakeup
    root@imx7d_all:~# echo mem > /sys/power/state

    because LDOGCTL not recover as 1. Add 'fsl,lpsr-mode' property to this case,
    please add this property if your board support LPSR mode as imx7d-12x12-lpddr3-arm2
    board.

    Signed-off-by: Robin Gong

    Robin Gong
     
  • It's pretty common that on some reference design or validation boards,
    one pin could be used by two devices on board, and the pin route is
    controlled by a GPIO. So to assert the pin for given device, not only
    the pinmux controller in SoC needs to be set up properly but also the
    GPIO needs to be pulled up/down.

    The patch adds support of a device tree property "pinctrl-assert-gpios"
    under client device node. It plays pretty much like a board level pin
    multiplexer, and steers the pin route by controlling the GPIOs. When
    client device has the property represent in its node, pinctrl device
    tree mapping function will firstly pull up/down the GPIOs to assert the
    pins for the device at board level.

    [shawn.guo: cherry-pick commit e5a718edab82 from imx_3.10.y]
    Signed-off-by: Shawn Guo

    Shawn Guo
     
  • Starting from IMX6, the flexcan stop mode control bits is SoC specific,
    move it out of IP driver and parse it from devicetree.
    It's good from maintain perspective and can avoid adding too many SoC
    specifi bits in driver but with no IP changes when the IMX SoC series
    keep growing.

    Signed-off-by: Dong Aisheng
    (cherry picked from commit 97b99b59c9f09d58ea35f3c0cf58665c20f2e292)
    (cherry picked from commit 6355208605715f7cb9ea8c37e29c577785f66898)

    Conflicts:
    arch/arm/boot/dts/imx6qdl.dtsi

    Dong Aisheng
     
  • If wakeup is enabled, enter stop mode, else enter disabled mode.
    Self wake can only work on stop mode.
    For imx6q, the stop request has to be mannually assert on
    IOMUX GPR13[28:29] register, we use syscon to control that bit.

    Signed-off-by: Dong Aisheng
    (cherry picked from commit 7f8ef8eeb2bd93d75eb4c970bcaabcfd499d348d)
    (cherry picked from commit 496fef522e515488147cce3adcc7f101bb532805)

    Dong Aisheng
     
  • WiFi driver could call wifi_card_detect function to re-detect card,
    this is required by some special WiFi cards like broadcom WiFi.
    To use this function, a new property is introduced to indicate a wifi host.

    Signed-off-by: Dong Aisheng
    (cherry picked from commit 74e71dd0aebb9e931f02aefa3dd1990cbe642ae4)
    Signed-off-by: Haibo Chen

    Conflicts:
    Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.txt

    Dong Aisheng
     
  • Forward imx_3.14.y IPU and display drivers to 4.1 kernel.
    This includes IPU core driver, display driver, LDB and HDMI driver.

    Signed-off-by: Sandor Yu

    Sandor Yu
     
  • cherry-pick below patch from v3.14.y:
    ENGR00307635-5 ASoC: imx-wm8962: Add non-SSI cpu dai support

    The current imx-wm8962 machine driver is designed for SSI as CPU DAI only
    while as its name we should make the driver more generic to any other CPU
    DAI on i.MX serires -- ESAI, SAI for example.

    So this patch makes the driver more general so as to support those non-SSI
    cases.

    Acked-by: Wang Shengjiu
    Signed-off-by: Nicolin Chen
    (cherry picked from commit b6fca438dde1b4c0bbdee31729871d601f287dc9)

    Nicolin Chen
     
  • cherry-pick below patch from v3.14.y:
    ENGR00277715-3 ASoC: fsl: Add WM8962 jack detecting support

    There're two GPIOs connected to the headphone jack and microphone jack,
    thus add the states detection.

    Reviewed-by: Wang Shengjiu
    Signed-off-by: Nicolin Chen
    (cherry picked from commit f85ca1dd664178328bd813651e91d612787b6926)

    Nicolin Chen
     
  • cherry-pick below patch from imx_3.14.y
    ENGR00330403-3: ASoC: fsl: port si476x machine driver from imx_3.10.y

    Port si476x machine dirver for i.MX series SoC and binding doc from imx_3.10.y

    Signed-off-by: Shengjiu Wang
    (cherry picked from commit 05a68db09806fe5b0aa927dd94cf69b1b0c0fa5a)

    Shengjiu Wang
     
  • cherry-pick below patch from imx_3.14.y
    ENGR00330403-1: ASoC: imx-cs42888: port cs42888 machine driver from imx_3.10.y

    Port the cs42888 machine driver from imx_3.10.y and do update according to
    new esai driver and asrc driver.

    Signed-off-by: Shengjiu Wang
    (cherry picked from commit 7ed3aac83630a38eb397ed92f815a28e07198748)

    Shengjiu Wang
     
  • Implement machine driver for mqs, which use the sai as cpu dai.
    sai work on master mode.

    Signed-off-by: Shengjiu Wang
    (cherry picked from commit cac9eb41debc6444d753dc936cdf76874260b9e4)

    Shengjiu Wang
     
  • Implement codec driver for mqs. mqs is a very simple IP. which support:

    Word length: 16bit.
    DAI format: Left-Justified, slave mode.

    Signed-off-by: Shengjiu Wang
    (cherry picked from commit 9da6bdd2072b850e9bb910512123eff7d80a0e2f)

    Shengjiu Wang
     
  • If the property "fsl,dma-buffer-size" is present, using the specified buffer size.
    Otherwise, using the default audio buffer size.

    Signed-off-by: Zidan Wang
    (cherry picked from commit bba153dd92a4f58b81c4c26fb3a95c45445c65e0)

    Zidan Wang
     
  • This driver implements a reset controller device that toggle a gpio
    connected to a reset pin of a peripheral IC. The delay between assertion
    and de-assertion of the reset signal can be configured via device tree.

    Signed-off-by: Philipp Zabel
    Reviewed-by: Stephen Warren
    Reviewed-by: Pavel Machek
    [shawn.guo: cherry-pick commit 27e3604c82cb from imx_3.10.y]
    Signed-off-by: Shawn Guo

    Conflicts:
    drivers/reset/Makefile

    (cherry picked from commit 2c8ba990ad6b33bd28f72384fbd238e0aca6c886)

    Conflicts:
    drivers/reset/Kconfig
    drivers/reset/Makefile

    Philipp Zabel
     
  • cherry-pick below patch from v3.14.y:
    ENGR00329948-3: dma: imx-sdma: Add hdmi audio support
    in sdma

    There's a missing script for hdmi audio support in current sdma driver,
    thus add it.

    This HDMI script doesn't use bd to copy memory like a normal one does
    but only to update the memory address for HDMI internal AHB DMA and
    then trigger its procedure automatically.

    Signed-off-by: Shengjiu Wang
    Signed-off-by: Robin Gong
    (cherry picked from commit dafddac916a03ae4477e2de7c1b7ad291f956f68)

    Shengjiu Wang
     
  • add compatible string "fsl,imx6ul-usbphy"

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

    Peter Chen
     
  • Add compatible string "fsl,imx6ul-usbmisc"

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

    Peter Chen
     
  • Add tx-d-cal property

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

    Peter Chen
     
  • It is optional, and only for 3p0, 2p5, and 1p1.

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

    Peter Chen
     
  • This patch adds guide for selecting available gadget drivers for otg and EH
    compliance tests.

    Acked-by: Peter Chen
    Signed-off-by: Li Jun
    (cherry picked from commit 520cac9e4fe938887dd45b5b4df6c8e35e125a59)
    (cherry picked from commit 6534fab0bd77be544629ac04d4b8bb677d0a3aec)

    Li Jun
     
  • Update for HSIC controller

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

    Li Jun
     
  • Update HNP test procedure as HNP polling is supported.

    Signed-off-by: Li Jun
    (cherry picked from commit 4aac546c4338246b1e55647796badedf6e80bfbe)

    Li Jun
     
  • It is used to indicate whether we use SoC's usb charger
    detection or not. Besides, we add anatop phandle since
    we need to use anatop register to do most of charger detect operations.

    Signed-off-by: Peter Chen

    Li Jun
     
  • The current driver support stop mode by calling machine api.
    The patch add dts support to set gpr register for stop request.

    After magic pattern comming during system suspend status, system will
    be waked up, and irq handler will be running, there have enet register
    access. Since all clocks are disabled in suspend, and clocks are enabled
    after resume function. But irq handler run before resume function.

    For imx7d chip, access register need some clocks enabled, otherwise system
    hang. So the patch also disable wake up irq in the suspend, after resume
    back enable the irq, which can avoid system hang issue.

    Signed-off-by: Fugang Duan
    (cherry pick and merge from commit: 8da4f80af0913781a4f9d50917c1dd66180e519d)

    Fugang Duan
     

26 Jan, 2017

2 commits

  • commit fff5d99225107f5f13fe4a9805adc2a1c4b5fb00 upstream.

    On architectures like arm64, swiotlb is tied intimately to the core
    architecture DMA support. In addition, ZONE_DMA cannot be disabled.

    To aid debugging and catch devices not supporting DMA to memory outside
    the 32-bit address space, add a kernel command line option
    "swiotlb=noforce", which disables the use of bounce buffers.
    If specified, trying to map memory that cannot be used with DMA will
    fail, and a rate-limited warning will be printed.

    Note that io_tlb_nslabs is set to 1, which is the minimal supported
    value.

    Signed-off-by: Geert Uytterhoeven
    Signed-off-by: Konrad Rzeszutek Wilk
    Signed-off-by: Greg Kroah-Hartman

    Geert Uytterhoeven
     
  • commit 2e575cbc930901718cc18e084566ecbb9a4b5ebb upstream.

    The type of AVIC interrupt controller found on i.MX31 is one-cell,
    namely 31 for CCM DVFS and 53 for CCM, however for clock control
    module its interrupts are specified as 3-cells, fix it.

    Fixes: ef0e4a606fb6 ("ARM: mx31: Replace clk_register_clkdev with clock DT lookup")
    Acked-by: Rob Herring
    Signed-off-by: Vladimir Zapolskiy
    Signed-off-by: Shawn Guo
    Signed-off-by: Greg Kroah-Hartman

    Vladimir Zapolskiy
     

20 Jan, 2017

1 commit

  • commit d8ca5bd158f738c4fa6974ee388c381f64db7905 upstream.

    The BUCK regulators 3, 4, and 5 also have a 10mV step mode,
    adjust the tables and logic to reflect the data-sheet for
    these regulators.

    fixes: d2a2e729a666 ("regulator: tps65086: Add regulator driver for the TPS65086 PMIC")
    Signed-off-by: Andrew F. Davis
    Signed-off-by: Mark Brown
    Signed-off-by: Greg Kroah-Hartman

    Andrew F. Davis
     

12 Jan, 2017

1 commit

  • commit e2a91f4f42018994d7424d405900d17eba6555d0 upstream.

    PDF build on Kernel 4.9-rc? returns an error with Sphinx 1.3.x
    and Sphinx 1.4.x, when trying to solve some cross-references.

    The solution is to redefine the \DURole macro.

    However, this is redefined too late. Move such redefinition to
    LaTeX preamble and bind it to just the Sphinx versions where the
    error is known to be present.

    Tested by building the documentation on interactive mode:
    make PDFLATEX=xelatex -C Documentation/output/./latex

    Fixes: e61a39baf74d ("[media] index.rst: Fix LaTeX error in interactive mode on Sphinx 1.4.x")
    Signed-off-by: Mauro Carvalho Chehab
    Signed-off-by: Jonathan Corbet
    Signed-off-by: Greg Kroah-Hartman

    Mauro Carvalho Chehab
     

09 Jan, 2017

2 commits

  • commit 0d808df06a44200f52262b6eb72bcb6042f5a7c5 upstream.

    When switching from/to a guest that has a transaction in progress,
    we need to save/restore the checkpointed register state. Although
    XER is part of the CPU state that gets checkpointed, the code that
    does this saving and restoring doesn't save/restore XER.

    This fixes it by saving and restoring the XER. To allow userspace
    to read/write the checkpointed XER value, we also add a new ONE_REG
    specifier.

    The visible effect of this bug is that the guest may see its XER
    value being corrupted when it uses transactions.

    Fixes: e4e38121507a ("KVM: PPC: Book3S HV: Add transactional memory support")
    Fixes: 0a8eccefcb34 ("KVM: PPC: Book3S HV: Add missing code for transaction reclaim on guest exit")
    Signed-off-by: Paul Mackerras
    Reviewed-by: Thomas Huth
    Signed-off-by: Paul Mackerras
    Signed-off-by: Greg Kroah-Hartman

    Paul Mackerras
     
  • commit 217e2bfab22e740227df09f22165e834cddd8a3b upstream.

    In docutils 0.13, the return type of get_column_widths method of the
    Table directive has changed [1], which breaks our flat-table directive
    and leads to a TypeError when trying to build the docs [2].

    This patch adds support for the new return type, while keeping support
    for older docutils versions too.

    [1] https://sourceforge.net/p/docutils/patches/120/
    [2] https://sourceforge.net/p/docutils/bugs/303/

    Signed-off-by: Dmitry Shachnev
    Signed-off-by: Jonathan Corbet
    Signed-off-by: Greg Kroah-Hartman

    Dmitry Shachnev
     

02 Dec, 2016

1 commit

  • Pablo Neira Ayuso says:

    ====================
    Netfilter fixes for net

    This is a large batch of Netfilter fixes for net, they are:

    1) Three patches to fix NAT conversion to rhashtable: Switch to rhlist
    structure that allows to have several objects with the same key.
    Moreover, fix wrong comparison logic in nf_nat_bysource_cmp() as this is
    expecting a return value similar to memcmp(). Change location of
    the nat_bysource field in the nf_conn structure to avoid zeroing
    this as it breaks interaction with SLAB_DESTROY_BY_RCU and lead us
    to crashes. From Florian Westphal.

    2) Don't allow malformed fragments go through in IPv6, drop them,
    otherwise we hit GPF, patch from Florian Westphal.

    3) Fix crash if attributes are missing in nft_range, from Liping Zhang.

    4) Fix arptables 32-bits userspace 64-bits kernel compat, from Hongxu Jia.

    5) Two patches from David Ahern to fix netfilter interaction with vrf.
    From David Ahern.

    6) Fix element timeout calculation in nf_tables, we take milliseconds
    from userspace, but we use jiffies from kernelspace. Patch from
    Anders K. Pedersen.

    7) Missing validation length netlink attribute for nft_hash, from
    Laura Garcia.

    8) Fix nf_conntrack_helper documentation, we don't default to off
    anymore for a bit of time so let's get this in sync with the code.

    I know is late but I think these are important, specifically the NAT
    bits, as they are mostly addressing fallout from recent changes. I also
    read there are chances to have -rc8, if that is the case, that would
    also give us a bit more time to test this.
    ====================

    Signed-off-by: David S. Miller

    David S. Miller
     

29 Nov, 2016

1 commit

  • RGMII requires special RX and/or TX delays depending on the actual
    hardware circuit/wiring. These delays can be added by the MAC, the PHY
    or the designer of the circuit (the latter means that no delay has to
    be added by PHY or MAC).
    There are 4 RGMII phy-modes used describe where a delay should be
    applied:
    - rgmii: the RX and TX delays are either added by the MAC (where the
    exact delay is typically configurable, and can be turned off when no
    extra delay is needed) or not needed at all (because the hardware
    wiring adds the delay already). The PHY should neither add the RX nor
    TX delay in this case.
    - rgmii-rxid: configures the PHY to enable the RX delay. The MAC should
    not add the RX delay in this case.
    - rgmii-txid: configures the PHY to enable the TX delay. The MAC should
    not add the TX delay in this case.
    - rgmii-id: combines rgmii-rxid and rgmii-txid and thus configures the
    PHY to enable the RX and TX delays. The MAC should neither add the RX
    nor TX delay in this case.

    Document these cases in the ethernet.txt documentation to make it clear
    when to use each mode.
    If applied incorrectly one might end up with MAC and PHY both enabling
    for example the TX delay, which breaks ethernet TX traffic on 1000Mbit/s
    links.

    Signed-off-by: Martin Blumenstingl
    Reviewed-by: Florian Fainelli
    Signed-off-by: David S. Miller

    Martin Blumenstingl
     

24 Nov, 2016

1 commit


20 Nov, 2016

1 commit

  • Pull ARM SoC fixes from Olof Johansson:
    "Again a set of smaller fixes across several platforms (OMAP, Marvell,
    Allwinner, i.MX, etc).

    A handful of typo fixes and smaller missing contents from device
    trees, with some tweaks to OMAP mach files to deal with CPU feature
    print misformatting, potential NULL ptr dereference and one setup
    issue with UARTs"

    * tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
    ipmi/bt-bmc: change compatible node to 'aspeed, ast2400-ibt-bmc'
    ARM: dts: STiH410-b2260: Fix typo in spi0 chipselect definition
    ARM: dts: omap5: board-common: fix wrong SMPS6 (VDD-DDR3) voltage
    ARM: omap3: Add missing memory node in SOM-LV
    arm64: dts: marvell: add unique identifiers for Armada A8k SPI controllers
    arm64: dts: marvell: fix clocksource for CP110 slave SPI0
    arm64: dts: marvell: Fix typo in label name on Armada 37xx
    ASoC: omap-abe-twl6040: fix typo in bindings documentation
    dts: omap5: board-common: enable twl6040 headset jack detection
    dts: omap5: board-common: add phandle to reference Palmas gpadc
    ARM: OMAP2+: avoid NULL pointer dereference
    ARM: OMAP2+: PRM: initialize en_uart4_mask and grpsel_uart4_mask
    ARM: dts: omap3: Fix memory node in Torpedo board
    ARM: AM43XX: Select OMAP_INTERCONNECT in Kconfig
    ARM: OMAP3: Fix formatting of features printed
    ARM: dts: imx53-qsb: Fix regulator constraints
    ARM: dts: sun8i: fix the pinmux for UART1

    Linus Torvalds