On Sat, Feb 16, 2019 at 08:17:07PM +0100, Stefan Wahren wrote: > this is a misunderstanding. The warning is about memory alignment to 32 bit addresses, not about page alignment. This is a typical ARM restriction. Maybe we need to make sure in mt76 that the DMA buffer needs to be aligned. But it's also possible that the warning isn't the root cause of our problem. > I see, it needs 4 bytes alignment . There is already dwc2 code checks that and allocate new buffer if the alignment is not right: dwc2_alloc_dma_aligned_buffer(), but it does nothing if urb->sg is not NULL. I thought mt76usb already provide aligned buffers, but looks it does not for one TX special case, which are PROBE REQUEST frames. Other frames are aligned by inserting L2 header pad. One solution for this would be just submit urb with NULL sg (same as Lorenzo's patches do, but still allocating buffers via buf->sg), but I think, you have right, we should provide 4 bytes aligned buffers by default as other DMA hardware may require that. I'm attaching yet another patch to test, which fix up alignment for PROBE REQUEST frames. > > Attached patch should fix this, plese test, thanks in advance. > > Anyway i tested the following patch combinations against next with the same results as 1,2,3 (no wifi, alignment warning): > 1,3 > 1,2,3,4 I noticed on my setup that patch 4 can cause troubles, but still device is workable here on my PC machines. > > > Btw i can confirm a regression was introduced after 4.19, because in 4.19 there was no firmware timeout but even no working wifi: > > > > You ment 'no working wifi' or 'working wifi'? > > Wifi is broken in 4.19, 4.20, 5.0 and next. It only worked with Lorenzo's SG avoid patches so far. Btw the regression (firmware timeout) started in 4.20. I also tested it today. That somewhat strange because 4.19 mt76x0u does not use SG. On 4.19 there is phy calibration bug fixed in 4.19.5: commit 0d9813319b40399a0d8fd761d2fcfedee5701487 Author: Lorenzo Bianconi Date: Fri Sep 7 23:13:12 2018 +0200 mt76x0: run vco calibration for each channel configuration It's possible that without this vco calibration fix, MT7610U device does not see AP if it's signal is weak. Stanislaw