Re: Problems getting the 1394 ROM configuration info

From: Jeff Henkels (jeff_at_mapson.privatemail.com)
Date: 08/14/04


Date: Sat, 14 Aug 2004 11:58:25 -0700


"BJ Johns" <hjohns1@ix.netcom.com> wrote in message
news:OJ8bYg6fEHA.1656@TK2MSFTNGP10.phx.gbl...
> I am new to device drivers and am working on a driver for a 1394 firewire
> video device. I am having some problems in getting the ROM configuration
> info.
>
> I am able to perform multiple async reads of 4 bytes at a time to read the
> ROM data starting at 0xFFFFFF0000400 and continuing until I have read the
> entire contents of the config info. And I have verified that all of the
> retrieved data is correct.

So, how do you figure out how many quadlets you have to read to get the
entire config ROM? I'd like to try this method next.

> But if I try to read anything more than 4 bytes at a time, I just get all
> zero's back. First question....Is there a limit to the number of bytes
that
> can be retrieved at a time when reading the ROM config info?
>
> Next, I tried calling REQUEST_GET_CONFIGURATION_INFO in the
IOCTL_1394_CLASS
> to get the buffer sizes of the Unit Directory, Unit Dependent Directory,
> Vendor Leaf and Model Leaf by first setting each of these values to zero
> before making the call. After returning success, the call only seems to
set
> the u.GetConfigurationInformation.UnitDirectoryBufferSize value to 12
(which
> is incorrect) and leaves all others at zero.

I've noticed this too; I've been working with the 1394DCAM DDK sample, which
uses REQUEST_GET_CONFIGURATION_INFO. My guess, based on one or two things
I've read here in this group, is that the 1394 class driver assumes a
specific format for the config ROM and gets confused if the format isn't
what it expects.

> Why does it not return the correct values?
>
> At worst case I can just take the retrieved data from my first technique
and
> extract the same information as the call
> to REQUEST_GET_CONFIGURATION_INFO should have done but I want to find out
> why this call doesn't seem to work for me.
>
> Thanks
> -BJ
>
>



Relevant Pages

  • Re: Cant Compile Nvidia Driver for Linux
    ... a generic kernel .config. ... boards and Linux's internal AGP driver when used with nVidia's ... Device Drivers -> Character Devices -> AGPGART Interface, ...
    (comp.os.linux.questions)
  • RE: [UPDATED PATCH] EFI support for ia32 kernels
    ... >> reuse a single driver image for multiple architectures assuming there ... As one of the people responsible for the EFI Specification and our ... Perhaps the UNDI network card interface that Intel developed ... BIOS can't shadow that much ROM code. ...
    (Linux-Kernel)
  • How to add wake on lan support for your card (was: Re: FreeBSD WOL sis on)
    ... about drivers either before I started working on the WOL patch. ... first look at the Linux driver to find out whether ... There is usually a register in the chip with bits that define ... The WOL config register is usually a 16bit or 32bit ...
    (freebsd-hackers)
  • Slow 2d performance in X / opera / nvidia drivers
    ... Kernel config attached ... 2 ports with 2 removable, ... Load "extmod" ... Identifier "Keyboard0" Driver "keyboard" ...
    (freebsd-questions)
  • [PATCH 19-rc2] Fix misc Kconfig typos
    ... limits the system to just 64MB of PCI memory. ... config MACH_LPD7A400 ... If you do not enable DMA, an interrupt for each character will be ... This driver toggles the front-panel LED on sun4m systems ...
    (Linux-Kernel)