Messages in this thread | | | From | "Luis R. Rodriguez" <> | Date | Mon, 22 Feb 2010 11:14:15 -0800 | Subject | Re: Firmware versioning best practices II |
| |
On Sun, Feb 21, 2010 at 2:13 AM, Marcel Holtmann <marcel@holtmann.org> wrote: > Hi David, > >> > > > That doesn't make much sense anyway. If the firmware filename is >> > > > foo-$APIVER-$CODEVER every code change would need a corresponding >> > > driver >> > > > change. If it is just foo-$APIVER then the $CODEVER can be embedded >> > > in >> > > > the firmware file and printed so you know which code you're using, >> > > but >> > > > if it doesn't influence the API I don't see why it should be part of >> > > the >> > > > filename? >> > > >> > > The idea is that just like with shared libraries, you have a symlink >> > > from the 'soname' foo-3.fw to the actual file foo-3-1.4.1.fw. >> > >> > Ah ok. I indeed do that manually with iwlwifi firmware :) >> > >> > > For shared libraries, it's easy to create those symlinks automatically >> > > using ldconfig. For firmware that doesn't really work though -- since >> > > the soname isn't encoded in the file like it is in ELF libraries. >> > >> > Right. Though I guess we could come up with a unified firmware wrapper >> > format that the firmware loader can unwrap. >> >> I suppose we could, but this seems like overkill to me. > > I have to agree. This looks like total overkill to me. > > Just use the $APIVER in the firmware filename.
OK -- so what goes into linux-firmware is just the latest
foo-$(API)
> And if someone wants to > keep track of more details then they can manually symlink them.
Well do we want the older foo-$(API)-$(VAR) files in linux-firmware too for those companies/developers wishing to do this?
What about deprecating APIs of the firmware based on kernel releases. I see it reasonable to deprecate a firmware API completely for a future kernel release provided you maintain all features and functionality in par. Does that sound reasonable?
> Unless we have full control over the source code of every firmware used > in the kernel, why bother. It is up to the companies providing them > anyway to make sure everything works as expected and the community can't > fix it.
Well that's exactly it -- we do have access to the code for ar9170 for example, so these details will become more relevant in the future.
Luis
| |