On Thu, 2008-05-29 at 00:25 +0200, Yuri Warczynski (gmail) wrote:
> >> Hello,
> >>
> >> I have this card (MPC718) on my Acer Aspire Idea 500.
> >>
> >> I?m quite eager to see it work. If testing is required, please do let
> >> me know, I will be glad to help.
> >
> > I assume you already have the cx23418 digitizer, apu, and cpu firmware
> > files already installed on your system.
> 
> Yes.
> 
> > We need to find out how the cards are wired up.  Here's what you can do
> > to help get the analog side of the card working:
> >
> > 1. In cx18-cards.c find the  cx18_card_mpc718 definition structure.
> >
> > 2. Change
> >        .v4l2_capabilities = 0,
> >   to
> >        .v4l2_capabilities = CX18_CAP_ENCODER,
> >
> > 3. Start with the composite input (select using v4l2-ctl -i2).  (If your
> > Acer box doesn't have a composite input, skip to step 4.)
> >
> > If the Composite 1 input does not work, find the line:
> >
> >  { CX18_CARD_INPUT_COMPOSITE1, 1, CX23418_COMPOSITE3 }
> >
> > in video_inputs. Replace CX23418_COMPOSITE3 with CX23418_COMPOSITE1 and
> > rebuild, and reinstall the driver, and unload the old module and load
> > the new module. Then test again. Keep iterating with CX23418_COMPOSITE2
> > through CX23418_COMPOSITE8. One of these 8 possible inputs should work.
> >
> 
> Here are my observations so far:
> 1. The Yuan card has 2 tuners in dmesg I see that the first one
> intializes, however the second one gives errors.
> ---
> [   79.010881] cx18:  Start initialization, version 1.0.0
> [   79.010940] cx18-0: Initializing card #0
> [   79.010944] cx18-0: Autodetected Yuan MPC718 card
> [   79.010981] cx18-0: Unreasonably low latency timer, setting to 64 (was 2)
> [   79.011173] cx18-0: cx23418 revision 01010000 (B)
> [   79.107114] cx18-0: Not yet supported!
> [   79.322601] cx18-0: Disabled encoder IDX device
> [   79.322641] cx18-0: Registered device video0 for encoder MPEG (2 MB)
> [   79.322664] cx18-0: Registered device video32 for encoder YUV (2 MB)
> [   79.322682] cx18-0: Registered device video24 for encoder PCM audio (1 MB)
> [   79.322701] cx18-0: Registered device radio0 for encoder radio
> [   80.026541] cx18-0: loaded v4l-cx23418-dig.fw firmware (16382 bytes)
> [   80.107921] cx18-0: loaded v4l-cx23418-apu.fw firmware V00120000
> (141200 bytes)
> [   80.199268] cx18-0: loaded v4l-cx23418-cpu.fw firmware (174716 bytes)
> [   80.205197] cx18-0: FW version: 0.0.71.0 (Release 2006/12/29)
> [   80.763969] cx18-0: Initialized card #0: Yuan MPC718
> [   80.764006] cx18-1: Initializing card #1
> [   80.764011] cx18-1: Autodetected Yuan MPC718 card
> [   80.764057] cx18-1: Unreasonably low latency timer, setting to 64 (was 2)
> [   80.764075] cx18-1: ioremap failed, perhaps increasing
> __VMALLOC_RESERVE in page.h
> [   80.764080] cx18-1: or disabling CONFIG_HIGHMEM4G into the kernel would 
> help
> [   80.764085] cx18-1: Error -12 on initialization
> [   80.764094] cx18: probe of 0000:02:01.0 failed with error -12
> [   80.764175] cx18:  End initialization
> ---
> Additioanally I've noticed that running modprobe -r cx18 && modrobe -v
> cx18  produces the same dmesg output for both cards as in the above
> case for card #1. So only option is to restart the pc in case it is
> required to initialize the card.

Yuri,

Actually, those are two separate Yuan MPC718 mini-PCI cards installed in
your Acer box.  The second one fails intially because of a kernel
vmalloc memory shortage on your machine (error -12 is -ENOMEM).  Brian
Hope indicated that upping vmalloc fixed the problem: 

Brian,
Can you give details on how you increased vmalloc?  Was it with a kernel
command line option on boot?

Yuri,

Also Mike Krufky on the video4linux mailing list has indicated he also
can't reload the cx18 module once he unloads it and gets a vmalloc
message as well (Mike also uses Ubuntu I think).  I think this is
because the cx18 grabs a pretty large chunk (64 MB) of vmalloc address
range for the PCI memory mapped IO.  When the driver is unloaded, the
large chunk that cx18 vacated from the vmalloc address space probably
gets fragmented, and no large chunk is available when trying to reload
the module.  Do a 

# cat /proc/iomem | grep cx18
# cat /proc/meminfo | grep Vmalloc

to see the state of things.  Again I think the solution is to increase
the vmalloc space the kernel is allowed to use.


> 2. The acer (which is a multimedia PC) provides 3 composite inputs two
> through a scart and one through the front pannel (the manual refers to
> these as AV1 , AV2 and AV3)

And each of these goes to *one* of the two Yuan cards.  Perhaps first
you can try and figure out which external input goes to which internal
card.  (Maybe by booting to Windows and trying things there?)

So anyway, now when issuing v4l2-ctl commands you should try to be
specific about which card you are controlling:

# v4l2-ctrl -d /dev/video0 -i2

configures the cx23418 digitizer input to the primary composite input on
card cx18-0

# v4l2-ctrl -d /dev/video1 -i2

configures the cx23418 digitizer input to the primary composite input on
card cx18-1


>  so since I did not know that the front
> pannel exposes AV2 - I started with that one.
> The results for AV2 were:
> On COMPOSITE 1,2,3,4,7,8. When trying to test I got a gray screen
> On 5 - colorful snow
> On 6 - a distorted video (skewed out of horizontal sync and black/white)
> 
> Once I  discovered the 2 scarts in the back. I thought it would be
> appropriate to redo the entire test with AV1 input.
> The results for AV1 were:
> On 1 - a distorted video (skewed out of horizontal sync and
> black/white) *yes, the same result as COMPOSITE6 on AV2*
> On 2,3,4,5,6,7,8 - gray screen (sometimes with a "spark" or two)

OK, so:

AV1 is wired to the COMPOSITE1 pin on the CX23418 on the first card
AV2 is wired to the COMPOSITE6 pin on the CX23418 on the first card

Since you have 2 composite inputs to the first card, instead of the 1 in
the inital card definition structure, you'll need to change 1 line and
add two lines to the cx18_card_mpc718 definition structure. You'll need
to have two lines to cover the composite video inputs:

        { CX18_CARD_INPUT_COMPOSITE1, 1, CX23418_COMPOSITE1 },
        { CX18_CARD_INPUT_COMPOSITE2, 2, CX23418_COMPOSITE6 },

and a new audio input to go with the second composite input:

        { CX18_CARD_INPUT_LINE_IN2, CX23418_AUDIO_SERIAL, 0 },


But it looks like the CX23418 is probably set for NTSC when you've got a
PAL input.  So run your experiments again, but this time also use
v4l2-ctl to set the input video standard to the PAL or SECAM that you're
using.  For example:

        # v4l2-ctl -d /dev/video0 -i2        <--- first composite input
        # v4l2-ctl -d /dev/video0 -s pal-I   <--- set the card to PAL-I

        # v4l2-ctl -d /dev/video0 -i4        <--- second composite input
        # v4l2-ctl -d /dev/video0 -s pal-I   <--- set the card to PAL-I

Let us know if get a clean picture.


> I am wondering if I should be testing AV 3 now and if the results
> above indicate anything?

If it is a composite input as well, wait until you fix the VMALLOC
problem and get the second Yuan MPC718 card initialized properly.

I'll wager:
AV3 is wired to the COMPOSITE1 pin of the CX23418 on the second card

In which case your card definition will already be correct.


> Will the driver distinguish between the AV1,2 and 3 inputs (in the
> future)? It would be deffintelly nice.

Yes.  The typical arrangement is a maximum of two composite inputs, 2
S-video inputs, and 1 analog tuner input for each CX2341x chip (or Yuan
MPC718 card in your specific case).  The driver can support this and
also supports multiple cards.

> 
> I will continue with the further tests in the next days.

Thanks for your efforts.  Have fun. ;)

