On Fri, Nov 06, 2015 at 09:38:09AM +0800, Sugar Zhang wrote: > + /* refine capture channels */ > + if (!of_property_read_u32(node, "rockchip,capture-channels", &val)) { > + if (val >= 2 && val <= 8) > + rockchip_i2s_dai.capture.channels_max = val; > + else > + rockchip_i2s_dai.capture.channels_max = 2; > + } You should make a copy of the rockchip_i2s_dai struct in your driver data and modify that rather than modifying the original - what happens if sommeone makes a SoC with two I2S DAIs, one with many channels and another with only two? Samsung SoCs often have an arrangement like that for exmaple. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 473 bytes Desc: not available URL: <http://lists.infradead.org/pipermail/linux-rockchip/attachments/20151106/abfa0950/attachment.sig>