} #define MAX1363_4X_CHANS(bits, ev_spec, num_ev_spec) { \ MAX1363_CHAN_U(0, _s0, 0, bits, ev_spec, num_ev_spec), \ MAX1363_CHAN_U(1, _s1, 1, bits, ev_spec, num_ev_spec), \ MAX1363_CHAN_U(2, _s2, 2, bits, ev_spec, num_ev_spec), \ MAX1363_CHAN_U(3, _s3, 3, bits, ev_spec, num_ev_spec), \ MAX1363_CHAN_B(0, 1, d0m1, 4, bits, ev_spec, num_ev_spec), \ MAX1363_CHAN_B(2, 3, d2m3, 5, bits, ev_spec, num_ev_spec), \ MAX1363_CHAN_B(1, 0, d1m0, 6, bits, ev_spec, num_ev_spec), \ MAX1363_CHAN_B(3, 2, d3m2, 7, bits, ev_spec, num_ev_spec), \ IIO_CHAN_SOFT_TIMESTAMP(8) \ } static const struct iio_chan_spec max1036_channels[] = MAX1363_4X_CHANS(8, NULL, 0); static const struct iio_chan_spec max1136_channels[] = MAX1363_4X_CHANS(10, NULL, 0); static const struct iio_chan_spec max1236_channels[] = MAX1363_4X_CHANS(12, NULL, 0); static const struct iio_chan_spec max1361_channels[] = MAX1363_4X_CHANS(10, max1363_events, ARRAY_SIZE(max1363_events)); static const struct iio_chan_spec max1363_channels[] = MAX1363_4X_CHANS(12, max1363_events, ARRAY_SIZE(max1363_events)); /* Applies to max1236, max1237 */ static const enum max1363_modes max1236_mode_list[] = { _s0, _s1, _s2, _s3, s0to1, s0to2, s0to3, d0m1, d2m3, d1m0, d3m2, d0m1to2m3, d1m0to3m2,
.event_mask = evmask, \ } #define MAX1363_4X_CHANS(bits, em) { \ MAX1363_CHAN_U(0, _s0, 0, bits, em), \ MAX1363_CHAN_U(1, _s1, 1, bits, em), \ MAX1363_CHAN_U(2, _s2, 2, bits, em), \ MAX1363_CHAN_U(3, _s3, 3, bits, em), \ MAX1363_CHAN_B(0, 1, d0m1, 4, bits, em), \ MAX1363_CHAN_B(2, 3, d2m3, 5, bits, em), \ MAX1363_CHAN_B(1, 0, d1m0, 6, bits, em), \ MAX1363_CHAN_B(3, 2, d3m2, 7, bits, em), \ IIO_CHAN_SOFT_TIMESTAMP(8) \ } static struct iio_chan_spec max1036_channels[] = MAX1363_4X_CHANS(8, 0); static struct iio_chan_spec max1136_channels[] = MAX1363_4X_CHANS(10, 0); static struct iio_chan_spec max1236_channels[] = MAX1363_4X_CHANS(12, 0); static struct iio_chan_spec max1361_channels[] = MAX1363_4X_CHANS(10, MAX1363_EV_M); static struct iio_chan_spec max1363_channels[] = MAX1363_4X_CHANS(12, MAX1363_EV_M); /* Appies to max1236, max1237 */ static const enum max1363_modes max1236_mode_list[] = { _s0, _s1, _s2, _s3, s0to1, s0to2, s0to3, d0m1, d2m3, d1m0, d3m2, d0m1to2m3, d1m0to3m2, s2to3, };
address, scan_index, IIO_ST('s', bits, \ (bits == 8) ? 8 : 16, 0), 0) #define MAX1363_4X_CHANS(bits) { \ MAX1363_CHAN_U(0, _s0, 0, bits), \ MAX1363_CHAN_U(1, _s1, 1, bits), \ MAX1363_CHAN_U(2, _s2, 2, bits), \ MAX1363_CHAN_U(3, _s3, 3, bits), \ MAX1363_CHAN_B(0, 1, d0m1, 4, bits), \ MAX1363_CHAN_B(2, 3, d2m3, 5, bits), \ MAX1363_CHAN_B(1, 0, d1m0, 6, bits), \ MAX1363_CHAN_B(3, 2, d3m2, 7, bits), \ IIO_CHAN_SOFT_TIMESTAMP(8) \ } static struct iio_chan_spec max1036_channels[] = MAX1363_4X_CHANS(8); static struct iio_chan_spec max1136_channels[] = MAX1363_4X_CHANS(10); static struct iio_chan_spec max1236_channels[] = MAX1363_4X_CHANS(12); /* Appies to max1236, max1237 */ static const enum max1363_modes max1236_mode_list[] = { _s0, _s1, _s2, _s3, s0to1, s0to2, s0to3, d0m1, d2m3, d1m0, d3m2, d0m1to2m3, d1m0to3m2, s2to3, }; /* Applies to max1238, max1239 */ static const enum max1363_modes max1238_mode_list[] = { _s0, _s1, _s2, _s3, _s4, _s5, _s6, _s7, _s8, _s9, _s10, _s11,