diff options
| author | Dave Penkler <dpenkler@gmail.com> | 2025-04-18 19:34:28 +0200 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2025-04-25 16:08:26 +0200 |
| commit | f56f2d6c9b6514866d489da6175a6cc9a95af02d (patch) | |
| tree | 35997fafc574b02fa7a98d09a0137d6eaba3f728 /drivers/staging/gpib | |
| parent | 8ba7c33be02ca099470b3acc21f859b3be4d1d61 (diff) | |
| download | linux-next-f56f2d6c9b6514866d489da6175a6cc9a95af02d.tar.gz linux-next-f56f2d6c9b6514866d489da6175a6cc9a95af02d.zip | |
staging: gpib: Fix setting controller-in-charge
The gpio board can only act as system controller.
By the IEEE488.1 standard a system controller becomes
controller-in-charge when it asserts the interface-clear control
line.
Remove the setting of controller-in-charge from bb_take_control
and move it to bb_interface_clear.
Fixes: 4cd654f84769 ("staging: gpib: Add gpio bitbang GPIB driver")
Tested-by: Dave Penkler <dpenkler@gmail.com>
Signed-off-by: Dave Penkler <dpenkler@gmail.com>
Link: https://lore.kernel.org/r/20250418173434.2892-3-dpenkler@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/gpib')
| -rw-r--r-- | drivers/staging/gpib/gpio/gpib_bitbang.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/staging/gpib/gpio/gpib_bitbang.c b/drivers/staging/gpib/gpio/gpib_bitbang.c index 29aab72c1f0f..a92c4eda99a0 100644 --- a/drivers/staging/gpib/gpio/gpib_bitbang.c +++ b/drivers/staging/gpib/gpio/gpib_bitbang.c @@ -872,7 +872,6 @@ static int bb_take_control(struct gpib_board *board, int synchronous) { dbg_printk(2, "%d\n", synchronous); set_atn(board, 1); - set_bit(CIC_NUM, &board->status); return 0; } @@ -908,6 +907,7 @@ static void bb_interface_clear(struct gpib_board *board, int assert) gpiod_direction_output(IFC, 0); priv->talker_state = talker_idle; priv->listener_state = listener_idle; + set_bit(CIC_NUM, &board->status); } else { gpiod_direction_output(IFC, 1); } |
