slimbus: Add SLIMbus bus type
authorSagar Dharia <sdharia@codeaurora.org>
Mon, 11 Dec 2017 23:42:57 +0000 (23:42 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 19 Dec 2017 10:01:02 +0000 (11:01 +0100)
commit3648e78ec701843ff8fab461071ba05067274f26
tree6ed541fbe39a922cf46fce73479b2cce768261d8
parent2df7296603399cbad9522ce111ea0c5270153990
slimbus: Add SLIMbus bus type

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 <sdharia@codeaurora.org>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Reviwed-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/Kconfig
drivers/Makefile
drivers/slimbus/Kconfig [new file with mode: 0644]
drivers/slimbus/Makefile [new file with mode: 0644]
drivers/slimbus/core.c [new file with mode: 0644]
include/linux/mod_devicetable.h
include/linux/slimbus.h [new file with mode: 0644]