[PATCH] ARM: dts: am335x-bone* enable pmic-shutdown-controller

Robert Nelson robertcnelson at gmail.com
Mon May 18 09:49:24 PDT 2015


On Mon, May 18, 2015 at 11:29 AM, Tony Lindgren <tony at atomide.com> wrote:
> * Robert Nelson <robertcnelson at gmail.com> [150518 09:15]:
>> On Mon, May 18, 2015 at 10:21 AM, Tony Lindgren <tony at atomide.com> wrote:
>>
>> All the rev information is in the board's eeprom:
>>
>> hexdump -e '8/1 "%c"' /sys/bus/i2c/devices/0-0050/eeprom -s 12 -n 4
>>
>> Rev A5B
>> 0A5B
>>
>> Rev C
>> 000C
>>
>> Just another default qwerk to add to Pantelis' bone_capemgr. ;)
>
> It seems we should not even instantiate some devices on BBB
> until the EEPROM is parsed.. So maybe something like this:
>
> 1. The problem devices are initially set with status = "disabled"
>    in the dts
>
> 2. We set up drivers/*/bbb-eeprom.c that parses the board
>    revision at module_init time, and then flips the selected
>    devices to have status = "enabled" and populates the revision
>    info based on the eeprom and SoC revision passed in pdata.
>    Then those devices get their struct device created and
>    probed, but at a much later time.
>
> So rather than trying to init all that early, let's just
> init them much later when we have the proper I2C driver
> running?

I see that working just fine.  We (beagleboard.org) enforce the eeprom
data, as all the official images require a proper baseboard eeprom.

We just have to be very careful to limit the scope, otherwise we will
end up with Pantelis' rejected capebus from the v3.2.x days...

Regards,

-- 
Robert Nelson
https://rcn-ee.com/



More information about the linux-arm-kernel mailing list