linux-media.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Antti Palosaari <crope@iki.fi>
To: Andy Walls <awalls@md.metrocast.net>
Cc: James <bjlockie@lockie.ca>,
	linux-media Mailing List <linux-media@vger.kernel.org>
Subject: Re: boot slow down
Date: Mon, 06 Aug 2012 14:41:44 +0300	[thread overview]
Message-ID: <501FAD78.6090205@iki.fi> (raw)
In-Reply-To: <8a09e594-04b7-41b7-88a7-9877fb20810d@email.android.com>

On 08/06/2012 01:57 PM, Andy Walls wrote:
> Antti Palosaari <crope@iki.fi> wrote:
>
>> On 08/06/2012 11:37 AM, Andy Walls wrote:
>>> James <bjlockie@lockie.ca> wrote:
>>>
>>>> On 08/04/12 13:42, Andy Walls wrote:
>>>>> James <bjlockie@lockie.ca> 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@vger.kernel.org
>>>>>> 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
>>>>
>>>>
>>>> --
>>>> To unsubscribe from this list: send the line "unsubscribe
>> linux-media"
>>>> in
>>>> the body of a message to majordomo@vger.kernel.org
>>>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>>
>>>
>>> Hmm.  The firmware file size and location look right.
>>>
>>> The 60 second delay is the default kernel delay waiting for the
>> userspace firmware loader to fetch th file amd provide it to the kernel
>> via sysfs.
>>>
>>> That doesn't appear to be happening.  I know udev runs some script to
>> accomplish that.  I'm away from my development system, so I can't
>> investigate further.
>>>
>>> Regards,
>>> Andy
>>
>> I suspect it could be the firmware download issue with udev. Recent
>> udev
>> versions doesn't allow firmware download during module init path as
>> module init should not be blocked such long period.
>>
>> I did quite much work for resolving that issue for the dvb usb by
>> deferring device init in probe using work-queue. It is not good looking
>>
>> solution and Mauro is still trying to found out more general solution.
>>
>> regards
>> Antti
>>
>> --
>> http://palosaari.fi/
>
> So the cx25840 module scheduling the firmware load to be done by a worker thread is not enough to satisfy the new udev rule?
>
> http://git.linuxtv.org/media_tree.git/blob/staging/for_v3.7:/drivers/media/video/cx25840/cx25840-core.c#l628
>
> Regards,
> Andy

If it blocks module init, or probe which is called in module init 
context, it timeouts by udev when request_firmware() is called.

There seems to be workqueue, but I am not enough familiar with cx25840 
driver to say how code path actually runs.

I suspect cx25840_initialize() will not return until firmware is loaded? 
And that function is called when module is loaded?

regards
Antti


-- 
http://palosaari.fi/

      reply	other threads:[~2012-08-06 11:42 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-08-04 15:52 boot slow down James
2012-08-04 17:05 ` Ezequiel Garcia
2012-08-04 17:42 ` Andy Walls
2012-08-04 22:21   ` James
2012-08-04 22:28   ` James
2012-08-05 21:20     ` Sakari Ailus
2012-08-06  4:30       ` James
2012-08-06  4:38       ` James
2012-08-07 11:27         ` Sakari Ailus
2012-08-07 13:04           ` bjlockie
2012-08-07 13:53             ` Andy Walls
2012-08-07 20:33               ` bjlockie
2012-08-07 21:42                 ` James
2012-08-07 21:49                   ` James
2012-08-08  8:24                   ` Sakari Ailus
2012-08-08 17:18                     ` bjlockie
2012-08-11 15:20                       ` Sakari Ailus
2012-08-12  0:06                       ` Andy Walls
2012-08-12 19:56                         ` Ezequiel Garcia
2012-08-13 12:25                         ` Mauro Carvalho Chehab
2012-08-07 21:40               ` James
2012-08-06  8:37     ` Andy Walls
2012-08-06  9:19       ` Antti Palosaari
2012-08-06 10:57         ` Andy Walls
2012-08-06 11:41           ` Antti Palosaari [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=501FAD78.6090205@iki.fi \
    --to=crope@iki.fi \
    --cc=awalls@md.metrocast.net \
    --cc=bjlockie@lockie.ca \
    --cc=linux-media@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).