Return-path: Received: from mail.linuxfoundation.org ([140.211.169.12]:57944 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751636AbaK0PSW (ORCPT ); Thu, 27 Nov 2014 10:18:22 -0500 Date: Thu, 27 Nov 2014 07:16:55 -0800 From: Greg Kroah-Hartman To: Pali =?iso-8859-1?Q?Roh=E1r?= Cc: Ming Lei , "John W. Linville" , Grazvydas Ignotas , "linux-wireless@vger.kernel.org" , Network Development , Linux Kernel Mailing List , Pavel Machek , Ivaylo Dimitrov , Aaro Koskinen , Kalle Valo , Sebastian Reichel , David Gnedt Subject: Re: wl1251: NVS firmware data Message-ID: <20141127151655.GB23064@kroah.com> (sfid-20141127_161846_438866_E431D44E) References: <201411271506.20457@pali> <201411271543.23527@pali> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 In-Reply-To: <201411271543.23527@pali> Sender: linux-wireless-owner@vger.kernel.org List-ID: On Thu, Nov 27, 2014 at 03:43:23PM +0100, Pali Roh?r wrote: > On Thursday 27 November 2014 15:21:44 Ming Lei wrote: > > On Thu, Nov 27, 2014 at 10:06 PM, Pali Roh?r > wrote: > > > Hello, > > > > > > wifi driver wl1251 needs NVS calibration data for working. > > > These data are loaded by driver via request_firmware from > > > userspace file: ti-connectivity/wl1251-nvs.bin. In > > > linux-fimrware git tree there is generic wl1251-nvs.bin > > > file which is used by default. > > > > > > Driver wl1251 is used on Nokia N900 cellphone for its wifi > > > chip. This cellphone has one special MTD partition (called > > > CAL) where are stored some configuration data in special > > > binary (key-value) format. And there is also stored correct > > > calibration data for specific device (each device has > > > different data). It is preferred to use those data instead > > > generic one (provided by linux-firmware git tree). > > > > > > Now my question is: How to correctly load calibration data > > > from special Nokia N900 CAL partition into wl1251 kernel > > > driver? > > > > It is better to let user space script handle the request. > > > > Yes, this makes sense. Implementing CAL parser in kernel wl1251 > driver would be hard... > > > > By default kernel reads ti-connectivity/wl1251-nvs.bin file > > > from VFS if exists without any userspace support. If it > > > fails then it fallback to loading via udev. > > > > You can remove or rename this file so that loading from user > > space can be triggered. > > > > It is no so easy... In case when CAL does not contains NVS data > then we want to use this generic NVS file. And telling everybody > to rename this is file is not good solution... But that's up to your system configuration, not the kernel. Make a userspace package for the firmware that creates it in the format you need it to be in, for the hardware you have, and then there would not be any need for a kernel change, right? greg k-h