12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650 |
- ARM GAS /tmp/ccwgRvGR.s page 1
- 1 .cpu cortex-m4
- 2 .eabi_attribute 27, 1
- 3 .eabi_attribute 28, 1
- 4 .eabi_attribute 20, 1
- 5 .eabi_attribute 21, 1
- 6 .eabi_attribute 23, 3
- 7 .eabi_attribute 24, 1
- 8 .eabi_attribute 25, 1
- 9 .eabi_attribute 26, 1
- 10 .eabi_attribute 30, 1
- 11 .eabi_attribute 34, 1
- 12 .eabi_attribute 18, 4
- 13 .file "stm32f4xx_hal_dma.c"
- 14 .text
- 15 .Ltext0:
- 16 .cfi_sections .debug_frame
- 17 .section .text.DMA_SetConfig,"ax",%progbits
- 18 .align 1
- 19 .syntax unified
- 20 .thumb
- 21 .thumb_func
- 22 .fpu fpv4-sp-d16
- 24 DMA_SetConfig:
- 25 .LFB142:
- 26 .file 1 "Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c"
- 1:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
- 2:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ******************************************************************************
- 3:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @file stm32f4xx_hal_dma.c
- 4:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @author MCD Application Team
- 5:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief DMA HAL module driver.
- 6:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** *
- 7:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * This file provides firmware functions to manage the following
- 8:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * functionalities of the Direct Memory Access (DMA) peripheral:
- 9:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * + Initialization and de-initialization functions
- 10:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * + IO operation functions
- 11:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * + Peripheral State and errors functions
- 12:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** @verbatim
- 13:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ==============================================================================
- 14:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ##### How to use this driver #####
- 15:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ==============================================================================
- 16:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..]
- 17:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (#) Enable and configure the peripheral to be connected to the DMA Stream
- 18:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (except for internal SRAM/FLASH memories: no initialization is
- 19:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** necessary) please refer to Reference manual for connection between peripherals
- 20:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** and DMA requests.
- 21:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 22:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (#) For a given Stream, program the required configuration through the following parameters:
- 23:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** Transfer Direction, Source and Destination data formats,
- 24:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** Circular, Normal or peripheral flow control mode, Stream Priority level,
- 25:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** Source and Destination Increment mode, FIFO mode and its Threshold (if needed),
- 26:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** Burst mode for Source and/or Destination (if needed) using HAL_DMA_Init() function.
- 27:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 28:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** -@- Prior to HAL_DMA_Init() the clock must be enabled for DMA through the following macros:
- 29:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_RCC_DMA1_CLK_ENABLE() or __HAL_RCC_DMA2_CLK_ENABLE().
- 30:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 31:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** *** Polling mode IO operation ***
- 32:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** =================================
- ARM GAS /tmp/ccwgRvGR.s page 2
- 33:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..]
- 34:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Use HAL_DMA_Start() to start DMA transfer after the configuration of Source
- 35:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** address and destination address and the Length of data to be transferred.
- 36:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Use HAL_DMA_PollForTransfer() to poll for the end of current transfer, in this
- 37:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case a fixed Timeout can be configured by User depending from his application.
- 38:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Use HAL_DMA_Abort() function to abort the current transfer.
- 39:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 40:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** *** Interrupt mode IO operation ***
- 41:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ===================================
- 42:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..]
- 43:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Configure the DMA interrupt priority using HAL_NVIC_SetPriority()
- 44:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Enable the DMA IRQ handler using HAL_NVIC_EnableIRQ()
- 45:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Use HAL_DMA_Start_IT() to start DMA transfer after the configuration of
- 46:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** Source address and destination address and the Length of data to be transferred. In t
- 47:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case the DMA interrupt is configured
- 48:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Use HAL_DMA_IRQHandler() called under DMA_IRQHandler() Interrupt subroutine
- 49:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) At the end of data transfer HAL_DMA_IRQHandler() function is executed and user can
- 50:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** add his own function by customization of function pointer XferCpltCallback and
- 51:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** XferErrorCallback (i.e a member of DMA handle structure).
- 52:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..]
- 53:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (#) Use HAL_DMA_GetState() function to return the DMA state and HAL_DMA_GetError() in case of
- 54:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** detection.
- 55:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 56:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (#) Use HAL_DMA_Abort_IT() function to abort the current transfer
- 57:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 58:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** -@- In Memory-to-Memory transfer mode, Circular mode is not allowed.
- 59:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 60:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** -@- The FIFO is used mainly to reduce bus usage and to allow data packing/unpacking: it is
- 61:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** possible to set different Data Sizes for the Peripheral and the Memory (ie. you can set
- 62:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** Half-Word data size for the peripheral to access its data register and set Word data siz
- 63:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** for the Memory to gain in access time. Each two half words will be packed and written in
- 64:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** a single access to a Word in the Memory).
- 65:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 66:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** -@- When FIFO is disabled, it is not allowed to configure different Data Sizes for Source
- 67:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** and Destination. In this case the Peripheral Data Size will be applied to both Source
- 68:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** and Destination.
- 69:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 70:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** *** DMA HAL driver macros list ***
- 71:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** =============================================
- 72:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..]
- 73:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** Below the list of most used macros in DMA HAL driver.
- 74:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 75:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) __HAL_DMA_ENABLE: Enable the specified DMA Stream.
- 76:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) __HAL_DMA_DISABLE: Disable the specified DMA Stream.
- 77:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) __HAL_DMA_GET_IT_SOURCE: Check whether the specified DMA Stream interrupt has occurred or
- 78:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 79:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..]
- 80:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (@) You can refer to the DMA HAL driver header file for more useful macros
- 81:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 82:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** @endverbatim
- 83:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ******************************************************************************
- 84:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @attention
- 85:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** *
- 86:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * <h2><center>© Copyright (c) 2017 STMicroelectronics.
- 87:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * All rights reserved.</center></h2>
- 88:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** *
- 89:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * This software component is licensed by ST under BSD 3-Clause license,
- ARM GAS /tmp/ccwgRvGR.s page 3
- 90:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the "License"; You may not use this file except in compliance with the
- 91:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * License. You may obtain a copy of the License at:
- 92:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * opensource.org/licenses/BSD-3-Clause
- 93:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** *
- 94:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ******************************************************************************
- 95:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 96:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 97:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Includes ------------------------------------------------------------------*/
- 98:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** #include "stm32f4xx_hal.h"
- 99:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** @addtogroup STM32F4xx_HAL_Driver
- 101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @{
- 102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** @defgroup DMA DMA
- 105:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief DMA HAL module driver
- 106:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @{
- 107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 108:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** #ifdef HAL_DMA_MODULE_ENABLED
- 110:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Private types -------------------------------------------------------------*/
- 112:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** typedef struct
- 113:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 114:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __IO uint32_t ISR; /*!< DMA interrupt status register */
- 115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __IO uint32_t Reserved0;
- 116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __IO uint32_t IFCR; /*!< DMA interrupt flag clear register */
- 117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } DMA_Base_Registers;
- 118:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 119:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Private variables ---------------------------------------------------------*/
- 120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Private constants ---------------------------------------------------------*/
- 121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** @addtogroup DMA_Private_Constants
- 122:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @{
- 123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** #define HAL_TIMEOUT_DMA_ABORT 5U /* 5 ms */
- 125:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
- 126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @}
- 127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 128:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Private macros ------------------------------------------------------------*/
- 129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Private functions ---------------------------------------------------------*/
- 130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** @addtogroup DMA_Private_Functions
- 131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @{
- 132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** static void DMA_SetConfig(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32
- 134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** static uint32_t DMA_CalcBaseAndBitshift(DMA_HandleTypeDef *hdma);
- 135:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** static HAL_StatusTypeDef DMA_CheckFifoParam(DMA_HandleTypeDef *hdma);
- 136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
- 138:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @}
- 139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 140:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 141:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Exported functions ---------------------------------------------------------*/
- 142:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** @addtogroup DMA_Exported_Functions
- 143:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @{
- 144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 146:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** @addtogroup DMA_Exported_Functions_Group1
- ARM GAS /tmp/ccwgRvGR.s page 4
- 147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** *
- 148:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** @verbatim
- 149:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ===============================================================================
- 150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ##### Initialization and de-initialization functions #####
- 151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ===============================================================================
- 152:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..]
- 153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** This section provides functions allowing to initialize the DMA Stream source
- 154:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** and destination addresses, incrementation and data sizes, transfer direction,
- 155:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** circular/normal mode selection, memory-to-memory mode selection and Stream priority value.
- 156:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..]
- 157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** The HAL_DMA_Init() function follows the DMA configuration procedures as described in
- 158:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** reference manual.
- 159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 160:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** @endverbatim
- 161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @{
- 162:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 164:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
- 165:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Initialize the DMA according to the specified
- 166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * parameters in the DMA_InitTypeDef and create the associated handle.
- 167:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma Pointer to a DMA_HandleTypeDef structure that contains
- 168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream.
- 169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL status
- 170:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_Init(DMA_HandleTypeDef *hdma)
- 172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = 0U;
- 174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tickstart = HAL_GetTick();
- 175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_Base_Registers *regs;
- 176:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check the DMA peripheral state */
- 178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma == NULL)
- 179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_ERROR;
- 181:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 183:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check the parameters */
- 184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_STREAM_ALL_INSTANCE(hdma->Instance));
- 185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_CHANNEL(hdma->Init.Channel));
- 186:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_DIRECTION(hdma->Init.Direction));
- 187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_PERIPHERAL_INC_STATE(hdma->Init.PeriphInc));
- 188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_MEMORY_INC_STATE(hdma->Init.MemInc));
- 189:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_PERIPHERAL_DATA_SIZE(hdma->Init.PeriphDataAlignment));
- 190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_MEMORY_DATA_SIZE(hdma->Init.MemDataAlignment));
- 191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_MODE(hdma->Init.Mode));
- 192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_PRIORITY(hdma->Init.Priority));
- 193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_FIFO_MODE_STATE(hdma->Init.FIFOMode));
- 194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check the memory burst, peripheral burst and FIFO threshold parameters only
- 195:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** when FIFO mode is enabled */
- 196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->Init.FIFOMode != DMA_FIFOMODE_DISABLE)
- 197:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 198:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_FIFO_THRESHOLD(hdma->Init.FIFOThreshold));
- 199:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_MEMORY_BURST(hdma->Init.MemBurst));
- 200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_PERIPHERAL_BURST(hdma->Init.PeriphBurst));
- 201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Allocate lock resource */
- ARM GAS /tmp/ccwgRvGR.s page 5
- 204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma);
- 205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Change DMA peripheral state */
- 207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_BUSY;
- 208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Disable the peripheral */
- 210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_DMA_DISABLE(hdma);
- 211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check if the DMA Stream is effectively disabled */
- 213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** while((hdma->Instance->CR & DMA_SxCR_EN) != RESET)
- 214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check for the Timeout */
- 216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((HAL_GetTick() - tickstart ) > HAL_TIMEOUT_DMA_ABORT)
- 217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 218:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Update error code */
- 219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_TIMEOUT;
- 220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Change the DMA state */
- 222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_TIMEOUT;
- 223:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 224:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_TIMEOUT;
- 225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 226:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 228:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Get the CR register value */
- 229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** tmp = hdma->Instance->CR;
- 230:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 231:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear CHSEL, MBURST, PBURST, PL, MSIZE, PSIZE, MINC, PINC, CIRC, DIR, CT and DBM bits */
- 232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** tmp &= ((uint32_t)~(DMA_SxCR_CHSEL | DMA_SxCR_MBURST | DMA_SxCR_PBURST | \
- 233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_SxCR_PL | DMA_SxCR_MSIZE | DMA_SxCR_PSIZE | \
- 234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_SxCR_MINC | DMA_SxCR_PINC | DMA_SxCR_CIRC | \
- 235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_SxCR_DIR | DMA_SxCR_CT | DMA_SxCR_DBM));
- 236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 237:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Prepare the DMA Stream configuration */
- 238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** tmp |= hdma->Init.Channel | hdma->Init.Direction |
- 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.PeriphInc | hdma->Init.MemInc |
- 240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.PeriphDataAlignment | hdma->Init.MemDataAlignment |
- 241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.Mode | hdma->Init.Priority;
- 242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* the Memory burst and peripheral burst are not used when the FIFO is disabled */
- 244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->Init.FIFOMode == DMA_FIFOMODE_ENABLE)
- 245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Get memory burst and peripheral burst */
- 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** tmp |= hdma->Init.MemBurst | hdma->Init.PeriphBurst;
- 248:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Write to DMA Stream CR register */
- 251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->CR = tmp;
- 252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Get the FCR register value */
- 254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** tmp = hdma->Instance->FCR;
- 255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear Direct mode and FIFO threshold bits */
- 257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** tmp &= (uint32_t)~(DMA_SxFCR_DMDIS | DMA_SxFCR_FTH);
- 258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Prepare the DMA Stream FIFO configuration */
- 260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** tmp |= hdma->Init.FIFOMode;
- ARM GAS /tmp/ccwgRvGR.s page 6
- 261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* The FIFO threshold is not used when the FIFO mode is disabled */
- 263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->Init.FIFOMode == DMA_FIFOMODE_ENABLE)
- 264:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Get the FIFO threshold */
- 266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** tmp |= hdma->Init.FIFOThreshold;
- 267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 268:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check compatibility between FIFO threshold level and size of the memory burst */
- 269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* for INCR4, INCR8, INCR16 bursts */
- 270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if (hdma->Init.MemBurst != DMA_MBURST_SINGLE)
- 271:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if (DMA_CheckFifoParam(hdma) != HAL_OK)
- 273:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 274:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Update error code */
- 275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_PARAM;
- 276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Change the DMA state */
- 278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY;
- 279:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_ERROR;
- 281:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 282:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 283:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 285:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Write to DMA Stream FCR */
- 286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->FCR = tmp;
- 287:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Initialize StreamBaseAddress and StreamIndex parameters to be used to calculate
- 289:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA steam Base Address needed by HAL_DMA_IRQHandler() and HAL_DMA_PollForTransfer() */
- 290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs = (DMA_Base_Registers *)DMA_CalcBaseAndBitshift(hdma);
- 291:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear all interrupt flags */
- 293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = 0x3FU << hdma->StreamIndex;
- 294:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Initialize the error code */
- 296:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NONE;
- 297:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 298:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Initialize the DMA state */
- 299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY;
- 300:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 301:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_OK;
- 302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 303:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 304:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
- 305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief DeInitializes the DMA peripheral
- 306:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
- 307:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream.
- 308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL status
- 309:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 310:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_DeInit(DMA_HandleTypeDef *hdma)
- 311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_Base_Registers *regs;
- 313:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check the DMA peripheral state */
- 315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma == NULL)
- 316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_ERROR;
- ARM GAS /tmp/ccwgRvGR.s page 7
- 318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check the DMA peripheral state */
- 321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->State == HAL_DMA_STATE_BUSY)
- 322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 323:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Return error status */
- 324:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_BUSY;
- 325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check the parameters */
- 328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_STREAM_ALL_INSTANCE(hdma->Instance));
- 329:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Disable the selected DMA Streamx */
- 331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_DMA_DISABLE(hdma);
- 332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Reset DMA Streamx control register */
- 334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->CR = 0U;
- 335:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 336:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Reset DMA Streamx number of data to transfer register */
- 337:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->NDTR = 0U;
- 338:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Reset DMA Streamx peripheral address register */
- 340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->PAR = 0U;
- 341:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Reset DMA Streamx memory 0 address register */
- 343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->M0AR = 0U;
- 344:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Reset DMA Streamx memory 1 address register */
- 346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->M1AR = 0U;
- 347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 348:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Reset DMA Streamx FIFO control register */
- 349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->FCR = 0x00000021U;
- 350:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Get DMA steam Base Address */
- 352:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs = (DMA_Base_Registers *)DMA_CalcBaseAndBitshift(hdma);
- 353:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 354:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clean all callbacks */
- 355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferCpltCallback = NULL;
- 356:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferHalfCpltCallback = NULL;
- 357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1CpltCallback = NULL;
- 358:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1HalfCpltCallback = NULL;
- 359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferErrorCallback = NULL;
- 360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferAbortCallback = NULL;
- 361:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear all interrupt flags at correct offset within the register */
- 363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = 0x3FU << hdma->StreamIndex;
- 364:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Reset the error code */
- 366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NONE;
- 367:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 368:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Reset the DMA state */
- 369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_RESET;
- 370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 371:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Release Lock */
- 372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma);
- 373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_OK;
- ARM GAS /tmp/ccwgRvGR.s page 8
- 375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 376:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 377:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
- 378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @}
- 379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 380:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** @addtogroup DMA_Exported_Functions_Group2
- 382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** *
- 383:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** @verbatim
- 384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ===============================================================================
- 385:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ##### IO operation functions #####
- 386:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ===============================================================================
- 387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..] This section provides functions allowing to:
- 388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Configure the source, destination address and data length and Start DMA transfer
- 389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Configure the source, destination address and data length and
- 390:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** Start DMA transfer with interrupt
- 391:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Abort DMA transfer
- 392:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Poll for transfer complete
- 393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Handle DMA interrupt request
- 394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** @endverbatim
- 396:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @{
- 397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 398:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 399:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
- 400:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Starts the DMA Transfer.
- 401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
- 402:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream.
- 403:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param SrcAddress The source memory Buffer address
- 404:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param DstAddress The destination memory Buffer address
- 405:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param DataLength The length of data to be transferred from source to destination
- 406:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL status
- 407:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_Start(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress,
- 409:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK;
- 411:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check the parameters */
- 413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_BUFFER_SIZE(DataLength));
- 414:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 415:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process locked */
- 416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_LOCK(hdma);
- 417:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(HAL_DMA_STATE_READY == hdma->State)
- 419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 420:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Change DMA peripheral state */
- 421:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_BUSY;
- 422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 423:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Initialize the error code */
- 424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NONE;
- 425:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Configure the source, destination address and the data length */
- 427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_SetConfig(hdma, SrcAddress, DstAddress, DataLength);
- 428:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Enable the Peripheral */
- 430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_DMA_ENABLE(hdma);
- 431:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- ARM GAS /tmp/ccwgRvGR.s page 9
- 432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else
- 433:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 434:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process unlocked */
- 435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma);
- 436:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 437:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Return error status */
- 438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_BUSY;
- 439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 440:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return status;
- 441:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 442:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 443:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
- 444:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Start the DMA Transfer with interrupt enabled.
- 445:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
- 446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream.
- 447:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param SrcAddress The source memory Buffer address
- 448:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param DstAddress The destination memory Buffer address
- 449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param DataLength The length of data to be transferred from source to destination
- 450:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL status
- 451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 452:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_Start_IT(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddres
- 453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK;
- 455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 456:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* calculate DMA base and stream number */
- 457:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_Base_Registers *regs = (DMA_Base_Registers *)hdma->StreamBaseAddress;
- 458:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 459:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check the parameters */
- 460:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_BUFFER_SIZE(DataLength));
- 461:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process locked */
- 463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_LOCK(hdma);
- 464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(HAL_DMA_STATE_READY == hdma->State)
- 466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 467:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Change DMA peripheral state */
- 468:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_BUSY;
- 469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Initialize the error code */
- 471:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NONE;
- 472:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Configure the source, destination address and the data length */
- 474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_SetConfig(hdma, SrcAddress, DstAddress, DataLength);
- 475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 476:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear all interrupt flags at correct offset within the register */
- 477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = 0x3FU << hdma->StreamIndex;
- 478:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 479:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Enable Common interrupts*/
- 480:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->CR |= DMA_IT_TC | DMA_IT_TE | DMA_IT_DME;
- 481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->FCR |= DMA_IT_FE;
- 482:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 483:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->XferHalfCpltCallback != NULL)
- 484:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->CR |= DMA_IT_HT;
- 486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 487:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 488:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Enable the Peripheral */
- ARM GAS /tmp/ccwgRvGR.s page 10
- 489:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_DMA_ENABLE(hdma);
- 490:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 491:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else
- 492:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 493:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process unlocked */
- 494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma);
- 495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 496:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Return error status */
- 497:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_BUSY;
- 498:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 499:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 500:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return status;
- 501:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 502:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
- 504:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Aborts the DMA Transfer.
- 505:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
- 506:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream.
- 507:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** *
- 508:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @note After disabling a DMA Stream, a check for wait until the DMA Stream is
- 509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * effectively disabled is added. If a Stream is disabled
- 510:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * while a data transfer is ongoing, the current data will be transferred
- 511:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * and the Stream will be effectively disabled only after the transfer of
- 512:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * this single data is finished.
- 513:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL status
- 514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 515:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_Abort(DMA_HandleTypeDef *hdma)
- 516:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 517:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* calculate DMA base and stream number */
- 518:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_Base_Registers *regs = (DMA_Base_Registers *)hdma->StreamBaseAddress;
- 519:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tickstart = HAL_GetTick();
- 521:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->State != HAL_DMA_STATE_BUSY)
- 523:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 524:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NO_XFER;
- 525:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 526:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process Unlocked */
- 527:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma);
- 528:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_ERROR;
- 530:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 531:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else
- 532:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 533:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Disable all the transfer interrupts */
- 534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->CR &= ~(DMA_IT_TC | DMA_IT_TE | DMA_IT_DME);
- 535:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->FCR &= ~(DMA_IT_FE);
- 536:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((hdma->XferHalfCpltCallback != NULL) || (hdma->XferM1HalfCpltCallback != NULL))
- 538:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 539:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->CR &= ~(DMA_IT_HT);
- 540:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 541:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 542:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Disable the stream */
- 543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_DMA_DISABLE(hdma);
- 544:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 545:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check if the DMA Stream is effectively disabled */
- ARM GAS /tmp/ccwgRvGR.s page 11
- 546:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** while((hdma->Instance->CR & DMA_SxCR_EN) != RESET)
- 547:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 548:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check for the Timeout */
- 549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((HAL_GetTick() - tickstart ) > HAL_TIMEOUT_DMA_ABORT)
- 550:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 551:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Update error code */
- 552:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_TIMEOUT;
- 553:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 554:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process Unlocked */
- 555:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma);
- 556:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 557:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Change the DMA state */
- 558:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_TIMEOUT;
- 559:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 560:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_TIMEOUT;
- 561:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 562:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 564:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear all interrupt flags at correct offset within the register */
- 565:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = 0x3FU << hdma->StreamIndex;
- 566:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 567:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process Unlocked */
- 568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma);
- 569:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 570:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Change the DMA state*/
- 571:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY;
- 572:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_OK;
- 574:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 575:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 576:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
- 577:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Aborts the DMA Transfer in Interrupt mode.
- 578:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
- 579:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream.
- 580:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL status
- 581:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 582:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_Abort_IT(DMA_HandleTypeDef *hdma)
- 583:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->State != HAL_DMA_STATE_BUSY)
- 585:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 586:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NO_XFER;
- 587:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_ERROR;
- 588:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 589:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else
- 590:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 591:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Set Abort State */
- 592:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_ABORT;
- 593:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 594:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Disable the stream */
- 595:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_DMA_DISABLE(hdma);
- 596:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 597:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 598:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_OK;
- 599:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 600:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 601:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
- 602:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Polling for transfer complete.
- ARM GAS /tmp/ccwgRvGR.s page 12
- 603:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
- 604:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream.
- 605:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param CompleteLevel Specifies the DMA level complete.
- 606:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @note The polling mode is kept in this version for legacy. it is recommanded to use the IT mo
- 607:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * This model could be used for debug purpose.
- 608:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @note The HAL_DMA_PollForTransfer API cannot be used in circular and double buffering mode (a
- 609:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param Timeout Timeout duration.
- 610:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL status
- 611:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 612:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_PollForTransfer(DMA_HandleTypeDef *hdma, HAL_DMA_LevelCompleteTypeDef Com
- 613:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 614:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK;
- 615:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t mask_cpltlevel;
- 616:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tickstart = HAL_GetTick();
- 617:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmpisr;
- 618:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 619:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* calculate DMA base and stream number */
- 620:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_Base_Registers *regs;
- 621:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 622:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(HAL_DMA_STATE_BUSY != hdma->State)
- 623:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 624:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* No transfer ongoing */
- 625:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NO_XFER;
- 626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma);
- 627:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_ERROR;
- 628:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 629:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 630:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Polling mode not supported in circular mode and double buffering mode */
- 631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if ((hdma->Instance->CR & DMA_SxCR_CIRC) != RESET)
- 632:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NOT_SUPPORTED;
- 634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_ERROR;
- 635:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 636:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Get the level transfer complete flag */
- 638:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(CompleteLevel == HAL_DMA_FULL_TRANSFER)
- 639:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Transfer Complete flag */
- 641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** mask_cpltlevel = DMA_FLAG_TCIF0_4 << hdma->StreamIndex;
- 642:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 643:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else
- 644:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 645:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Half Transfer Complete flag */
- 646:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** mask_cpltlevel = DMA_FLAG_HTIF0_4 << hdma->StreamIndex;
- 647:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 648:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 649:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs = (DMA_Base_Registers *)hdma->StreamBaseAddress;
- 650:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** tmpisr = regs->ISR;
- 651:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** while(((tmpisr & mask_cpltlevel) == RESET) && ((hdma->ErrorCode & HAL_DMA_ERROR_TE) == RESET))
- 653:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 654:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check for the Timeout (Not applicable in circular mode)*/
- 655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(Timeout != HAL_MAX_DELAY)
- 656:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 657:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((Timeout == 0U)||((HAL_GetTick() - tickstart ) > Timeout))
- 658:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 659:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Update error code */
- ARM GAS /tmp/ccwgRvGR.s page 13
- 660:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_TIMEOUT;
- 661:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 662:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process Unlocked */
- 663:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma);
- 664:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 665:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Change the DMA state */
- 666:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY;
- 667:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_TIMEOUT;
- 669:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 671:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 672:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Get the ISR register value */
- 673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** tmpisr = regs->ISR;
- 674:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((tmpisr & (DMA_FLAG_TEIF0_4 << hdma->StreamIndex)) != RESET)
- 676:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 677:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Update error code */
- 678:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode |= HAL_DMA_ERROR_TE;
- 679:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 680:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear the transfer error flag */
- 681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = DMA_FLAG_TEIF0_4 << hdma->StreamIndex;
- 682:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 683:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 684:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((tmpisr & (DMA_FLAG_FEIF0_4 << hdma->StreamIndex)) != RESET)
- 685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 686:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Update error code */
- 687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode |= HAL_DMA_ERROR_FE;
- 688:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 689:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear the FIFO error flag */
- 690:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = DMA_FLAG_FEIF0_4 << hdma->StreamIndex;
- 691:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 692:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((tmpisr & (DMA_FLAG_DMEIF0_4 << hdma->StreamIndex)) != RESET)
- 694:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 695:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Update error code */
- 696:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode |= HAL_DMA_ERROR_DME;
- 697:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 698:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear the Direct Mode error flag */
- 699:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = DMA_FLAG_DMEIF0_4 << hdma->StreamIndex;
- 700:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 701:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 702:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 703:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->ErrorCode != HAL_DMA_ERROR_NONE)
- 704:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 705:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((hdma->ErrorCode & HAL_DMA_ERROR_TE) != RESET)
- 706:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 707:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_DMA_Abort(hdma);
- 708:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 709:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear the half transfer and transfer complete flags */
- 710:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = (DMA_FLAG_HTIF0_4 | DMA_FLAG_TCIF0_4) << hdma->StreamIndex;
- 711:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 712:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process Unlocked */
- 713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma);
- 714:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 715:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Change the DMA state */
- 716:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State= HAL_DMA_STATE_READY;
- ARM GAS /tmp/ccwgRvGR.s page 14
- 717:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 718:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_ERROR;
- 719:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 720:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 721:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 722:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Get the level transfer complete flag */
- 723:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(CompleteLevel == HAL_DMA_FULL_TRANSFER)
- 724:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear the half transfer and transfer complete flags */
- 726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = (DMA_FLAG_HTIF0_4 | DMA_FLAG_TCIF0_4) << hdma->StreamIndex;
- 727:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 728:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process Unlocked */
- 729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma);
- 730:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY;
- 732:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 733:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else
- 734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 735:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear the half transfer and transfer complete flags */
- 736:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = (DMA_FLAG_HTIF0_4) << hdma->StreamIndex;
- 737:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 738:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 739:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return status;
- 740:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 741:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 742:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
- 743:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Handles DMA interrupt request.
- 744:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
- 745:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream.
- 746:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval None
- 747:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 748:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** void HAL_DMA_IRQHandler(DMA_HandleTypeDef *hdma)
- 749:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 750:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmpisr;
- 751:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __IO uint32_t count = 0U;
- 752:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t timeout = SystemCoreClock / 9600U;
- 753:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 754:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* calculate DMA base and stream number */
- 755:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_Base_Registers *regs = (DMA_Base_Registers *)hdma->StreamBaseAddress;
- 756:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 757:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** tmpisr = regs->ISR;
- 758:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 759:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Transfer Error Interrupt management ***************************************/
- 760:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if ((tmpisr & (DMA_FLAG_TEIF0_4 << hdma->StreamIndex)) != RESET)
- 761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 762:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(__HAL_DMA_GET_IT_SOURCE(hdma, DMA_IT_TE) != RESET)
- 763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 764:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Disable the transfer error interrupt */
- 765:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->CR &= ~(DMA_IT_TE);
- 766:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 767:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear the transfer error flag */
- 768:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = DMA_FLAG_TEIF0_4 << hdma->StreamIndex;
- 769:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 770:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Update error code */
- 771:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode |= HAL_DMA_ERROR_TE;
- 772:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 773:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- ARM GAS /tmp/ccwgRvGR.s page 15
- 774:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* FIFO Error Interrupt management ******************************************/
- 775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if ((tmpisr & (DMA_FLAG_FEIF0_4 << hdma->StreamIndex)) != RESET)
- 776:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(__HAL_DMA_GET_IT_SOURCE(hdma, DMA_IT_FE) != RESET)
- 778:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 779:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear the FIFO error flag */
- 780:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = DMA_FLAG_FEIF0_4 << hdma->StreamIndex;
- 781:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 782:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Update error code */
- 783:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode |= HAL_DMA_ERROR_FE;
- 784:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 785:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 786:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Direct Mode Error Interrupt management ***********************************/
- 787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if ((tmpisr & (DMA_FLAG_DMEIF0_4 << hdma->StreamIndex)) != RESET)
- 788:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 789:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(__HAL_DMA_GET_IT_SOURCE(hdma, DMA_IT_DME) != RESET)
- 790:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 791:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear the direct mode error flag */
- 792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = DMA_FLAG_DMEIF0_4 << hdma->StreamIndex;
- 793:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 794:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Update error code */
- 795:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode |= HAL_DMA_ERROR_DME;
- 796:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 797:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 798:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Half Transfer Complete Interrupt management ******************************/
- 799:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if ((tmpisr & (DMA_FLAG_HTIF0_4 << hdma->StreamIndex)) != RESET)
- 800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(__HAL_DMA_GET_IT_SOURCE(hdma, DMA_IT_HT) != RESET)
- 802:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 803:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear the half transfer complete flag */
- 804:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = DMA_FLAG_HTIF0_4 << hdma->StreamIndex;
- 805:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 806:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Multi_Buffering mode enabled */
- 807:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(((hdma->Instance->CR) & (uint32_t)(DMA_SxCR_DBM)) != RESET)
- 808:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 809:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Current memory buffer used is Memory 0 */
- 810:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((hdma->Instance->CR & DMA_SxCR_CT) == RESET)
- 811:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->XferHalfCpltCallback != NULL)
- 813:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 814:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Half transfer callback */
- 815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferHalfCpltCallback(hdma);
- 816:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 817:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 818:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Current memory buffer used is Memory 1 */
- 819:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else
- 820:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->XferM1HalfCpltCallback != NULL)
- 822:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 823:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Half transfer callback */
- 824:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1HalfCpltCallback(hdma);
- 825:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 827:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 828:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else
- 829:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 830:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Disable the half transfer interrupt if the DMA mode is not CIRCULAR */
- ARM GAS /tmp/ccwgRvGR.s page 16
- 831:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((hdma->Instance->CR & DMA_SxCR_CIRC) == RESET)
- 832:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 833:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Disable the half transfer interrupt */
- 834:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->CR &= ~(DMA_IT_HT);
- 835:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 836:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 837:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->XferHalfCpltCallback != NULL)
- 838:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 839:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Half transfer callback */
- 840:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferHalfCpltCallback(hdma);
- 841:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 842:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 843:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 844:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 845:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Transfer Complete Interrupt management ***********************************/
- 846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if ((tmpisr & (DMA_FLAG_TCIF0_4 << hdma->StreamIndex)) != RESET)
- 847:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 848:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(__HAL_DMA_GET_IT_SOURCE(hdma, DMA_IT_TC) != RESET)
- 849:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 850:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear the transfer complete flag */
- 851:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = DMA_FLAG_TCIF0_4 << hdma->StreamIndex;
- 852:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 853:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(HAL_DMA_STATE_ABORT == hdma->State)
- 854:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 855:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Disable all the transfer interrupts */
- 856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->CR &= ~(DMA_IT_TC | DMA_IT_TE | DMA_IT_DME);
- 857:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->FCR &= ~(DMA_IT_FE);
- 858:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((hdma->XferHalfCpltCallback != NULL) || (hdma->XferM1HalfCpltCallback != NULL))
- 860:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->CR &= ~(DMA_IT_HT);
- 862:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 863:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 864:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear all interrupt flags at correct offset within the register */
- 865:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = 0x3FU << hdma->StreamIndex;
- 866:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 867:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process Unlocked */
- 868:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma);
- 869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 870:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Change the DMA state */
- 871:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY;
- 872:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 873:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->XferAbortCallback != NULL)
- 874:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 875:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferAbortCallback(hdma);
- 876:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 877:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return;
- 878:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 879:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 880:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(((hdma->Instance->CR) & (uint32_t)(DMA_SxCR_DBM)) != RESET)
- 881:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 882:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Current memory buffer used is Memory 0 */
- 883:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((hdma->Instance->CR & DMA_SxCR_CT) == RESET)
- 884:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 885:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->XferM1CpltCallback != NULL)
- 886:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Transfer complete Callback for memory1 */
- ARM GAS /tmp/ccwgRvGR.s page 17
- 888:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1CpltCallback(hdma);
- 889:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 890:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 891:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Current memory buffer used is Memory 1 */
- 892:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else
- 893:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 894:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->XferCpltCallback != NULL)
- 895:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 896:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Transfer complete Callback for memory0 */
- 897:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferCpltCallback(hdma);
- 898:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 899:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 900:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 901:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Disable the transfer complete interrupt if the DMA mode is not CIRCULAR */
- 902:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else
- 903:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((hdma->Instance->CR & DMA_SxCR_CIRC) == RESET)
- 905:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 906:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Disable the transfer complete interrupt */
- 907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->CR &= ~(DMA_IT_TC);
- 908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 909:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process Unlocked */
- 910:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma);
- 911:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 912:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Change the DMA state */
- 913:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY;
- 914:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 915:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 916:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->XferCpltCallback != NULL)
- 917:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 918:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Transfer complete callback */
- 919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferCpltCallback(hdma);
- 920:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 921:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 922:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 923:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 924:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 925:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* manage error case */
- 926:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->ErrorCode != HAL_DMA_ERROR_NONE)
- 927:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((hdma->ErrorCode & HAL_DMA_ERROR_TE) != RESET)
- 929:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 930:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_ABORT;
- 931:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 932:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Disable the stream */
- 933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_DMA_DISABLE(hdma);
- 934:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 935:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** do
- 936:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 937:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if (++count > timeout)
- 938:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 939:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 940:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 941:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** while((hdma->Instance->CR & DMA_SxCR_EN) != RESET);
- 943:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 944:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process Unlocked */
- ARM GAS /tmp/ccwgRvGR.s page 18
- 945:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma);
- 946:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 947:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Change the DMA state */
- 948:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY;
- 949:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 951:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->XferErrorCallback != NULL)
- 952:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 953:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Transfer error callback */
- 954:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferErrorCallback(hdma);
- 955:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 956:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 957:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 958:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 959:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
- 960:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Register callbacks
- 961:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
- 962:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream.
- 963:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param CallbackID User Callback identifer
- 964:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * a DMA_HandleTypeDef structure as parameter.
- 965:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param pCallback pointer to private callbacsk function which has pointer to
- 966:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * a DMA_HandleTypeDef structure as parameter.
- 967:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL status
- 968:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 969:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_RegisterCallback(DMA_HandleTypeDef *hdma, HAL_DMA_CallbackIDTypeDef Callb
- 970:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 971:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK;
- 973:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process locked */
- 975:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_LOCK(hdma);
- 976:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 977:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(HAL_DMA_STATE_READY == hdma->State)
- 978:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** switch (CallbackID)
- 980:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 981:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_CPLT_CB_ID:
- 982:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferCpltCallback = pCallback;
- 983:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 984:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 985:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_HALFCPLT_CB_ID:
- 986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferHalfCpltCallback = pCallback;
- 987:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 988:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 989:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_M1CPLT_CB_ID:
- 990:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1CpltCallback = pCallback;
- 991:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 992:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 993:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_M1HALFCPLT_CB_ID:
- 994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1HalfCpltCallback = pCallback;
- 995:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 996:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 997:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_ERROR_CB_ID:
- 998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferErrorCallback = pCallback;
- 999:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1000:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1001:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_ABORT_CB_ID:
- ARM GAS /tmp/ccwgRvGR.s page 19
- 1002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferAbortCallback = pCallback;
- 1003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1004:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1005:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** default:
- 1006:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1007:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1008:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1009:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else
- 1010:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Return error status */
- 1012:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR;
- 1013:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1014:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1015:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Release Lock */
- 1016:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma);
- 1017:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1018:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return status;
- 1019:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1020:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1021:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
- 1022:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief UnRegister callbacks
- 1023:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
- 1024:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream.
- 1025:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param CallbackID User Callback identifer
- 1026:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * a HAL_DMA_CallbackIDTypeDef ENUM as parameter.
- 1027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL status
- 1028:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 1029:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_UnRegisterCallback(DMA_HandleTypeDef *hdma, HAL_DMA_CallbackIDTypeDef Cal
- 1030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1031:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK;
- 1032:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1033:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process locked */
- 1034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_LOCK(hdma);
- 1035:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(HAL_DMA_STATE_READY == hdma->State)
- 1037:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1038:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** switch (CallbackID)
- 1039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1040:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_CPLT_CB_ID:
- 1041:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferCpltCallback = NULL;
- 1042:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1043:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1044:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_HALFCPLT_CB_ID:
- 1045:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferHalfCpltCallback = NULL;
- 1046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1048:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_M1CPLT_CB_ID:
- 1049:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1CpltCallback = NULL;
- 1050:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1051:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1052:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_M1HALFCPLT_CB_ID:
- 1053:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1HalfCpltCallback = NULL;
- 1054:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1055:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1056:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_ERROR_CB_ID:
- 1057:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferErrorCallback = NULL;
- 1058:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- ARM GAS /tmp/ccwgRvGR.s page 20
- 1059:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1060:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_ABORT_CB_ID:
- 1061:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferAbortCallback = NULL;
- 1062:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1063:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1064:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_ALL_CB_ID:
- 1065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferCpltCallback = NULL;
- 1066:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferHalfCpltCallback = NULL;
- 1067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1CpltCallback = NULL;
- 1068:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1HalfCpltCallback = NULL;
- 1069:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferErrorCallback = NULL;
- 1070:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferAbortCallback = NULL;
- 1071:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1072:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1073:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** default:
- 1074:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR;
- 1075:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1076:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1077:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else
- 1079:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1080:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR;
- 1081:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1082:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1083:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Release Lock */
- 1084:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma);
- 1085:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1086:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return status;
- 1087:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1088:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1089:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
- 1090:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @}
- 1091:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 1092:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1093:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** @addtogroup DMA_Exported_Functions_Group3
- 1094:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** *
- 1095:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** @verbatim
- 1096:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ===============================================================================
- 1097:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ##### State and Errors functions #####
- 1098:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ===============================================================================
- 1099:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..]
- 1100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** This subsection provides functions allowing to
- 1101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Check the DMA state
- 1102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Get error code
- 1103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** @endverbatim
- 1105:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @{
- 1106:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 1107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1108:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
- 1109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Returns the DMA state.
- 1110:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
- 1111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream.
- 1112:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL state
- 1113:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 1114:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_DMA_StateTypeDef HAL_DMA_GetState(DMA_HandleTypeDef *hdma)
- 1115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- ARM GAS /tmp/ccwgRvGR.s page 21
- 1116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return hdma->State;
- 1117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1118:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1119:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
- 1120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Return the DMA error code
- 1121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
- 1122:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream.
- 1123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval DMA Error Code
- 1124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 1125:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t HAL_DMA_GetError(DMA_HandleTypeDef *hdma)
- 1126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return hdma->ErrorCode;
- 1128:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
- 1131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @}
- 1132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 1133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
- 1135:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @}
- 1136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 1137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1138:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** @addtogroup DMA_Private_Functions
- 1139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @{
- 1140:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 1141:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1142:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
- 1143:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Sets the DMA Transfer parameter.
- 1144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
- 1145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream.
- 1146:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param SrcAddress The source memory Buffer address
- 1147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param DstAddress The destination memory Buffer address
- 1148:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param DataLength The length of data to be transferred from source to destination
- 1149:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL status
- 1150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 1151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** static void DMA_SetConfig(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32
- 1152:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 27 .loc 1 1152 0
- 28 .cfi_startproc
- 29 @ args = 0, pretend = 0, frame = 0
- 30 @ frame_needed = 0, uses_anonymous_args = 0
- 31 @ link register save eliminated.
- 32 .LVL0:
- 33 0000 30B4 push {r4, r5}
- 34 .LCFI0:
- 35 .cfi_def_cfa_offset 8
- 36 .cfi_offset 4, -8
- 37 .cfi_offset 5, -4
- 1153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear DBM bit */
- 1154:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->CR &= (uint32_t)(~DMA_SxCR_DBM);
- 38 .loc 1 1154 0
- 39 0002 0568 ldr r5, [r0]
- 40 0004 2C68 ldr r4, [r5]
- 41 0006 24F48024 bic r4, r4, #262144
- 42 000a 2C60 str r4, [r5]
- 1155:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1156:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Configure DMA Stream data length */
- ARM GAS /tmp/ccwgRvGR.s page 22
- 1157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->NDTR = DataLength;
- 43 .loc 1 1157 0
- 44 000c 0468 ldr r4, [r0]
- 45 000e 6360 str r3, [r4, #4]
- 1158:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Memory to Peripheral */
- 1160:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((hdma->Init.Direction) == DMA_MEMORY_TO_PERIPH)
- 46 .loc 1 1160 0
- 47 0010 8368 ldr r3, [r0, #8]
- 48 .LVL1:
- 49 0012 402B cmp r3, #64
- 50 0014 05D0 beq .L5
- 1161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1162:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Configure DMA Stream destination address */
- 1163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->PAR = DstAddress;
- 1164:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1165:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Configure DMA Stream source address */
- 1166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->M0AR = SrcAddress;
- 1167:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Peripheral to Memory */
- 1169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else
- 1170:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Configure DMA Stream source address */
- 1172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->PAR = SrcAddress;
- 51 .loc 1 1172 0
- 52 0016 0368 ldr r3, [r0]
- 53 0018 9960 str r1, [r3, #8]
- 54 .LVL2:
- 1173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Configure DMA Stream destination address */
- 1175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->M0AR = DstAddress;
- 55 .loc 1 1175 0
- 56 001a 0368 ldr r3, [r0]
- 57 001c DA60 str r2, [r3, #12]
- 58 .L1:
- 1176:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 59 .loc 1 1177 0
- 60 001e 30BC pop {r4, r5}
- 61 .LCFI1:
- 62 .cfi_remember_state
- 63 .cfi_restore 5
- 64 .cfi_restore 4
- 65 .cfi_def_cfa_offset 0
- 66 0020 7047 bx lr
- 67 .LVL3:
- 68 .L5:
- 69 .LCFI2:
- 70 .cfi_restore_state
- 1163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 71 .loc 1 1163 0
- 72 0022 0368 ldr r3, [r0]
- 73 0024 9A60 str r2, [r3, #8]
- 74 .LVL4:
- 1166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 75 .loc 1 1166 0
- 76 0026 0368 ldr r3, [r0]
- ARM GAS /tmp/ccwgRvGR.s page 23
- 77 0028 D960 str r1, [r3, #12]
- 78 002a F8E7 b .L1
- 79 .cfi_endproc
- 80 .LFE142:
- 82 .section .text.DMA_CalcBaseAndBitshift,"ax",%progbits
- 83 .align 1
- 84 .syntax unified
- 85 .thumb
- 86 .thumb_func
- 87 .fpu fpv4-sp-d16
- 89 DMA_CalcBaseAndBitshift:
- 90 .LFB143:
- 1178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
- 1180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Returns the DMA Stream base address depending on stream number
- 1181:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
- 1182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream.
- 1183:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval Stream base address
- 1184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 1185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** static uint32_t DMA_CalcBaseAndBitshift(DMA_HandleTypeDef *hdma)
- 1186:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 91 .loc 1 1186 0
- 92 .cfi_startproc
- 93 @ args = 0, pretend = 0, frame = 0
- 94 @ frame_needed = 0, uses_anonymous_args = 0
- 95 @ link register save eliminated.
- 96 .LVL5:
- 1187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t stream_number = (((uint32_t)hdma->Instance & 0xFFU) - 16U) / 24U;
- 97 .loc 1 1187 0
- 98 0000 0268 ldr r2, [r0]
- 99 0002 D3B2 uxtb r3, r2
- 100 0004 103B subs r3, r3, #16
- 101 0006 0B49 ldr r1, .L10
- 102 0008 A1FB0313 umull r1, r3, r1, r3
- 103 000c 1B09 lsrs r3, r3, #4
- 104 .LVL6:
- 1188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1189:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* lookup table for necessary bitshift of flags within status registers */
- 1190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** static const uint8_t flagBitshiftOffset[8U] = {0U, 6U, 16U, 22U, 0U, 6U, 16U, 22U};
- 1191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->StreamIndex = flagBitshiftOffset[stream_number];
- 105 .loc 1 1191 0
- 106 000e 0A49 ldr r1, .L10+4
- 107 0010 C95C ldrb r1, [r1, r3] @ zero_extendqisi2
- 108 0012 C165 str r1, [r0, #92]
- 1192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if (stream_number > 3U)
- 109 .loc 1 1193 0
- 110 0014 032B cmp r3, #3
- 111 0016 06D8 bhi .L9
- 1194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1195:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* return pointer to HISR and HIFCR */
- 1196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->StreamBaseAddress = (((uint32_t)hdma->Instance & (uint32_t)(~0x3FFU)) + 4U);
- 1197:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1198:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else
- 1199:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* return pointer to LISR and LIFCR */
- 1201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->StreamBaseAddress = ((uint32_t)hdma->Instance & (uint32_t)(~0x3FFU));
- ARM GAS /tmp/ccwgRvGR.s page 24
- 112 .loc 1 1201 0
- 113 0018 22F47F72 bic r2, r2, #1020
- 114 001c 22F00302 bic r2, r2, #3
- 115 0020 8265 str r2, [r0, #88]
- 116 .L8:
- 1202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return hdma->StreamBaseAddress;
- 1205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 117 .loc 1 1205 0
- 118 0022 806D ldr r0, [r0, #88]
- 119 .LVL7:
- 120 0024 7047 bx lr
- 121 .LVL8:
- 122 .L9:
- 1196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 123 .loc 1 1196 0
- 124 0026 22F47F72 bic r2, r2, #1020
- 125 002a 22F00302 bic r2, r2, #3
- 126 002e 0432 adds r2, r2, #4
- 127 0030 8265 str r2, [r0, #88]
- 128 0032 F6E7 b .L8
- 129 .L11:
- 130 .align 2
- 131 .L10:
- 132 0034 ABAAAAAA .word -1431655765
- 133 0038 00000000 .word .LANCHOR0
- 134 .cfi_endproc
- 135 .LFE143:
- 137 .section .text.DMA_CheckFifoParam,"ax",%progbits
- 138 .align 1
- 139 .syntax unified
- 140 .thumb
- 141 .thumb_func
- 142 .fpu fpv4-sp-d16
- 144 DMA_CheckFifoParam:
- 145 .LFB144:
- 1206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
- 1208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Check compatibility between FIFO threshold level and size of the memory burst
- 1209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
- 1210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream.
- 1211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL status
- 1212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
- 1213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** static HAL_StatusTypeDef DMA_CheckFifoParam(DMA_HandleTypeDef *hdma)
- 1214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 146 .loc 1 1214 0
- 147 .cfi_startproc
- 148 @ args = 0, pretend = 0, frame = 0
- 149 @ frame_needed = 0, uses_anonymous_args = 0
- 150 @ link register save eliminated.
- 151 .LVL9:
- 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK;
- 1216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold;
- 152 .loc 1 1216 0
- 153 0000 836A ldr r3, [r0, #40]
- 154 .LVL10:
- ARM GAS /tmp/ccwgRvGR.s page 25
- 1217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1218:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Memory Data size equal to Byte */
- 1219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->Init.MemDataAlignment == DMA_MDATAALIGN_BYTE)
- 155 .loc 1 1219 0
- 156 0002 8269 ldr r2, [r0, #24]
- 157 0004 92B9 cbnz r2, .L13
- 1220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** switch (tmp)
- 158 .loc 1 1221 0
- 159 0006 012B cmp r3, #1
- 160 0008 0AD0 beq .L15
- 161 000a 1BB1 cbz r3, .L16
- 162 000c 022B cmp r3, #2
- 163 000e 01D0 beq .L16
- 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold;
- 164 .loc 1 1215 0
- 165 0010 0020 movs r0, #0
- 166 .LVL11:
- 167 0012 7047 bx lr
- 168 .LVL12:
- 169 .L16:
- 1222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1223:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_1QUARTERFULL:
- 1224:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_3QUARTERSFULL:
- 1225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if ((hdma->Init.MemBurst & DMA_SxCR_MBURST_1) == DMA_SxCR_MBURST_1)
- 170 .loc 1 1225 0
- 171 0014 C36A ldr r3, [r0, #44]
- 172 .LVL13:
- 173 0016 13F0807F tst r3, #16777216
- 174 001a 2CD1 bne .L25
- 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold;
- 175 .loc 1 1215 0
- 176 001c 0020 movs r0, #0
- 177 .LVL14:
- 178 001e 7047 bx lr
- 179 .LVL15:
- 180 .L15:
- 1226:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR;
- 1228:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1230:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_HALFFULL:
- 1231:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if (hdma->Init.MemBurst == DMA_MBURST_INC16)
- 181 .loc 1 1231 0
- 182 0020 C36A ldr r3, [r0, #44]
- 183 .LVL16:
- 184 0022 B3F1C07F cmp r3, #25165824
- 185 0026 28D0 beq .L26
- 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold;
- 186 .loc 1 1215 0
- 187 0028 0020 movs r0, #0
- 188 .LVL17:
- 189 002a 7047 bx lr
- 190 .LVL18:
- 191 .L13:
- 1232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR;
- ARM GAS /tmp/ccwgRvGR.s page 26
- 1234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_FULL:
- 1237:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** default:
- 1239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Memory Data size equal to Half-Word */
- 1244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else if (hdma->Init.MemDataAlignment == DMA_MDATAALIGN_HALFWORD)
- 192 .loc 1 1244 0
- 193 002c B2F5005F cmp r2, #8192
- 194 0030 05D0 beq .L33
- 1245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** switch (tmp)
- 1247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1248:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_1QUARTERFULL:
- 1249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_3QUARTERSFULL:
- 1250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR;
- 1251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_HALFFULL:
- 1253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if ((hdma->Init.MemBurst & DMA_SxCR_MBURST_1) == DMA_SxCR_MBURST_1)
- 1254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR;
- 1256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_FULL:
- 1259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if (hdma->Init.MemBurst == DMA_MBURST_INC16)
- 1260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR;
- 1262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1264:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** default:
- 1265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1268:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Memory Data size equal to Word */
- 1270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else
- 1271:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** switch (tmp)
- 195 .loc 1 1272 0
- 196 0032 022B cmp r3, #2
- 197 0034 29D9 bls .L30
- 198 0036 032B cmp r3, #3
- 199 0038 15D0 beq .L23
- 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold;
- 200 .loc 1 1215 0
- 201 003a 0020 movs r0, #0
- 202 .LVL19:
- 203 003c 7047 bx lr
- 204 .LVL20:
- 205 .L33:
- 1246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 206 .loc 1 1246 0
- 207 003e 032B cmp r3, #3
- ARM GAS /tmp/ccwgRvGR.s page 27
- 208 0040 03D8 bhi .L18
- 209 0042 DFE803F0 tbb [pc, r3]
- 210 .L19:
- 211 0046 1C .byte (.L27-.L19)/2
- 212 0047 04 .byte (.L20-.L19)/2
- 213 0048 1C .byte (.L27-.L19)/2
- 214 0049 0A .byte (.L21-.L19)/2
- 215 .p2align 1
- 216 .L18:
- 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold;
- 217 .loc 1 1215 0
- 218 004a 0020 movs r0, #0
- 219 .LVL21:
- 220 004c 7047 bx lr
- 221 .LVL22:
- 222 .L20:
- 1253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 223 .loc 1 1253 0
- 224 004e C36A ldr r3, [r0, #44]
- 225 .LVL23:
- 226 0050 13F0807F tst r3, #16777216
- 227 0054 15D1 bne .L28
- 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold;
- 228 .loc 1 1215 0
- 229 0056 0020 movs r0, #0
- 230 .LVL24:
- 231 0058 7047 bx lr
- 232 .LVL25:
- 233 .L21:
- 1259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 234 .loc 1 1259 0
- 235 005a C36A ldr r3, [r0, #44]
- 236 .LVL26:
- 237 005c B3F1C07F cmp r3, #25165824
- 238 0060 11D0 beq .L29
- 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold;
- 239 .loc 1 1215 0
- 240 0062 0020 movs r0, #0
- 241 .LVL27:
- 242 0064 7047 bx lr
- 243 .LVL28:
- 244 .L23:
- 1273:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1274:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_1QUARTERFULL:
- 1275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_HALFFULL:
- 1276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_3QUARTERSFULL:
- 1277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR;
- 1278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1279:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_FULL:
- 1280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if ((hdma->Init.MemBurst & DMA_SxCR_MBURST_1) == DMA_SxCR_MBURST_1)
- 245 .loc 1 1280 0
- 246 0066 C36A ldr r3, [r0, #44]
- 247 .LVL29:
- 248 0068 13F0807F tst r3, #16777216
- 249 006c 01D0 beq .L34
- 1281:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1282:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR;
- ARM GAS /tmp/ccwgRvGR.s page 28
- 250 .loc 1 1282 0
- 251 006e 0120 movs r0, #1
- 252 .LVL30:
- 1283:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1285:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** default:
- 1286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1287:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1289:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return status;
- 1291:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 253 .loc 1 1291 0
- 254 0070 7047 bx lr
- 255 .LVL31:
- 256 .L34:
- 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold;
- 257 .loc 1 1215 0
- 258 0072 0020 movs r0, #0
- 259 .LVL32:
- 260 0074 7047 bx lr
- 261 .LVL33:
- 262 .L25:
- 1227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 263 .loc 1 1227 0
- 264 0076 0120 movs r0, #1
- 265 .LVL34:
- 266 0078 7047 bx lr
- 267 .LVL35:
- 268 .L26:
- 1233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 269 .loc 1 1233 0
- 270 007a 0120 movs r0, #1
- 271 .LVL36:
- 272 007c 7047 bx lr
- 273 .LVL37:
- 274 .L27:
- 1250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 275 .loc 1 1250 0
- 276 007e 0120 movs r0, #1
- 277 .LVL38:
- 278 0080 7047 bx lr
- 279 .LVL39:
- 280 .L28:
- 1255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 281 .loc 1 1255 0
- 282 0082 0120 movs r0, #1
- 283 .LVL40:
- 284 0084 7047 bx lr
- 285 .LVL41:
- 286 .L29:
- 1261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 287 .loc 1 1261 0
- 288 0086 0120 movs r0, #1
- 289 .LVL42:
- 290 0088 7047 bx lr
- 291 .LVL43:
- ARM GAS /tmp/ccwgRvGR.s page 29
- 292 .L30:
- 1277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 293 .loc 1 1277 0
- 294 008a 0120 movs r0, #1
- 295 .LVL44:
- 296 008c 7047 bx lr
- 297 .cfi_endproc
- 298 .LFE144:
- 300 .section .text.HAL_DMA_Init,"ax",%progbits
- 301 .align 1
- 302 .global HAL_DMA_Init
- 303 .syntax unified
- 304 .thumb
- 305 .thumb_func
- 306 .fpu fpv4-sp-d16
- 308 HAL_DMA_Init:
- 309 .LFB130:
- 172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = 0U;
- 310 .loc 1 172 0
- 311 .cfi_startproc
- 312 @ args = 0, pretend = 0, frame = 0
- 313 @ frame_needed = 0, uses_anonymous_args = 0
- 314 .LVL45:
- 315 0000 70B5 push {r4, r5, r6, lr}
- 316 .LCFI3:
- 317 .cfi_def_cfa_offset 16
- 318 .cfi_offset 4, -16
- 319 .cfi_offset 5, -12
- 320 .cfi_offset 6, -8
- 321 .cfi_offset 14, -4
- 322 0002 0446 mov r4, r0
- 323 .LVL46:
- 174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_Base_Registers *regs;
- 324 .loc 1 174 0
- 325 0004 FFF7FEFF bl HAL_GetTick
- 326 .LVL47:
- 178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 327 .loc 1 178 0
- 328 0008 002C cmp r4, #0
- 329 000a 5DD0 beq .L41
- 330 000c 0546 mov r5, r0
- 204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 331 .loc 1 204 0
- 332 000e 0023 movs r3, #0
- 333 0010 84F83430 strb r3, [r4, #52]
- 207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 334 .loc 1 207 0
- 335 0014 0223 movs r3, #2
- 336 0016 84F83530 strb r3, [r4, #53]
- 210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 337 .loc 1 210 0
- 338 001a 2268 ldr r2, [r4]
- 339 001c 1368 ldr r3, [r2]
- 340 001e 23F00103 bic r3, r3, #1
- 341 0022 1360 str r3, [r2]
- 342 .LVL48:
- 343 .L37:
- ARM GAS /tmp/ccwgRvGR.s page 30
- 213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 344 .loc 1 213 0
- 345 0024 2368 ldr r3, [r4]
- 346 0026 1A68 ldr r2, [r3]
- 347 0028 12F0010F tst r2, #1
- 348 002c 0AD0 beq .L43
- 216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 349 .loc 1 216 0
- 350 002e FFF7FEFF bl HAL_GetTick
- 351 .LVL49:
- 352 0032 401B subs r0, r0, r5
- 353 0034 0528 cmp r0, #5
- 354 0036 F5D9 bls .L37
- 219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 355 .loc 1 219 0
- 356 0038 2023 movs r3, #32
- 357 003a 6365 str r3, [r4, #84]
- 222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 358 .loc 1 222 0
- 359 003c 0320 movs r0, #3
- 360 003e 84F83500 strb r0, [r4, #53]
- 224:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 361 .loc 1 224 0
- 362 0042 70BD pop {r4, r5, r6, pc}
- 363 .LVL50:
- 364 .L43:
- 229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 365 .loc 1 229 0
- 366 0044 1A68 ldr r2, [r3]
- 367 .LVL51:
- 232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_SxCR_PL | DMA_SxCR_MSIZE | DMA_SxCR_PSIZE | \
- 368 .loc 1 232 0
- 369 0046 2149 ldr r1, .L46
- 370 0048 1140 ands r1, r1, r2
- 371 .LVL52:
- 238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.PeriphInc | hdma->Init.MemInc |
- 372 .loc 1 238 0
- 373 004a 6268 ldr r2, [r4, #4]
- 374 004c A068 ldr r0, [r4, #8]
- 375 004e 0243 orrs r2, r2, r0
- 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.PeriphDataAlignment | hdma->Init.MemDataAlignment |
- 376 .loc 1 239 0
- 377 0050 E068 ldr r0, [r4, #12]
- 238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.PeriphInc | hdma->Init.MemInc |
- 378 .loc 1 238 0
- 379 0052 0243 orrs r2, r2, r0
- 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.PeriphDataAlignment | hdma->Init.MemDataAlignment |
- 380 .loc 1 239 0
- 381 0054 2069 ldr r0, [r4, #16]
- 382 0056 0243 orrs r2, r2, r0
- 240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.Mode | hdma->Init.Priority;
- 383 .loc 1 240 0
- 384 0058 6069 ldr r0, [r4, #20]
- 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.PeriphDataAlignment | hdma->Init.MemDataAlignment |
- 385 .loc 1 239 0
- 386 005a 0243 orrs r2, r2, r0
- 240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.Mode | hdma->Init.Priority;
- ARM GAS /tmp/ccwgRvGR.s page 31
- 387 .loc 1 240 0
- 388 005c A069 ldr r0, [r4, #24]
- 389 005e 0243 orrs r2, r2, r0
- 241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 390 .loc 1 241 0
- 391 0060 E069 ldr r0, [r4, #28]
- 240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.Mode | hdma->Init.Priority;
- 392 .loc 1 240 0
- 393 0062 0243 orrs r2, r2, r0
- 241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 394 .loc 1 241 0
- 395 0064 206A ldr r0, [r4, #32]
- 396 0066 0243 orrs r2, r2, r0
- 238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.PeriphInc | hdma->Init.MemInc |
- 397 .loc 1 238 0
- 398 0068 0A43 orrs r2, r2, r1
- 399 .LVL53:
- 244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 400 .loc 1 244 0
- 401 006a 616A ldr r1, [r4, #36]
- 402 006c 0429 cmp r1, #4
- 403 006e 16D0 beq .L44
- 404 .L39:
- 251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 405 .loc 1 251 0
- 406 0070 1A60 str r2, [r3]
- 254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 407 .loc 1 254 0
- 408 0072 2668 ldr r6, [r4]
- 409 0074 7569 ldr r5, [r6, #20]
- 410 .LVL54:
- 257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 411 .loc 1 257 0
- 412 0076 25F00705 bic r5, r5, #7
- 413 .LVL55:
- 260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 414 .loc 1 260 0
- 415 007a 636A ldr r3, [r4, #36]
- 416 007c 1D43 orrs r5, r5, r3
- 417 .LVL56:
- 263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 418 .loc 1 263 0
- 419 007e 042B cmp r3, #4
- 420 0080 12D0 beq .L45
- 421 .L40:
- 286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 422 .loc 1 286 0
- 423 0082 7561 str r5, [r6, #20]
- 290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 424 .loc 1 290 0
- 425 0084 2046 mov r0, r4
- 426 0086 FFF7FEFF bl DMA_CalcBaseAndBitshift
- 427 .LVL57:
- 293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 428 .loc 1 293 0
- 429 008a E26D ldr r2, [r4, #92]
- 430 008c 3F23 movs r3, #63
- ARM GAS /tmp/ccwgRvGR.s page 32
- 431 008e 9340 lsls r3, r3, r2
- 432 0090 8360 str r3, [r0, #8]
- 296:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 433 .loc 1 296 0
- 434 0092 0020 movs r0, #0
- 435 .LVL58:
- 436 0094 6065 str r0, [r4, #84]
- 299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 437 .loc 1 299 0
- 438 0096 0123 movs r3, #1
- 439 0098 84F83530 strb r3, [r4, #53]
- 301:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 440 .loc 1 301 0
- 441 009c 70BD pop {r4, r5, r6, pc}
- 442 .LVL59:
- 443 .L44:
- 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 444 .loc 1 247 0
- 445 009e E16A ldr r1, [r4, #44]
- 446 00a0 206B ldr r0, [r4, #48]
- 447 00a2 0143 orrs r1, r1, r0
- 448 00a4 0A43 orrs r2, r2, r1
- 449 .LVL60:
- 450 00a6 E3E7 b .L39
- 451 .LVL61:
- 452 .L45:
- 266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 453 .loc 1 266 0
- 454 00a8 A36A ldr r3, [r4, #40]
- 455 00aa 1D43 orrs r5, r5, r3
- 456 .LVL62:
- 270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 457 .loc 1 270 0
- 458 00ac E36A ldr r3, [r4, #44]
- 459 00ae 002B cmp r3, #0
- 460 00b0 E7D0 beq .L40
- 272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 461 .loc 1 272 0
- 462 00b2 2046 mov r0, r4
- 463 00b4 FFF7FEFF bl DMA_CheckFifoParam
- 464 .LVL63:
- 465 00b8 0028 cmp r0, #0
- 466 00ba E2D0 beq .L40
- 275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 467 .loc 1 275 0
- 468 00bc 4023 movs r3, #64
- 469 00be 6365 str r3, [r4, #84]
- 278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 470 .loc 1 278 0
- 471 00c0 0120 movs r0, #1
- 472 00c2 84F83500 strb r0, [r4, #53]
- 280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 473 .loc 1 280 0
- 474 00c6 70BD pop {r4, r5, r6, pc}
- 475 .LVL64:
- 476 .L41:
- 180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- ARM GAS /tmp/ccwgRvGR.s page 33
- 477 .loc 1 180 0
- 478 00c8 0120 movs r0, #1
- 479 .LVL65:
- 302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 480 .loc 1 302 0
- 481 00ca 70BD pop {r4, r5, r6, pc}
- 482 .LVL66:
- 483 .L47:
- 484 .align 2
- 485 .L46:
- 486 00cc 3F8010F0 .word -267354049
- 487 .cfi_endproc
- 488 .LFE130:
- 490 .section .text.HAL_DMA_DeInit,"ax",%progbits
- 491 .align 1
- 492 .global HAL_DMA_DeInit
- 493 .syntax unified
- 494 .thumb
- 495 .thumb_func
- 496 .fpu fpv4-sp-d16
- 498 HAL_DMA_DeInit:
- 499 .LFB131:
- 311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_Base_Registers *regs;
- 500 .loc 1 311 0
- 501 .cfi_startproc
- 502 @ args = 0, pretend = 0, frame = 0
- 503 @ frame_needed = 0, uses_anonymous_args = 0
- 504 .LVL67:
- 315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 505 .loc 1 315 0
- 506 0000 0028 cmp r0, #0
- 507 0002 2ED0 beq .L50
- 311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_Base_Registers *regs;
- 508 .loc 1 311 0
- 509 0004 38B5 push {r3, r4, r5, lr}
- 510 .LCFI4:
- 511 .cfi_def_cfa_offset 16
- 512 .cfi_offset 3, -16
- 513 .cfi_offset 4, -12
- 514 .cfi_offset 5, -8
- 515 .cfi_offset 14, -4
- 516 0006 0446 mov r4, r0
- 321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 517 .loc 1 321 0
- 518 0008 90F83530 ldrb r3, [r0, #53] @ zero_extendqisi2
- 519 000c DBB2 uxtb r3, r3
- 520 000e 022B cmp r3, #2
- 521 0010 01D1 bne .L56
- 324:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 522 .loc 1 324 0
- 523 0012 0220 movs r0, #2
- 524 .LVL68:
- 375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 525 .loc 1 375 0
- 526 0014 38BD pop {r3, r4, r5, pc}
- 527 .LVL69:
- 528 .L56:
- ARM GAS /tmp/ccwgRvGR.s page 34
- 331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 529 .loc 1 331 0
- 530 0016 0268 ldr r2, [r0]
- 531 0018 1368 ldr r3, [r2]
- 532 001a 23F00103 bic r3, r3, #1
- 533 001e 1360 str r3, [r2]
- 334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 534 .loc 1 334 0
- 535 0020 0368 ldr r3, [r0]
- 536 0022 0025 movs r5, #0
- 537 0024 1D60 str r5, [r3]
- 337:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 538 .loc 1 337 0
- 539 0026 0368 ldr r3, [r0]
- 540 0028 5D60 str r5, [r3, #4]
- 340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 541 .loc 1 340 0
- 542 002a 0368 ldr r3, [r0]
- 543 002c 9D60 str r5, [r3, #8]
- 343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 544 .loc 1 343 0
- 545 002e 0368 ldr r3, [r0]
- 546 0030 DD60 str r5, [r3, #12]
- 346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 547 .loc 1 346 0
- 548 0032 0368 ldr r3, [r0]
- 549 0034 1D61 str r5, [r3, #16]
- 349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 550 .loc 1 349 0
- 551 0036 0368 ldr r3, [r0]
- 552 0038 2122 movs r2, #33
- 553 003a 5A61 str r2, [r3, #20]
- 352:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 554 .loc 1 352 0
- 555 003c FFF7FEFF bl DMA_CalcBaseAndBitshift
- 556 .LVL70:
- 355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferHalfCpltCallback = NULL;
- 557 .loc 1 355 0
- 558 0040 E563 str r5, [r4, #60]
- 356:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1CpltCallback = NULL;
- 559 .loc 1 356 0
- 560 0042 2564 str r5, [r4, #64]
- 357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1HalfCpltCallback = NULL;
- 561 .loc 1 357 0
- 562 0044 6564 str r5, [r4, #68]
- 358:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferErrorCallback = NULL;
- 563 .loc 1 358 0
- 564 0046 A564 str r5, [r4, #72]
- 359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferAbortCallback = NULL;
- 565 .loc 1 359 0
- 566 0048 E564 str r5, [r4, #76]
- 360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 567 .loc 1 360 0
- 568 004a 2565 str r5, [r4, #80]
- 363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 569 .loc 1 363 0
- 570 004c E26D ldr r2, [r4, #92]
- ARM GAS /tmp/ccwgRvGR.s page 35
- 571 004e 3F23 movs r3, #63
- 572 0050 9340 lsls r3, r3, r2
- 573 0052 8360 str r3, [r0, #8]
- 366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 574 .loc 1 366 0
- 575 0054 6565 str r5, [r4, #84]
- 369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 576 .loc 1 369 0
- 577 0056 84F83550 strb r5, [r4, #53]
- 372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 578 .loc 1 372 0
- 579 005a 84F83450 strb r5, [r4, #52]
- 374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 580 .loc 1 374 0
- 581 005e 2846 mov r0, r5
- 582 .LVL71:
- 583 0060 38BD pop {r3, r4, r5, pc}
- 584 .LVL72:
- 585 .L50:
- 586 .LCFI5:
- 587 .cfi_def_cfa_offset 0
- 588 .cfi_restore 3
- 589 .cfi_restore 4
- 590 .cfi_restore 5
- 591 .cfi_restore 14
- 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 592 .loc 1 317 0
- 593 0062 0120 movs r0, #1
- 594 .LVL73:
- 595 0064 7047 bx lr
- 596 .cfi_endproc
- 597 .LFE131:
- 599 .section .text.HAL_DMA_Start,"ax",%progbits
- 600 .align 1
- 601 .global HAL_DMA_Start
- 602 .syntax unified
- 603 .thumb
- 604 .thumb_func
- 605 .fpu fpv4-sp-d16
- 607 HAL_DMA_Start:
- 608 .LFB132:
- 409:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK;
- 609 .loc 1 409 0
- 610 .cfi_startproc
- 611 @ args = 0, pretend = 0, frame = 0
- 612 @ frame_needed = 0, uses_anonymous_args = 0
- 613 .LVL74:
- 614 0000 38B5 push {r3, r4, r5, lr}
- 615 .LCFI6:
- 616 .cfi_def_cfa_offset 16
- 617 .cfi_offset 3, -16
- 618 .cfi_offset 4, -12
- 619 .cfi_offset 5, -8
- 620 .cfi_offset 14, -4
- 621 .LVL75:
- 416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 622 .loc 1 416 0
- ARM GAS /tmp/ccwgRvGR.s page 36
- 623 0002 90F83440 ldrb r4, [r0, #52] @ zero_extendqisi2
- 624 0006 012C cmp r4, #1
- 625 0008 1CD0 beq .L60
- 416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 626 .loc 1 416 0 is_stmt 0 discriminator 2
- 627 000a 0124 movs r4, #1
- 628 000c 80F83440 strb r4, [r0, #52]
- 418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 629 .loc 1 418 0 is_stmt 1 discriminator 2
- 630 0010 90F83540 ldrb r4, [r0, #53] @ zero_extendqisi2
- 631 0014 E4B2 uxtb r4, r4
- 632 0016 012C cmp r4, #1
- 633 0018 04D0 beq .L62
- 435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 634 .loc 1 435 0
- 635 001a 0023 movs r3, #0
- 636 .LVL76:
- 637 001c 80F83430 strb r3, [r0, #52]
- 638 .LVL77:
- 438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 639 .loc 1 438 0
- 640 0020 0220 movs r0, #2
- 641 .LVL78:
- 642 0022 38BD pop {r3, r4, r5, pc}
- 643 .LVL79:
- 644 .L62:
- 645 0024 0546 mov r5, r0
- 421:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 646 .loc 1 421 0
- 647 0026 0220 movs r0, #2
- 648 .LVL80:
- 649 0028 85F83500 strb r0, [r5, #53]
- 424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 650 .loc 1 424 0
- 651 002c 0024 movs r4, #0
- 652 002e 6C65 str r4, [r5, #84]
- 427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 653 .loc 1 427 0
- 654 0030 2846 mov r0, r5
- 655 0032 FFF7FEFF bl DMA_SetConfig
- 656 .LVL81:
- 430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 657 .loc 1 430 0
- 658 0036 2A68 ldr r2, [r5]
- 659 0038 1368 ldr r3, [r2]
- 660 003a 43F00103 orr r3, r3, #1
- 661 003e 1360 str r3, [r2]
- 410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 662 .loc 1 410 0
- 663 0040 2046 mov r0, r4
- 664 0042 38BD pop {r3, r4, r5, pc}
- 665 .LVL82:
- 666 .L60:
- 416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 667 .loc 1 416 0
- 668 0044 0220 movs r0, #2
- 669 .LVL83:
- ARM GAS /tmp/ccwgRvGR.s page 37
- 441:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 670 .loc 1 441 0
- 671 0046 38BD pop {r3, r4, r5, pc}
- 672 .cfi_endproc
- 673 .LFE132:
- 675 .section .text.HAL_DMA_Start_IT,"ax",%progbits
- 676 .align 1
- 677 .global HAL_DMA_Start_IT
- 678 .syntax unified
- 679 .thumb
- 680 .thumb_func
- 681 .fpu fpv4-sp-d16
- 683 HAL_DMA_Start_IT:
- 684 .LFB133:
- 453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK;
- 685 .loc 1 453 0
- 686 .cfi_startproc
- 687 @ args = 0, pretend = 0, frame = 0
- 688 @ frame_needed = 0, uses_anonymous_args = 0
- 689 .LVL84:
- 690 0000 38B5 push {r3, r4, r5, lr}
- 691 .LCFI7:
- 692 .cfi_def_cfa_offset 16
- 693 .cfi_offset 3, -16
- 694 .cfi_offset 4, -12
- 695 .cfi_offset 5, -8
- 696 .cfi_offset 14, -4
- 697 .LVL85:
- 457:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 698 .loc 1 457 0
- 699 0002 856D ldr r5, [r0, #88]
- 700 .LVL86:
- 463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 701 .loc 1 463 0
- 702 0004 90F83440 ldrb r4, [r0, #52] @ zero_extendqisi2
- 703 0008 012C cmp r4, #1
- 704 000a 31D0 beq .L67
- 463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 705 .loc 1 463 0 is_stmt 0 discriminator 2
- 706 000c 0124 movs r4, #1
- 707 000e 80F83440 strb r4, [r0, #52]
- 465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 708 .loc 1 465 0 is_stmt 1 discriminator 2
- 709 0012 90F83540 ldrb r4, [r0, #53] @ zero_extendqisi2
- 710 0016 E4B2 uxtb r4, r4
- 711 0018 012C cmp r4, #1
- 712 001a 04D0 beq .L69
- 494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 713 .loc 1 494 0
- 714 001c 0023 movs r3, #0
- 715 .LVL87:
- 716 001e 80F83430 strb r3, [r0, #52]
- 717 .LVL88:
- 497:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 718 .loc 1 497 0
- 719 0022 0220 movs r0, #2
- 720 .LVL89:
- ARM GAS /tmp/ccwgRvGR.s page 38
- 721 0024 38BD pop {r3, r4, r5, pc}
- 722 .LVL90:
- 723 .L69:
- 724 0026 0446 mov r4, r0
- 468:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 725 .loc 1 468 0
- 726 0028 0220 movs r0, #2
- 727 .LVL91:
- 728 002a 84F83500 strb r0, [r4, #53]
- 471:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 729 .loc 1 471 0
- 730 002e 0020 movs r0, #0
- 731 0030 6065 str r0, [r4, #84]
- 474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 732 .loc 1 474 0
- 733 0032 2046 mov r0, r4
- 734 0034 FFF7FEFF bl DMA_SetConfig
- 735 .LVL92:
- 477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 736 .loc 1 477 0
- 737 0038 E26D ldr r2, [r4, #92]
- 738 003a 3F23 movs r3, #63
- 739 003c 9340 lsls r3, r3, r2
- 740 003e AB60 str r3, [r5, #8]
- 480:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->FCR |= DMA_IT_FE;
- 741 .loc 1 480 0
- 742 0040 2268 ldr r2, [r4]
- 743 0042 1368 ldr r3, [r2]
- 744 0044 43F01603 orr r3, r3, #22
- 745 0048 1360 str r3, [r2]
- 481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 746 .loc 1 481 0
- 747 004a 2268 ldr r2, [r4]
- 748 004c 5369 ldr r3, [r2, #20]
- 749 004e 43F08003 orr r3, r3, #128
- 750 0052 5361 str r3, [r2, #20]
- 483:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 751 .loc 1 483 0
- 752 0054 236C ldr r3, [r4, #64]
- 753 0056 23B1 cbz r3, .L66
- 485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 754 .loc 1 485 0
- 755 0058 2268 ldr r2, [r4]
- 756 005a 1368 ldr r3, [r2]
- 757 005c 43F00803 orr r3, r3, #8
- 758 0060 1360 str r3, [r2]
- 759 .L66:
- 489:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 760 .loc 1 489 0
- 761 0062 2268 ldr r2, [r4]
- 762 0064 1368 ldr r3, [r2]
- 763 0066 43F00103 orr r3, r3, #1
- 764 006a 1360 str r3, [r2]
- 454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 765 .loc 1 454 0
- 766 006c 0020 movs r0, #0
- 767 006e 38BD pop {r3, r4, r5, pc}
- ARM GAS /tmp/ccwgRvGR.s page 39
- 768 .LVL93:
- 769 .L67:
- 463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 770 .loc 1 463 0
- 771 0070 0220 movs r0, #2
- 772 .LVL94:
- 501:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 773 .loc 1 501 0
- 774 0072 38BD pop {r3, r4, r5, pc}
- 775 .cfi_endproc
- 776 .LFE133:
- 778 .section .text.HAL_DMA_Abort,"ax",%progbits
- 779 .align 1
- 780 .global HAL_DMA_Abort
- 781 .syntax unified
- 782 .thumb
- 783 .thumb_func
- 784 .fpu fpv4-sp-d16
- 786 HAL_DMA_Abort:
- 787 .LFB134:
- 516:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* calculate DMA base and stream number */
- 788 .loc 1 516 0
- 789 .cfi_startproc
- 790 @ args = 0, pretend = 0, frame = 0
- 791 @ frame_needed = 0, uses_anonymous_args = 0
- 792 .LVL95:
- 793 0000 70B5 push {r4, r5, r6, lr}
- 794 .LCFI8:
- 795 .cfi_def_cfa_offset 16
- 796 .cfi_offset 4, -16
- 797 .cfi_offset 5, -12
- 798 .cfi_offset 6, -8
- 799 .cfi_offset 14, -4
- 800 0002 0446 mov r4, r0
- 518:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 801 .loc 1 518 0
- 802 0004 866D ldr r6, [r0, #88]
- 803 .LVL96:
- 520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 804 .loc 1 520 0
- 805 0006 FFF7FEFF bl HAL_GetTick
- 806 .LVL97:
- 522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 807 .loc 1 522 0
- 808 000a 94F83530 ldrb r3, [r4, #53] @ zero_extendqisi2
- 809 000e DBB2 uxtb r3, r3
- 810 0010 022B cmp r3, #2
- 811 0012 06D0 beq .L71
- 524:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 812 .loc 1 524 0
- 813 0014 8023 movs r3, #128
- 814 0016 6365 str r3, [r4, #84]
- 527:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 815 .loc 1 527 0
- 816 0018 0023 movs r3, #0
- 817 001a 84F83430 strb r3, [r4, #52]
- 529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- ARM GAS /tmp/ccwgRvGR.s page 40
- 818 .loc 1 529 0
- 819 001e 0120 movs r0, #1
- 820 .LVL98:
- 821 0020 70BD pop {r4, r5, r6, pc}
- 822 .LVL99:
- 823 .L71:
- 824 0022 0546 mov r5, r0
- 534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->FCR &= ~(DMA_IT_FE);
- 825 .loc 1 534 0
- 826 0024 2268 ldr r2, [r4]
- 827 0026 1368 ldr r3, [r2]
- 828 0028 23F01603 bic r3, r3, #22
- 829 002c 1360 str r3, [r2]
- 535:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 830 .loc 1 535 0
- 831 002e 2268 ldr r2, [r4]
- 832 0030 5369 ldr r3, [r2, #20]
- 833 0032 23F08003 bic r3, r3, #128
- 834 0036 5361 str r3, [r2, #20]
- 537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 835 .loc 1 537 0
- 836 0038 236C ldr r3, [r4, #64]
- 837 003a E3B1 cbz r3, .L78
- 838 .L73:
- 539:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 839 .loc 1 539 0
- 840 003c 2268 ldr r2, [r4]
- 841 003e 1368 ldr r3, [r2]
- 842 0040 23F00803 bic r3, r3, #8
- 843 0044 1360 str r3, [r2]
- 844 .L74:
- 543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 845 .loc 1 543 0
- 846 0046 2268 ldr r2, [r4]
- 847 0048 1368 ldr r3, [r2]
- 848 004a 23F00103 bic r3, r3, #1
- 849 004e 1360 str r3, [r2]
- 850 .LVL100:
- 851 .L75:
- 546:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 852 .loc 1 546 0
- 853 0050 2368 ldr r3, [r4]
- 854 0052 1B68 ldr r3, [r3]
- 855 0054 13F0010F tst r3, #1
- 856 0058 11D0 beq .L79
- 549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 857 .loc 1 549 0
- 858 005a FFF7FEFF bl HAL_GetTick
- 859 .LVL101:
- 860 005e 401B subs r0, r0, r5
- 861 0060 0528 cmp r0, #5
- 862 0062 F5D9 bls .L75
- 552:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 863 .loc 1 552 0
- 864 0064 2023 movs r3, #32
- 865 0066 6365 str r3, [r4, #84]
- 555:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- ARM GAS /tmp/ccwgRvGR.s page 41
- 866 .loc 1 555 0
- 867 0068 0023 movs r3, #0
- 868 006a 84F83430 strb r3, [r4, #52]
- 558:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 869 .loc 1 558 0
- 870 006e 0320 movs r0, #3
- 871 0070 84F83500 strb r0, [r4, #53]
- 560:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 872 .loc 1 560 0
- 873 0074 70BD pop {r4, r5, r6, pc}
- 874 .LVL102:
- 875 .L78:
- 537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 876 .loc 1 537 0 discriminator 1
- 877 0076 A36C ldr r3, [r4, #72]
- 878 0078 002B cmp r3, #0
- 879 007a DFD1 bne .L73
- 880 007c E3E7 b .L74
- 881 .LVL103:
- 882 .L79:
- 565:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 883 .loc 1 565 0
- 884 007e E26D ldr r2, [r4, #92]
- 885 0080 3F23 movs r3, #63
- 886 0082 9340 lsls r3, r3, r2
- 887 0084 B360 str r3, [r6, #8]
- 568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 888 .loc 1 568 0
- 889 0086 0020 movs r0, #0
- 890 0088 84F83400 strb r0, [r4, #52]
- 571:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 891 .loc 1 571 0
- 892 008c 0123 movs r3, #1
- 893 008e 84F83530 strb r3, [r4, #53]
- 574:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 894 .loc 1 574 0
- 895 0092 70BD pop {r4, r5, r6, pc}
- 896 .cfi_endproc
- 897 .LFE134:
- 899 .section .text.HAL_DMA_Abort_IT,"ax",%progbits
- 900 .align 1
- 901 .global HAL_DMA_Abort_IT
- 902 .syntax unified
- 903 .thumb
- 904 .thumb_func
- 905 .fpu fpv4-sp-d16
- 907 HAL_DMA_Abort_IT:
- 908 .LFB135:
- 583:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->State != HAL_DMA_STATE_BUSY)
- 909 .loc 1 583 0
- 910 .cfi_startproc
- 911 @ args = 0, pretend = 0, frame = 0
- 912 @ frame_needed = 0, uses_anonymous_args = 0
- 913 @ link register save eliminated.
- 914 .LVL104:
- 584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 915 .loc 1 584 0
- ARM GAS /tmp/ccwgRvGR.s page 42
- 916 0000 90F83530 ldrb r3, [r0, #53] @ zero_extendqisi2
- 917 0004 DBB2 uxtb r3, r3
- 918 0006 022B cmp r3, #2
- 919 0008 03D0 beq .L81
- 586:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_ERROR;
- 920 .loc 1 586 0
- 921 000a 8023 movs r3, #128
- 922 000c 4365 str r3, [r0, #84]
- 587:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 923 .loc 1 587 0
- 924 000e 0120 movs r0, #1
- 925 .LVL105:
- 926 0010 7047 bx lr
- 927 .LVL106:
- 928 .L81:
- 592:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 929 .loc 1 592 0
- 930 0012 0523 movs r3, #5
- 931 0014 80F83530 strb r3, [r0, #53]
- 595:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 932 .loc 1 595 0
- 933 0018 0268 ldr r2, [r0]
- 934 001a 1368 ldr r3, [r2]
- 935 001c 23F00103 bic r3, r3, #1
- 936 0020 1360 str r3, [r2]
- 598:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 937 .loc 1 598 0
- 938 0022 0020 movs r0, #0
- 939 .LVL107:
- 599:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 940 .loc 1 599 0
- 941 0024 7047 bx lr
- 942 .cfi_endproc
- 943 .LFE135:
- 945 .section .text.HAL_DMA_PollForTransfer,"ax",%progbits
- 946 .align 1
- 947 .global HAL_DMA_PollForTransfer
- 948 .syntax unified
- 949 .thumb
- 950 .thumb_func
- 951 .fpu fpv4-sp-d16
- 953 HAL_DMA_PollForTransfer:
- 954 .LFB136:
- 613:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK;
- 955 .loc 1 613 0
- 956 .cfi_startproc
- 957 @ args = 0, pretend = 0, frame = 0
- 958 @ frame_needed = 0, uses_anonymous_args = 0
- 959 .LVL108:
- 960 0000 2DE9F843 push {r3, r4, r5, r6, r7, r8, r9, lr}
- 961 .LCFI9:
- 962 .cfi_def_cfa_offset 32
- 963 .cfi_offset 3, -32
- 964 .cfi_offset 4, -28
- 965 .cfi_offset 5, -24
- 966 .cfi_offset 6, -20
- 967 .cfi_offset 7, -16
- ARM GAS /tmp/ccwgRvGR.s page 43
- 968 .cfi_offset 8, -12
- 969 .cfi_offset 9, -8
- 970 .cfi_offset 14, -4
- 971 0004 0446 mov r4, r0
- 972 0006 8946 mov r9, r1
- 973 0008 1546 mov r5, r2
- 974 .LVL109:
- 616:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmpisr;
- 975 .loc 1 616 0
- 976 000a FFF7FEFF bl HAL_GetTick
- 977 .LVL110:
- 622:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 978 .loc 1 622 0
- 979 000e 94F83530 ldrb r3, [r4, #53] @ zero_extendqisi2
- 980 0012 DBB2 uxtb r3, r3
- 981 0014 022B cmp r3, #2
- 982 0016 07D0 beq .L84
- 625:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma);
- 983 .loc 1 625 0
- 984 0018 8023 movs r3, #128
- 985 001a 6365 str r3, [r4, #84]
- 626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_ERROR;
- 986 .loc 1 626 0
- 987 001c 0023 movs r3, #0
- 988 001e 84F83430 strb r3, [r4, #52]
- 627:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 989 .loc 1 627 0
- 990 0022 0120 movs r0, #1
- 991 .LVL111:
- 992 0024 BDE8F883 pop {r3, r4, r5, r6, r7, r8, r9, pc}
- 993 .LVL112:
- 994 .L84:
- 995 0028 8046 mov r8, r0
- 631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 996 .loc 1 631 0
- 997 002a 2368 ldr r3, [r4]
- 998 002c 1B68 ldr r3, [r3]
- 999 002e 13F4807F tst r3, #256
- 1000 0032 38D1 bne .L100
- 638:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1001 .loc 1 638 0
- 1002 0034 B9F1000F cmp r9, #0
- 1003 0038 3BD1 bne .L87
- 641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1004 .loc 1 641 0
- 1005 003a E36D ldr r3, [r4, #92]
- 1006 003c 2027 movs r7, #32
- 1007 003e 9F40 lsls r7, r7, r3
- 1008 .LVL113:
- 1009 .L88:
- 649:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** tmpisr = regs->ISR;
- 1010 .loc 1 649 0
- 1011 0040 A66D ldr r6, [r4, #88]
- 1012 .LVL114:
- 650:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1013 .loc 1 650 0
- 1014 0042 3368 ldr r3, [r6]
- ARM GAS /tmp/ccwgRvGR.s page 44
- 1015 .LVL115:
- 1016 .L89:
- 652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1017 .loc 1 652 0
- 1018 0044 1F42 tst r7, r3
- 1019 0046 43D1 bne .L95
- 652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1020 .loc 1 652 0 is_stmt 0 discriminator 1
- 1021 0048 636D ldr r3, [r4, #84]
- 1022 .LVL116:
- 1023 004a 13F0010F tst r3, #1
- 1024 004e 3FD1 bne .L95
- 655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1025 .loc 1 655 0 is_stmt 1
- 1026 0050 B5F1FF3F cmp r5, #-1
- 1027 0054 07D0 beq .L90
- 657:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1028 .loc 1 657 0
- 1029 0056 002D cmp r5, #0
- 1030 0058 2FD0 beq .L91
- 657:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1031 .loc 1 657 0 is_stmt 0 discriminator 1
- 1032 005a FFF7FEFF bl HAL_GetTick
- 1033 .LVL117:
- 1034 005e A0EB0800 sub r0, r0, r8
- 1035 0062 8542 cmp r5, r0
- 1036 0064 29D3 bcc .L91
- 1037 .L90:
- 673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1038 .loc 1 673 0 is_stmt 1
- 1039 0066 3368 ldr r3, [r6]
- 1040 .LVL118:
- 675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1041 .loc 1 675 0
- 1042 0068 E16D ldr r1, [r4, #92]
- 1043 006a 0822 movs r2, #8
- 1044 006c 8A40 lsls r2, r2, r1
- 1045 006e 1342 tst r3, r2
- 1046 0070 04D0 beq .L92
- 678:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1047 .loc 1 678 0
- 1048 0072 616D ldr r1, [r4, #84]
- 1049 0074 41F00101 orr r1, r1, #1
- 1050 0078 6165 str r1, [r4, #84]
- 681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1051 .loc 1 681 0
- 1052 007a B260 str r2, [r6, #8]
- 1053 .L92:
- 684:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1054 .loc 1 684 0
- 1055 007c E16D ldr r1, [r4, #92]
- 1056 007e 0122 movs r2, #1
- 1057 0080 8A40 lsls r2, r2, r1
- 1058 0082 1342 tst r3, r2
- 1059 0084 04D0 beq .L93
- 687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1060 .loc 1 687 0
- ARM GAS /tmp/ccwgRvGR.s page 45
- 1061 0086 616D ldr r1, [r4, #84]
- 1062 0088 41F00201 orr r1, r1, #2
- 1063 008c 6165 str r1, [r4, #84]
- 690:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1064 .loc 1 690 0
- 1065 008e B260 str r2, [r6, #8]
- 1066 .L93:
- 693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1067 .loc 1 693 0
- 1068 0090 E16D ldr r1, [r4, #92]
- 1069 0092 0422 movs r2, #4
- 1070 0094 8A40 lsls r2, r2, r1
- 1071 0096 1342 tst r3, r2
- 1072 0098 D4D0 beq .L89
- 696:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1073 .loc 1 696 0
- 1074 009a 616D ldr r1, [r4, #84]
- 1075 009c 41F00401 orr r1, r1, #4
- 1076 00a0 6165 str r1, [r4, #84]
- 699:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1077 .loc 1 699 0
- 1078 00a2 B260 str r2, [r6, #8]
- 1079 00a4 CEE7 b .L89
- 1080 .LVL119:
- 1081 .L100:
- 633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_ERROR;
- 1082 .loc 1 633 0
- 1083 00a6 4FF48073 mov r3, #256
- 1084 00aa 6365 str r3, [r4, #84]
- 634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1085 .loc 1 634 0
- 1086 00ac 0120 movs r0, #1
- 1087 .LVL120:
- 1088 00ae BDE8F883 pop {r3, r4, r5, r6, r7, r8, r9, pc}
- 1089 .LVL121:
- 1090 .L87:
- 646:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1091 .loc 1 646 0
- 1092 00b2 E36D ldr r3, [r4, #92]
- 1093 00b4 1027 movs r7, #16
- 1094 00b6 9F40 lsls r7, r7, r3
- 1095 .LVL122:
- 1096 00b8 C2E7 b .L88
- 1097 .LVL123:
- 1098 .L91:
- 660:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1099 .loc 1 660 0
- 1100 00ba 2023 movs r3, #32
- 1101 00bc 6365 str r3, [r4, #84]
- 663:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1102 .loc 1 663 0
- 1103 00be 0023 movs r3, #0
- 1104 00c0 84F83430 strb r3, [r4, #52]
- 666:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1105 .loc 1 666 0
- 1106 00c4 0123 movs r3, #1
- 1107 00c6 84F83530 strb r3, [r4, #53]
- ARM GAS /tmp/ccwgRvGR.s page 46
- 668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1108 .loc 1 668 0
- 1109 00ca 0320 movs r0, #3
- 1110 00cc BDE8F883 pop {r3, r4, r5, r6, r7, r8, r9, pc}
- 1111 .LVL124:
- 1112 .L95:
- 703:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1113 .loc 1 703 0
- 1114 00d0 636D ldr r3, [r4, #84]
- 1115 00d2 1BB1 cbz r3, .L97
- 705:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1116 .loc 1 705 0
- 1117 00d4 636D ldr r3, [r4, #84]
- 1118 00d6 13F0010F tst r3, #1
- 1119 00da 09D1 bne .L101
- 1120 .L97:
- 723:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1121 .loc 1 723 0
- 1122 00dc B9F1000F cmp r9, #0
- 1123 00e0 15D0 beq .L102
- 736:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1124 .loc 1 736 0
- 1125 00e2 E26D ldr r2, [r4, #92]
- 1126 00e4 1023 movs r3, #16
- 1127 00e6 9340 lsls r3, r3, r2
- 1128 00e8 B360 str r3, [r6, #8]
- 739:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1129 .loc 1 739 0
- 1130 00ea 0020 movs r0, #0
- 740:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1131 .loc 1 740 0
- 1132 00ec BDE8F883 pop {r3, r4, r5, r6, r7, r8, r9, pc}
- 1133 .LVL125:
- 1134 .L101:
- 707:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1135 .loc 1 707 0
- 1136 00f0 2046 mov r0, r4
- 1137 00f2 FFF7FEFF bl HAL_DMA_Abort
- 1138 .LVL126:
- 710:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1139 .loc 1 710 0
- 1140 00f6 E26D ldr r2, [r4, #92]
- 1141 00f8 3023 movs r3, #48
- 1142 00fa 9340 lsls r3, r3, r2
- 1143 00fc B360 str r3, [r6, #8]
- 713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1144 .loc 1 713 0
- 1145 00fe 0023 movs r3, #0
- 1146 0100 84F83430 strb r3, [r4, #52]
- 716:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1147 .loc 1 716 0
- 1148 0104 0120 movs r0, #1
- 1149 0106 84F83500 strb r0, [r4, #53]
- 718:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1150 .loc 1 718 0
- 1151 010a BDE8F883 pop {r3, r4, r5, r6, r7, r8, r9, pc}
- 1152 .LVL127:
- ARM GAS /tmp/ccwgRvGR.s page 47
- 1153 .L102:
- 726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1154 .loc 1 726 0
- 1155 010e E26D ldr r2, [r4, #92]
- 1156 0110 3023 movs r3, #48
- 1157 0112 9340 lsls r3, r3, r2
- 1158 0114 B360 str r3, [r6, #8]
- 729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1159 .loc 1 729 0
- 1160 0116 0020 movs r0, #0
- 1161 0118 84F83400 strb r0, [r4, #52]
- 731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1162 .loc 1 731 0
- 1163 011c 0123 movs r3, #1
- 1164 011e 84F83530 strb r3, [r4, #53]
- 1165 0122 BDE8F883 pop {r3, r4, r5, r6, r7, r8, r9, pc}
- 1166 .cfi_endproc
- 1167 .LFE136:
- 1169 .section .text.HAL_DMA_IRQHandler,"ax",%progbits
- 1170 .align 1
- 1171 .global HAL_DMA_IRQHandler
- 1172 .syntax unified
- 1173 .thumb
- 1174 .thumb_func
- 1175 .fpu fpv4-sp-d16
- 1177 HAL_DMA_IRQHandler:
- 1178 .LFB137:
- 749:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmpisr;
- 1179 .loc 1 749 0
- 1180 .cfi_startproc
- 1181 @ args = 0, pretend = 0, frame = 8
- 1182 @ frame_needed = 0, uses_anonymous_args = 0
- 1183 .LVL128:
- 1184 0000 F0B5 push {r4, r5, r6, r7, lr}
- 1185 .LCFI10:
- 1186 .cfi_def_cfa_offset 20
- 1187 .cfi_offset 4, -20
- 1188 .cfi_offset 5, -16
- 1189 .cfi_offset 6, -12
- 1190 .cfi_offset 7, -8
- 1191 .cfi_offset 14, -4
- 1192 0002 83B0 sub sp, sp, #12
- 1193 .LCFI11:
- 1194 .cfi_def_cfa_offset 32
- 1195 0004 0446 mov r4, r0
- 751:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t timeout = SystemCoreClock / 9600U;
- 1196 .loc 1 751 0
- 1197 0006 0023 movs r3, #0
- 1198 0008 0193 str r3, [sp, #4]
- 752:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1199 .loc 1 752 0
- 1200 000a 724B ldr r3, .L125
- 1201 000c 1D68 ldr r5, [r3]
- 1202 000e 724B ldr r3, .L125+4
- 1203 0010 A3FB0535 umull r3, r5, r3, r5
- 1204 0014 AD0A lsrs r5, r5, #10
- 1205 .LVL129:
- ARM GAS /tmp/ccwgRvGR.s page 48
- 755:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1206 .loc 1 755 0
- 1207 0016 876D ldr r7, [r0, #88]
- 1208 .LVL130:
- 757:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1209 .loc 1 757 0
- 1210 0018 3E68 ldr r6, [r7]
- 1211 .LVL131:
- 760:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1212 .loc 1 760 0
- 1213 001a C26D ldr r2, [r0, #92]
- 1214 001c 0823 movs r3, #8
- 1215 001e 9340 lsls r3, r3, r2
- 1216 0020 1E42 tst r6, r3
- 1217 0022 10D0 beq .L104
- 762:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1218 .loc 1 762 0
- 1219 0024 0368 ldr r3, [r0]
- 1220 0026 1A68 ldr r2, [r3]
- 1221 0028 12F0040F tst r2, #4
- 1222 002c 0BD0 beq .L104
- 765:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1223 .loc 1 765 0
- 1224 002e 1A68 ldr r2, [r3]
- 1225 0030 22F00402 bic r2, r2, #4
- 1226 0034 1A60 str r2, [r3]
- 768:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1227 .loc 1 768 0
- 1228 0036 C26D ldr r2, [r0, #92]
- 1229 0038 0823 movs r3, #8
- 1230 003a 9340 lsls r3, r3, r2
- 1231 003c BB60 str r3, [r7, #8]
- 771:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1232 .loc 1 771 0
- 1233 003e 436D ldr r3, [r0, #84]
- 1234 0040 43F00103 orr r3, r3, #1
- 1235 0044 4365 str r3, [r0, #84]
- 1236 .L104:
- 775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1237 .loc 1 775 0
- 1238 0046 E26D ldr r2, [r4, #92]
- 1239 0048 0123 movs r3, #1
- 1240 004a 9340 lsls r3, r3, r2
- 1241 004c 1E42 tst r6, r3
- 1242 004e 09D0 beq .L105
- 777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1243 .loc 1 777 0
- 1244 0050 2268 ldr r2, [r4]
- 1245 0052 5269 ldr r2, [r2, #20]
- 1246 0054 12F0800F tst r2, #128
- 1247 0058 04D0 beq .L105
- 780:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1248 .loc 1 780 0
- 1249 005a BB60 str r3, [r7, #8]
- 783:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1250 .loc 1 783 0
- 1251 005c 636D ldr r3, [r4, #84]
- ARM GAS /tmp/ccwgRvGR.s page 49
- 1252 005e 43F00203 orr r3, r3, #2
- 1253 0062 6365 str r3, [r4, #84]
- 1254 .L105:
- 787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1255 .loc 1 787 0
- 1256 0064 E26D ldr r2, [r4, #92]
- 1257 0066 0423 movs r3, #4
- 1258 0068 9340 lsls r3, r3, r2
- 1259 006a 1E42 tst r6, r3
- 1260 006c 09D0 beq .L106
- 789:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1261 .loc 1 789 0
- 1262 006e 2268 ldr r2, [r4]
- 1263 0070 1268 ldr r2, [r2]
- 1264 0072 12F0020F tst r2, #2
- 1265 0076 04D0 beq .L106
- 792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1266 .loc 1 792 0
- 1267 0078 BB60 str r3, [r7, #8]
- 795:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1268 .loc 1 795 0
- 1269 007a 636D ldr r3, [r4, #84]
- 1270 007c 43F00403 orr r3, r3, #4
- 1271 0080 6365 str r3, [r4, #84]
- 1272 .L106:
- 799:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1273 .loc 1 799 0
- 1274 0082 E26D ldr r2, [r4, #92]
- 1275 0084 1023 movs r3, #16
- 1276 0086 9340 lsls r3, r3, r2
- 1277 0088 1E42 tst r6, r3
- 1278 008a 24D0 beq .L107
- 801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1279 .loc 1 801 0
- 1280 008c 2268 ldr r2, [r4]
- 1281 008e 1268 ldr r2, [r2]
- 1282 0090 12F0080F tst r2, #8
- 1283 0094 1FD0 beq .L107
- 804:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1284 .loc 1 804 0
- 1285 0096 BB60 str r3, [r7, #8]
- 807:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1286 .loc 1 807 0
- 1287 0098 2368 ldr r3, [r4]
- 1288 009a 1A68 ldr r2, [r3]
- 1289 009c 12F4802F tst r2, #262144
- 1290 00a0 0DD0 beq .L108
- 810:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1291 .loc 1 810 0
- 1292 00a2 1B68 ldr r3, [r3]
- 1293 00a4 13F4002F tst r3, #524288
- 1294 00a8 04D1 bne .L109
- 812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1295 .loc 1 812 0
- 1296 00aa 236C ldr r3, [r4, #64]
- 1297 00ac 9BB1 cbz r3, .L107
- 815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- ARM GAS /tmp/ccwgRvGR.s page 50
- 1298 .loc 1 815 0
- 1299 00ae 2046 mov r0, r4
- 1300 .LVL132:
- 1301 00b0 9847 blx r3
- 1302 .LVL133:
- 1303 00b2 10E0 b .L107
- 1304 .LVL134:
- 1305 .L109:
- 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1306 .loc 1 821 0
- 1307 00b4 A36C ldr r3, [r4, #72]
- 1308 00b6 73B1 cbz r3, .L107
- 824:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1309 .loc 1 824 0
- 1310 00b8 2046 mov r0, r4
- 1311 .LVL135:
- 1312 00ba 9847 blx r3
- 1313 .LVL136:
- 1314 00bc 0BE0 b .L107
- 1315 .LVL137:
- 1316 .L108:
- 831:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1317 .loc 1 831 0
- 1318 00be 1A68 ldr r2, [r3]
- 1319 00c0 12F4807F tst r2, #256
- 1320 00c4 03D1 bne .L110
- 834:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1321 .loc 1 834 0
- 1322 00c6 1A68 ldr r2, [r3]
- 1323 00c8 22F00802 bic r2, r2, #8
- 1324 00cc 1A60 str r2, [r3]
- 1325 .L110:
- 837:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1326 .loc 1 837 0
- 1327 00ce 236C ldr r3, [r4, #64]
- 1328 00d0 0BB1 cbz r3, .L107
- 840:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1329 .loc 1 840 0
- 1330 00d2 2046 mov r0, r4
- 1331 .LVL138:
- 1332 00d4 9847 blx r3
- 1333 .LVL139:
- 1334 .L107:
- 846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1335 .loc 1 846 0
- 1336 00d6 E26D ldr r2, [r4, #92]
- 1337 00d8 2023 movs r3, #32
- 1338 00da 9340 lsls r3, r3, r2
- 1339 00dc 1E42 tst r6, r3
- 1340 00de 55D0 beq .L111
- 848:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1341 .loc 1 848 0
- 1342 00e0 2268 ldr r2, [r4]
- 1343 00e2 1268 ldr r2, [r2]
- 1344 00e4 12F0100F tst r2, #16
- 1345 00e8 50D0 beq .L111
- 851:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- ARM GAS /tmp/ccwgRvGR.s page 51
- 1346 .loc 1 851 0
- 1347 00ea BB60 str r3, [r7, #8]
- 853:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1348 .loc 1 853 0
- 1349 00ec 94F83530 ldrb r3, [r4, #53] @ zero_extendqisi2
- 1350 00f0 DBB2 uxtb r3, r3
- 1351 00f2 052B cmp r3, #5
- 1352 00f4 0ED0 beq .L123
- 880:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1353 .loc 1 880 0
- 1354 00f6 2368 ldr r3, [r4]
- 1355 00f8 1A68 ldr r2, [r3]
- 1356 00fa 12F4802F tst r2, #262144
- 1357 00fe 33D0 beq .L116
- 883:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1358 .loc 1 883 0
- 1359 0100 1B68 ldr r3, [r3]
- 1360 0102 13F4002F tst r3, #524288
- 1361 0106 2AD1 bne .L117
- 885:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1362 .loc 1 885 0
- 1363 0108 636C ldr r3, [r4, #68]
- 1364 010a 002B cmp r3, #0
- 1365 010c 3ED0 beq .L111
- 888:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1366 .loc 1 888 0
- 1367 010e 2046 mov r0, r4
- 1368 0110 9847 blx r3
- 1369 .LVL140:
- 1370 0112 3BE0 b .L111
- 1371 .L123:
- 856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->FCR &= ~(DMA_IT_FE);
- 1372 .loc 1 856 0
- 1373 0114 2268 ldr r2, [r4]
- 1374 0116 1368 ldr r3, [r2]
- 1375 0118 23F01603 bic r3, r3, #22
- 1376 011c 1360 str r3, [r2]
- 857:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1377 .loc 1 857 0
- 1378 011e 2268 ldr r2, [r4]
- 1379 0120 5369 ldr r3, [r2, #20]
- 1380 0122 23F08003 bic r3, r3, #128
- 1381 0126 5361 str r3, [r2, #20]
- 859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1382 .loc 1 859 0
- 1383 0128 236C ldr r3, [r4, #64]
- 1384 012a A3B1 cbz r3, .L124
- 1385 .L113:
- 861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1386 .loc 1 861 0
- 1387 012c 2268 ldr r2, [r4]
- 1388 012e 1368 ldr r3, [r2]
- 1389 0130 23F00803 bic r3, r3, #8
- 1390 0134 1360 str r3, [r2]
- 1391 .L114:
- 865:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1392 .loc 1 865 0
- ARM GAS /tmp/ccwgRvGR.s page 52
- 1393 0136 E26D ldr r2, [r4, #92]
- 1394 0138 3F23 movs r3, #63
- 1395 013a 9340 lsls r3, r3, r2
- 1396 013c BB60 str r3, [r7, #8]
- 868:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1397 .loc 1 868 0
- 1398 013e 0023 movs r3, #0
- 1399 0140 84F83430 strb r3, [r4, #52]
- 871:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1400 .loc 1 871 0
- 1401 0144 0123 movs r3, #1
- 1402 0146 84F83530 strb r3, [r4, #53]
- 873:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1403 .loc 1 873 0
- 1404 014a 236D ldr r3, [r4, #80]
- 1405 014c 002B cmp r3, #0
- 1406 014e 3FD0 beq .L103
- 875:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1407 .loc 1 875 0
- 1408 0150 2046 mov r0, r4
- 1409 0152 9847 blx r3
- 1410 .LVL141:
- 1411 0154 3CE0 b .L103
- 1412 .L124:
- 859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1413 .loc 1 859 0 discriminator 1
- 1414 0156 A36C ldr r3, [r4, #72]
- 1415 0158 002B cmp r3, #0
- 1416 015a E7D1 bne .L113
- 1417 015c EBE7 b .L114
- 1418 .L117:
- 894:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1419 .loc 1 894 0
- 1420 015e E36B ldr r3, [r4, #60]
- 1421 0160 A3B1 cbz r3, .L111
- 897:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1422 .loc 1 897 0
- 1423 0162 2046 mov r0, r4
- 1424 0164 9847 blx r3
- 1425 .LVL142:
- 1426 0166 11E0 b .L111
- 1427 .L116:
- 904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1428 .loc 1 904 0
- 1429 0168 1A68 ldr r2, [r3]
- 1430 016a 12F4807F tst r2, #256
- 1431 016e 09D1 bne .L118
- 907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1432 .loc 1 907 0
- 1433 0170 1A68 ldr r2, [r3]
- 1434 0172 22F01002 bic r2, r2, #16
- 1435 0176 1A60 str r2, [r3]
- 910:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1436 .loc 1 910 0
- 1437 0178 0023 movs r3, #0
- 1438 017a 84F83430 strb r3, [r4, #52]
- 913:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- ARM GAS /tmp/ccwgRvGR.s page 53
- 1439 .loc 1 913 0
- 1440 017e 0123 movs r3, #1
- 1441 0180 84F83530 strb r3, [r4, #53]
- 1442 .L118:
- 916:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1443 .loc 1 916 0
- 1444 0184 E36B ldr r3, [r4, #60]
- 1445 0186 0BB1 cbz r3, .L111
- 919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1446 .loc 1 919 0
- 1447 0188 2046 mov r0, r4
- 1448 018a 9847 blx r3
- 1449 .LVL143:
- 1450 .L111:
- 926:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1451 .loc 1 926 0
- 1452 018c 636D ldr r3, [r4, #84]
- 1453 018e FBB1 cbz r3, .L103
- 928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1454 .loc 1 928 0
- 1455 0190 636D ldr r3, [r4, #84]
- 1456 0192 13F0010F tst r3, #1
- 1457 0196 17D0 beq .L119
- 930:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1458 .loc 1 930 0
- 1459 0198 0523 movs r3, #5
- 1460 019a 84F83530 strb r3, [r4, #53]
- 933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1461 .loc 1 933 0
- 1462 019e 2268 ldr r2, [r4]
- 1463 01a0 1368 ldr r3, [r2]
- 1464 01a2 23F00103 bic r3, r3, #1
- 1465 01a6 1360 str r3, [r2]
- 1466 .L121:
- 937:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1467 .loc 1 937 0
- 1468 01a8 019B ldr r3, [sp, #4]
- 1469 01aa 0133 adds r3, r3, #1
- 1470 01ac 0193 str r3, [sp, #4]
- 1471 01ae 9D42 cmp r5, r3
- 1472 01b0 04D3 bcc .L120
- 942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1473 .loc 1 942 0
- 1474 01b2 2368 ldr r3, [r4]
- 1475 01b4 1B68 ldr r3, [r3]
- 1476 01b6 13F0010F tst r3, #1
- 1477 01ba F5D1 bne .L121
- 1478 .L120:
- 945:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1479 .loc 1 945 0
- 1480 01bc 0023 movs r3, #0
- 1481 01be 84F83430 strb r3, [r4, #52]
- 948:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1482 .loc 1 948 0
- 1483 01c2 0123 movs r3, #1
- 1484 01c4 84F83530 strb r3, [r4, #53]
- 1485 .L119:
- ARM GAS /tmp/ccwgRvGR.s page 54
- 951:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1486 .loc 1 951 0
- 1487 01c8 E36C ldr r3, [r4, #76]
- 1488 01ca 0BB1 cbz r3, .L103
- 954:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1489 .loc 1 954 0
- 1490 01cc 2046 mov r0, r4
- 1491 01ce 9847 blx r3
- 1492 .LVL144:
- 1493 .L103:
- 957:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1494 .loc 1 957 0
- 1495 01d0 03B0 add sp, sp, #12
- 1496 .LCFI12:
- 1497 .cfi_def_cfa_offset 20
- 1498 @ sp needed
- 1499 01d2 F0BD pop {r4, r5, r6, r7, pc}
- 1500 .LVL145:
- 1501 .L126:
- 1502 .align 2
- 1503 .L125:
- 1504 01d4 00000000 .word SystemCoreClock
- 1505 01d8 B5814E1B .word 458129845
- 1506 .cfi_endproc
- 1507 .LFE137:
- 1509 .section .text.HAL_DMA_RegisterCallback,"ax",%progbits
- 1510 .align 1
- 1511 .global HAL_DMA_RegisterCallback
- 1512 .syntax unified
- 1513 .thumb
- 1514 .thumb_func
- 1515 .fpu fpv4-sp-d16
- 1517 HAL_DMA_RegisterCallback:
- 1518 .LFB138:
- 970:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1519 .loc 1 970 0
- 1520 .cfi_startproc
- 1521 @ args = 0, pretend = 0, frame = 0
- 1522 @ frame_needed = 0, uses_anonymous_args = 0
- 1523 @ link register save eliminated.
- 1524 .LVL146:
- 1525 0000 0346 mov r3, r0
- 1526 .LVL147:
- 975:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1527 .loc 1 975 0
- 1528 0002 90F83400 ldrb r0, [r0, #52] @ zero_extendqisi2
- 1529 .LVL148:
- 1530 0006 0128 cmp r0, #1
- 1531 0008 27D0 beq .L137
- 975:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1532 .loc 1 975 0 is_stmt 0 discriminator 2
- 1533 000a 0120 movs r0, #1
- 1534 000c 83F83400 strb r0, [r3, #52]
- 977:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1535 .loc 1 977 0 is_stmt 1 discriminator 2
- 1536 0010 93F83500 ldrb r0, [r3, #53] @ zero_extendqisi2
- 1537 0014 C0B2 uxtb r0, r0
- ARM GAS /tmp/ccwgRvGR.s page 55
- 1538 0016 0128 cmp r0, #1
- 1539 0018 04D0 beq .L140
- 1012:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1540 .loc 1 1012 0
- 1541 001a 0120 movs r0, #1
- 1542 .L129:
- 1543 .LVL149:
- 1016:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1544 .loc 1 1016 0
- 1545 001c 0022 movs r2, #0
- 1546 .LVL150:
- 1547 001e 83F83420 strb r2, [r3, #52]
- 1018:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1548 .loc 1 1018 0
- 1549 0022 7047 bx lr
- 1550 .LVL151:
- 1551 .L140:
- 979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1552 .loc 1 979 0
- 1553 0024 0529 cmp r1, #5
- 1554 0026 16D8 bhi .L139
- 1555 0028 DFE801F0 tbb [pc, r1]
- 1556 .L131:
- 1557 002c 03 .byte (.L130-.L131)/2
- 1558 002d 06 .byte (.L132-.L131)/2
- 1559 002e 09 .byte (.L133-.L131)/2
- 1560 002f 0C .byte (.L134-.L131)/2
- 1561 0030 0F .byte (.L135-.L131)/2
- 1562 0031 12 .byte (.L136-.L131)/2
- 1563 .p2align 1
- 1564 .L130:
- 982:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1565 .loc 1 982 0
- 1566 0032 DA63 str r2, [r3, #60]
- 972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1567 .loc 1 972 0
- 1568 0034 0020 movs r0, #0
- 983:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1569 .loc 1 983 0
- 1570 0036 F1E7 b .L129
- 1571 .L132:
- 986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1572 .loc 1 986 0
- 1573 0038 1A64 str r2, [r3, #64]
- 972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1574 .loc 1 972 0
- 1575 003a 0020 movs r0, #0
- 987:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1576 .loc 1 987 0
- 1577 003c EEE7 b .L129
- 1578 .L133:
- 990:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1579 .loc 1 990 0
- 1580 003e 5A64 str r2, [r3, #68]
- 972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1581 .loc 1 972 0
- 1582 0040 0020 movs r0, #0
- ARM GAS /tmp/ccwgRvGR.s page 56
- 991:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1583 .loc 1 991 0
- 1584 0042 EBE7 b .L129
- 1585 .L134:
- 994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1586 .loc 1 994 0
- 1587 0044 9A64 str r2, [r3, #72]
- 972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1588 .loc 1 972 0
- 1589 0046 0020 movs r0, #0
- 995:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1590 .loc 1 995 0
- 1591 0048 E8E7 b .L129
- 1592 .L135:
- 998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1593 .loc 1 998 0
- 1594 004a DA64 str r2, [r3, #76]
- 972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1595 .loc 1 972 0
- 1596 004c 0020 movs r0, #0
- 999:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1597 .loc 1 999 0
- 1598 004e E5E7 b .L129
- 1599 .L136:
- 1002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1600 .loc 1 1002 0
- 1601 0050 1A65 str r2, [r3, #80]
- 972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1602 .loc 1 972 0
- 1603 0052 0020 movs r0, #0
- 1003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1604 .loc 1 1003 0
- 1605 0054 E2E7 b .L129
- 1606 .L139:
- 972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1607 .loc 1 972 0
- 1608 0056 0020 movs r0, #0
- 1609 0058 E0E7 b .L129
- 1610 .L137:
- 975:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1611 .loc 1 975 0
- 1612 005a 0220 movs r0, #2
- 1019:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1613 .loc 1 1019 0
- 1614 005c 7047 bx lr
- 1615 .cfi_endproc
- 1616 .LFE138:
- 1618 .section .text.HAL_DMA_UnRegisterCallback,"ax",%progbits
- 1619 .align 1
- 1620 .global HAL_DMA_UnRegisterCallback
- 1621 .syntax unified
- 1622 .thumb
- 1623 .thumb_func
- 1624 .fpu fpv4-sp-d16
- 1626 HAL_DMA_UnRegisterCallback:
- 1627 .LFB139:
- 1030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK;
- ARM GAS /tmp/ccwgRvGR.s page 57
- 1628 .loc 1 1030 0
- 1629 .cfi_startproc
- 1630 @ args = 0, pretend = 0, frame = 0
- 1631 @ frame_needed = 0, uses_anonymous_args = 0
- 1632 @ link register save eliminated.
- 1633 .LVL152:
- 1634 0000 0346 mov r3, r0
- 1635 .LVL153:
- 1034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1636 .loc 1 1034 0
- 1637 0002 90F83420 ldrb r2, [r0, #52] @ zero_extendqisi2
- 1638 0006 012A cmp r2, #1
- 1639 0008 30D0 beq .L152
- 1034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1640 .loc 1 1034 0 is_stmt 0 discriminator 2
- 1641 000a 0122 movs r2, #1
- 1642 000c 80F83420 strb r2, [r0, #52]
- 1036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1643 .loc 1 1036 0 is_stmt 1 discriminator 2
- 1644 0010 90F83520 ldrb r2, [r0, #53] @ zero_extendqisi2
- 1645 0014 D2B2 uxtb r2, r2
- 1646 0016 012A cmp r2, #1
- 1647 0018 04D0 beq .L155
- 1080:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1648 .loc 1 1080 0
- 1649 001a 0120 movs r0, #1
- 1650 .LVL154:
- 1651 .L143:
- 1084:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1652 .loc 1 1084 0
- 1653 001c 0022 movs r2, #0
- 1654 001e 83F83420 strb r2, [r3, #52]
- 1086:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1655 .loc 1 1086 0
- 1656 0022 7047 bx lr
- 1657 .LVL155:
- 1658 .L155:
- 1038:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
- 1659 .loc 1 1038 0
- 1660 0024 0629 cmp r1, #6
- 1661 0026 1FD8 bhi .L154
- 1662 0028 DFE801F0 tbb [pc, r1]
- 1663 .L145:
- 1664 002c 04 .byte (.L144-.L145)/2
- 1665 002d 07 .byte (.L146-.L145)/2
- 1666 002e 0A .byte (.L147-.L145)/2
- 1667 002f 0D .byte (.L148-.L145)/2
- 1668 0030 10 .byte (.L149-.L145)/2
- 1669 0031 13 .byte (.L150-.L145)/2
- 1670 0032 16 .byte (.L151-.L145)/2
- 1671 0033 00 .p2align 1
- 1672 .L144:
- 1041:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1673 .loc 1 1041 0
- 1674 0034 0020 movs r0, #0
- 1675 .LVL156:
- 1676 0036 D863 str r0, [r3, #60]
- ARM GAS /tmp/ccwgRvGR.s page 58
- 1042:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1677 .loc 1 1042 0
- 1678 0038 F0E7 b .L143
- 1679 .LVL157:
- 1680 .L146:
- 1045:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1681 .loc 1 1045 0
- 1682 003a 0020 movs r0, #0
- 1683 .LVL158:
- 1684 003c 1864 str r0, [r3, #64]
- 1046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1685 .loc 1 1046 0
- 1686 003e EDE7 b .L143
- 1687 .LVL159:
- 1688 .L147:
- 1049:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1689 .loc 1 1049 0
- 1690 0040 0020 movs r0, #0
- 1691 .LVL160:
- 1692 0042 5864 str r0, [r3, #68]
- 1050:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1693 .loc 1 1050 0
- 1694 0044 EAE7 b .L143
- 1695 .LVL161:
- 1696 .L148:
- 1053:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1697 .loc 1 1053 0
- 1698 0046 0020 movs r0, #0
- 1699 .LVL162:
- 1700 0048 9864 str r0, [r3, #72]
- 1054:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1701 .loc 1 1054 0
- 1702 004a E7E7 b .L143
- 1703 .LVL163:
- 1704 .L149:
- 1057:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1705 .loc 1 1057 0
- 1706 004c 0020 movs r0, #0
- 1707 .LVL164:
- 1708 004e D864 str r0, [r3, #76]
- 1058:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1709 .loc 1 1058 0
- 1710 0050 E4E7 b .L143
- 1711 .LVL165:
- 1712 .L150:
- 1061:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1713 .loc 1 1061 0
- 1714 0052 0020 movs r0, #0
- 1715 .LVL166:
- 1716 0054 1865 str r0, [r3, #80]
- 1062:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1717 .loc 1 1062 0
- 1718 0056 E1E7 b .L143
- 1719 .LVL167:
- 1720 .L151:
- 1065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferHalfCpltCallback = NULL;
- 1721 .loc 1 1065 0
- ARM GAS /tmp/ccwgRvGR.s page 59
- 1722 0058 0020 movs r0, #0
- 1723 .LVL168:
- 1724 005a D863 str r0, [r3, #60]
- 1066:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1CpltCallback = NULL;
- 1725 .loc 1 1066 0
- 1726 005c 1864 str r0, [r3, #64]
- 1067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1HalfCpltCallback = NULL;
- 1727 .loc 1 1067 0
- 1728 005e 5864 str r0, [r3, #68]
- 1068:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferErrorCallback = NULL;
- 1729 .loc 1 1068 0
- 1730 0060 9864 str r0, [r3, #72]
- 1069:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferAbortCallback = NULL;
- 1731 .loc 1 1069 0
- 1732 0062 D864 str r0, [r3, #76]
- 1070:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1733 .loc 1 1070 0
- 1734 0064 1865 str r0, [r3, #80]
- 1071:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1735 .loc 1 1071 0
- 1736 0066 D9E7 b .L143
- 1737 .LVL169:
- 1738 .L154:
- 1074:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
- 1739 .loc 1 1074 0
- 1740 0068 0120 movs r0, #1
- 1741 .LVL170:
- 1742 006a D7E7 b .L143
- 1743 .LVL171:
- 1744 .L152:
- 1034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1745 .loc 1 1034 0
- 1746 006c 0220 movs r0, #2
- 1747 .LVL172:
- 1087:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1748 .loc 1 1087 0
- 1749 006e 7047 bx lr
- 1750 .cfi_endproc
- 1751 .LFE139:
- 1753 .section .text.HAL_DMA_GetState,"ax",%progbits
- 1754 .align 1
- 1755 .global HAL_DMA_GetState
- 1756 .syntax unified
- 1757 .thumb
- 1758 .thumb_func
- 1759 .fpu fpv4-sp-d16
- 1761 HAL_DMA_GetState:
- 1762 .LFB140:
- 1115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return hdma->State;
- 1763 .loc 1 1115 0
- 1764 .cfi_startproc
- 1765 @ args = 0, pretend = 0, frame = 0
- 1766 @ frame_needed = 0, uses_anonymous_args = 0
- 1767 @ link register save eliminated.
- 1768 .LVL173:
- 1116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1769 .loc 1 1116 0
- ARM GAS /tmp/ccwgRvGR.s page 60
- 1770 0000 90F83500 ldrb r0, [r0, #53] @ zero_extendqisi2
- 1771 .LVL174:
- 1117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1772 .loc 1 1117 0
- 1773 0004 7047 bx lr
- 1774 .cfi_endproc
- 1775 .LFE140:
- 1777 .section .text.HAL_DMA_GetError,"ax",%progbits
- 1778 .align 1
- 1779 .global HAL_DMA_GetError
- 1780 .syntax unified
- 1781 .thumb
- 1782 .thumb_func
- 1783 .fpu fpv4-sp-d16
- 1785 HAL_DMA_GetError:
- 1786 .LFB141:
- 1126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return hdma->ErrorCode;
- 1787 .loc 1 1126 0
- 1788 .cfi_startproc
- 1789 @ args = 0, pretend = 0, frame = 0
- 1790 @ frame_needed = 0, uses_anonymous_args = 0
- 1791 @ link register save eliminated.
- 1792 .LVL175:
- 1127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
- 1793 .loc 1 1127 0
- 1794 0000 406D ldr r0, [r0, #84]
- 1795 .LVL176:
- 1128:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
- 1796 .loc 1 1128 0
- 1797 0002 7047 bx lr
- 1798 .cfi_endproc
- 1799 .LFE141:
- 1801 .section .rodata.flagBitshiftOffset.7620,"a",%progbits
- 1802 .align 2
- 1803 .set .LANCHOR0,. + 0
- 1806 flagBitshiftOffset.7620:
- 1807 0000 00 .byte 0
- 1808 0001 06 .byte 6
- 1809 0002 10 .byte 16
- 1810 0003 16 .byte 22
- 1811 0004 00 .byte 0
- 1812 0005 06 .byte 6
- 1813 0006 10 .byte 16
- 1814 0007 16 .byte 22
- 1815 .text
- 1816 .Letext0:
- 1817 .file 2 "/usr/include/newlib/machine/_default_types.h"
- 1818 .file 3 "/usr/include/newlib/sys/_stdint.h"
- 1819 .file 4 "Drivers/CMSIS/Include/core_cm4.h"
- 1820 .file 5 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/system_stm32f4xx.h"
- 1821 .file 6 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f407xx.h"
- 1822 .file 7 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h"
- 1823 .file 8 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h"
- 1824 .file 9 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_dma.h"
- 1825 .file 10 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal.h"
- ARM GAS /tmp/ccwgRvGR.s page 61
- DEFINED SYMBOLS
- *ABS*:0000000000000000 stm32f4xx_hal_dma.c
- /tmp/ccwgRvGR.s:18 .text.DMA_SetConfig:0000000000000000 $t
- /tmp/ccwgRvGR.s:24 .text.DMA_SetConfig:0000000000000000 DMA_SetConfig
- /tmp/ccwgRvGR.s:83 .text.DMA_CalcBaseAndBitshift:0000000000000000 $t
- /tmp/ccwgRvGR.s:89 .text.DMA_CalcBaseAndBitshift:0000000000000000 DMA_CalcBaseAndBitshift
- /tmp/ccwgRvGR.s:132 .text.DMA_CalcBaseAndBitshift:0000000000000034 $d
- /tmp/ccwgRvGR.s:138 .text.DMA_CheckFifoParam:0000000000000000 $t
- /tmp/ccwgRvGR.s:144 .text.DMA_CheckFifoParam:0000000000000000 DMA_CheckFifoParam
- /tmp/ccwgRvGR.s:211 .text.DMA_CheckFifoParam:0000000000000046 $d
- /tmp/ccwgRvGR.s:215 .text.DMA_CheckFifoParam:000000000000004a $t
- /tmp/ccwgRvGR.s:301 .text.HAL_DMA_Init:0000000000000000 $t
- /tmp/ccwgRvGR.s:308 .text.HAL_DMA_Init:0000000000000000 HAL_DMA_Init
- /tmp/ccwgRvGR.s:486 .text.HAL_DMA_Init:00000000000000cc $d
- /tmp/ccwgRvGR.s:491 .text.HAL_DMA_DeInit:0000000000000000 $t
- /tmp/ccwgRvGR.s:498 .text.HAL_DMA_DeInit:0000000000000000 HAL_DMA_DeInit
- /tmp/ccwgRvGR.s:600 .text.HAL_DMA_Start:0000000000000000 $t
- /tmp/ccwgRvGR.s:607 .text.HAL_DMA_Start:0000000000000000 HAL_DMA_Start
- /tmp/ccwgRvGR.s:676 .text.HAL_DMA_Start_IT:0000000000000000 $t
- /tmp/ccwgRvGR.s:683 .text.HAL_DMA_Start_IT:0000000000000000 HAL_DMA_Start_IT
- /tmp/ccwgRvGR.s:779 .text.HAL_DMA_Abort:0000000000000000 $t
- /tmp/ccwgRvGR.s:786 .text.HAL_DMA_Abort:0000000000000000 HAL_DMA_Abort
- /tmp/ccwgRvGR.s:900 .text.HAL_DMA_Abort_IT:0000000000000000 $t
- /tmp/ccwgRvGR.s:907 .text.HAL_DMA_Abort_IT:0000000000000000 HAL_DMA_Abort_IT
- /tmp/ccwgRvGR.s:946 .text.HAL_DMA_PollForTransfer:0000000000000000 $t
- /tmp/ccwgRvGR.s:953 .text.HAL_DMA_PollForTransfer:0000000000000000 HAL_DMA_PollForTransfer
- /tmp/ccwgRvGR.s:1170 .text.HAL_DMA_IRQHandler:0000000000000000 $t
- /tmp/ccwgRvGR.s:1177 .text.HAL_DMA_IRQHandler:0000000000000000 HAL_DMA_IRQHandler
- /tmp/ccwgRvGR.s:1504 .text.HAL_DMA_IRQHandler:00000000000001d4 $d
- /tmp/ccwgRvGR.s:1510 .text.HAL_DMA_RegisterCallback:0000000000000000 $t
- /tmp/ccwgRvGR.s:1517 .text.HAL_DMA_RegisterCallback:0000000000000000 HAL_DMA_RegisterCallback
- /tmp/ccwgRvGR.s:1557 .text.HAL_DMA_RegisterCallback:000000000000002c $d
- /tmp/ccwgRvGR.s:1563 .text.HAL_DMA_RegisterCallback:0000000000000032 $t
- /tmp/ccwgRvGR.s:1619 .text.HAL_DMA_UnRegisterCallback:0000000000000000 $t
- /tmp/ccwgRvGR.s:1626 .text.HAL_DMA_UnRegisterCallback:0000000000000000 HAL_DMA_UnRegisterCallback
- /tmp/ccwgRvGR.s:1664 .text.HAL_DMA_UnRegisterCallback:000000000000002c $d
- /tmp/ccwgRvGR.s:1754 .text.HAL_DMA_GetState:0000000000000000 $t
- /tmp/ccwgRvGR.s:1761 .text.HAL_DMA_GetState:0000000000000000 HAL_DMA_GetState
- /tmp/ccwgRvGR.s:1778 .text.HAL_DMA_GetError:0000000000000000 $t
- /tmp/ccwgRvGR.s:1785 .text.HAL_DMA_GetError:0000000000000000 HAL_DMA_GetError
- /tmp/ccwgRvGR.s:1802 .rodata.flagBitshiftOffset.7620:0000000000000000 $d
- /tmp/ccwgRvGR.s:1806 .rodata.flagBitshiftOffset.7620:0000000000000000 flagBitshiftOffset.7620
- .debug_frame:0000000000000010 $d
- /tmp/ccwgRvGR.s:1671 .text.HAL_DMA_UnRegisterCallback:0000000000000033 $d
- /tmp/ccwgRvGR.s:1671 .text.HAL_DMA_UnRegisterCallback:0000000000000034 $t
- UNDEFINED SYMBOLS
- HAL_GetTick
- SystemCoreClock
|