DMA Init code for ADC sampled data
You can setup the ADC1 and ADC2 in a master-slave configuration. That will result in the samples of both ADCs being written to one common data register.

That data register is 32 bit wide, so transferring just 2 samples will actually contain the result of 4 conversions (2 from ADC1 and 2 from ADC2).

In the code to use the samples they should get extracted from the adc_data[] as they won't be useful as a single uint32_t.

For more information see the Reference Manual in Section 16.3.30 Dual ADC Modes.