| .. | .. |
|---|
| 351 | 351 | |
|---|
| 352 | 352 | if (ret == 0) { |
|---|
| 353 | 353 | struct gpio_desc *descs[2]; |
|---|
| 354 | | - int values[2], n = 0; |
|---|
| 354 | + DECLARE_BITMAP(values, 2); |
|---|
| 355 | + int n = 0; |
|---|
| 355 | 356 | |
|---|
| 356 | 357 | if (skt->gpio_reset) { |
|---|
| 357 | 358 | descs[n] = skt->gpio_reset; |
|---|
| 358 | | - values[n++] = !!(state->flags & SS_RESET); |
|---|
| 359 | + __assign_bit(n++, values, state->flags & SS_RESET); |
|---|
| 359 | 360 | } |
|---|
| 360 | 361 | if (skt->gpio_bus_enable) { |
|---|
| 361 | 362 | descs[n] = skt->gpio_bus_enable; |
|---|
| 362 | | - values[n++] = !!(state->flags & SS_OUTPUT_ENA); |
|---|
| 363 | + __assign_bit(n++, values, state->flags & SS_OUTPUT_ENA); |
|---|
| 363 | 364 | } |
|---|
| 364 | 365 | |
|---|
| 365 | 366 | if (n) |
|---|
| 366 | | - gpiod_set_array_value_cansleep(n, descs, values); |
|---|
| 367 | + gpiod_set_array_value_cansleep(n, descs, NULL, values); |
|---|
| 367 | 368 | |
|---|
| 368 | 369 | /* |
|---|
| 369 | 370 | * This really needs a better solution. The IRQ |
|---|