linux/drivers/staging/greybus
Johan Hovold 3de5acfafb greybus: connection: implement proper connection closure
Implement proper connection closure, which includes sending ping
requests on the connection being tore down while coordinating with the
remote interface as well as the SVC.

This specifically implements the new ping operation, which in case of
offloaded connections is handled by the host-device driver in an
implementation-defined manner through a new callback.

Note that the normal connection tear-down procedure is executed in case
of failed connection establishment due to failed connected operation.
Specifically, the disconnecting request is sent also in case the
connected operation never succeeded. This is needed since the interface
may have enabled FCT flow upon receiving the connected request.

Signed-off-by: Johan Hovold <johan@hovoldconsulting.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2016-05-27 12:24:17 -07:00
..
Documentation greybus: Documentation/sysfs: gbphy0 is an invalid name 2016-05-26 22:33:27 -07:00
scripts greybus: checkpatch.pl: Mark --no-tree as default option 2016-04-02 19:44:30 -07:00
tools greybus: Fix loopback app after rename to gpphy 2016-05-26 22:23:25 -07:00
.gitignore greybus: tools: Add tools directory to greybus repo and add loopback 2015-12-17 18:17:07 -08:00
LICENSE
Makefile greybus: legacy: remove protocol.o from the makefile 2016-05-20 19:45:50 -07:00
README
arche-apb-ctrl.c greybus: arche-ctrl: Don't expose driver internals to arche-platform driver 2016-04-23 09:37:21 +09:00
arche-platform.c greybus: arche-platform: Enable SVC clock during FW_FLASHING state 2016-05-25 22:36:45 -07:00
arche_platform.h greybus: arche-platform: Export fn to allow timesync driver to change the state 2016-05-05 13:49:02 -07:00
audio_apbridgea.c greybus: audio_apbridgea: fix two return values 2016-05-20 16:36:43 -07:00
audio_apbridgea.h greybus: audio: Split start and stop APBridgeA requests 2016-03-01 22:44:49 -08:00
audio_codec.c greybus: audio: Reduce codec->lock granularity 2016-05-04 11:30:20 -07:00
audio_codec.h greybus: audio: Remove redundant lock protection & is_connected field 2016-05-04 11:29:06 -07:00
audio_gb.c greybus: audio: Fix sparse warnings 2016-02-02 21:26:32 -08:00
audio_manager.c greybus: audio: gb_manager: Use valid argument while removing ida allocated id. 2016-05-18 16:33:31 -07:00
audio_manager.h greybus: audio_manager: Split device type into i/p & o/p devices 2016-04-05 09:39:22 -04:00
audio_manager_module.c greybus: audio_manager: Split device type into i/p & o/p devices 2016-04-05 09:39:22 -04:00
audio_manager_private.h greybus: audio: Add Audio Manager 2016-01-13 16:12:56 -08:00
audio_manager_sysfs.c greybus: audio_manager: Split device type into i/p & o/p devices 2016-04-05 09:39:22 -04:00
audio_module.c greybus: audio: Fix memory leak 2016-05-23 14:41:41 -07:00
audio_topology.c greybus: audio: Update device type based on widget types 2016-04-05 09:39:22 -04:00
bootrom.c greybus: bootrom: Implement timeouts to detect Module failures 2016-05-09 08:48:10 +02:00
bootrom.h greybus: firmware: Rename to bootrom protocol 2016-04-04 21:19:06 -07:00
bundle.c greybus: Bundle: Initialize dma_mask for bundle device 2016-04-25 15:14:28 -07:00
bundle.h greybus: interface: clean up device-id handling 2016-03-30 14:23:19 -07:00
camera.c greybus: eliminate unneeded null check 2016-05-27 11:28:16 -07:00
connection.c greybus: connection: implement proper connection closure 2016-05-27 12:24:17 -07:00
connection.h greybus: connection: implement proper connection closure 2016-05-27 12:24:17 -07:00
control.c greybus: control: implement disconnecting operation 2016-05-27 12:19:29 -07:00
control.h greybus: control: implement disconnecting operation 2016-05-27 12:19:29 -07:00
core.c greybus: core: avoid I/O to disconnected interfaces 2016-05-27 12:19:29 -07:00
debugfs.c greybus: core: add device prefix to error messages 2016-02-11 21:44:17 -08:00
devices
es2.c greybus: es2: reset cports at disable 2016-05-27 12:19:29 -07:00
firmware.h greybus: fw-management: Add firmware-management protocol driver 2016-05-15 00:23:52 +02:00
fw-core.c greybus: fw-core: destroy connections on error 2016-05-20 16:36:43 -07:00
fw-download.c greybus: fw-download: Replace timer with delayed-work 2016-05-09 08:48:10 +02:00
fw-management.c greybus: fw-management: Fix error message's text 2016-05-20 16:36:43 -07:00
gb-camera.h greybus: camera-gb: Extend the configure streams interface 2016-04-11 18:47:57 -07:00
gbphy.c greybus: gpbridge: rename 'gpbridge' to 'gbphy' everywhere 2016-05-19 10:09:13 -07:00
gbphy.h greybus: gpbridge: rename 'gpbridge' to 'gbphy' everywhere 2016-05-19 10:09:13 -07:00
gpio.c greybus: gpbridge: rename 'gpbridge' to 'gbphy' everywhere 2016-05-19 10:09:13 -07:00
greybus.h greybus: legacy: remove legacy driver support 2016-05-20 16:47:30 -07:00
greybus_firmware.h greybus: fw-management: Update header's license 2016-05-16 19:59:50 -07:00
greybus_id.h
greybus_manifest.h greybus: interface: Extract and store Interface feature byte 2016-05-15 11:39:57 -07:00
greybus_protocols.h greybus: connection: implement proper connection closure 2016-05-27 12:24:17 -07:00
greybus_trace.h greybus: operation: add helper for creating core operations 2016-05-27 12:21:16 -07:00
hd.c greybus: hd: Add API to release reserved CPorts 2016-05-27 11:27:28 -07:00
hd.h greybus: connection: implement proper connection closure 2016-05-27 12:24:17 -07:00
hid.c greybus: convert drivers to use connection->private set/get 2016-03-22 16:47:28 -04:00
i2c.c greybus: gpbridge: rename 'gpbridge' to 'gbphy' everywhere 2016-05-19 10:09:13 -07:00
interface.c greybus: interface: avoid I/O to bootrom during removal 2016-05-27 12:19:29 -07:00
interface.h greybus: interface: avoid I/O to bootrom during removal 2016-05-27 12:19:29 -07:00
kernel_ver.h greybus: power_supply: reverse version check for new psy API 2016-03-16 21:49:31 -07:00
light.c greybus: fix pointless null check 2016-05-27 11:28:16 -07:00
loopback.c greybus: gpbridge: rename 'gpbridge' to 'gbphy' everywhere 2016-05-19 10:09:13 -07:00
manifest.c greybus: interface: Extract and store Interface feature byte 2016-05-15 11:39:57 -07:00
manifest.h
module.c greybus: tracing: add module traces 2016-05-26 22:37:19 -07:00
module.h greybus: core: add module abstraction 2016-04-25 11:08:30 -07:00
operation.c greybus: connection: implement proper connection closure 2016-05-27 12:24:17 -07:00
operation.h greybus: operation: add helper for creating core operations 2016-05-27 12:21:16 -07:00
power_supply.c greybus: use PTR_ERR_OR_ZERO() 2016-05-27 11:28:16 -07:00
pwm.c greybus: gpbridge: rename 'gpbridge' to 'gbphy' everywhere 2016-05-19 10:09:13 -07:00
raw.c greybus: raw: use hexadecimal notation for request types 2016-03-03 10:02:48 -08:00
sdio.c greybus: fix unbalanced mutex 2016-05-27 11:28:16 -07:00
spi.c greybus: gpbridge: rename 'gpbridge' to 'gbphy' everywhere 2016-05-19 10:09:13 -07:00
spilib.c greybus: spi: add inprogress bit to xfer_flags 2016-05-16 20:02:58 -07:00
spilib.h greybus: spi: Restructure spi.c to share it with other bundle drivers 2016-05-14 23:18:32 +02:00
svc.c greybus: svc: add stub connection-quiescing operation 2016-05-27 12:19:29 -07:00
svc.h greybus: svc: add stub connection-quiescing operation 2016-05-27 12:19:29 -07:00
svc_watchdog.c greybus: svc watchdog: Disable watchdog upon entering suspend 2016-04-15 14:42:53 -07:00
uart.c greybus: gpbridge: rename 'gpbridge' to 'gbphy' everywhere 2016-05-19 10:09:13 -07:00
usb.c greybus: gpbridge: rename 'gpbridge' to 'gbphy' everywhere 2016-05-19 10:09:13 -07:00
vibrator.c greybus: convert drivers to use connection->private set/get 2016-03-22 16:47:28 -04:00

README

Greybus kernel code

To build against the running kernel (odds are you don't want this):
	make

To build against a specific kernel source tree (odds are you want this):
	KERNELDIR=/home/some/random/place make

Any questions / concerns about this code base, please email:
	Greg Kroah-Hartman <greg@kroah.com>