From: Alexander Graf <agraf@suse.de>
To: Kim Phillips <kim.phillips@freescale.com>,
Yoder Stuart-B08248 <stuart.yoder@freescale.com>
Cc: Rivera Jose-B46482 <German.Rivera@freescale.com>,
"<gregkh@linuxfoundation.org>" <gregkh@linuxfoundation.org>,
"<arnd@arndb.de>" <arnd@arndb.de>,
"<linux-kernel@vger.kernel.org>" <linux-kernel@vger.kernel.org>,
Wood Scott-B07421 <scottwood@freescale.com>,
"<linuxppc-release@linux.freescale.net>"
<linuxppc-release@linux.freescale.net>
Subject: Re: [PATCH 1/4] drivers/bus: Added Freescale Management Complex APIs
Date: Fri, 19 Sep 2014 22:32:57 +0200 [thread overview]
Message-ID: <541C92F9.1020805@suse.de> (raw)
In-Reply-To: <20140919152453.9a7095a77c0752998ed8621b@freescale.com>
On 19.09.14 22:24, Kim Phillips wrote:
> On Fri, 19 Sep 2014 14:06:32 -0500
> Yoder Stuart-B08248 <stuart.yoder@freescale.com> wrote:
>
>>>>>>>>> +/**
>>>>>>>>> + * @brief Management Complex firmware version information
>>>>>>>>> + */
>>>>>>>>> +#define MC_VER_MAJOR 2
>>>>>>>>> +#define MC_VER_MINOR 0
>>>>>>>>
>>>>>>>> code should be adjusted to run on all *compatible* versions of h/w,
>>>>>>>> not strictly the one set in these defines.
>>>>>>> This comment is not precise enough be actionable.
>>>>>>> What exactly you want to be changed here?
>>>>>>
>>>>>> I think the easy thing to do is to convert the exact version check into a ranged version check: have
>>> minimum and maximum versions you support. Or a list of exact versions you support. Or not check for the
>>> version at all - or only for the major version and guarantee that the major version indicates backwards
>>> compatibility.
>>>>>
>>>>> yes, this was my point: elsewhere I noticed the code denies to run
>>>>> iff those defines are not matched exactly: that code should change
>>>>> to run as Alex describes.
>>>>>
>>>> As I mentioned in the reply to Alex, I will remove the minor version check.
>>>
>>> the code should be able to run on all subsequent versions of the
>>> h/w, even in the major version case.
>>
>> You're right, in the future if there are future major versions we would want this
>> same driver to function on multiple versions of the hardware. But at this
>> point in time we don't know what future evolutions there will be and we
>> need the check to error out for now.
>
> why? We have to make the standard assumption that newer versions
> will be backward compatible, in which case the driver should be left
> to run.
How much is the interface set in stone? Can we indicate to the MC that
we want version x of the protocol? Then the MC can tell us whether it's
compatible or not.
>
>> The driver will have to be changed
>> in the future to dynamically deal with different versions.
>>
>> We could add a TODO in the driver to note that.
>
> "TODO: add support for new h/w versions" is almost universally true
> for all drivers, we don't need to write that down.
>
> Support for new h/w versions with new features should be
> incrementally added once they're known.
The "version id" is basically the equivalent of the pci device id. We
don't add wildcards there either for unknown pieces of hardware, so
limiting to driver to "known good" devices is sane IMHO.
Alex
next prev parent reply other threads:[~2014-09-19 20:33 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-11 17:34 [PATCH 0/4] drivers/bus: Freescale Management Complex bus driver patch series J. German Rivera
2014-09-11 17:34 ` [PATCH 1/4] drivers/bus: Added Freescale Management Complex APIs J. German Rivera
2014-09-11 18:45 ` Joe Perches
2014-09-17 16:35 ` German Rivera
2014-09-15 23:44 ` Kim Phillips
2014-09-16 4:31 ` Scott Wood
2014-09-16 19:28 ` Kim Phillips
2014-09-16 19:58 ` Scott Wood
2014-09-18 4:17 ` German Rivera
2014-09-18 13:14 ` Alexander Graf
2014-09-18 20:22 ` Kim Phillips
2014-09-18 23:03 ` Scott Wood
2014-09-18 23:13 ` Stuart Yoder
2014-09-18 23:29 ` Scott Wood
2014-09-18 23:46 ` Stuart Yoder
2014-09-19 3:05 ` German Rivera
2014-09-19 17:19 ` Kim Phillips
2014-09-19 19:06 ` Stuart Yoder
2014-09-19 20:24 ` Kim Phillips
2014-09-19 20:32 ` Alexander Graf [this message]
2014-09-19 20:41 ` Scott Wood
2014-09-19 21:46 ` Alexander Graf
2014-09-20 15:36 ` Stuart Yoder
2014-09-19 21:37 ` Stuart Yoder
2014-09-19 21:30 ` Stuart Yoder
2014-09-19 0:18 ` Stuart Yoder
2014-09-19 2:34 ` German Rivera
2014-09-19 18:25 ` Stuart Yoder
2014-09-19 20:58 ` Kim Phillips
2014-09-22 14:42 ` Stuart Yoder
2014-09-22 14:57 ` <gregkh@linuxfoundation.org>
2014-09-22 15:01 ` Stuart Yoder
2014-09-18 23:39 ` Stuart Yoder
2014-09-18 23:53 ` Scott Wood
2014-09-11 17:34 ` [PATCH 2/4] drivers/bus: Freescale Management Complex (fsl-mc) bus driver J. German Rivera
2014-09-11 18:49 ` Joe Perches
2014-09-17 23:50 ` German Rivera
2014-09-11 17:34 ` [PATCH 3/4] drivers/bus: Device driver for FSL-MC DPRC devices J. German Rivera
2014-09-11 17:34 ` [PATCH 4/4] Update MAINTAINERS file J. German Rivera
2014-09-15 23:44 ` [PATCH 0/4] drivers/bus: Freescale Management Complex bus driver patch series Kim Phillips
2014-09-18 0:20 ` German Rivera
2014-09-18 12:58 ` Alexander Graf
2014-09-19 0:31 ` German Rivera
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=541C92F9.1020805@suse.de \
--to=agraf@suse.de \
--cc=German.Rivera@freescale.com \
--cc=arnd@arndb.de \
--cc=gregkh@linuxfoundation.org \
--cc=kim.phillips@freescale.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxppc-release@linux.freescale.net \
--cc=scottwood@freescale.com \
--cc=stuart.yoder@freescale.com \
/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