Задаваться вопросом почему китайцы... неблагодарное дело. Китайцы
скорее всего привнесли DMA как наиболее сложный пример, ну лень
китайцу строгать отдельные примеры для DMA и для software polling.
Поэтому не связывай решение китайцев не дать тебе тривиальные
примеры и не делай из этого ложный вывод что применение DMA
обязательно. Software polling ничем не плох. Иногда обслуживание механизма DMA не ложится на задачу, становится чрезмерным, усложняет её. Посему лабай у себя sofware polling и чувствуй себя хорошо.
Тут может быть только одно "но". На каком-то камне был баг, который не проявлялся с DMA, но который проявлялся при обыкновенной работе.