[lkml]   [2018]   [Mar]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Subject[PATCH] Add Apple Carplay driver
From bf48dcd9cb254576cfea373c9a5d2ab996408895 Mon Sep 17 00:00:00 2001
From: Chunfeng Yun <>
Date: Tue, 13 Mar 2018 11:47:38 +0800
Subject: [PATCH] Add Apple Carplay driver

Some Apple devices which support Carplay can enter USB Host Mode from USB
Device Mode after receiving a specific USB Vendor Request. There is a
requirement apply to accesssories that support the USB dual role switch
feature, and must have a USB-A receptacle that is capable of functioning
in both USB Host and USB Device roles.
It means that the driver should supports manual Dual-Role switch, due to
no IDDIG pin is avaliable.

There is no suitable place to add this spicific USB Vendor Request, so
here I extract a single driver which allow user force to send it by a debug
interface when need it, and keep it independent on USB Dual-Role Controller
But to implement carplay feature, there are some requirments for USB Dual-Role
1. supports manual dual-role switch, such as, by a debug interface;
2. keep vbus alive even when switch host into device mode;

More information please refer to "Chapter 46. USB Role Switch" in
MFI Accessroy Interface Specification.pdf

Chunfeng Yun (1):
usb: misc: supports Apple Carplay driver

drivers/usb/misc/Kconfig | 9 +++
drivers/usb/misc/Makefile | 1 +
drivers/usb/misc/carplay.c | 193 ++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 203 insertions(+)
create mode 100644 drivers/usb/misc/carplay.c


 \ /
  Last update: 2018-03-14 07:09    [W:0.036 / U:6.076 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site