Regards,
Andy


> > 4. Next try S-Video input (v4l2-ctl -i1): edit the line
> >
> > { CX18_CARD_INPUT_SVIDEO1, 1, CX23418_SVIDEO1},
> >
> > and replace CX23418_SVIDEO1 with CX23418_SVIDEO2 and rebuild and
> > reinstall the driver, and unload the old module and load the new module.
> > Then test again. Keep iterating with CX23418_SVIDEO2 through
> > CX23418_SVIDEO4, and hopefully one will work.
> >
> > If you get one to work, but it is only black and white, then the card
> > uses an uncommon combination of Luma and Chroma pins.  Make a note of
> > which one gives you a black and white picture (that'll be the correct
> > Luma pin) and we'll walk through how to set the right Chroma pin. (The
> > end result will be something like
> > "CX23418_SVIDEO_LUMA1|CX23418_SVIDEO_CHROMA4", from the range of values
> > CX23418_SVIDEO_LUMA1-4 and CX23418_SVIDEO_CHROMA4-8.)
> >
> >
> > 5. Tuner: first get the firmware. See the file
> > linux/Documentation/video4linux/extract_xc3028.pl for instructions.
> >
> >
> > 6. Now modprobe cx18. Then run modprobe -r cx18 and modprobe cx18 again. If
> > you get errors in the kernel log regarding the xceive tuner, then you
> > need to change the xceive_pin setting in the card definition.
> > It should be in the range 8-15. Try 15 first.
> >
> >
> > 7. Once the tuner firmware appears to be loading, We need to find
> > the correct composite input for the tuner by editing the line:
> >
> > { CX18_CARD_INPUT_VID_TUNER,  0, CX23418_COMPOSITE7 },
> >
> > Again, it can be any value from CX23418_COMPOSITE1-8.  Rebuild,
> > reinstall, unload, and reload and test.
> >
> >
> > 8. To get audio from the tuner, you may need to change:
> >
> > { CX18_CARD_INPUT_AUD_TUNER,  CX23418_AUDIO5, 0  },
> >
> > Possible values: CX23418_AUDIO4-8 or CX23418_AUDIO_SERIAL.   Rebuild,
> > reinstall, unload, and reload and test.
> >
> > If none of those work, we may need to start experimenting with GPIO
> > pins.
> >
> >
> > 9. For line in audio, you can try changing:
> >
> > { CX18_CARD_INPUT_LINE_IN1, CX23418_AUDIO_SERIAL, 0 }
> >
> > to CX23418_AUDIO4-8 if it doesn't already work.  (I'm not expecting that
> > to work though).
> 
> I did have audio wile testing composite on AV1.
> 
> > If you have no line in audio after that, we may need to start
> > experimenting with GPIO pins.
> >
> >
> > Let Hans or I know how it goes.  Especially for audio, we're having some
> > issues with the Hauppauge cards and mono/stereo audio, and Brian Hope on
> > the ivtv-users list has already indicated he currently gets no audio
> > with his MPC718 (He's working through similar steps.)
> >
> Seems I do not have a problem with line in audio on AV1, however I did
> not check mono/stereo functionality.
> 
> 
> Greetings,
> Yuri
> 
> > Regards
> > Andy
> >
> >>
> >>
> >> Greetings,
> >>
> >> Yuri
> 
> _______________________________________________
> ivtv-devel mailing list
> [email protected]
> http://ivtvdriver.org/mailman/listinfo/ivtv-devel
> 


_______________________________________________
ivtv-devel mailing list
[email protected]
http://ivtvdriver.org/mailman/listinfo/ivtv-devel

Reply via email to