ДМА съгласно изричните протокол PCI?

Използвахте ли памет IO карти?Преките показалеца достъп не се предлага, макар и на X86 можете да направите правилните неща.

Мисля, че spin_lock / spin_unlock не е необходимо.Понякога това може да доведе до безизходицата.

Когато пишете "PTR 0 XE", можете да се опитате да прочетете някои регистър статут устройството да се уверете, че сте написали успешно.

Или можете просто да "printk" някаква информация след напишете операция.Аз съм срещал на подобен проблем, след това проверка на регистрацията устройство статут след изчистване на прекъсване.Проблемът не occour повече.

Май тази информация може да ви помогне.

 
и сега аз съм проверка на статус в регистъра на кода
Сега броят на пише, извършена от ISR са, както е прието, но броят на прекъсване, посочени в / процес / прекъсва е повече.
Имах използва два статични varibles и и к в ISR и това показва, че броят на обслужвани прекъсва същото като това, което аз очаквам, но има някои unserviced такива също.
Това не трябва да бъде такъв, защото, въпреки че прекъсва IRQ е споделен с USB контролер, USB не е бил свързан.

Мисля, че клирингова ми прекъсват е проблемът тук ..ще променя код, за да се види дали решава проблема ..

Благодаря много за помощта.

 

Welcome to EDABoard.com

Sponsor

Back
Top