From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752235AbbH0HJv (ORCPT ); Thu, 27 Aug 2015 03:09:51 -0400 Received: from mga01.intel.com ([192.55.52.88]:6648 "EHLO mga01.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752023AbbH0HJu (ORCPT ); Thu, 27 Aug 2015 03:09:50 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.17,421,1437462000"; d="scan'208";a="776555759" Message-ID: <1440659357.2502.2.camel@loki> Subject: Re: Problems loading firmware using built-in drivers with kernels that use initramfs. From: Liam Girdwood To: "Lin, Mengdong" Cc: "Jie, Yang" , Takashi Iwai , Dmitry Torokhov , "Luis R. Rodriguez" , "joonas.lahtinen@linux.intel.com" , Tom Gundersen , Ming Lei , Al Viro , Greg Kroah-Hartman , Kay Sievers , Linus Torvalds , David Woodhouse , Luis Rodriguez , lkml , yalin wang Date: Thu, 27 Aug 2015 08:09:17 +0100 In-Reply-To: References: <1440449403.2469.35.camel@loki> <1440489900.2419.4.camel@loki> <20150825193408.GR8051@wotan.suse.de> <1440576394.2443.17.camel@loki> <1440579636.2443.26.camel@loki> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.10.4-0ubuntu2 Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 2015-08-27 at 01:50 +0000, Lin, Mengdong wrote: > > -----Original Message----- > > From: Liam Girdwood [mailto:liam.r.girdwood@linux.intel.com] > > Sent: Wednesday, August 26, 2015 5:01 PM > > To: Jie, Yang > > Cc: Takashi Iwai; Dmitry Torokhov; Luis R. Rodriguez; > > joonas.lahtinen@linux.intel.com; Tom Gundersen; Ming Lei; Al Viro; Greg > > Kroah-Hartman; Kay Sievers; Linus Torvalds; David Woodhouse; Luis Rodriguez; > > lkml; yalin wang; Lin, Mengdong > > Subject: Re: Problems loading firmware using built-in drivers with kernels that > > use initramfs. > > > > On Wed, 2015-08-26 at 08:29 +0000, Jie, Yang wrote: > > > > -----Original Message----- > > > > From: Liam Girdwood [mailto:liam.r.girdwood@linux.intel.com] > > > > > > I think the options are to either :- > > > > > > > > 1) Don not support audio DSP drivers using topology data as built-in > > drivers. > > > > Audio is not really a critical system required for booting anyway. > > > > > > > > 2) Create a default PCM for every driver that has topology data on > > > > the assumption that every sound card will at least 1 PCM. This PCM > > > > can then be re-configured when the FW is loaded. > > > > > > Yep, this case is quite similar with what Linus described. > > > > > > Is it possible that we can probe pcm device after firmware is loaded > > > for this case? > > > > > > > The PCM devices are defined in the topology data so it is only possible to > > create the PCM device *after* the firmware is loaded in these drivers. > > > > Liam > > It seems this can prevent audio device driver in built-in mode to use topology drivers. > > If topology is present, the vendor driver also uses request_firmware() to load the topology data file in the probe phase. Then ASoC core will create the sound card and its PCM devices. > > Shall we force the device drivers that depends on topology to be configured as modules? Yes, this is probably the best/quickest solution for the short term until we can implement and test option 2. Liam