Hi Jonathan, static int ad7280_channel_init(struct ad7280_state *st) { int dev, ch, cnt; st->channels = kzalloc(sizeof(*st->channels) * ((st->slave_num + 1) * 12 + 1), GFP_KERNEL); if (st->channels == NULL) return -ENOMEM; for (dev = 0, cnt = 0; dev <= st->slave_num; dev++) for (ch = AD7280A_CELL_VOLTAGE_1; ch <= AD7280A_AUX_ADC_6; ch++, cnt++) { st->channels[cnt].type = IIO_IN; st->channels[cnt].indexed = 1; st->channels[cnt].extend_name = NULL; st->channels[cnt].channel = cnt; st->channels[cnt].info_mask = (1 << IIO_CHAN_INFO_SCALE_SHARED); st->channels[cnt].address = dev << 8 | ch; st->channels[cnt].scan_index = cnt; st->channels[cnt].scan_type.sign = 'u'; st->channels[cnt].scan_type.realbits = 12; st->channels[cnt].scan_type.storagebits = 32; st->channels[cnt].scan_type.shift = 0; } return cnt; } Trying to dynamically allocate and populate a channel spec. However some members are declared const. Do they really need to be const? drivers/staging/iio/adc/ad7280a_core.c: In function 'ad7280_channel_init': drivers/staging/iio/adc/ad7280a_core.c:231: error: assignment of read-only member 'info_mask' Regards, Michael ------------------------------------------------------------------ ********* Analog Devices GmbH ** ***** ** ** Wilhelm-Wagenfeld-Strasse 6 ** ***** D-80807 Munich ********* Germany Sitz der Gesellschaft: Muenchen; Registergericht: Muenchen HRB 40368; Geschaeftsfuehrer: Dr.Carsten Suckrow, Thomas Wessel, William A. Martin, Margaret Seif -- To unsubscribe from this list: send the line "unsubscribe linux-iio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html