[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <BANLkTikLFff_86Fvg+jSty9vGLENiELF2Q@mail.gmail.com>
Date: Sat, 7 May 2011 20:05:24 +0200
From: Rafał Miłecki <zajec5@...il.com>
To: George Kashperko <george@...u.edu.ua>
Cc: Arnd Bergmann <arnd@...db.de>, linux-wireless@...r.kernel.org,
"John W. Linville" <linville@...driver.com>,
b43-dev@...ts.infradead.org, Greg KH <greg@...ah.com>,
Michael Büsch <mb@...sch.de>,
Larry Finger <Larry.Finger@...inger.net>,
Arend van Spriel <arend@...adcom.com>,
linux-arm-kernel@...ts.infradead.org,
Russell King <rmk@....linux.org.uk>,
Andy Botting <andy@...ybotting.com>,
linuxdriverproject <devel@...uxdriverproject.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH][WAS:bcmai,axi] bcma: add Broadcom specific AMBA bus driver
2011/5/7 George Kashperko <george@...u.edu.ua>:
>
>> 2011/5/6 Rafał Miłecki <zajec5@...il.com>:
>> > 2011/5/6 Arnd Bergmann <arnd@...db.de>:
>> >>> +const char *bcma_device_name(u16 coreid)
>> >>> +{
>> >>> + switch (coreid) {
>> >>> + case BCMA_CORE_OOB_ROUTER:
>> >>> + return "OOB Router";
>> >>> + case BCMA_CORE_INVALID:
>> >>> + return "Invalid";
>> >>> + case BCMA_CORE_CHIPCOMMON:
>> >>> + return "ChipCommon";
>> >>> + case BCMA_CORE_ILINE20:
>> >>> + return "ILine 20";
>> >>
>> >> It's better to make that a data structure than a switch() statement,
>> >> both from readability and efficiency aspects.
>> >
>> > Well, maybe. We call it only once, at init time. In any case we're
>> > still waiting for Broadcom to clarify which cores are really used for
>> > BCMA.
>>
>> Arnd: did you have a look at defines at all?
>>
>> Most of the defines have values in range 0x800 → 0x837. Converting
>> this to array means loosing 0x800 u16 entries. We can not use 0x800
>> offset, because there are also some defined between 0x000 and 0x800:
>> #define BCMA_CORE_OOB_ROUTER 0x367 /* Out of band */
>> #define BCMA_CORE_INVALID 0x700
>>
>> Oh and there is still:
>> #define BCMA_CORE_DEFAULT 0xFFF
>> we could want to include. Then we would loose additional (0xFFF -
>> 0x837) u16 entries in array.
> What is the purpose for bcma_device_name in bus driver code ? Why not
> define const char *name in struct bcma_driver and let driver writers
> supply kernel with knowledge on new cores' names rather than hard type
> those into the bus code ?
The purpose is ridiculously trivial. Print user-friendly names on
scanning. Why not do that?
Let's allow user understand what his bus contains without looking info
defines in .h.
> Also this will close the question Arend asked
> you regarding same core ids with different manufacturer ids.
I don't know what was Arend's question. I asked but it was few minutes
ago. I guess he just wanted to point there can be other manufacturer's
cores.
--
Rafał
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists