Re: [PATCH] MIPS: BCM47XX: Move NVRAM driver to the drivers/misc/

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 11/12/2014 10:43 AM, Arnd Bergmann wrote:
> On Tuesday 11 November 2014 20:45:46 Rafał Miłecki wrote:
>> After Broadcom switched from MIPS to ARM for their home routers we need
>> to have NVRAM driver in some common place (not arch/mips/).
>> We were thinking about putting it in bus directory, however there are
>> two possible buses for MIPS: drivers/ssb/ and drivers/bcma/. So this
>> won't fit there neither.
>> This is why I would like to move this driver to the drivers/misc/
>>
>> Signed-off-by: Rafał Miłecki <zajec5@xxxxxxxxx>
>>
> 
> I think drivers/soc would be more appropriate, as this is a purely
> in-kernel interface, and it interacts with other drivers, while
> drivers/misc is generally for oddball devices that don't fit in
> elsewhere and have their own user interface.
> 
> I don't remember if what we had concluded on the previous discussion.
> I think I suggested converting the nvram variables into DT properties
> on ARM. The API certainly feels obscure, so it would be nice to
> keep it out of the modern port if we can come up with a better alternative
> to pass the same information.

When there would be devices shipping with device tree in the boot loader
with this SoC I would go for using device tree for this purpose, but I
do not think there are any and I do not know what Broadcom plans are.

The nvram partition contains all configuration information about the
device like the MAC addresses, the calibration data for the Wifi chips
(either in the SoC or attached via PCIe/USB), default configuration for
the switch and so on. I think expect for the MAC addresses these values
do not vary on one series of boards, but I am to completely sure about
the calibration data. For the mac address we have to parse this as long
as the boot loader does not provide these information in some other way.

My plan would be that we integrate this nvram support into Linux also
for the ARM SoCs at first and then make the old drivers also take device
tree attributes. For new drivers we can make them use device tree
attributes only.

Hauke





[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux