Re: boot slow down

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 08/07/12 16:33, bjlockie@xxxxxxxxx wrote:
>> bjlockie@xxxxxxxxx wrote:
>>
>>>> Hi James,
>>>>
>>>> On Mon, Aug 06, 2012 at 12:38:51AM -0400, James wrote:
>>>>> On 08/05/12 17:20, Sakari Ailus wrote:
>>>>>> Hi Andy and James,
>>>>>>
>>>>>> On Sat, Aug 04, 2012 at 06:28:19PM -0400, James wrote:
>>>>>>> On 08/04/12 13:42, Andy Walls wrote:
>>>>>>>> James <bjlockie@xxxxxxxxx> wrote:
>>>>>>>>
>>>>>>>>> There's a big pause before the 'unable'
>>>>>>>>>
>>>>>>>>> [    2.243856] usb 4-1: Manufacturer: Logitech
>>>>>>>>> [   62.739097] cx25840 6-0044: unable to open firmware
>>>>>>>>> v4l-cx23885-avcore-01.fw
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> I have a cx23885
>>>>>>>>> cx23885[0]: registered device video0 [v4l2]
>>>>>>>>>
>>>>>>>>> Is there any way to stop it from trying to load the firmware?
>>>>>>>>> What is the firmware for, analog tv? Digital works fine and
>>> analog
>>>>> is
>>>>>>>>> useless to me.
>>>>>>>>> I assume it is timing out there.
>>>>>>>>> --
>>>>>>>>> To unsubscribe from this list: send the line "unsubscribe
>>>>> linux-media"
>>>>>>>>> in
>>>>>>>>> the body of a message to majordomo@xxxxxxxxxxxxxxx
>>>>>>>>> More majordomo info at
>>> http://vger.kernel.org/majordomo-info.html
>>>>>>>>
>>>>>>>> The firmware is for the analog broadcast audio standard (e.g.
>>> BTSC)
>>>>> detection microcontroller.
>>>>>>>>
>>>>>>>> The A/V core of the CX23885/7/8 chips is for analog vidoe and
>>> audio
>>>>> processing (broadcast, CVBS, SVideo, audio L/R in).
>>>>>>>>
>>>>>>>> The A/V core of the CX23885 provides the IR unit and the Video
>>> PLL
>>>>> provides the timing for the IR unit.
>>>>>>>>
>>>>>>>> The A/V core of the CX23888 provides the Video PLL which is the
>>>>> timing for the IR unit in the CX23888.
>>>>>>>>
>>>>>>>> Just grab the firmware and be done with it.  Don't waste time
>>> with
>>>>> trying to make the cx23885 working properly but halfway.
>>>>>>>>
>>>>>>>> Regards,
>>>>>>>> Andy
>>>>>>>
>>>>>>> I already have the firmware.
>>>>>>> # ls -l /lib/firmware/v4l-cx23885-avcore-01.fw
>>>>>>> -rw-r--r-- 1 root root 16382 Oct 15  2011
>>>>> /lib/firmware/v4l-cx23885-avcore-01.fw
>>>>>>
>>>>>> The timeout if for allowing the user space helper enough time to
>>>>> provide the
>>>>>> driver with the firmware, but it seems the helper isn't around as
>>> the
>>>>>> timeout expires. Is udev running around the time of the first
>>> line? Is
>>>>> the
>>>>>> driver linked directly into the kernel or is it a module?
>>>>>>
>>>>>> Kind regards,
>>>>>>
>>>>> I have this set so the firmware is in the kernel.
>>>>>
>>>>> Symbol: FIRMWARE_IN_KERNEL [=y]
>>>>
>>>> I don't know about that driver, but if the udev would have to provide
>>> the
>>>> firmware, and it's not running, the delay is expected. Two seconds
>>> after
>>>> kernel startup is so early that the user space, including udev, might
>>> not
>>>> yet be running.
>>>>
>>>> Kind regards,
>>>>
>>>> --
>>>> Sakari Ailus
>>>> e-mail: sakari.ailus@xxxxxx	jabber/XMPP/Gmail: sailus@xxxxxxxxxxxxxx
>>>
>>> Doesn't that kernel option mean the firmware is put into the kernel at
>>> kernel build time?
>>>
>>> If I build the module, is there a module option to skip the delay?
>>
>>
>> Hi,
>>
>> The CX2388x firmware is _never_ built into the kernel.  I'm not sure what
>> that particular kernel config option is for.
>>
>> The kernel delay waiting for userspace to load firmware is settable using
>> a node under /sys somewhere. The default is 60 seconds.  You will have to
>> change it in very early boot, or fix the hardcoded constant in the kernel
>> and recompile your kernel.
>>
>> Shortening the delay may not get you entirely acceptable results.  If udev
>> is not, or is refusing to load firmware for the cx25840 module, then that
>> module will not properly initialize the CX23885/7/8 A/V core hardware and
>> will likely return with failure.  I'm not sure if the cx23885 driver will
>> happily continue on, if that happens.
> 
> It works fine even though it times out.
> 
>>
>> If you still have a modular kernel build around, you may wish to test with
>> it.  Blacklist the cx23885 module in /etc/modprobe.conf and the use
>> udevadm to investigate what is going on with udev when you later modprobe
>> the cx23885 driver.
>>
>> If building the video card driver into the kernel is causing you all the
>> problems, then I simply recommend not doing that.
> 
> I'll try it as a module.
> 
>>
>> Regards,
>> Andy

This is what I tried before.
It implies that I shouldn't need user space.

  ┌─────────── Include in-kernel firmware blobs in kernel binary ───────────┐
  │ CONFIG_FIRMWARE_IN_KERNEL:                                              │  
  │                                                                         │  
  │ The kernel source tree includes a number of firmware 'blobs'            │  
  │ that are used by various drivers. The recommended way to                │  
  │ use these is to run "make firmware_install", which, after               │  
  │ converting ihex files to binary, copies all of the needed               │  
  │ binary files in firmware/ to /lib/firmware/ on your system so           │  
  │ that they can be loaded by userspace helpers on request.                │  
  │                                                                         │  
  │ Enabling this option will build each required firmware blob             │  
  │ into the kernel directly, where request_firmware() will find            │  
  │ them without having to call out to userspace. This may be               │  
  │ useful if your root file system requires a device that uses             │  
  │ such firmware and do not wish to use an initrd.                         │  
  │                                                                         │  
  │ This single option controls the inclusion of firmware for               │  
  │ every driver that uses request_firmware() and ships its                 │  
  │ firmware in the kernel source tree, which avoids a                      │  
  │ proliferation of 'Include firmware for xxx device' options.             │  
  │                                                                         │  
  │ Say 'N' and let firmware be loaded from userspace.

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux