[RFCv4 00/11] OMAP SSI driver / N900 modem support

From: Sebastian Reichel
Date: Sun Dec 15 2013 - 18:31:38 EST


Hi,

This is the fourth round of the OMAP SSI driver patches.

I added some more patches on top of the actual OMAP SSI driver, so that one can
get the overall picture of the planned architecture. This patchset contains
everything, that is needed to get the N900's modem running (without audio
support, which requires another hsi client driver).

After applying the patches one can use ofono with the N900's modem.
This is what I did to test the modem:

# get ofono and mdbus2 to send some dbus commands
apt-get install ofono mdbus2
# ofono assumes, that gpios are available in /dev/cmt. Previously
# a init script exported the gpios and symlinked them to this
# directory. I added support for the gpio export directly into
# nokia-cmt and I plan to write a patch for ofono to check for
# the cmt gpios directly in /sys. For now this hack can be used
# to test the modem.
ln -sf /sys/devices/nokia-cmt.5 /dev/cmt
# start ofono in debug mode
export OFONO_ISI_DEBUG
export OFONO_AT_DEBUG=1
ofono --nodetach --debug
# enable the modem
mdbus2 -s org.ofono /n900_0 org.ofono.Modem.SetProperty Powered true
# enable modem's RF parts
mdbus2 -s org.ofono /n900_0 org.ofono.Modem.SetProperty Online true
# scan for available networks
mdbus2 -s org.ofono /n900_0 org.ofono.NetworkRegistration.Scan

Changes since RFCv3 [0]:
* Added new patches for nokia-cmt driver
* Added new patches for ssi protocol driver
* Removal of ti,hwmods description from DT Documentation
* Removed the hwmod patch, since it has already been applied
* Misc. bug fixes

TODO (short-term):
* Find a DT maintainer, who has time to review the updated DT bindings
* Push nokia-cmt driver through gregkh's linux-misc queue
* Push hsi/ssi drivers through my new linux-hsi queue [1]
* Push DTS patches through benoits queue once the other patches are queued

TODO (long-term):
* Central Message Queue
I did not yet implement a central message queue in the HSI framework.
I will do this after Nokia N900 modem is working in the mainline kernel.
* Get clock data from DT
This depends on a patchset, which is not yet part of any kernel tree.
Apart from that I don't know which clocks will be needed. That depends
on the implementation of the hwmod DTification (see next point)
* Remove the hwmod DT hack
This depends on some future work merging hwmod data into DT.

[0] https://lkml.org/lkml/2013/10/6/127
[1] https://git.kernel.org/cgit/linux/kernel/git/sre/linux-hsi.git/

-- Sebastian

Sebastian Reichel (11):
HSI: method to unregister clients from an hsi port
HSI: hsi-char: add Device Tree support
HSI: hsi-char: fix driver for multiport scenarios
ARM: OMAP2+: HSI: Introduce OMAP SSI driver
Documentation: DT: omap-ssi binding documentation
misc: Introduce Nokia CMT driver
Documentation: DT: nokia-cmt binding documentation
HSI: Introduce driver for SSI Protocol
DTS: ARM: OMAP3-N900: Add SSI support
DTS: ARM: OMAP3-N900: Add CMT support
DTS: ARM: OMAP3-N900: Add SSI protocol support

Documentation/devicetree/bindings/hsi/omap_ssi.txt | 69 +
.../devicetree/bindings/misc/nokia-cmt.txt | 28 +
arch/arm/boot/dts/omap3-n900.dts | 72 +
arch/arm/boot/dts/omap3.dtsi | 47 +
drivers/hsi/Kconfig | 1 +
drivers/hsi/Makefile | 1 +
drivers/hsi/clients/Kconfig | 8 +
drivers/hsi/clients/Makefile | 3 +-
drivers/hsi/clients/hsi_char.c | 13 +-
drivers/hsi/clients/ssi_protocol.c | 1201 +++++++++++++++++
drivers/hsi/controllers/Kconfig | 19 +
drivers/hsi/controllers/Makefile | 6 +
drivers/hsi/controllers/omap_ssi.c | 619 +++++++++
drivers/hsi/controllers/omap_ssi.h | 166 +++
drivers/hsi/controllers/omap_ssi_port.c | 1401 ++++++++++++++++++++
drivers/hsi/controllers/omap_ssi_regs.h | 171 +++
drivers/hsi/hsi.c | 10 +
drivers/misc/Kconfig | 7 +
drivers/misc/Makefile | 1 +
drivers/misc/nokia-cmt.c | 298 +++++
include/linux/hsi/hsi.h | 1 +
include/linux/hsi/ssi_protocol.h | 41 +
include/linux/nokia-cmt.h | 46 +
23 files changed, 4227 insertions(+), 2 deletions(-)
create mode 100644 Documentation/devicetree/bindings/hsi/omap_ssi.txt
create mode 100644 Documentation/devicetree/bindings/misc/nokia-cmt.txt
create mode 100644 drivers/hsi/clients/ssi_protocol.c
create mode 100644 drivers/hsi/controllers/Kconfig
create mode 100644 drivers/hsi/controllers/Makefile
create mode 100644 drivers/hsi/controllers/omap_ssi.c
create mode 100644 drivers/hsi/controllers/omap_ssi.h
create mode 100644 drivers/hsi/controllers/omap_ssi_port.c
create mode 100644 drivers/hsi/controllers/omap_ssi_regs.h
create mode 100644 drivers/misc/nokia-cmt.c
create mode 100644 include/linux/hsi/ssi_protocol.h
create mode 100644 include/linux/nokia-cmt.h

--
1.8.5.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/