From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752235AbcFVLYX (ORCPT ); Wed, 22 Jun 2016 07:24:23 -0400 Received: from mga09.intel.com ([134.134.136.24]:58287 "EHLO mga09.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751390AbcFVLYV (ORCPT ); Wed, 22 Jun 2016 07:24:21 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.26,509,1459839600"; d="scan'208";a="723324848" Date: Wed, 22 Jun 2016 14:19:17 +0300 From: Heikki Krogerus To: Oliver Neukum Cc: Andy Shevchenko , Rajaram R , Felipe Balbi , Mathias Nyman , Greg KH , Guenter Roeck , linux-kernel@vger.kernel.org, linux-usb@vger.kernel.org Subject: Re: [RFC PATCHv2] usb: USB Type-C Connector Class Message-ID: <20160622111917.GE19856@kuha.fi.intel.com> References: <1463661894-22820-1-git-send-email-heikki.krogerus@linux.intel.com> <1466514532.2091.5.camel@suse.com> <20160621135845.GA10715@kuha.fi.intel.com> <1466541785.2014.16.camel@suse.com> <20160622093156.GA19856@kuha.fi.intel.com> <1466590137.12516.5.camel@suse.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1466590137.12516.5.camel@suse.com> User-Agent: Mutt/1.6.1 (2016-04-27) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Jun 22, 2016 at 12:08:57PM +0200, Oliver Neukum wrote: > On Wed, 2016-06-22 at 12:31 +0300, Heikki Krogerus wrote: > > Hi, > > > > Now correct me, if I am misreading the spec. I am sure the system > > > will boot unless it needs ridiculous amounts of power, but > > > will we see anything on the screen? As far as I can tell the spec > > > actually says that you cannot enter an alternate mode without having > > > established a power contract. > > > If we really leave entering modes up to user space, we have lost > > > printk before getting into the initrd at the earliest. > > > > With these boards, you will not see anything on the screen that is > > attached to a Type-C connector until the OS has booted to the point > > where it has negotiated the power contract and entered a mode. > > > > If the system has BIOS/FW/EC capable of negotiating the power contract > > and enter a mode, but where we still are expected to take over the > > whole TCPM in OS, I think the connection will be reset. > > Think about a DP over type C display with a USB PD power brick on a > daisy chain. > If the host needs more than 15W or more than 5V, a reset is suicide. If the host needs more then 15W from Type-C to bootup, which does not have enough capacitance the manage the renegotiation, I think will always have only the FW interface (most likely UCSI) to deal with the Type-C ports, if even that. The Thunderbolt3 controllers for example don't give any details about or control over the Type-C ports to OS. Though I think their firmwares may be made to support UCSI in the future with some of them. > And losing earlyprintk hurts a lot. > This means we need USB PD statically in the kernel. And a kernel > based policy that brings up all displays. Yep. I'm guessing these points are probable one of the major reason why the control of the Type-C ports was made a responsibility of a discrete microcontroller or the FW in general. Thanks, -- heikki