Hi Ionut,

On Nov 6, 2013, at 11:51 AM, Ionut Nicu wrote:

> Hi,
> 
> On 05.11.2013 19:41, ext Pantelis Antoniou wrote:
>> Add a runtime interface to /proc to enable generic device tree overlay
>> usage.
>> 
>> Two new /proc files are added:
>> 
>> /proc/device-tree-overlay & /proc/device-tree-overlay-status
>> 
>> /proc/device-tree-overlay accepts a stream of a device tree objects and
>> applies it to the running kernel's device tree.
>> 
>>      $ cat ~/BB-UART2-00A0.dtbo >device-tree-overlay
>>      overlay_proc_release: Applied #2 overlay segments @0
>> 
>> /proc/device-tree-overlay-status displays the the overlays added using
>> the /proc interface
>> 
>>      $ cat device-tree-overlay-status
>>      0: 861 bytes BB-UART2:00A0
>> 
>> The format of the status line is
>>      <ID>: <SIZE> bytes <part-number>:<version>
>> 
>> <ID> is the id of the overlay
>> <SIZE> is the size of the overlay in bytes
>> <part-number>, <version> are (optional) root level properties of the DTBO
>> 
>> You can remove an overlay by echoing the <ID> number of the overlay
>> precedded with a '-'
>> 
>> So
>>      $ echo "-0" >device-tree-overlay-status
>> 
> 
> Wouldn't it be easier if echo "-BB-UART2-00A0" > device-tree-overlay-status 
> was
> supported also? That way one doesn't need to know the order in which the
> overlays were applied or parse the status file to get the <ID>.
> 

Unfortunately no since this is a raw bytestream interface; there is no file
information. The patchset does display any root level part-number & version 
properties
but that's completely options.

We could standardize in a named root property to use on each overlay, and the 
part-number &
version are as good as any.



>> Removes the overlay.
>> 
>> Note that this seldom works on most platforms since platform_device
>> removal is something that almost never works without extra patches.
>> 
>> Signed-off-by: Pantelis Antoniou <pa...@antoniou-consulting.com>
> 
> It would be very helpful to me if I would have a notification mechanism
> for overlay add and remove operations based on 
> blocking_notifier_call_chain(),.
> This way other drivers can be notified when the dt changes.
> 

Yes. Some people expressed interest in something similar.

> But I guess that could be added in the future with another patch.
> 

Yep.

> Thanks,
> Ionut

Let's get the basic support in now, and we can fix all of that on later patches.

Regards

-- Pantelis

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to