Volumio 2 on Orange Pi Boards

A couple of weeks ago I received a USB DAC e1da 9038d. It should have natively played DSD128, 256.

But the output was the following:

:~$ cat /proc/asound/card*/pcmp/sub/hw_params
access: MMAP_INTERLEAVED
format: S24_3LE
subformat: STD
channels: 2
rate: 352800 (352800/1)
period_size: 43691
buffer_size: 174762

or:

:~$ cat /proc/asound/card*/pcmp/sub/hw_params
access: MMAP_INTERLEAVED
format: S32_LE
subformat: STD
channels: 2
rate: 352800 (352800/1)
period_size: 32768
buffer_size: 131072

It can be seen that the sound is being converted.
I started to find out the reason, after reading the forums, I realized that I needed a patch to the kernel. It was only necessary to fork quirks.

I wrote a patch, compiled the kernel with parameters for E1 DA 9038D, built a Volume image for OrangePi.
I installed and received the native DSD sound:

DSD128:

:~$ cat /proc/asound/card*/pcmp/sub/hw_params
access: MMAP_INTERLEAVED
format: DSD_U32_BE
subformat: STD
channels: 2
rate: 176400 (176400/1)
period_size: 22050
buffer_size: 88200

DSD256:

~$ cat /proc/asound/card*/pcmp/sub/hw_params
access: MMAP_INTERLEAVED
format: DSD_U32_BE
subformat: STD
channels: 2
rate: 352800 (352800/1)
period_size: 32768
buffer_size: 131072

The load on the processor is now minimal, it does not have to digest resampling through itself:

Download here: