On Friday 27 September 2013 09:36 PM, Stephen Warren wrote:
On 09/27/2013 07:30 AM, Laxman Dewangan wrote:
On Thursday 26 September 2013 09:08 PM, Stephen Warren wrote:
On 09/26/2013 06:48 AM, Laxman Dewangan wrote:
Recent movement of all configurations of pin in the single call of
pin_config_set(), it is aborting configuration if BIAS_PULL_PIN_DEFAULT
is selected as return of configuration.

The original idea was to just avoid any update on register for pull
up/down
configuration if this option is selected.
That doesn't sound correct. If a config option is specified in DT or the
mapping table, it should be applied to HW. If someone doesn't want a
particular config option applied, then it simply shouldn't be mentioned
in DT or the mapping table.

IIUC, BIAS_DEFAULT should be used only on HW where there is a concept of
a true default bias, and in that case, that is what should be applied.

Hmm.. When I added the PIN_DEFAULT, I just though that do not update
anything in the register and implemented like that.
There is nothing "default" option in HW.
The description of that pinconfig option is:

7970cb77 (Heiko Stübner    2013-06-06 16:44:25 +0200  43)  * 
@PIN_CONFIG_BIAS_PULL_PIN_DEFAULT: the pin will be pulled up or down based
70637a6d (Heiko Stübner    2013-06-25 14:55:42 +0200  44)  *    on embedded 
knowledge of the controller hardware, like current mux
70637a6d (Heiko Stübner    2013-06-25 14:55:42 +0200  45)  *    function. The 
pull direction and possibly strength too will normally
70637a6d (Heiko Stübner    2013-06-25 14:55:42 +0200  46)  *    be decided 
completely inside the hardware block and not be readable
70637a6d (Heiko Stübner    2013-06-25 14:55:42 +0200  47)  *    from the kernel 
side.
5ca3353b (Linus Walleij    2013-06-16 12:43:06 +0200  48)  *    If the argument 
is != 0 pull up/down is enabled, if it is 0, the
5ca3353b (Linus Walleij    2013-06-16 12:43:06 +0200  49)  *    configuration 
is ignored. The proper way to disable it is to use
5ca3353b (Linus Walleij    2013-06-16 12:43:06 +0200  50)  *    
@PIN_CONFIG_BIAS_DISABLE.
If the HW doesn't support any concept of a default pull, I think the
driver shouldn't support that option; it should return an error if asked
to program it.

Yes, I will remove this option as I have not seen default option for pins.



But what made you come across this issue? Is some pin mapping table or
DT pinctrl node actually using that value? If so, then presumably that
needs to be fixed, as well as removing driver support for that option.

When referring the code for the AMSAS3722 pincontrol driver, I just found that it is breaking the earlier code.

Removing this option makes more reasonable here and will post the next patch.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
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