Re: [PATCH v2 6/6] DT: Add documentation for gpio-xilinx

From: Michal Simek
Date: Mon Jun 17 2013 - 02:21:50 EST


On 06/17/2013 07:50 AM, Linus Walleij wrote:
> On Mon, Jun 3, 2013 at 2:31 PM, Michal Simek <michal.simek@xxxxxxxxxx> wrote:
>
>> Describe gpio-xilinx binding.
>>
>> Signed-off-by: Michal Simek <michal.simek@xxxxxxxxxx>
>> ---
>> Changes in v2:
>> - Extend description
>
> Thanks, patch applied but look into this:
>
>> +Optional properties:
>> +- interrupts : Interrupt mapping for GPIO IRQ.
>> +- interrupt-parent : Phandle for the interrupt controller that
>> + services interrupts for this device.
>> +- xlnx,all-inputs : if n-th bit is setup, GPIO-n is input
>> +- xlnx,dout-default : if n-th bit is 1, GPIO-n default value is 1
>> +- xlnx,gpio-width : gpio width
>> +- xlnx,tri-default : if n-th bit is 1, GPIO-n is in tristate mode
>> +- xlnx,is-dual : if 1, controller also uses the second channel
>
> If is present, xlnx,is-dual;
>
>> +Example:
>> +gpio: gpio@40000000 {
>> + #gpio-cells = <2>;
>> + compatible = "xlnx,xps-gpio-1.00.a";
>> + gpio-controller ;
>> + interrupt-parent = <&microblaze_0_intc>;
>> + interrupts = < 6 2 >;
>> + reg = < 0x40000000 0x10000 >;
>> + xlnx,all-inputs = <0x0>;
>> + xlnx,all-inputs-2 = <0x0>;
>> + xlnx,dout-default = <0x0>;
>> + xlnx,dout-default-2 = <0x0>;
>> + xlnx,gpio-width = <0x2>;
>> + xlnx,gpio2-width = <0x2>;
>> + xlnx,interrupt-present = <0x1>;
>> + xlnx,is-dual = <0x1>;
>
> xlnx,is-dual;
>
> I'm not giving up on this suggestion.

I have commented this in the v1. The point is that all dtses for the last
3-4 years are using this binding and this value is present there for a long
time. That's why I think it is better to keep this binding and do not break
backward compatibility which there is.
Also it reflects how design tool describe hardware.
IP is designed that can be easily extended to more channels which means
that it won't be simple yes/no option.

Thanks,
Michal

--
Michal Simek, Ing. (M.Eng), OpenPGP -> KeyID: FE3D1F91
w: www.monstr.eu p: +42-0-721842854
Maintainer of Linux kernel - Microblaze cpu - http://www.monstr.eu/fdt/
Maintainer of Linux kernel - Xilinx Zynq ARM architecture
Microblaze U-BOOT custodian and responsible for u-boot arm zynq platform


Attachment: signature.asc
Description: OpenPGP digital signature