On Tue, May 09, 2017 at 11:17:39PM +0200, Geert Stappers wrote:
> On Tue, May 09, 2017 at 09:32:06PM +0200, Jan Willeke wrote:
> > cable_gpio: bugfix - gpio cabel fails for pin number 4
> >
> > --- a/urjtag/src/tap/cable/gpio.c
> > +++ b/urjtag/src/tap/cable/gpio.c
> > @@ -216,10 +216,10 @@ gpio_connect (urj_cable_t *cable, const urj_param_t
> > *params[])
> > return URJ_STATUS_FAIL;
> > }
> >
> > - cable_params->jtag_gpios[GPIO_TDI] = GPIO_REQUIRED;
> > - cable_params->jtag_gpios[GPIO_TDO] = GPIO_REQUIRED;
> > - cable_params->jtag_gpios[GPIO_TMS] = GPIO_REQUIRED;
> > - cable_params->jtag_gpios[GPIO_TCK] = GPIO_REQUIRED;
> > + cable_params->jtag_gpios[GPIO_TDI] = GPIO_UNSET;
> > + cable_params->jtag_gpios[GPIO_TDO] = GPIO_UNSET;
> > + cable_params->jtag_gpios[GPIO_TMS] = GPIO_UNSET;
> > + cable_params->jtag_gpios[GPIO_TCK] = GPIO_UNSET;
> > if (params != NULL)
> > /* parse arguments beyond the cable name */
> > for (i = 0; params[i] != NULL; i++)
> > @@ -253,7 +253,7 @@ gpio_connect (urj_cable_t *cable, const urj_param_t
> > *params[])
> > */
> >
> > for (i = GPIO_TDI; i <= GPIO_TDO; i++)
> > - if (cable_params->jtag_gpios[i] == GPIO_REQUIRED)
> > + if (cable_params->jtag_gpios[i] == GPIO_UNSET)
> > {
> > urj_error_set (URJ_ERROR_SYNTAX, _("missing required gpios\n"));
> > gpio_help (URJ_ERROR_SYNTAX, "gpio");
> > --
> > 2.1.4
> >
>
> I think that I understand what the change in the code does.
>
> It is the compaion text on the code change that makes
> me hesiate to apply the patch.
>
> To be continued.
Rewrite proposal of companion text:
enumerated GPIO_REQUIRED blocks using pin 4
GPIO_REQUIRED was used for two things: "last" and "unset"
Last pin can be a valid pin.
"unset" should be a separate value.
sign of by Jan Willeke so he gets the credits
> > @@ -42,7 +42,7 @@
> > #define GPIO_PATH "/sys/class/gpio/"
> > #define GPIO_EXPORT_PATH GPIO_PATH "export"
> > #define GPIO_UNEXPORT_PATH GPIO_PATH "unexport"
> > -
> > +#define GPIO_UNSET -1
> > /* pin mapping */
> > enum {
> > GPIO_TDI = 0,
@@ -45,6 +45,7 @@
/* pin mapping */
enum {
+ GPIO_UNSET = -1,
GPIO_TDI = 0,
GPIO_TCK,
GPIO_TMS,
Groeten
Geert Stappers
--
Leven en laten leven
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
UrJTAG-development mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/urjtag-development