25 Sep, 2020

2 commits

  • Let the controller logic decide when to enter into clock pause mode!
    Entering in to pause mode during unregistration does not really make
    sense as the controller is totally going down at that point in time.

    Fixes: 4b14e62ad3c9e ("slimbus: Add support for 'clock-pause' feature")
    Signed-off-by: Srinivas Kandagatla
    Link: https://lore.kernel.org/r/20200925095520.27316-3-srinivas.kandagatla@linaro.org
    Signed-off-by: Greg Kroah-Hartman

    Srinivas Kandagatla
     
  • logical address can be either assigned by the SLIMBus controller or the core.
    Core uses IDA in cases where get_addr callback is not provided by the
    controller.
    Core already has this check while allocating IDR, however during absence
    reporting this is not checked. This patch fixes this issue.

    Fixes: 46a2bb5a7f7e ("slimbus: core: Add slim controllers support")
    Signed-off-by: Srinivas Kandagatla
    Link: https://lore.kernel.org/r/20200925095520.27316-2-srinivas.kandagatla@linaro.org
    Signed-off-by: Greg Kroah-Hartman

    Srinivas Kandagatla
     

15 May, 2020

2 commits

  • Adding missing corresponding of_node_put

    Fixes: 7588a511bdb4 ("slimbus: core: add support to device tree helper")
    Signed-off-by: Saravana Kannan
    [Srini: added fixes tag, removed NULL check and updated log]
    Signed-off-by: Srinivas Kandagatla
    Link: https://lore.kernel.org/r/20200511151334.362-3-srinivas.kandagatla@linaro.org
    Signed-off-by: Greg Kroah-Hartman

    Saravana Kannan
     
  • When setting the of_node for a newly created device, also set the
    fwnode. This allows fw_devlink feature to work for slimbus devices.

    Also, remove some unnecessary NULL checks. The functions in question
    already do NULL checks.

    Signed-off-by: Saravana Kannan
    [Srini: removed unnecessary NULL check from other patch]
    Signed-off-by: Srinivas Kandagatla
    Link: https://lore.kernel.org/r/20200511151334.362-2-srinivas.kandagatla@linaro.org
    Signed-off-by: Greg Kroah-Hartman

    Saravana Kannan
     

20 Jun, 2019

1 commit

  • Rely on MODULE_ALIAS() for automatic kernel module loading, rather than
    basing it on the OF compatible. This ensures that drivers without
    of_device_id table, such as wcd9335, will be automatically loaded.

    Signed-off-by: Srinivas Kandagatla
    [bjorn: Added commit message]
    Signed-off-by: Bjorn Andersson
    Signed-off-by: Greg Kroah-Hartman

    Srinivas Kandagatla
     

22 Jan, 2019

4 commits


26 Sep, 2018

3 commits


07 Jul, 2018

2 commits

  • This patch adds support to SLIMbus stream apis for slimbus device.
    SLIMbus streaming involves adding support to Data Channel Management and
    channel Reconfiguration Messages to slim core plus few stream apis.
    >From slim device side the apis are very simple mostly inline with other
    stream apis.

    Currently it only supports Isochronous and Push/Pull transport protocols,
    which are sufficient for audio use cases.

    Signed-off-by: Srinivas Kandagatla
    Signed-off-by: Greg Kroah-Hartman

    Srinivas Kandagatla
     
  • On SLIMBus controllers like Qcom NGD(non ported device), controller
    can request logical address once the remote side is powered, having a
    helper function like this to explicitly enumerate the bus is helpful.
    Also codec drivers which are taking to interface device would need
    such a helper too.

    Signed-off-by: Srinivas Kandagatla
    Signed-off-by: Greg Kroah-Hartman

    Srinivas Kandagatla
     

16 Mar, 2018

1 commit


19 Dec, 2017

4 commits

  • Per SLIMbus specification, a reconfiguration sequence known as
    'clock pause' needs to be broadcast over the bus while entering low-
    power mode. Clock-pause is initiated by the controller driver.
    To exit clock-pause, controller typically wakes up the framer device.
    Since wakeup precedure is controller-specific, framework calls it via
    controller's function pointer to invoke it.

    Signed-off-by: Sagar Dharia
    Signed-off-by: Srinivas Kandagatla
    Reviwed-by: Mark Brown
    Signed-off-by: Greg Kroah-Hartman

    Sagar Dharia
     
  • This patch adds support to parse slim devices from device tree.

    Signed-off-by: Srinivas Kandagatla
    Reviwed-by: Mark Brown
    Signed-off-by: Greg Kroah-Hartman

    Srinivas Kandagatla
     
  • This patch adds support to slim controllers in the slim core,
    including some utility functions invoked by the controller and
    slim device drivers.

    Signed-off-by: Srinivas Kandagatla
    Reviwed-by: Mark Brown
    Signed-off-by: Greg Kroah-Hartman

    Sagar Dharia
     
  • SLIMbus (Serial Low Power Interchip Media Bus) is a specification
    developed by MIPI (Mobile Industry Processor Interface) alliance.
    SLIMbus is a 2-wire implementation, which is used to communicate with
    peripheral components like audio-codec.
    SLIMbus uses Time-Division-Multiplexing to accommodate multiple data
    channels, and control channel. Control channel has messages to do
    device-enumeration, messages to send/receive control-data to/from
    SLIMbus devices, messages for port/channel management, and messages to
    do bandwidth allocation.
    The framework supports multiple instances of the bus (1 controller per
    bus), and multiple slave devices per controller.

    This patch adds support to basic silmbus core which includes support to
    SLIMbus type, slimbus device registeration and some basic data structures.

    Signed-off-by: Sagar Dharia
    Signed-off-by: Srinivas Kandagatla
    Reviwed-by: Mark Brown
    Signed-off-by: Greg Kroah-Hartman

    Sagar Dharia