Re: [PATCH] firewire: core: mask previous entry's type bits when looking for leaf

From: Takashi Sakamoto
Date: Fri Jan 26 2024 - 07:19:32 EST


Hi,

On Fri, Jan 26, 2024 at 12:49:35AM -0800, Adam Goldman wrote:
> On Fri, Jan 26, 2024 at 10:17:05AM +0900, Takashi Sakamoto wrote:
> > Would I request you to update the API documentation of fw_csr_string()
> > as well and send the renewed patch as take 2?
> >
> >
> > I have a mixed feeling about the change, but I'll finally accept it since
> > we face the exception against documentation.
> >
> > As you know, in Annex A of document for configuration ROM of AV/C
> > device[1], we can see the legacy layout of configuration ROM (page 22).
> > In the layout, the descriptor leaf entry for vendor name locates after
> > the immediate value entry for vendor ID, then the directory entry for
> > vendor directory locates. However, in the case of Sony DVMC-DA1, the
> > descriptor leaf entry locates after the directory entry. It is an
> > exception.
>
> Hi Takashi,
>
> Thank you for your review and feedback.
>
> After checking the 1394TA Configuration ROM document again, I agree that
> the leaf entry for vendor name should be after an immediate value entry
> according to this standard. The DVMC-DA1 does not conform. We should
> consider its configuration ROM format to be another variation of the
> legacy format. This variation is not mentioned in Annex A.
>
> I will update the API documentation of fw_csr_string() and send a
> revised patch.

I think we can handle the quirk of configuration ROM without changing
the kernel API. Would you test the following patch? (not tested in my
side).

======== 8< --------