12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087 |
- /*
- * Copyright (C) 2011-2012, Freescale Semiconductor, Inc. All Rights Reserved
- * THIS SOURCE CODE IS CONFIDENTIAL AND PROPRIETARY AND MAY NOT
- * BE USED OR DISTRIBUTED WITHOUT THE WRITTEN PERMISSION OF
- * Freescale Semiconductor, Inc.
- */
- #ifndef _BCH_H
- #define _BCH_H 1
- #include "regs.h"
- //#include "registers.h"
- #ifndef REGS_BCH_BASE
- #define REGS_BCH_BASE (REGS_BASE + 0x114000)
- #endif
- /*
- * HW_BCH_CTRL - Hardware BCH ECC Accelerator Control Register
- */
- #ifndef __LANGUAGE_ASM__
- typedef union {
- reg32_t U;
- struct {
- unsigned COMPLETE_IRQ:1;
- unsigned RSVD0:1;
- unsigned DEBUG_STALL_IRQ:1;
- unsigned BM_ERROR_IRQ:1;
- unsigned RSVD1:4;
- unsigned COMPLETE_IRQ_EN:1;
- unsigned RSVD2:1;
- unsigned DEBUG_STALL_IRQ_EN:1;
- unsigned RSVD3:5;
- unsigned M2M_ENABLE:1;
- unsigned M2M_ENCODE:1;
- unsigned M2M_LAYOUT:2;
- unsigned RSVD4:2;
- unsigned DEBUGSYNDROME:1;
- unsigned RSVD5:7;
- unsigned CLKGATE:1;
- unsigned SFTRST:1;
- } B;
- } hw_bch_ctrl_t;
- #endif
- /*
- * constants & macros for entire HW_BCH_CTRL register
- */
- #define HW_BCH_CTRL_ADDR (0x00114000)
- #define HW_BCH_CTRL_SET_ADDR (0x00114004)
- #define HW_BCH_CTRL_CLR_ADDR (0x00114008)
- #define HW_BCH_CTRL_TOG_ADDR (0x0011400c)
- #ifndef __LANGUAGE_ASM__
- #ifndef ROCOO_TEST
- #define HW_BCH_CTRL (*(volatile hw_bch_ctrl_t *) HW_BCH_CTRL_ADDR)
- #define HW_BCH_CTRL_RD() (HW_BCH_CTRL.U)
- #define HW_BCH_CTRL_WR(v) (HW_BCH_CTRL.U = (v))
- #define HW_BCH_CTRL_SET(v) ((*(volatile reg32_t *) HW_BCH_CTRL_SET_ADDR) = (v))
- #define HW_BCH_CTRL_CLR(v) ((*(volatile reg32_t *) HW_BCH_CTRL_CLR_ADDR) = (v))
- #define HW_BCH_CTRL_TOG(v) ((*(volatile reg32_t *) HW_BCH_CTRL_TOG_ADDR) = (v))
- #else
- #define HW_BCH_CTRL_RD() (_rbase->mem32_read(HW_BCH_CTRL_ADDR))
- #define HW_BCH_CTRL_WR(v) (_rbase->mem32_write(HW_BCH_CTRL_ADDR,(v)))
- #define HW_BCH_CTRL_SET(v) (_rbase->mem32_write(HW_BCH_CTRL_SET_ADDR,(v)))
- #define HW_BCH_CTRL_CLR(v) (_rbase->mem32_write(HW_BCH_CTRL_CLR_ADDR,(v)))
- #define HW_BCH_CTRL_TOG(v) (_rbase->mem32_write(HW_BCH_CTRL_TOG_ADDR,(v)))
- #endif
- #endif
- /*
- * constants & macros for individual HW_BCH_CTRL bitfields
- */
- /* --- Register HW_BCH_CTRL, field SFTRST */
- #define BP_BCH_CTRL_SFTRST 31
- #define BM_BCH_CTRL_SFTRST 0x80000000
- #ifndef __LANGUAGE_ASM__
- #define BF_BCH_CTRL_SFTRST(v) ((((reg32_t) v) << 31) & BM_BCH_CTRL_SFTRST)
- #else
- #define BF_BCH_CTRL_SFTRST(v) (((v) << 31) & BM_BCH_CTRL_SFTRST)
- #endif
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_CTRL_SFTRST(v) BF_CS1(BCH_CTRL, SFTRST, v)
- #endif
- #define BV_BCH_CTRL_SFTRST__RUN 0x0
- #define BV_BCH_CTRL_SFTRST__RESET 0x1
- /* --- Register HW_BCH_CTRL, field CLKGATE */
- #define BP_BCH_CTRL_CLKGATE 30
- #define BM_BCH_CTRL_CLKGATE 0x40000000
- #define BF_BCH_CTRL_CLKGATE(v) (((v) << 30) & BM_BCH_CTRL_CLKGATE)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_CTRL_CLKGATE(v) BF_CS1(BCH_CTRL, CLKGATE, v)
- #endif
- #define BV_BCH_CTRL_CLKGATE__RUN 0x0
- #define BV_BCH_CTRL_CLKGATE__NO_CLKS 0x1
- /* --- Register HW_BCH_CTRL, field RSVD5 */
- #define BP_BCH_CTRL_RSVD5 23
- #define BM_BCH_CTRL_RSVD5 0x3F800000
- #define BF_BCH_CTRL_RSVD5(v) (((v) << 23) & BM_BCH_CTRL_RSVD5)
- /* --- Register HW_BCH_CTRL, field DEBUGSYNDROME */
- #define BP_BCH_CTRL_DEBUGSYNDROME 22
- #define BM_BCH_CTRL_DEBUGSYNDROME 0x00400000
- #define BF_BCH_CTRL_DEBUGSYNDROME(v) (((v) << 22) & BM_BCH_CTRL_DEBUGSYNDROME)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_CTRL_DEBUGSYNDROME(v) BF_CS1(BCH_CTRL, DEBUGSYNDROME, v)
- #endif
- /* --- Register HW_BCH_CTRL, field RSVD4 */
- #define BP_BCH_CTRL_RSVD4 20
- #define BM_BCH_CTRL_RSVD4 0x00300000
- #define BF_BCH_CTRL_RSVD4(v) (((v) << 20) & BM_BCH_CTRL_RSVD4)
- /* --- Register HW_BCH_CTRL, field M2M_LAYOUT */
- #define BP_BCH_CTRL_M2M_LAYOUT 18
- #define BM_BCH_CTRL_M2M_LAYOUT 0x000C0000
- #define BF_BCH_CTRL_M2M_LAYOUT(v) (((v) << 18) & BM_BCH_CTRL_M2M_LAYOUT)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_CTRL_M2M_LAYOUT(v) BF_CS1(BCH_CTRL, M2M_LAYOUT, v)
- #endif
- /* --- Register HW_BCH_CTRL, field M2M_ENCODE */
- #define BP_BCH_CTRL_M2M_ENCODE 17
- #define BM_BCH_CTRL_M2M_ENCODE 0x00020000
- #define BF_BCH_CTRL_M2M_ENCODE(v) (((v) << 17) & BM_BCH_CTRL_M2M_ENCODE)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_CTRL_M2M_ENCODE(v) BF_CS1(BCH_CTRL, M2M_ENCODE, v)
- #endif
- /* --- Register HW_BCH_CTRL, field M2M_ENABLE */
- #define BP_BCH_CTRL_M2M_ENABLE 16
- #define BM_BCH_CTRL_M2M_ENABLE 0x00010000
- #define BF_BCH_CTRL_M2M_ENABLE(v) (((v) << 16) & BM_BCH_CTRL_M2M_ENABLE)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_CTRL_M2M_ENABLE(v) BF_CS1(BCH_CTRL, M2M_ENABLE, v)
- #endif
- /* --- Register HW_BCH_CTRL, field RSVD3 */
- #define BP_BCH_CTRL_RSVD3 11
- #define BM_BCH_CTRL_RSVD3 0x0000F800
- #define BF_BCH_CTRL_RSVD3(v) (((v) << 11) & BM_BCH_CTRL_RSVD3)
- /* --- Register HW_BCH_CTRL, field DEBUG_STALL_IRQ_EN */
- #define BP_BCH_CTRL_DEBUG_STALL_IRQ_EN 10
- #define BM_BCH_CTRL_DEBUG_STALL_IRQ_EN 0x00000400
- #define BF_BCH_CTRL_DEBUG_STALL_IRQ_EN(v) (((v) << 10) & BM_BCH_CTRL_DEBUG_STALL_IRQ_EN)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_CTRL_DEBUG_STALL_IRQ_EN(v) BF_CS1(BCH_CTRL, DEBUG_STALL_IRQ_EN, v)
- #endif
- /* --- Register HW_BCH_CTRL, field RSVD2 */
- #define BP_BCH_CTRL_RSVD2 9
- #define BM_BCH_CTRL_RSVD2 0x00000200
- #define BF_BCH_CTRL_RSVD2(v) (((v) << 9) & BM_BCH_CTRL_RSVD2)
- /* --- Register HW_BCH_CTRL, field COMPLETE_IRQ_EN */
- #define BP_BCH_CTRL_COMPLETE_IRQ_EN 8
- #define BM_BCH_CTRL_COMPLETE_IRQ_EN 0x00000100
- #define BF_BCH_CTRL_COMPLETE_IRQ_EN(v) (((v) << 8) & BM_BCH_CTRL_COMPLETE_IRQ_EN)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_CTRL_COMPLETE_IRQ_EN(v) BF_CS1(BCH_CTRL, COMPLETE_IRQ_EN, v)
- #endif
- /* --- Register HW_BCH_CTRL, field RSVD1 */
- #define BP_BCH_CTRL_RSVD1 4
- #define BM_BCH_CTRL_RSVD1 0x000000F0
- #define BF_BCH_CTRL_RSVD1(v) (((v) << 4) & BM_BCH_CTRL_RSVD1)
- /* --- Register HW_BCH_CTRL, field BM_ERROR_IRQ */
- #define BP_BCH_CTRL_BM_ERROR_IRQ 3
- #define BM_BCH_CTRL_BM_ERROR_IRQ 0x00000008
- #define BF_BCH_CTRL_BM_ERROR_IRQ(v) (((v) << 3) & BM_BCH_CTRL_BM_ERROR_IRQ)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_CTRL_BM_ERROR_IRQ(v) BF_CS1(BCH_CTRL, BM_ERROR_IRQ, v)
- #endif
- /* --- Register HW_BCH_CTRL, field DEBUG_STALL_IRQ */
- #define BP_BCH_CTRL_DEBUG_STALL_IRQ 2
- #define BM_BCH_CTRL_DEBUG_STALL_IRQ 0x00000004
- #define BF_BCH_CTRL_DEBUG_STALL_IRQ(v) (((v) << 2) & BM_BCH_CTRL_DEBUG_STALL_IRQ)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_CTRL_DEBUG_STALL_IRQ(v) BF_CS1(BCH_CTRL, DEBUG_STALL_IRQ, v)
- #endif
- /* --- Register HW_BCH_CTRL, field RSVD0 */
- #define BP_BCH_CTRL_RSVD0 1
- #define BM_BCH_CTRL_RSVD0 0x00000002
- #define BF_BCH_CTRL_RSVD0(v) (((v) << 1) & BM_BCH_CTRL_RSVD0)
- /* --- Register HW_BCH_CTRL, field COMPLETE_IRQ */
- #define BP_BCH_CTRL_COMPLETE_IRQ 0
- #define BM_BCH_CTRL_COMPLETE_IRQ 0x00000001
- #define BF_BCH_CTRL_COMPLETE_IRQ(v) (((v) << 0) & BM_BCH_CTRL_COMPLETE_IRQ)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_CTRL_COMPLETE_IRQ(v) BF_CS1(BCH_CTRL, COMPLETE_IRQ, v)
- #endif
- /*
- * HW_BCH_STATUS0 - Hardware ECC Accelerator Status Register 0
- */
- #ifndef __LANGUAGE_ASM__
- typedef union {
- reg32_t U;
- struct {
- unsigned RSVD0:2;
- unsigned UNCORRECTABLE:1;
- unsigned CORRECTED:1;
- unsigned ALLONES:1;
- unsigned RSVD1:3;
- unsigned STATUS_BLK0:8;
- unsigned COMPLETED_CE:4;
- unsigned HANDLE:12;
- } B;
- } hw_bch_status0_t;
- #endif
- /*
- * constants & macros for entire HW_BCH_STATUS0 register
- */
- #define HW_BCH_STATUS0_ADDR (0x00114010)
- #ifndef __LANGUAGE_ASM__
- #ifndef ROCOO_TEST
- #define HW_BCH_STATUS0 (*(volatile hw_bch_status0_t *) HW_BCH_STATUS0_ADDR)
- #define HW_BCH_STATUS0_RD() (HW_BCH_STATUS0.U)
- #else
- #define HW_BCH_STATUS0_RD() (_rbase->mem32_read(HW_BCH_STATUS0_ADDR))
- #endif
- #endif
- /*
- * constants & macros for individual HW_BCH_STATUS0 bitfields
- */
- /* --- Register HW_BCH_STATUS0, field HANDLE */
- #define BP_BCH_STATUS0_HANDLE 20
- #define BM_BCH_STATUS0_HANDLE 0xFFF00000
- #ifndef __LANGUAGE_ASM__
- #define BF_BCH_STATUS0_HANDLE(v) ((((reg32_t) v) << 20) & BM_BCH_STATUS0_HANDLE)
- #else
- #define BF_BCH_STATUS0_HANDLE(v) (((v) << 20) & BM_BCH_STATUS0_HANDLE)
- #endif
- /* --- Register HW_BCH_STATUS0, field COMPLETED_CE */
- #define BP_BCH_STATUS0_COMPLETED_CE 16
- #define BM_BCH_STATUS0_COMPLETED_CE 0x000F0000
- #define BF_BCH_STATUS0_COMPLETED_CE(v) (((v) << 16) & BM_BCH_STATUS0_COMPLETED_CE)
- /* --- Register HW_BCH_STATUS0, field STATUS_BLK0 */
- #define BP_BCH_STATUS0_STATUS_BLK0 8
- #define BM_BCH_STATUS0_STATUS_BLK0 0x0000FF00
- #define BF_BCH_STATUS0_STATUS_BLK0(v) (((v) << 8) & BM_BCH_STATUS0_STATUS_BLK0)
- #define BV_BCH_STATUS0_STATUS_BLK0__ZERO 0x00
- #define BV_BCH_STATUS0_STATUS_BLK0__ERROR1 0x01
- #define BV_BCH_STATUS0_STATUS_BLK0__ERROR2 0x02
- #define BV_BCH_STATUS0_STATUS_BLK0__ERROR3 0x03
- #define BV_BCH_STATUS0_STATUS_BLK0__ERROR4 0x04
- #define BV_BCH_STATUS0_STATUS_BLK0__UNCORRECTABLE 0xFE
- #define BV_BCH_STATUS0_STATUS_BLK0__ERASED 0xFF
- /* --- Register HW_BCH_STATUS0, field RSVD1 */
- #define BP_BCH_STATUS0_RSVD1 5
- #define BM_BCH_STATUS0_RSVD1 0x000000E0
- #define BF_BCH_STATUS0_RSVD1(v) (((v) << 5) & BM_BCH_STATUS0_RSVD1)
- /* --- Register HW_BCH_STATUS0, field ALLONES */
- #define BP_BCH_STATUS0_ALLONES 4
- #define BM_BCH_STATUS0_ALLONES 0x00000010
- #define BF_BCH_STATUS0_ALLONES(v) (((v) << 4) & BM_BCH_STATUS0_ALLONES)
- /* --- Register HW_BCH_STATUS0, field CORRECTED */
- #define BP_BCH_STATUS0_CORRECTED 3
- #define BM_BCH_STATUS0_CORRECTED 0x00000008
- #define BF_BCH_STATUS0_CORRECTED(v) (((v) << 3) & BM_BCH_STATUS0_CORRECTED)
- /* --- Register HW_BCH_STATUS0, field UNCORRECTABLE */
- #define BP_BCH_STATUS0_UNCORRECTABLE 2
- #define BM_BCH_STATUS0_UNCORRECTABLE 0x00000004
- #define BF_BCH_STATUS0_UNCORRECTABLE(v) (((v) << 2) & BM_BCH_STATUS0_UNCORRECTABLE)
- /* --- Register HW_BCH_STATUS0, field RSVD0 */
- #define BP_BCH_STATUS0_RSVD0 0
- #define BM_BCH_STATUS0_RSVD0 0x00000003
- #define BF_BCH_STATUS0_RSVD0(v) (((v) << 0) & BM_BCH_STATUS0_RSVD0)
- /*
- * HW_BCH_MODE - Hardware ECC Accelerator Mode Register
- */
- #ifndef __LANGUAGE_ASM__
- typedef union {
- reg32_t U;
- struct {
- unsigned ERASE_THRESHOLD:8;
- unsigned RSVD:24;
- } B;
- } hw_bch_mode_t;
- #endif
- /*
- * constants & macros for entire HW_BCH_MODE register
- */
- #define HW_BCH_MODE_ADDR (0x00114020)
- #ifndef __LANGUAGE_ASM__
- #ifndef ROCOO_TEST
- #define HW_BCH_MODE (*(volatile hw_bch_mode_t *) HW_BCH_MODE_ADDR)
- #define HW_BCH_MODE_RD() (HW_BCH_MODE.U)
- #define HW_BCH_MODE_WR(v) (HW_BCH_MODE.U = (v))
- #define HW_BCH_MODE_SET(v) (HW_BCH_MODE_WR(HW_BCH_MODE_RD() | (v)))
- #define HW_BCH_MODE_CLR(v) (HW_BCH_MODE_WR(HW_BCH_MODE_RD() & ~(v)))
- #define HW_BCH_MODE_TOG(v) (HW_BCH_MODE_WR(HW_BCH_MODE_RD() ^ (v)))
- #else
- #define HW_BCH_MODE_RD() (_rbase->mem32_read(HW_BCH_MODE_ADDR))
- #define HW_BCH_MODE_WR(v) (_rbase->mem32_write(HW_BCH_MODE_ADDR,(v)))
- #define HW_BCH_MODE_SET(v) (HW_BCH_MODE_WR(HW_BCH_MODE_RD() | (v)))
- #define HW_BCH_MODE_CLR(v) (HW_BCH_MODE_WR(HW_BCH_MODE_RD() & ~(v)))
- #define HW_BCH_MODE_TOG(v) (HW_BCH_MODE_WR(HW_BCH_MODE_RD() ^ (v)))
- #endif
- #endif
- /*
- * constants & macros for individual HW_BCH_MODE bitfields
- */
- /* --- Register HW_BCH_MODE, field RSVD */
- #define BP_BCH_MODE_RSVD 8
- #define BM_BCH_MODE_RSVD 0xFFFFFF00
- #ifndef __LANGUAGE_ASM__
- #define BF_BCH_MODE_RSVD(v) ((((reg32_t) v) << 8) & BM_BCH_MODE_RSVD)
- #else
- #define BF_BCH_MODE_RSVD(v) (((v) << 8) & BM_BCH_MODE_RSVD)
- #endif
- /* --- Register HW_BCH_MODE, field ERASE_THRESHOLD */
- #define BP_BCH_MODE_ERASE_THRESHOLD 0
- #define BM_BCH_MODE_ERASE_THRESHOLD 0x000000FF
- #define BF_BCH_MODE_ERASE_THRESHOLD(v) (((v) << 0) & BM_BCH_MODE_ERASE_THRESHOLD)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_MODE_ERASE_THRESHOLD(v) (HW_BCH_MODE.B.ERASE_THRESHOLD = (v))
- #endif
- /*
- * HW_BCH_ENCODEPTR - Hardware BCH ECC Loopback Encode Buffer Register
- */
- #ifndef __LANGUAGE_ASM__
- typedef union {
- reg32_t U;
- struct {
- unsigned ADDR:32;
- } B;
- } hw_bch_encodeptr_t;
- #endif
- /*
- * constants & macros for entire HW_BCH_ENCODEPTR register
- */
- #define HW_BCH_ENCODEPTR_ADDR (0x00114030)
- #ifndef __LANGUAGE_ASM__
- #ifndef ROCOO_TEST
- #define HW_BCH_ENCODEPTR (*(volatile hw_bch_encodeptr_t *) HW_BCH_ENCODEPTR_ADDR)
- #define HW_BCH_ENCODEPTR_RD() (HW_BCH_ENCODEPTR.U)
- #define HW_BCH_ENCODEPTR_WR(v) (HW_BCH_ENCODEPTR.U = (v))
- #define HW_BCH_ENCODEPTR_SET(v) (HW_BCH_ENCODEPTR_WR(HW_BCH_ENCODEPTR_RD() | (v)))
- #define HW_BCH_ENCODEPTR_CLR(v) (HW_BCH_ENCODEPTR_WR(HW_BCH_ENCODEPTR_RD() & ~(v)))
- #define HW_BCH_ENCODEPTR_TOG(v) (HW_BCH_ENCODEPTR_WR(HW_BCH_ENCODEPTR_RD() ^ (v)))
- #else
- #define HW_BCH_ENCODEPTR_RD() (_rbase->mem32_read(HW_BCH_ENCODEPTR_ADDR))
- #define HW_BCH_ENCODEPTR_WR(v) (_rbase->mem32_write(HW_BCH_ENCODEPTR_ADDR,(v)))
- #define HW_BCH_ENCODEPTR_SET(v) (HW_BCH_ENCODEPTR_WR(HW_BCH_ENCODEPTR_RD() | (v)))
- #define HW_BCH_ENCODEPTR_CLR(v) (HW_BCH_ENCODEPTR_WR(HW_BCH_ENCODEPTR_RD() & ~(v)))
- #define HW_BCH_ENCODEPTR_TOG(v) (HW_BCH_ENCODEPTR_WR(HW_BCH_ENCODEPTR_RD() ^ (v)))
- #endif
- #endif
- /*
- * constants & macros for individual HW_BCH_ENCODEPTR bitfields
- */
- /* --- Register HW_BCH_ENCODEPTR, field ADDR */
- #define BP_BCH_ENCODEPTR_ADDR 0
- #define BM_BCH_ENCODEPTR_ADDR 0xFFFFFFFF
- #ifndef __LANGUAGE_ASM__
- #define BF_BCH_ENCODEPTR_ADDR(v) ((reg32_t) v)
- #else
- #define BF_BCH_ENCODEPTR_ADDR(v) (v)
- #endif
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_ENCODEPTR_ADDR(v) (HW_BCH_ENCODEPTR.B.ADDR = (v))
- #endif
- /*
- * HW_BCH_DATAPTR - Hardware BCH ECC Loopback Data Buffer Register
- */
- #ifndef __LANGUAGE_ASM__
- typedef union {
- reg32_t U;
- struct {
- unsigned ADDR:32;
- } B;
- } hw_bch_dataptr_t;
- #endif
- /*
- * constants & macros for entire HW_BCH_DATAPTR register
- */
- #define HW_BCH_DATAPTR_ADDR (0x00114040)
- #ifndef __LANGUAGE_ASM__
- #ifndef ROCOO_TEST
- #define HW_BCH_DATAPTR (*(volatile hw_bch_dataptr_t *) HW_BCH_DATAPTR_ADDR)
- #define HW_BCH_DATAPTR_RD() (HW_BCH_DATAPTR.U)
- #define HW_BCH_DATAPTR_WR(v) (HW_BCH_DATAPTR.U = (v))
- #define HW_BCH_DATAPTR_SET(v) (HW_BCH_DATAPTR_WR(HW_BCH_DATAPTR_RD() | (v)))
- #define HW_BCH_DATAPTR_CLR(v) (HW_BCH_DATAPTR_WR(HW_BCH_DATAPTR_RD() & ~(v)))
- #define HW_BCH_DATAPTR_TOG(v) (HW_BCH_DATAPTR_WR(HW_BCH_DATAPTR_RD() ^ (v)))
- #else
- #define HW_BCH_DATAPTR_RD() (_rbase->mem32_read(HW_BCH_DATAPTR_ADDR))
- #define HW_BCH_DATAPTR_WR(v) (_rbase->mem32_write(HW_BCH_DATAPTR_ADDR,(v)))
- #define HW_BCH_DATAPTR_SET(v) (HW_BCH_DATAPTR_WR(HW_BCH_DATAPTR_RD() | (v)))
- #define HW_BCH_DATAPTR_CLR(v) (HW_BCH_DATAPTR_WR(HW_BCH_DATAPTR_RD() & ~(v)))
- #define HW_BCH_DATAPTR_TOG(v) (HW_BCH_DATAPTR_WR(HW_BCH_DATAPTR_RD() ^ (v)))
- #endif
- #endif
- /*
- * constants & macros for individual HW_BCH_DATAPTR bitfields
- */
- /* --- Register HW_BCH_DATAPTR, field ADDR */
- #define BP_BCH_DATAPTR_ADDR 0
- #define BM_BCH_DATAPTR_ADDR 0xFFFFFFFF
- #ifndef __LANGUAGE_ASM__
- #define BF_BCH_DATAPTR_ADDR(v) ((reg32_t) v)
- #else
- #define BF_BCH_DATAPTR_ADDR(v) (v)
- #endif
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_DATAPTR_ADDR(v) (HW_BCH_DATAPTR.B.ADDR = (v))
- #endif
- /*
- * HW_BCH_METAPTR - Hardware BCH ECC Loopback Metadata Buffer Register
- */
- #ifndef __LANGUAGE_ASM__
- typedef union {
- reg32_t U;
- struct {
- unsigned ADDR:32;
- } B;
- } hw_bch_metaptr_t;
- #endif
- /*
- * constants & macros for entire HW_BCH_METAPTR register
- */
- #define HW_BCH_METAPTR_ADDR (0x00114050)
- #ifndef __LANGUAGE_ASM__
- #ifndef ROCOO_TEST
- #define HW_BCH_METAPTR (*(volatile hw_bch_metaptr_t *) HW_BCH_METAPTR_ADDR)
- #define HW_BCH_METAPTR_RD() (HW_BCH_METAPTR.U)
- #define HW_BCH_METAPTR_WR(v) (HW_BCH_METAPTR.U = (v))
- #define HW_BCH_METAPTR_SET(v) (HW_BCH_METAPTR_WR(HW_BCH_METAPTR_RD() | (v)))
- #define HW_BCH_METAPTR_CLR(v) (HW_BCH_METAPTR_WR(HW_BCH_METAPTR_RD() & ~(v)))
- #define HW_BCH_METAPTR_TOG(v) (HW_BCH_METAPTR_WR(HW_BCH_METAPTR_RD() ^ (v)))
- #else
- #define HW_BCH_METAPTR_RD() (_rbase->mem32_read(HW_BCH_METAPTR_ADDR))
- #define HW_BCH_METAPTR_WR(v) (_rbase->mem32_write(HW_BCH_METAPTR_ADDR,(v)))
- #define HW_BCH_METAPTR_SET(v) (HW_BCH_METAPTR_WR(HW_BCH_METAPTR_RD() | (v)))
- #define HW_BCH_METAPTR_CLR(v) (HW_BCH_METAPTR_WR(HW_BCH_METAPTR_RD() & ~(v)))
- #define HW_BCH_METAPTR_TOG(v) (HW_BCH_METAPTR_WR(HW_BCH_METAPTR_RD() ^ (v)))
- #endif
- #endif
- /*
- * constants & macros for individual HW_BCH_METAPTR bitfields
- */
- /* --- Register HW_BCH_METAPTR, field ADDR */
- #define BP_BCH_METAPTR_ADDR 0
- #define BM_BCH_METAPTR_ADDR 0xFFFFFFFF
- #ifndef __LANGUAGE_ASM__
- #define BF_BCH_METAPTR_ADDR(v) ((reg32_t) v)
- #else
- #define BF_BCH_METAPTR_ADDR(v) (v)
- #endif
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_METAPTR_ADDR(v) (HW_BCH_METAPTR.B.ADDR = (v))
- #endif
- /*
- * HW_BCH_LAYOUTSELECT - Hardware ECC Accelerator Layout Select Register
- */
- #ifndef __LANGUAGE_ASM__
- typedef union {
- reg32_t U;
- struct {
- unsigned CS0_SELECT:2;
- unsigned CS1_SELECT:2;
- unsigned CS2_SELECT:2;
- unsigned CS3_SELECT:2;
- unsigned CS4_SELECT:2;
- unsigned CS5_SELECT:2;
- unsigned CS6_SELECT:2;
- unsigned CS7_SELECT:2;
- unsigned CS8_SELECT:2;
- unsigned CS9_SELECT:2;
- unsigned CS10_SELECT:2;
- unsigned CS11_SELECT:2;
- unsigned CS12_SELECT:2;
- unsigned CS13_SELECT:2;
- unsigned CS14_SELECT:2;
- unsigned CS15_SELECT:2;
- } B;
- } hw_bch_layoutselect_t;
- #endif
- /*
- * constants & macros for entire HW_BCH_LAYOUTSELECT register
- */
- #define HW_BCH_LAYOUTSELECT_ADDR (0x00114070)
- #ifndef __LANGUAGE_ASM__
- #ifndef ROCOO_TEST
- #define HW_BCH_LAYOUTSELECT (*(volatile hw_bch_layoutselect_t *) HW_BCH_LAYOUTSELECT_ADDR)
- #define HW_BCH_LAYOUTSELECT_RD() (HW_BCH_LAYOUTSELECT.U)
- #define HW_BCH_LAYOUTSELECT_WR(v) (HW_BCH_LAYOUTSELECT.U = (v))
- #define HW_BCH_LAYOUTSELECT_SET(v) (HW_BCH_LAYOUTSELECT_WR(HW_BCH_LAYOUTSELECT_RD() | (v)))
- #define HW_BCH_LAYOUTSELECT_CLR(v) (HW_BCH_LAYOUTSELECT_WR(HW_BCH_LAYOUTSELECT_RD() & ~(v)))
- #define HW_BCH_LAYOUTSELECT_TOG(v) (HW_BCH_LAYOUTSELECT_WR(HW_BCH_LAYOUTSELECT_RD() ^ (v)))
- #else
- #define HW_BCH_LAYOUTSELECT_RD() (_rbase->mem32_read(HW_BCH_LAYOUTSELECT_ADDR))
- #define HW_BCH_LAYOUTSELECT_WR(v) (_rbase->mem32_write(HW_BCH_LAYOUTSELECT_ADDR,(v)))
- #define HW_BCH_LAYOUTSELECT_SET(v) (HW_BCH_LAYOUTSELECT_WR(HW_BCH_LAYOUTSELECT_RD() | (v)))
- #define HW_BCH_LAYOUTSELECT_CLR(v) (HW_BCH_LAYOUTSELECT_WR(HW_BCH_LAYOUTSELECT_RD() & ~(v)))
- #define HW_BCH_LAYOUTSELECT_TOG(v) (HW_BCH_LAYOUTSELECT_WR(HW_BCH_LAYOUTSELECT_RD() ^ (v)))
- #endif
- #endif
- /*
- * constants & macros for individual HW_BCH_LAYOUTSELECT bitfields
- */
- /* --- Register HW_BCH_LAYOUTSELECT, field CS15_SELECT */
- #define BP_BCH_LAYOUTSELECT_CS15_SELECT 30
- #define BM_BCH_LAYOUTSELECT_CS15_SELECT 0xC0000000
- #ifndef __LANGUAGE_ASM__
- #define BF_BCH_LAYOUTSELECT_CS15_SELECT(v) ((((reg32_t) v) << 30) & BM_BCH_LAYOUTSELECT_CS15_SELECT)
- #else
- #define BF_BCH_LAYOUTSELECT_CS15_SELECT(v) (((v) << 30) & BM_BCH_LAYOUTSELECT_CS15_SELECT)
- #endif
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_LAYOUTSELECT_CS15_SELECT(v) BF_CS1(BCH_LAYOUTSELECT, CS15_SELECT, v)
- #endif
- /* --- Register HW_BCH_LAYOUTSELECT, field CS14_SELECT */
- #define BP_BCH_LAYOUTSELECT_CS14_SELECT 28
- #define BM_BCH_LAYOUTSELECT_CS14_SELECT 0x30000000
- #define BF_BCH_LAYOUTSELECT_CS14_SELECT(v) (((v) << 28) & BM_BCH_LAYOUTSELECT_CS14_SELECT)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_LAYOUTSELECT_CS14_SELECT(v) BF_CS1(BCH_LAYOUTSELECT, CS14_SELECT, v)
- #endif
- /* --- Register HW_BCH_LAYOUTSELECT, field CS13_SELECT */
- #define BP_BCH_LAYOUTSELECT_CS13_SELECT 26
- #define BM_BCH_LAYOUTSELECT_CS13_SELECT 0x0C000000
- #define BF_BCH_LAYOUTSELECT_CS13_SELECT(v) (((v) << 26) & BM_BCH_LAYOUTSELECT_CS13_SELECT)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_LAYOUTSELECT_CS13_SELECT(v) BF_CS1(BCH_LAYOUTSELECT, CS13_SELECT, v)
- #endif
- /* --- Register HW_BCH_LAYOUTSELECT, field CS12_SELECT */
- #define BP_BCH_LAYOUTSELECT_CS12_SELECT 24
- #define BM_BCH_LAYOUTSELECT_CS12_SELECT 0x03000000
- #define BF_BCH_LAYOUTSELECT_CS12_SELECT(v) (((v) << 24) & BM_BCH_LAYOUTSELECT_CS12_SELECT)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_LAYOUTSELECT_CS12_SELECT(v) BF_CS1(BCH_LAYOUTSELECT, CS12_SELECT, v)
- #endif
- /* --- Register HW_BCH_LAYOUTSELECT, field CS11_SELECT */
- #define BP_BCH_LAYOUTSELECT_CS11_SELECT 22
- #define BM_BCH_LAYOUTSELECT_CS11_SELECT 0x00C00000
- #define BF_BCH_LAYOUTSELECT_CS11_SELECT(v) (((v) << 22) & BM_BCH_LAYOUTSELECT_CS11_SELECT)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_LAYOUTSELECT_CS11_SELECT(v) BF_CS1(BCH_LAYOUTSELECT, CS11_SELECT, v)
- #endif
- /* --- Register HW_BCH_LAYOUTSELECT, field CS10_SELECT */
- #define BP_BCH_LAYOUTSELECT_CS10_SELECT 20
- #define BM_BCH_LAYOUTSELECT_CS10_SELECT 0x00300000
- #define BF_BCH_LAYOUTSELECT_CS10_SELECT(v) (((v) << 20) & BM_BCH_LAYOUTSELECT_CS10_SELECT)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_LAYOUTSELECT_CS10_SELECT(v) BF_CS1(BCH_LAYOUTSELECT, CS10_SELECT, v)
- #endif
- /* --- Register HW_BCH_LAYOUTSELECT, field CS9_SELECT */
- #define BP_BCH_LAYOUTSELECT_CS9_SELECT 18
- #define BM_BCH_LAYOUTSELECT_CS9_SELECT 0x000C0000
- #define BF_BCH_LAYOUTSELECT_CS9_SELECT(v) (((v) << 18) & BM_BCH_LAYOUTSELECT_CS9_SELECT)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_LAYOUTSELECT_CS9_SELECT(v) BF_CS1(BCH_LAYOUTSELECT, CS9_SELECT, v)
- #endif
- /* --- Register HW_BCH_LAYOUTSELECT, field CS8_SELECT */
- #define BP_BCH_LAYOUTSELECT_CS8_SELECT 16
- #define BM_BCH_LAYOUTSELECT_CS8_SELECT 0x00030000
- #define BF_BCH_LAYOUTSELECT_CS8_SELECT(v) (((v) << 16) & BM_BCH_LAYOUTSELECT_CS8_SELECT)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_LAYOUTSELECT_CS8_SELECT(v) BF_CS1(BCH_LAYOUTSELECT, CS8_SELECT, v)
- #endif
- /* --- Register HW_BCH_LAYOUTSELECT, field CS7_SELECT */
- #define BP_BCH_LAYOUTSELECT_CS7_SELECT 14
- #define BM_BCH_LAYOUTSELECT_CS7_SELECT 0x0000C000
- #define BF_BCH_LAYOUTSELECT_CS7_SELECT(v) (((v) << 14) & BM_BCH_LAYOUTSELECT_CS7_SELECT)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_LAYOUTSELECT_CS7_SELECT(v) BF_CS1(BCH_LAYOUTSELECT, CS7_SELECT, v)
- #endif
- /* --- Register HW_BCH_LAYOUTSELECT, field CS6_SELECT */
- #define BP_BCH_LAYOUTSELECT_CS6_SELECT 12
- #define BM_BCH_LAYOUTSELECT_CS6_SELECT 0x00003000
- #define BF_BCH_LAYOUTSELECT_CS6_SELECT(v) (((v) << 12) & BM_BCH_LAYOUTSELECT_CS6_SELECT)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_LAYOUTSELECT_CS6_SELECT(v) BF_CS1(BCH_LAYOUTSELECT, CS6_SELECT, v)
- #endif
- /* --- Register HW_BCH_LAYOUTSELECT, field CS5_SELECT */
- #define BP_BCH_LAYOUTSELECT_CS5_SELECT 10
- #define BM_BCH_LAYOUTSELECT_CS5_SELECT 0x00000C00
- #define BF_BCH_LAYOUTSELECT_CS5_SELECT(v) (((v) << 10) & BM_BCH_LAYOUTSELECT_CS5_SELECT)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_LAYOUTSELECT_CS5_SELECT(v) BF_CS1(BCH_LAYOUTSELECT, CS5_SELECT, v)
- #endif
- /* --- Register HW_BCH_LAYOUTSELECT, field CS4_SELECT */
- #define BP_BCH_LAYOUTSELECT_CS4_SELECT 8
- #define BM_BCH_LAYOUTSELECT_CS4_SELECT 0x00000300
- #define BF_BCH_LAYOUTSELECT_CS4_SELECT(v) (((v) << 8) & BM_BCH_LAYOUTSELECT_CS4_SELECT)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_LAYOUTSELECT_CS4_SELECT(v) BF_CS1(BCH_LAYOUTSELECT, CS4_SELECT, v)
- #endif
- /* --- Register HW_BCH_LAYOUTSELECT, field CS3_SELECT */
- #define BP_BCH_LAYOUTSELECT_CS3_SELECT 6
- #define BM_BCH_LAYOUTSELECT_CS3_SELECT 0x000000C0
- #define BF_BCH_LAYOUTSELECT_CS3_SELECT(v) (((v) << 6) & BM_BCH_LAYOUTSELECT_CS3_SELECT)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_LAYOUTSELECT_CS3_SELECT(v) BF_CS1(BCH_LAYOUTSELECT, CS3_SELECT, v)
- #endif
- /* --- Register HW_BCH_LAYOUTSELECT, field CS2_SELECT */
- #define BP_BCH_LAYOUTSELECT_CS2_SELECT 4
- #define BM_BCH_LAYOUTSELECT_CS2_SELECT 0x00000030
- #define BF_BCH_LAYOUTSELECT_CS2_SELECT(v) (((v) << 4) & BM_BCH_LAYOUTSELECT_CS2_SELECT)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_LAYOUTSELECT_CS2_SELECT(v) BF_CS1(BCH_LAYOUTSELECT, CS2_SELECT, v)
- #endif
- /* --- Register HW_BCH_LAYOUTSELECT, field CS1_SELECT */
- #define BP_BCH_LAYOUTSELECT_CS1_SELECT 2
- #define BM_BCH_LAYOUTSELECT_CS1_SELECT 0x0000000C
- #define BF_BCH_LAYOUTSELECT_CS1_SELECT(v) (((v) << 2) & BM_BCH_LAYOUTSELECT_CS1_SELECT)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_LAYOUTSELECT_CS1_SELECT(v) BF_CS1(BCH_LAYOUTSELECT, CS1_SELECT, v)
- #endif
- /* --- Register HW_BCH_LAYOUTSELECT, field CS0_SELECT */
- #define BP_BCH_LAYOUTSELECT_CS0_SELECT 0
- #define BM_BCH_LAYOUTSELECT_CS0_SELECT 0x00000003
- #define BF_BCH_LAYOUTSELECT_CS0_SELECT(v) (((v) << 0) & BM_BCH_LAYOUTSELECT_CS0_SELECT)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_LAYOUTSELECT_CS0_SELECT(v) BF_CS1(BCH_LAYOUTSELECT, CS0_SELECT, v)
- #endif
- /*
- * HW_BCH_FLASH0LAYOUT0 - Hardware BCH ECC Flash 0 Layout 0 Register
- */
- #ifndef __LANGUAGE_ASM__
- typedef union {
- reg32_t U;
- struct {
- unsigned DATA0_SIZE:10;
- unsigned GF13_0_GF14_1:1;
- unsigned ECC0:5;
- unsigned META_SIZE:8;
- unsigned NBLOCKS:8;
- } B;
- } hw_bch_flash0layout0_t;
- #endif
- /*
- * constants & macros for entire HW_BCH_FLASH0LAYOUT0 register
- */
- #define HW_BCH_FLASH0LAYOUT0_ADDR (0x00114080)
- #ifndef __LANGUAGE_ASM__
- #ifndef ROCOO_TEST
- #define HW_BCH_FLASH0LAYOUT0 (*(volatile hw_bch_flash0layout0_t *) HW_BCH_FLASH0LAYOUT0_ADDR)
- #define HW_BCH_FLASH0LAYOUT0_RD() (HW_BCH_FLASH0LAYOUT0.U)
- #define HW_BCH_FLASH0LAYOUT0_WR(v) (HW_BCH_FLASH0LAYOUT0.U = (v))
- #define HW_BCH_FLASH0LAYOUT0_SET(v) (HW_BCH_FLASH0LAYOUT0_WR(HW_BCH_FLASH0LAYOUT0_RD() | (v)))
- #define HW_BCH_FLASH0LAYOUT0_CLR(v) (HW_BCH_FLASH0LAYOUT0_WR(HW_BCH_FLASH0LAYOUT0_RD() & ~(v)))
- #define HW_BCH_FLASH0LAYOUT0_TOG(v) (HW_BCH_FLASH0LAYOUT0_WR(HW_BCH_FLASH0LAYOUT0_RD() ^ (v)))
- #else
- #define HW_BCH_FLASH0LAYOUT0_RD() (_rbase->mem32_read(HW_BCH_FLASH0LAYOUT0_ADDR))
- #define HW_BCH_FLASH0LAYOUT0_WR(v) (_rbase->mem32_write(HW_BCH_FLASH0LAYOUT0_ADDR,(v)))
- #define HW_BCH_FLASH0LAYOUT0_SET(v) (HW_BCH_FLASH0LAYOUT0_WR(HW_BCH_FLASH0LAYOUT0_RD() | (v)))
- #define HW_BCH_FLASH0LAYOUT0_CLR(v) (HW_BCH_FLASH0LAYOUT0_WR(HW_BCH_FLASH0LAYOUT0_RD() & ~(v)))
- #define HW_BCH_FLASH0LAYOUT0_TOG(v) (HW_BCH_FLASH0LAYOUT0_WR(HW_BCH_FLASH0LAYOUT0_RD() ^ (v)))
- #endif
- #endif
- /*
- * constants & macros for individual HW_BCH_FLASH0LAYOUT0 bitfields
- */
- /* --- Register HW_BCH_FLASH0LAYOUT0, field NBLOCKS */
- #define BP_BCH_FLASH0LAYOUT0_NBLOCKS 24
- #define BM_BCH_FLASH0LAYOUT0_NBLOCKS 0xFF000000
- #ifndef __LANGUAGE_ASM__
- #define BF_BCH_FLASH0LAYOUT0_NBLOCKS(v) ((((reg32_t) v) << 24) & BM_BCH_FLASH0LAYOUT0_NBLOCKS)
- #else
- #define BF_BCH_FLASH0LAYOUT0_NBLOCKS(v) (((v) << 24) & BM_BCH_FLASH0LAYOUT0_NBLOCKS)
- #endif
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH0LAYOUT0_NBLOCKS(v) (HW_BCH_FLASH0LAYOUT0.B.NBLOCKS = (v))
- #endif
- /* --- Register HW_BCH_FLASH0LAYOUT0, field META_SIZE */
- #define BP_BCH_FLASH0LAYOUT0_META_SIZE 16
- #define BM_BCH_FLASH0LAYOUT0_META_SIZE 0x00FF0000
- #define BF_BCH_FLASH0LAYOUT0_META_SIZE(v) (((v) << 16) & BM_BCH_FLASH0LAYOUT0_META_SIZE)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH0LAYOUT0_META_SIZE(v) (HW_BCH_FLASH0LAYOUT0.B.META_SIZE = (v))
- #endif
- /* --- Register HW_BCH_FLASH0LAYOUT0, field ECC0 */
- #define BP_BCH_FLASH0LAYOUT0_ECC0 11
- #define BM_BCH_FLASH0LAYOUT0_ECC0 0x0000F800
- #define BF_BCH_FLASH0LAYOUT0_ECC0(v) (((v) << 11) & BM_BCH_FLASH0LAYOUT0_ECC0)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH0LAYOUT0_ECC0(v) BF_CS1(BCH_FLASH0LAYOUT0, ECC0, v)
- #endif
- #define BV_BCH_FLASH0LAYOUT0_ECC0__NONE 0x0
- #define BV_BCH_FLASH0LAYOUT0_ECC0__ECC2 0x1
- #define BV_BCH_FLASH0LAYOUT0_ECC0__ECC4 0x2
- #define BV_BCH_FLASH0LAYOUT0_ECC0__ECC6 0x3
- #define BV_BCH_FLASH0LAYOUT0_ECC0__ECC8 0x4
- #define BV_BCH_FLASH0LAYOUT0_ECC0__ECC10 0x5
- #define BV_BCH_FLASH0LAYOUT0_ECC0__ECC12 0x6
- #define BV_BCH_FLASH0LAYOUT0_ECC0__ECC14 0x7
- #define BV_BCH_FLASH0LAYOUT0_ECC0__ECC16 0x8
- #define BV_BCH_FLASH0LAYOUT0_ECC0__ECC18 0x9
- #define BV_BCH_FLASH0LAYOUT0_ECC0__ECC20 0xA
- #define BV_BCH_FLASH0LAYOUT0_ECC0__ECC22 0xB
- #define BV_BCH_FLASH0LAYOUT0_ECC0__ECC24 0xC
- #define BV_BCH_FLASH0LAYOUT0_ECC0__ECC26 0xD
- #define BV_BCH_FLASH0LAYOUT0_ECC0__ECC28 0xE
- #define BV_BCH_FLASH0LAYOUT0_ECC0__ECC30 0xF
- #define BV_BCH_FLASH0LAYOUT0_ECC0__ECC32 0x10
- #define BV_BCH_FLASH0LAYOUT0_ECC0__ECC34 0x11
- #define BV_BCH_FLASH0LAYOUT0_ECC0__ECC36 0x12
- #define BV_BCH_FLASH0LAYOUT0_ECC0__ECC38 0x13
- #define BV_BCH_FLASH0LAYOUT0_ECC0__ECC40 0x14
- /* --- Register HW_BCH_FLASH0LAYOUT0, field GF13_0_GF14_1 */
- #define BP_BCH_FLASH0LAYOUT0_GF13_0_GF14_1 10
- #define BM_BCH_FLASH0LAYOUT0_GF13_0_GF14_1 0x00000400
- #define BF_BCH_FLASH0LAYOUT0_GF13_0_GF14_1(v) (((v) << 10) & BM_BCH_FLASH0LAYOUT0_GF13_0_GF14_1)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH0LAYOUT0_GF13_0_GF14_1(v) BF_CS1(BCH_FLASH0LAYOUT0, GF13_0_GF14_1, v)
- #endif
- /* --- Register HW_BCH_FLASH0LAYOUT0, field DATA0_SIZE */
- #define BP_BCH_FLASH0LAYOUT0_DATA0_SIZE 0
- #define BM_BCH_FLASH0LAYOUT0_DATA0_SIZE 0x000003FF
- #define BF_BCH_FLASH0LAYOUT0_DATA0_SIZE(v) (((v) << 0) & BM_BCH_FLASH0LAYOUT0_DATA0_SIZE)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH0LAYOUT0_DATA0_SIZE(v) BF_CS1(BCH_FLASH0LAYOUT0, DATA0_SIZE, v)
- #endif
- /*
- * HW_BCH_FLASH0LAYOUT1 - Hardware BCH ECC Flash 0 Layout 1 Register
- */
- #ifndef __LANGUAGE_ASM__
- typedef union {
- reg32_t U;
- struct {
- unsigned DATAN_SIZE:10;
- unsigned GF13_0_GF14_1:1;
- unsigned ECCN:5;
- unsigned PAGE_SIZE:16;
- } B;
- } hw_bch_flash0layout1_t;
- #endif
- /*
- * constants & macros for entire HW_BCH_FLASH0LAYOUT1 register
- */
- #define HW_BCH_FLASH0LAYOUT1_ADDR (0x00114090)
- #ifndef __LANGUAGE_ASM__
- #ifndef ROCOO_TEST
- #define HW_BCH_FLASH0LAYOUT1 (*(volatile hw_bch_flash0layout1_t *) HW_BCH_FLASH0LAYOUT1_ADDR)
- #define HW_BCH_FLASH0LAYOUT1_RD() (HW_BCH_FLASH0LAYOUT1.U)
- #define HW_BCH_FLASH0LAYOUT1_WR(v) (HW_BCH_FLASH0LAYOUT1.U = (v))
- #define HW_BCH_FLASH0LAYOUT1_SET(v) (HW_BCH_FLASH0LAYOUT1_WR(HW_BCH_FLASH0LAYOUT1_RD() | (v)))
- #define HW_BCH_FLASH0LAYOUT1_CLR(v) (HW_BCH_FLASH0LAYOUT1_WR(HW_BCH_FLASH0LAYOUT1_RD() & ~(v)))
- #define HW_BCH_FLASH0LAYOUT1_TOG(v) (HW_BCH_FLASH0LAYOUT1_WR(HW_BCH_FLASH0LAYOUT1_RD() ^ (v)))
- #else
- #define HW_BCH_FLASH0LAYOUT1_RD() (_rbase->mem32_read(HW_BCH_FLASH0LAYOUT1_ADDR))
- #define HW_BCH_FLASH0LAYOUT1_WR(v) (_rbase->mem32_write(HW_BCH_FLASH0LAYOUT1_ADDR,(v)))
- #define HW_BCH_FLASH0LAYOUT1_SET(v) (HW_BCH_FLASH0LAYOUT1_WR(HW_BCH_FLASH0LAYOUT1_RD() | (v)))
- #define HW_BCH_FLASH0LAYOUT1_CLR(v) (HW_BCH_FLASH0LAYOUT1_WR(HW_BCH_FLASH0LAYOUT1_RD() & ~(v)))
- #define HW_BCH_FLASH0LAYOUT1_TOG(v) (HW_BCH_FLASH0LAYOUT1_WR(HW_BCH_FLASH0LAYOUT1_RD() ^ (v)))
- #endif
- #endif
- /*
- * constants & macros for individual HW_BCH_FLASH0LAYOUT1 bitfields
- */
- /* --- Register HW_BCH_FLASH0LAYOUT1, field PAGE_SIZE */
- #define BP_BCH_FLASH0LAYOUT1_PAGE_SIZE 16
- #define BM_BCH_FLASH0LAYOUT1_PAGE_SIZE 0xFFFF0000
- #ifndef __LANGUAGE_ASM__
- #define BF_BCH_FLASH0LAYOUT1_PAGE_SIZE(v) ((((reg32_t) v) << 16) & BM_BCH_FLASH0LAYOUT1_PAGE_SIZE)
- #else
- #define BF_BCH_FLASH0LAYOUT1_PAGE_SIZE(v) (((v) << 16) & BM_BCH_FLASH0LAYOUT1_PAGE_SIZE)
- #endif
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH0LAYOUT1_PAGE_SIZE(v) (HW_BCH_FLASH0LAYOUT1.B.PAGE_SIZE = (v))
- #endif
- /* --- Register HW_BCH_FLASH0LAYOUT1, field ECCN */
- #define BP_BCH_FLASH0LAYOUT1_ECCN 11
- #define BM_BCH_FLASH0LAYOUT1_ECCN 0x0000F800
- #define BF_BCH_FLASH0LAYOUT1_ECCN(v) (((v) << 11) & BM_BCH_FLASH0LAYOUT1_ECCN)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH0LAYOUT1_ECCN(v) BF_CS1(BCH_FLASH0LAYOUT1, ECCN, v)
- #endif
- #define BV_BCH_FLASH0LAYOUT1_ECCN__NONE 0x0
- #define BV_BCH_FLASH0LAYOUT1_ECCN__ECC2 0x1
- #define BV_BCH_FLASH0LAYOUT1_ECCN__ECC4 0x2
- #define BV_BCH_FLASH0LAYOUT1_ECCN__ECC6 0x3
- #define BV_BCH_FLASH0LAYOUT1_ECCN__ECC8 0x4
- #define BV_BCH_FLASH0LAYOUT1_ECCN__ECC10 0x5
- #define BV_BCH_FLASH0LAYOUT1_ECCN__ECC12 0x6
- #define BV_BCH_FLASH0LAYOUT1_ECCN__ECC14 0x7
- #define BV_BCH_FLASH0LAYOUT1_ECCN__ECC16 0x8
- #define BV_BCH_FLASH0LAYOUT1_ECCN__ECC18 0x9
- #define BV_BCH_FLASH0LAYOUT1_ECCN__ECC20 0xA
- #define BV_BCH_FLASH0LAYOUT1_ECCN__ECC22 0xB
- #define BV_BCH_FLASH0LAYOUT1_ECCN__ECC24 0xC
- #define BV_BCH_FLASH0LAYOUT1_ECCN__ECC26 0xD
- #define BV_BCH_FLASH0LAYOUT1_ECCN__ECC28 0xE
- #define BV_BCH_FLASH0LAYOUT1_ECCN__ECC30 0xF
- #define BV_BCH_FLASH0LAYOUT1_ECCN__ECC32 0x10
- #define BV_BCH_FLASH0LAYOUT1_ECCN__ECC34 0x11
- #define BV_BCH_FLASH0LAYOUT1_ECCN__ECC36 0x12
- #define BV_BCH_FLASH0LAYOUT1_ECCN__ECC38 0x13
- #define BV_BCH_FLASH0LAYOUT1_ECCN__ECC40 0x14
- /* --- Register HW_BCH_FLASH0LAYOUT1, field GF13_0_GF14_1 */
- #define BP_BCH_FLASH0LAYOUT1_GF13_0_GF14_1 10
- #define BM_BCH_FLASH0LAYOUT1_GF13_0_GF14_1 0x00000400
- #define BF_BCH_FLASH0LAYOUT1_GF13_0_GF14_1(v) (((v) << 10) & BM_BCH_FLASH0LAYOUT1_GF13_0_GF14_1)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH0LAYOUT1_GF13_0_GF14_1(v) BF_CS1(BCH_FLASH0LAYOUT1, GF13_0_GF14_1, v)
- #endif
- /* --- Register HW_BCH_FLASH0LAYOUT1, field DATAN_SIZE */
- #define BP_BCH_FLASH0LAYOUT1_DATAN_SIZE 0
- #define BM_BCH_FLASH0LAYOUT1_DATAN_SIZE 0x000003FF
- #define BF_BCH_FLASH0LAYOUT1_DATAN_SIZE(v) (((v) << 0) & BM_BCH_FLASH0LAYOUT1_DATAN_SIZE)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH0LAYOUT1_DATAN_SIZE(v) BF_CS1(BCH_FLASH0LAYOUT1, DATAN_SIZE, v)
- #endif
- /*
- * HW_BCH_FLASH1LAYOUT0 - Hardware BCH ECC Flash 1 Layout 0 Register
- */
- #ifndef __LANGUAGE_ASM__
- typedef union {
- reg32_t U;
- struct {
- unsigned DATA0_SIZE:10;
- unsigned GF13_0_GF14_1:1;
- unsigned ECC0:5;
- unsigned META_SIZE:8;
- unsigned NBLOCKS:8;
- } B;
- } hw_bch_flash1layout0_t;
- #endif
- /*
- * constants & macros for entire HW_BCH_FLASH1LAYOUT0 register
- */
- #define HW_BCH_FLASH1LAYOUT0_ADDR (0x001140a0)
- #ifndef __LANGUAGE_ASM__
- #ifndef ROCOO_TEST
- #define HW_BCH_FLASH1LAYOUT0 (*(volatile hw_bch_flash1layout0_t *) HW_BCH_FLASH1LAYOUT0_ADDR)
- #define HW_BCH_FLASH1LAYOUT0_RD() (HW_BCH_FLASH1LAYOUT0.U)
- #define HW_BCH_FLASH1LAYOUT0_WR(v) (HW_BCH_FLASH1LAYOUT0.U = (v))
- #define HW_BCH_FLASH1LAYOUT0_SET(v) (HW_BCH_FLASH1LAYOUT0_WR(HW_BCH_FLASH1LAYOUT0_RD() | (v)))
- #define HW_BCH_FLASH1LAYOUT0_CLR(v) (HW_BCH_FLASH1LAYOUT0_WR(HW_BCH_FLASH1LAYOUT0_RD() & ~(v)))
- #define HW_BCH_FLASH1LAYOUT0_TOG(v) (HW_BCH_FLASH1LAYOUT0_WR(HW_BCH_FLASH1LAYOUT0_RD() ^ (v)))
- #else
- #define HW_BCH_FLASH1LAYOUT0_RD() (_rbase->mem32_read(HW_BCH_FLASH1LAYOUT0_ADDR))
- #define HW_BCH_FLASH1LAYOUT0_WR(v) (_rbase->mem32_write(HW_BCH_FLASH1LAYOUT0_ADDR,(v)))
- #define HW_BCH_FLASH1LAYOUT0_SET(v) (HW_BCH_FLASH1LAYOUT0_WR(HW_BCH_FLASH1LAYOUT0_RD() | (v)))
- #define HW_BCH_FLASH1LAYOUT0_CLR(v) (HW_BCH_FLASH1LAYOUT0_WR(HW_BCH_FLASH1LAYOUT0_RD() & ~(v)))
- #define HW_BCH_FLASH1LAYOUT0_TOG(v) (HW_BCH_FLASH1LAYOUT0_WR(HW_BCH_FLASH1LAYOUT0_RD() ^ (v)))
- #endif
- #endif
- /*
- * constants & macros for individual HW_BCH_FLASH1LAYOUT0 bitfields
- */
- /* --- Register HW_BCH_FLASH1LAYOUT0, field NBLOCKS */
- #define BP_BCH_FLASH1LAYOUT0_NBLOCKS 24
- #define BM_BCH_FLASH1LAYOUT0_NBLOCKS 0xFF000000
- #ifndef __LANGUAGE_ASM__
- #define BF_BCH_FLASH1LAYOUT0_NBLOCKS(v) ((((reg32_t) v) << 24) & BM_BCH_FLASH1LAYOUT0_NBLOCKS)
- #else
- #define BF_BCH_FLASH1LAYOUT0_NBLOCKS(v) (((v) << 24) & BM_BCH_FLASH1LAYOUT0_NBLOCKS)
- #endif
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH1LAYOUT0_NBLOCKS(v) (HW_BCH_FLASH1LAYOUT0.B.NBLOCKS = (v))
- #endif
- /* --- Register HW_BCH_FLASH1LAYOUT0, field META_SIZE */
- #define BP_BCH_FLASH1LAYOUT0_META_SIZE 16
- #define BM_BCH_FLASH1LAYOUT0_META_SIZE 0x00FF0000
- #define BF_BCH_FLASH1LAYOUT0_META_SIZE(v) (((v) << 16) & BM_BCH_FLASH1LAYOUT0_META_SIZE)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH1LAYOUT0_META_SIZE(v) (HW_BCH_FLASH1LAYOUT0.B.META_SIZE = (v))
- #endif
- /* --- Register HW_BCH_FLASH1LAYOUT0, field ECC0 */
- #define BP_BCH_FLASH1LAYOUT0_ECC0 11
- #define BM_BCH_FLASH1LAYOUT0_ECC0 0x0000F800
- #define BF_BCH_FLASH1LAYOUT0_ECC0(v) (((v) << 11) & BM_BCH_FLASH1LAYOUT0_ECC0)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH1LAYOUT0_ECC0(v) BF_CS1(BCH_FLASH1LAYOUT0, ECC0, v)
- #endif
- #define BV_BCH_FLASH1LAYOUT0_ECC0__NONE 0x0
- #define BV_BCH_FLASH1LAYOUT0_ECC0__ECC2 0x1
- #define BV_BCH_FLASH1LAYOUT0_ECC0__ECC4 0x2
- #define BV_BCH_FLASH1LAYOUT0_ECC0__ECC6 0x3
- #define BV_BCH_FLASH1LAYOUT0_ECC0__ECC8 0x4
- #define BV_BCH_FLASH1LAYOUT0_ECC0__ECC10 0x5
- #define BV_BCH_FLASH1LAYOUT0_ECC0__ECC12 0x6
- #define BV_BCH_FLASH1LAYOUT0_ECC0__ECC14 0x7
- #define BV_BCH_FLASH1LAYOUT0_ECC0__ECC16 0x8
- #define BV_BCH_FLASH1LAYOUT0_ECC0__ECC18 0x9
- #define BV_BCH_FLASH1LAYOUT0_ECC0__ECC20 0xA
- #define BV_BCH_FLASH1LAYOUT0_ECC0__ECC22 0xB
- #define BV_BCH_FLASH1LAYOUT0_ECC0__ECC24 0xC
- #define BV_BCH_FLASH1LAYOUT0_ECC0__ECC26 0xD
- #define BV_BCH_FLASH1LAYOUT0_ECC0__ECC28 0xE
- #define BV_BCH_FLASH1LAYOUT0_ECC0__ECC30 0xF
- #define BV_BCH_FLASH1LAYOUT0_ECC0__ECC32 0x10
- #define BV_BCH_FLASH1LAYOUT0_ECC0__ECC34 0x11
- #define BV_BCH_FLASH1LAYOUT0_ECC0__ECC36 0x12
- #define BV_BCH_FLASH1LAYOUT0_ECC0__ECC38 0x13
- #define BV_BCH_FLASH1LAYOUT0_ECC0__ECC40 0x14
- /* --- Register HW_BCH_FLASH1LAYOUT0, field GF13_0_GF14_1 */
- #define BP_BCH_FLASH1LAYOUT0_GF13_0_GF14_1 10
- #define BM_BCH_FLASH1LAYOUT0_GF13_0_GF14_1 0x00000400
- #define BF_BCH_FLASH1LAYOUT0_GF13_0_GF14_1(v) (((v) << 10) & BM_BCH_FLASH1LAYOUT0_GF13_0_GF14_1)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH1LAYOUT0_GF13_0_GF14_1(v) BF_CS1(BCH_FLASH1LAYOUT0, GF13_0_GF14_1, v)
- #endif
- /* --- Register HW_BCH_FLASH1LAYOUT0, field DATA0_SIZE */
- #define BP_BCH_FLASH1LAYOUT0_DATA0_SIZE 0
- #define BM_BCH_FLASH1LAYOUT0_DATA0_SIZE 0x000003FF
- #define BF_BCH_FLASH1LAYOUT0_DATA0_SIZE(v) (((v) << 0) & BM_BCH_FLASH1LAYOUT0_DATA0_SIZE)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH1LAYOUT0_DATA0_SIZE(v) BF_CS1(BCH_FLASH1LAYOUT0, DATA0_SIZE, v)
- #endif
- /*
- * HW_BCH_FLASH1LAYOUT1 - Hardware BCH ECC Flash 1 Layout 1 Register
- */
- #ifndef __LANGUAGE_ASM__
- typedef union {
- reg32_t U;
- struct {
- unsigned DATAN_SIZE:10;
- unsigned GF13_0_GF14_1:1;
- unsigned ECCN:5;
- unsigned PAGE_SIZE:16;
- } B;
- } hw_bch_flash1layout1_t;
- #endif
- /*
- * constants & macros for entire HW_BCH_FLASH1LAYOUT1 register
- */
- #define HW_BCH_FLASH1LAYOUT1_ADDR (0x001140b0)
- #ifndef __LANGUAGE_ASM__
- #ifndef ROCOO_TEST
- #define HW_BCH_FLASH1LAYOUT1 (*(volatile hw_bch_flash1layout1_t *) HW_BCH_FLASH1LAYOUT1_ADDR)
- #define HW_BCH_FLASH1LAYOUT1_RD() (HW_BCH_FLASH1LAYOUT1.U)
- #define HW_BCH_FLASH1LAYOUT1_WR(v) (HW_BCH_FLASH1LAYOUT1.U = (v))
- #define HW_BCH_FLASH1LAYOUT1_SET(v) (HW_BCH_FLASH1LAYOUT1_WR(HW_BCH_FLASH1LAYOUT1_RD() | (v)))
- #define HW_BCH_FLASH1LAYOUT1_CLR(v) (HW_BCH_FLASH1LAYOUT1_WR(HW_BCH_FLASH1LAYOUT1_RD() & ~(v)))
- #define HW_BCH_FLASH1LAYOUT1_TOG(v) (HW_BCH_FLASH1LAYOUT1_WR(HW_BCH_FLASH1LAYOUT1_RD() ^ (v)))
- #else
- #define HW_BCH_FLASH1LAYOUT1_RD() (_rbase->mem32_read(HW_BCH_FLASH1LAYOUT1_ADDR))
- #define HW_BCH_FLASH1LAYOUT1_WR(v) (_rbase->mem32_write(HW_BCH_FLASH1LAYOUT1_ADDR,(v)))
- #define HW_BCH_FLASH1LAYOUT1_SET(v) (HW_BCH_FLASH1LAYOUT1_WR(HW_BCH_FLASH1LAYOUT1_RD() | (v)))
- #define HW_BCH_FLASH1LAYOUT1_CLR(v) (HW_BCH_FLASH1LAYOUT1_WR(HW_BCH_FLASH1LAYOUT1_RD() & ~(v)))
- #define HW_BCH_FLASH1LAYOUT1_TOG(v) (HW_BCH_FLASH1LAYOUT1_WR(HW_BCH_FLASH1LAYOUT1_RD() ^ (v)))
- #endif
- #endif
- /*
- * constants & macros for individual HW_BCH_FLASH1LAYOUT1 bitfields
- */
- /* --- Register HW_BCH_FLASH1LAYOUT1, field PAGE_SIZE */
- #define BP_BCH_FLASH1LAYOUT1_PAGE_SIZE 16
- #define BM_BCH_FLASH1LAYOUT1_PAGE_SIZE 0xFFFF0000
- #ifndef __LANGUAGE_ASM__
- #define BF_BCH_FLASH1LAYOUT1_PAGE_SIZE(v) ((((reg32_t) v) << 16) & BM_BCH_FLASH1LAYOUT1_PAGE_SIZE)
- #else
- #define BF_BCH_FLASH1LAYOUT1_PAGE_SIZE(v) (((v) << 16) & BM_BCH_FLASH1LAYOUT1_PAGE_SIZE)
- #endif
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH1LAYOUT1_PAGE_SIZE(v) (HW_BCH_FLASH1LAYOUT1.B.PAGE_SIZE = (v))
- #endif
- /* --- Register HW_BCH_FLASH1LAYOUT1, field ECCN */
- #define BP_BCH_FLASH1LAYOUT1_ECCN 11
- #define BM_BCH_FLASH1LAYOUT1_ECCN 0x0000F800
- #define BF_BCH_FLASH1LAYOUT1_ECCN(v) (((v) << 11) & BM_BCH_FLASH1LAYOUT1_ECCN)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH1LAYOUT1_ECCN(v) BF_CS1(BCH_FLASH1LAYOUT1, ECCN, v)
- #endif
- #define BV_BCH_FLASH1LAYOUT1_ECCN__NONE 0x0
- #define BV_BCH_FLASH1LAYOUT1_ECCN__ECC2 0x1
- #define BV_BCH_FLASH1LAYOUT1_ECCN__ECC4 0x2
- #define BV_BCH_FLASH1LAYOUT1_ECCN__ECC6 0x3
- #define BV_BCH_FLASH1LAYOUT1_ECCN__ECC8 0x4
- #define BV_BCH_FLASH1LAYOUT1_ECCN__ECC10 0x5
- #define BV_BCH_FLASH1LAYOUT1_ECCN__ECC12 0x6
- #define BV_BCH_FLASH1LAYOUT1_ECCN__ECC14 0x7
- #define BV_BCH_FLASH1LAYOUT1_ECCN__ECC16 0x8
- #define BV_BCH_FLASH1LAYOUT1_ECCN__ECC18 0x9
- #define BV_BCH_FLASH1LAYOUT1_ECCN__ECC20 0xA
- #define BV_BCH_FLASH1LAYOUT1_ECCN__ECC22 0xB
- #define BV_BCH_FLASH1LAYOUT1_ECCN__ECC24 0xC
- #define BV_BCH_FLASH1LAYOUT1_ECCN__ECC26 0xD
- #define BV_BCH_FLASH1LAYOUT1_ECCN__ECC28 0xE
- #define BV_BCH_FLASH1LAYOUT1_ECCN__ECC30 0xF
- #define BV_BCH_FLASH1LAYOUT1_ECCN__ECC32 0x10
- #define BV_BCH_FLASH1LAYOUT1_ECCN__ECC34 0x11
- #define BV_BCH_FLASH1LAYOUT1_ECCN__ECC36 0x12
- #define BV_BCH_FLASH1LAYOUT1_ECCN__ECC38 0x13
- #define BV_BCH_FLASH1LAYOUT1_ECCN__ECC40 0x14
- /* --- Register HW_BCH_FLASH1LAYOUT1, field GF13_0_GF14_1 */
- #define BP_BCH_FLASH1LAYOUT1_GF13_0_GF14_1 10
- #define BM_BCH_FLASH1LAYOUT1_GF13_0_GF14_1 0x00000400
- #define BF_BCH_FLASH1LAYOUT1_GF13_0_GF14_1(v) (((v) << 10) & BM_BCH_FLASH1LAYOUT1_GF13_0_GF14_1)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH1LAYOUT1_GF13_0_GF14_1(v) BF_CS1(BCH_FLASH1LAYOUT1, GF13_0_GF14_1, v)
- #endif
- /* --- Register HW_BCH_FLASH1LAYOUT1, field DATAN_SIZE */
- #define BP_BCH_FLASH1LAYOUT1_DATAN_SIZE 0
- #define BM_BCH_FLASH1LAYOUT1_DATAN_SIZE 0x000003FF
- #define BF_BCH_FLASH1LAYOUT1_DATAN_SIZE(v) (((v) << 0) & BM_BCH_FLASH1LAYOUT1_DATAN_SIZE)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH1LAYOUT1_DATAN_SIZE(v) BF_CS1(BCH_FLASH1LAYOUT1, DATAN_SIZE, v)
- #endif
- /*
- * HW_BCH_FLASH2LAYOUT0 - Hardware BCH ECC Flash 2 Layout 0 Register
- */
- #ifndef __LANGUAGE_ASM__
- typedef union {
- reg32_t U;
- struct {
- unsigned DATA0_SIZE:10;
- unsigned GF13_0_GF14_1:1;
- unsigned ECC0:5;
- unsigned META_SIZE:8;
- unsigned NBLOCKS:8;
- } B;
- } hw_bch_flash2layout0_t;
- #endif
- /*
- * constants & macros for entire HW_BCH_FLASH2LAYOUT0 register
- */
- #define HW_BCH_FLASH2LAYOUT0_ADDR (0x001140c0)
- #ifndef __LANGUAGE_ASM__
- #ifndef ROCOO_TEST
- #define HW_BCH_FLASH2LAYOUT0 (*(volatile hw_bch_flash2layout0_t *) HW_BCH_FLASH2LAYOUT0_ADDR)
- #define HW_BCH_FLASH2LAYOUT0_RD() (HW_BCH_FLASH2LAYOUT0.U)
- #define HW_BCH_FLASH2LAYOUT0_WR(v) (HW_BCH_FLASH2LAYOUT0.U = (v))
- #define HW_BCH_FLASH2LAYOUT0_SET(v) (HW_BCH_FLASH2LAYOUT0_WR(HW_BCH_FLASH2LAYOUT0_RD() | (v)))
- #define HW_BCH_FLASH2LAYOUT0_CLR(v) (HW_BCH_FLASH2LAYOUT0_WR(HW_BCH_FLASH2LAYOUT0_RD() & ~(v)))
- #define HW_BCH_FLASH2LAYOUT0_TOG(v) (HW_BCH_FLASH2LAYOUT0_WR(HW_BCH_FLASH2LAYOUT0_RD() ^ (v)))
- #else
- #define HW_BCH_FLASH2LAYOUT0_RD() (_rbase->mem32_read(HW_BCH_FLASH2LAYOUT0_ADDR))
- #define HW_BCH_FLASH2LAYOUT0_WR(v) (_rbase->mem32_write(HW_BCH_FLASH2LAYOUT0_ADDR,(v)))
- #define HW_BCH_FLASH2LAYOUT0_SET(v) (HW_BCH_FLASH2LAYOUT0_WR(HW_BCH_FLASH2LAYOUT0_RD() | (v)))
- #define HW_BCH_FLASH2LAYOUT0_CLR(v) (HW_BCH_FLASH2LAYOUT0_WR(HW_BCH_FLASH2LAYOUT0_RD() & ~(v)))
- #define HW_BCH_FLASH2LAYOUT0_TOG(v) (HW_BCH_FLASH2LAYOUT0_WR(HW_BCH_FLASH2LAYOUT0_RD() ^ (v)))
- #endif
- #endif
- /*
- * constants & macros for individual HW_BCH_FLASH2LAYOUT0 bitfields
- */
- /* --- Register HW_BCH_FLASH2LAYOUT0, field NBLOCKS */
- #define BP_BCH_FLASH2LAYOUT0_NBLOCKS 24
- #define BM_BCH_FLASH2LAYOUT0_NBLOCKS 0xFF000000
- #ifndef __LANGUAGE_ASM__
- #define BF_BCH_FLASH2LAYOUT0_NBLOCKS(v) ((((reg32_t) v) << 24) & BM_BCH_FLASH2LAYOUT0_NBLOCKS)
- #else
- #define BF_BCH_FLASH2LAYOUT0_NBLOCKS(v) (((v) << 24) & BM_BCH_FLASH2LAYOUT0_NBLOCKS)
- #endif
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH2LAYOUT0_NBLOCKS(v) (HW_BCH_FLASH2LAYOUT0.B.NBLOCKS = (v))
- #endif
- /* --- Register HW_BCH_FLASH2LAYOUT0, field META_SIZE */
- #define BP_BCH_FLASH2LAYOUT0_META_SIZE 16
- #define BM_BCH_FLASH2LAYOUT0_META_SIZE 0x00FF0000
- #define BF_BCH_FLASH2LAYOUT0_META_SIZE(v) (((v) << 16) & BM_BCH_FLASH2LAYOUT0_META_SIZE)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH2LAYOUT0_META_SIZE(v) (HW_BCH_FLASH2LAYOUT0.B.META_SIZE = (v))
- #endif
- /* --- Register HW_BCH_FLASH2LAYOUT0, field ECC0 */
- #define BP_BCH_FLASH2LAYOUT0_ECC0 11
- #define BM_BCH_FLASH2LAYOUT0_ECC0 0x0000F800
- #define BF_BCH_FLASH2LAYOUT0_ECC0(v) (((v) << 11) & BM_BCH_FLASH2LAYOUT0_ECC0)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH2LAYOUT0_ECC0(v) BF_CS1(BCH_FLASH2LAYOUT0, ECC0, v)
- #endif
- #define BV_BCH_FLASH2LAYOUT0_ECC0__NONE 0x0
- #define BV_BCH_FLASH2LAYOUT0_ECC0__ECC2 0x1
- #define BV_BCH_FLASH2LAYOUT0_ECC0__ECC4 0x2
- #define BV_BCH_FLASH2LAYOUT0_ECC0__ECC6 0x3
- #define BV_BCH_FLASH2LAYOUT0_ECC0__ECC8 0x4
- #define BV_BCH_FLASH2LAYOUT0_ECC0__ECC10 0x5
- #define BV_BCH_FLASH2LAYOUT0_ECC0__ECC12 0x6
- #define BV_BCH_FLASH2LAYOUT0_ECC0__ECC14 0x7
- #define BV_BCH_FLASH2LAYOUT0_ECC0__ECC16 0x8
- #define BV_BCH_FLASH2LAYOUT0_ECC0__ECC18 0x9
- #define BV_BCH_FLASH2LAYOUT0_ECC0__ECC20 0xA
- #define BV_BCH_FLASH2LAYOUT0_ECC0__ECC22 0xB
- #define BV_BCH_FLASH2LAYOUT0_ECC0__ECC24 0xC
- #define BV_BCH_FLASH2LAYOUT0_ECC0__ECC26 0xD
- #define BV_BCH_FLASH2LAYOUT0_ECC0__ECC28 0xE
- #define BV_BCH_FLASH2LAYOUT0_ECC0__ECC30 0xF
- #define BV_BCH_FLASH2LAYOUT0_ECC0__ECC32 0x10
- #define BV_BCH_FLASH2LAYOUT0_ECC0__ECC34 0x11
- #define BV_BCH_FLASH2LAYOUT0_ECC0__ECC36 0x12
- #define BV_BCH_FLASH2LAYOUT0_ECC0__ECC38 0x13
- #define BV_BCH_FLASH2LAYOUT0_ECC0__ECC40 0x14
- /* --- Register HW_BCH_FLASH2LAYOUT0, field GF13_0_GF14_1 */
- #define BP_BCH_FLASH2LAYOUT0_GF13_0_GF14_1 10
- #define BM_BCH_FLASH2LAYOUT0_GF13_0_GF14_1 0x00000400
- #define BF_BCH_FLASH2LAYOUT0_GF13_0_GF14_1(v) (((v) << 10) & BM_BCH_FLASH2LAYOUT0_GF13_0_GF14_1)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH2LAYOUT0_GF13_0_GF14_1(v) BF_CS1(BCH_FLASH2LAYOUT0, GF13_0_GF14_1, v)
- #endif
- /* --- Register HW_BCH_FLASH2LAYOUT0, field DATA0_SIZE */
- #define BP_BCH_FLASH2LAYOUT0_DATA0_SIZE 0
- #define BM_BCH_FLASH2LAYOUT0_DATA0_SIZE 0x000003FF
- #define BF_BCH_FLASH2LAYOUT0_DATA0_SIZE(v) (((v) << 0) & BM_BCH_FLASH2LAYOUT0_DATA0_SIZE)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH2LAYOUT0_DATA0_SIZE(v) BF_CS1(BCH_FLASH2LAYOUT0, DATA0_SIZE, v)
- #endif
- /*
- * HW_BCH_FLASH2LAYOUT1 - Hardware BCH ECC Flash 2 Layout 1 Register
- */
- #ifndef __LANGUAGE_ASM__
- typedef union {
- reg32_t U;
- struct {
- unsigned DATAN_SIZE:10;
- unsigned GF13_0_GF14_1:1;
- unsigned ECCN:5;
- unsigned PAGE_SIZE:16;
- } B;
- } hw_bch_flash2layout1_t;
- #endif
- /*
- * constants & macros for entire HW_BCH_FLASH2LAYOUT1 register
- */
- #define HW_BCH_FLASH2LAYOUT1_ADDR (0x001140d0)
- #ifndef __LANGUAGE_ASM__
- #ifndef ROCOO_TEST
- #define HW_BCH_FLASH2LAYOUT1 (*(volatile hw_bch_flash2layout1_t *) HW_BCH_FLASH2LAYOUT1_ADDR)
- #define HW_BCH_FLASH2LAYOUT1_RD() (HW_BCH_FLASH2LAYOUT1.U)
- #define HW_BCH_FLASH2LAYOUT1_WR(v) (HW_BCH_FLASH2LAYOUT1.U = (v))
- #define HW_BCH_FLASH2LAYOUT1_SET(v) (HW_BCH_FLASH2LAYOUT1_WR(HW_BCH_FLASH2LAYOUT1_RD() | (v)))
- #define HW_BCH_FLASH2LAYOUT1_CLR(v) (HW_BCH_FLASH2LAYOUT1_WR(HW_BCH_FLASH2LAYOUT1_RD() & ~(v)))
- #define HW_BCH_FLASH2LAYOUT1_TOG(v) (HW_BCH_FLASH2LAYOUT1_WR(HW_BCH_FLASH2LAYOUT1_RD() ^ (v)))
- #else
- #define HW_BCH_FLASH2LAYOUT1_RD() (_rbase->mem32_read(HW_BCH_FLASH2LAYOUT1_ADDR))
- #define HW_BCH_FLASH2LAYOUT1_WR(v) (_rbase->mem32_write(HW_BCH_FLASH2LAYOUT1_ADDR,(v)))
- #define HW_BCH_FLASH2LAYOUT1_SET(v) (HW_BCH_FLASH2LAYOUT1_WR(HW_BCH_FLASH2LAYOUT1_RD() | (v)))
- #define HW_BCH_FLASH2LAYOUT1_CLR(v) (HW_BCH_FLASH2LAYOUT1_WR(HW_BCH_FLASH2LAYOUT1_RD() & ~(v)))
- #define HW_BCH_FLASH2LAYOUT1_TOG(v) (HW_BCH_FLASH2LAYOUT1_WR(HW_BCH_FLASH2LAYOUT1_RD() ^ (v)))
- #endif
- #endif
- /*
- * constants & macros for individual HW_BCH_FLASH2LAYOUT1 bitfields
- */
- /* --- Register HW_BCH_FLASH2LAYOUT1, field PAGE_SIZE */
- #define BP_BCH_FLASH2LAYOUT1_PAGE_SIZE 16
- #define BM_BCH_FLASH2LAYOUT1_PAGE_SIZE 0xFFFF0000
- #ifndef __LANGUAGE_ASM__
- #define BF_BCH_FLASH2LAYOUT1_PAGE_SIZE(v) ((((reg32_t) v) << 16) & BM_BCH_FLASH2LAYOUT1_PAGE_SIZE)
- #else
- #define BF_BCH_FLASH2LAYOUT1_PAGE_SIZE(v) (((v) << 16) & BM_BCH_FLASH2LAYOUT1_PAGE_SIZE)
- #endif
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH2LAYOUT1_PAGE_SIZE(v) (HW_BCH_FLASH2LAYOUT1.B.PAGE_SIZE = (v))
- #endif
- /* --- Register HW_BCH_FLASH2LAYOUT1, field ECCN */
- #define BP_BCH_FLASH2LAYOUT1_ECCN 11
- #define BM_BCH_FLASH2LAYOUT1_ECCN 0x0000F800
- #define BF_BCH_FLASH2LAYOUT1_ECCN(v) (((v) << 11) & BM_BCH_FLASH2LAYOUT1_ECCN)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH2LAYOUT1_ECCN(v) BF_CS1(BCH_FLASH2LAYOUT1, ECCN, v)
- #endif
- #define BV_BCH_FLASH2LAYOUT1_ECCN__NONE 0x0
- #define BV_BCH_FLASH2LAYOUT1_ECCN__ECC2 0x1
- #define BV_BCH_FLASH2LAYOUT1_ECCN__ECC4 0x2
- #define BV_BCH_FLASH2LAYOUT1_ECCN__ECC6 0x3
- #define BV_BCH_FLASH2LAYOUT1_ECCN__ECC8 0x4
- #define BV_BCH_FLASH2LAYOUT1_ECCN__ECC10 0x5
- #define BV_BCH_FLASH2LAYOUT1_ECCN__ECC12 0x6
- #define BV_BCH_FLASH2LAYOUT1_ECCN__ECC14 0x7
- #define BV_BCH_FLASH2LAYOUT1_ECCN__ECC16 0x8
- #define BV_BCH_FLASH2LAYOUT1_ECCN__ECC18 0x9
- #define BV_BCH_FLASH2LAYOUT1_ECCN__ECC20 0xA
- #define BV_BCH_FLASH2LAYOUT1_ECCN__ECC22 0xB
- #define BV_BCH_FLASH2LAYOUT1_ECCN__ECC24 0xC
- #define BV_BCH_FLASH2LAYOUT1_ECCN__ECC26 0xD
- #define BV_BCH_FLASH2LAYOUT1_ECCN__ECC28 0xE
- #define BV_BCH_FLASH2LAYOUT1_ECCN__ECC30 0xF
- #define BV_BCH_FLASH2LAYOUT1_ECCN__ECC32 0x10
- #define BV_BCH_FLASH2LAYOUT1_ECCN__ECC34 0x11
- #define BV_BCH_FLASH2LAYOUT1_ECCN__ECC36 0x12
- #define BV_BCH_FLASH2LAYOUT1_ECCN__ECC38 0x13
- #define BV_BCH_FLASH2LAYOUT1_ECCN__ECC40 0x14
- /* --- Register HW_BCH_FLASH2LAYOUT1, field GF13_0_GF14_1 */
- #define BP_BCH_FLASH2LAYOUT1_GF13_0_GF14_1 10
- #define BM_BCH_FLASH2LAYOUT1_GF13_0_GF14_1 0x00000400
- #define BF_BCH_FLASH2LAYOUT1_GF13_0_GF14_1(v) (((v) << 10) & BM_BCH_FLASH2LAYOUT1_GF13_0_GF14_1)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH2LAYOUT1_GF13_0_GF14_1(v) BF_CS1(BCH_FLASH2LAYOUT1, GF13_0_GF14_1, v)
- #endif
- /* --- Register HW_BCH_FLASH2LAYOUT1, field DATAN_SIZE */
- #define BP_BCH_FLASH2LAYOUT1_DATAN_SIZE 0
- #define BM_BCH_FLASH2LAYOUT1_DATAN_SIZE 0x000003FF
- #define BF_BCH_FLASH2LAYOUT1_DATAN_SIZE(v) (((v) << 0) & BM_BCH_FLASH2LAYOUT1_DATAN_SIZE)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH2LAYOUT1_DATAN_SIZE(v) BF_CS1(BCH_FLASH2LAYOUT1, DATAN_SIZE, v)
- #endif
- /*
- * HW_BCH_FLASH3LAYOUT0 - Hardware BCH ECC Flash 3 Layout 0 Register
- */
- #ifndef __LANGUAGE_ASM__
- typedef union {
- reg32_t U;
- struct {
- unsigned DATA0_SIZE:10;
- unsigned GF13_0_GF14_1:1;
- unsigned ECC0:5;
- unsigned META_SIZE:8;
- unsigned NBLOCKS:8;
- } B;
- } hw_bch_flash3layout0_t;
- #endif
- /*
- * constants & macros for entire HW_BCH_FLASH3LAYOUT0 register
- */
- #define HW_BCH_FLASH3LAYOUT0_ADDR (0x001140e0)
- #ifndef __LANGUAGE_ASM__
- #ifndef ROCOO_TEST
- #define HW_BCH_FLASH3LAYOUT0 (*(volatile hw_bch_flash3layout0_t *) HW_BCH_FLASH3LAYOUT0_ADDR)
- #define HW_BCH_FLASH3LAYOUT0_RD() (HW_BCH_FLASH3LAYOUT0.U)
- #define HW_BCH_FLASH3LAYOUT0_WR(v) (HW_BCH_FLASH3LAYOUT0.U = (v))
- #define HW_BCH_FLASH3LAYOUT0_SET(v) (HW_BCH_FLASH3LAYOUT0_WR(HW_BCH_FLASH3LAYOUT0_RD() | (v)))
- #define HW_BCH_FLASH3LAYOUT0_CLR(v) (HW_BCH_FLASH3LAYOUT0_WR(HW_BCH_FLASH3LAYOUT0_RD() & ~(v)))
- #define HW_BCH_FLASH3LAYOUT0_TOG(v) (HW_BCH_FLASH3LAYOUT0_WR(HW_BCH_FLASH3LAYOUT0_RD() ^ (v)))
- #else
- #define HW_BCH_FLASH3LAYOUT0_RD() (_rbase->mem32_read(HW_BCH_FLASH3LAYOUT0_ADDR))
- #define HW_BCH_FLASH3LAYOUT0_WR(v) (_rbase->mem32_write(HW_BCH_FLASH3LAYOUT0_ADDR,(v)))
- #define HW_BCH_FLASH3LAYOUT0_SET(v) (HW_BCH_FLASH3LAYOUT0_WR(HW_BCH_FLASH3LAYOUT0_RD() | (v)))
- #define HW_BCH_FLASH3LAYOUT0_CLR(v) (HW_BCH_FLASH3LAYOUT0_WR(HW_BCH_FLASH3LAYOUT0_RD() & ~(v)))
- #define HW_BCH_FLASH3LAYOUT0_TOG(v) (HW_BCH_FLASH3LAYOUT0_WR(HW_BCH_FLASH3LAYOUT0_RD() ^ (v)))
- #endif
- #endif
- /*
- * constants & macros for individual HW_BCH_FLASH3LAYOUT0 bitfields
- */
- /* --- Register HW_BCH_FLASH3LAYOUT0, field NBLOCKS */
- #define BP_BCH_FLASH3LAYOUT0_NBLOCKS 24
- #define BM_BCH_FLASH3LAYOUT0_NBLOCKS 0xFF000000
- #ifndef __LANGUAGE_ASM__
- #define BF_BCH_FLASH3LAYOUT0_NBLOCKS(v) ((((reg32_t) v) << 24) & BM_BCH_FLASH3LAYOUT0_NBLOCKS)
- #else
- #define BF_BCH_FLASH3LAYOUT0_NBLOCKS(v) (((v) << 24) & BM_BCH_FLASH3LAYOUT0_NBLOCKS)
- #endif
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH3LAYOUT0_NBLOCKS(v) (HW_BCH_FLASH3LAYOUT0.B.NBLOCKS = (v))
- #endif
- /* --- Register HW_BCH_FLASH3LAYOUT0, field META_SIZE */
- #define BP_BCH_FLASH3LAYOUT0_META_SIZE 16
- #define BM_BCH_FLASH3LAYOUT0_META_SIZE 0x00FF0000
- #define BF_BCH_FLASH3LAYOUT0_META_SIZE(v) (((v) << 16) & BM_BCH_FLASH3LAYOUT0_META_SIZE)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH3LAYOUT0_META_SIZE(v) (HW_BCH_FLASH3LAYOUT0.B.META_SIZE = (v))
- #endif
- /* --- Register HW_BCH_FLASH3LAYOUT0, field ECC0 */
- #define BP_BCH_FLASH3LAYOUT0_ECC0 11
- #define BM_BCH_FLASH3LAYOUT0_ECC0 0x0000F800
- #define BF_BCH_FLASH3LAYOUT0_ECC0(v) (((v) << 11) & BM_BCH_FLASH3LAYOUT0_ECC0)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH3LAYOUT0_ECC0(v) BF_CS1(BCH_FLASH3LAYOUT0, ECC0, v)
- #endif
- #define BV_BCH_FLASH3LAYOUT0_ECC0__NONE 0x0
- #define BV_BCH_FLASH3LAYOUT0_ECC0__ECC2 0x1
- #define BV_BCH_FLASH3LAYOUT0_ECC0__ECC4 0x2
- #define BV_BCH_FLASH3LAYOUT0_ECC0__ECC6 0x3
- #define BV_BCH_FLASH3LAYOUT0_ECC0__ECC8 0x4
- #define BV_BCH_FLASH3LAYOUT0_ECC0__ECC10 0x5
- #define BV_BCH_FLASH3LAYOUT0_ECC0__ECC12 0x6
- #define BV_BCH_FLASH3LAYOUT0_ECC0__ECC14 0x7
- #define BV_BCH_FLASH3LAYOUT0_ECC0__ECC16 0x8
- #define BV_BCH_FLASH3LAYOUT0_ECC0__ECC18 0x9
- #define BV_BCH_FLASH3LAYOUT0_ECC0__ECC20 0xA
- #define BV_BCH_FLASH3LAYOUT0_ECC0__ECC22 0xB
- #define BV_BCH_FLASH3LAYOUT0_ECC0__ECC24 0xC
- #define BV_BCH_FLASH3LAYOUT0_ECC0__ECC26 0xD
- #define BV_BCH_FLASH3LAYOUT0_ECC0__ECC28 0xE
- #define BV_BCH_FLASH3LAYOUT0_ECC0__ECC30 0xF
- #define BV_BCH_FLASH3LAYOUT0_ECC0__ECC32 0x10
- #define BV_BCH_FLASH3LAYOUT0_ECC0__ECC34 0x11
- #define BV_BCH_FLASH3LAYOUT0_ECC0__ECC36 0x12
- #define BV_BCH_FLASH3LAYOUT0_ECC0__ECC38 0x13
- #define BV_BCH_FLASH3LAYOUT0_ECC0__ECC40 0x14
- /* --- Register HW_BCH_FLASH3LAYOUT0, field GF13_0_GF14_1 */
- #define BP_BCH_FLASH3LAYOUT0_GF13_0_GF14_1 10
- #define BM_BCH_FLASH3LAYOUT0_GF13_0_GF14_1 0x00000400
- #define BF_BCH_FLASH3LAYOUT0_GF13_0_GF14_1(v) (((v) << 10) & BM_BCH_FLASH3LAYOUT0_GF13_0_GF14_1)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH3LAYOUT0_GF13_0_GF14_1(v) BF_CS1(BCH_FLASH3LAYOUT0, GF13_0_GF14_1, v)
- #endif
- /* --- Register HW_BCH_FLASH3LAYOUT0, field DATA0_SIZE */
- #define BP_BCH_FLASH3LAYOUT0_DATA0_SIZE 0
- #define BM_BCH_FLASH3LAYOUT0_DATA0_SIZE 0x000003FF
- #define BF_BCH_FLASH3LAYOUT0_DATA0_SIZE(v) (((v) << 0) & BM_BCH_FLASH3LAYOUT0_DATA0_SIZE)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH3LAYOUT0_DATA0_SIZE(v) BF_CS1(BCH_FLASH3LAYOUT0, DATA0_SIZE, v)
- #endif
- /*
- * HW_BCH_FLASH3LAYOUT1 - Hardware BCH ECC Flash 3 Layout 1 Register
- */
- #ifndef __LANGUAGE_ASM__
- typedef union {
- reg32_t U;
- struct {
- unsigned DATAN_SIZE:10;
- unsigned GF13_0_GF14_1:1;
- unsigned ECCN:5;
- unsigned PAGE_SIZE:16;
- } B;
- } hw_bch_flash3layout1_t;
- #endif
- /*
- * constants & macros for entire HW_BCH_FLASH3LAYOUT1 register
- */
- #define HW_BCH_FLASH3LAYOUT1_ADDR (0x001140f0)
- #ifndef __LANGUAGE_ASM__
- #ifndef ROCOO_TEST
- #define HW_BCH_FLASH3LAYOUT1 (*(volatile hw_bch_flash3layout1_t *) HW_BCH_FLASH3LAYOUT1_ADDR)
- #define HW_BCH_FLASH3LAYOUT1_RD() (HW_BCH_FLASH3LAYOUT1.U)
- #define HW_BCH_FLASH3LAYOUT1_WR(v) (HW_BCH_FLASH3LAYOUT1.U = (v))
- #define HW_BCH_FLASH3LAYOUT1_SET(v) (HW_BCH_FLASH3LAYOUT1_WR(HW_BCH_FLASH3LAYOUT1_RD() | (v)))
- #define HW_BCH_FLASH3LAYOUT1_CLR(v) (HW_BCH_FLASH3LAYOUT1_WR(HW_BCH_FLASH3LAYOUT1_RD() & ~(v)))
- #define HW_BCH_FLASH3LAYOUT1_TOG(v) (HW_BCH_FLASH3LAYOUT1_WR(HW_BCH_FLASH3LAYOUT1_RD() ^ (v)))
- #else
- #define HW_BCH_FLASH3LAYOUT1_RD() (_rbase->mem32_read(HW_BCH_FLASH3LAYOUT1_ADDR))
- #define HW_BCH_FLASH3LAYOUT1_WR(v) (_rbase->mem32_write(HW_BCH_FLASH3LAYOUT1_ADDR,(v)))
- #define HW_BCH_FLASH3LAYOUT1_SET(v) (HW_BCH_FLASH3LAYOUT1_WR(HW_BCH_FLASH3LAYOUT1_RD() | (v)))
- #define HW_BCH_FLASH3LAYOUT1_CLR(v) (HW_BCH_FLASH3LAYOUT1_WR(HW_BCH_FLASH3LAYOUT1_RD() & ~(v)))
- #define HW_BCH_FLASH3LAYOUT1_TOG(v) (HW_BCH_FLASH3LAYOUT1_WR(HW_BCH_FLASH3LAYOUT1_RD() ^ (v)))
- #endif
- #endif
- /*
- * constants & macros for individual HW_BCH_FLASH3LAYOUT1 bitfields
- */
- /* --- Register HW_BCH_FLASH3LAYOUT1, field PAGE_SIZE */
- #define BP_BCH_FLASH3LAYOUT1_PAGE_SIZE 16
- #define BM_BCH_FLASH3LAYOUT1_PAGE_SIZE 0xFFFF0000
- #ifndef __LANGUAGE_ASM__
- #define BF_BCH_FLASH3LAYOUT1_PAGE_SIZE(v) ((((reg32_t) v) << 16) & BM_BCH_FLASH3LAYOUT1_PAGE_SIZE)
- #else
- #define BF_BCH_FLASH3LAYOUT1_PAGE_SIZE(v) (((v) << 16) & BM_BCH_FLASH3LAYOUT1_PAGE_SIZE)
- #endif
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH3LAYOUT1_PAGE_SIZE(v) (HW_BCH_FLASH3LAYOUT1.B.PAGE_SIZE = (v))
- #endif
- /* --- Register HW_BCH_FLASH3LAYOUT1, field ECCN */
- #define BP_BCH_FLASH3LAYOUT1_ECCN 11
- #define BM_BCH_FLASH3LAYOUT1_ECCN 0x0000F800
- #define BF_BCH_FLASH3LAYOUT1_ECCN(v) (((v) << 11) & BM_BCH_FLASH3LAYOUT1_ECCN)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH3LAYOUT1_ECCN(v) BF_CS1(BCH_FLASH3LAYOUT1, ECCN, v)
- #endif
- #define BV_BCH_FLASH3LAYOUT1_ECCN__NONE 0x0
- #define BV_BCH_FLASH3LAYOUT1_ECCN__ECC2 0x1
- #define BV_BCH_FLASH3LAYOUT1_ECCN__ECC4 0x2
- #define BV_BCH_FLASH3LAYOUT1_ECCN__ECC6 0x3
- #define BV_BCH_FLASH3LAYOUT1_ECCN__ECC8 0x4
- #define BV_BCH_FLASH3LAYOUT1_ECCN__ECC10 0x5
- #define BV_BCH_FLASH3LAYOUT1_ECCN__ECC12 0x6
- #define BV_BCH_FLASH3LAYOUT1_ECCN__ECC14 0x7
- #define BV_BCH_FLASH3LAYOUT1_ECCN__ECC16 0x8
- #define BV_BCH_FLASH3LAYOUT1_ECCN__ECC18 0x9
- #define BV_BCH_FLASH3LAYOUT1_ECCN__ECC20 0xA
- #define BV_BCH_FLASH3LAYOUT1_ECCN__ECC22 0xB
- #define BV_BCH_FLASH3LAYOUT1_ECCN__ECC24 0xC
- #define BV_BCH_FLASH3LAYOUT1_ECCN__ECC26 0xD
- #define BV_BCH_FLASH3LAYOUT1_ECCN__ECC28 0xE
- #define BV_BCH_FLASH3LAYOUT1_ECCN__ECC30 0xF
- #define BV_BCH_FLASH3LAYOUT1_ECCN__ECC32 0x10
- #define BV_BCH_FLASH3LAYOUT1_ECCN__ECC34 0x11
- #define BV_BCH_FLASH3LAYOUT1_ECCN__ECC36 0x12
- #define BV_BCH_FLASH3LAYOUT1_ECCN__ECC38 0x13
- #define BV_BCH_FLASH3LAYOUT1_ECCN__ECC40 0x14
- /* --- Register HW_BCH_FLASH3LAYOUT1, field GF13_0_GF14_1 */
- #define BP_BCH_FLASH3LAYOUT1_GF13_0_GF14_1 10
- #define BM_BCH_FLASH3LAYOUT1_GF13_0_GF14_1 0x00000400
- #define BF_BCH_FLASH3LAYOUT1_GF13_0_GF14_1(v) (((v) << 10) & BM_BCH_FLASH3LAYOUT1_GF13_0_GF14_1)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH3LAYOUT1_GF13_0_GF14_1(v) BF_CS1(BCH_FLASH3LAYOUT1, GF13_0_GF14_1, v)
- #endif
- /* --- Register HW_BCH_FLASH3LAYOUT1, field DATAN_SIZE */
- #define BP_BCH_FLASH3LAYOUT1_DATAN_SIZE 0
- #define BM_BCH_FLASH3LAYOUT1_DATAN_SIZE 0x000003FF
- #define BF_BCH_FLASH3LAYOUT1_DATAN_SIZE(v) (((v) << 0) & BM_BCH_FLASH3LAYOUT1_DATAN_SIZE)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_FLASH3LAYOUT1_DATAN_SIZE(v) BF_CS1(BCH_FLASH3LAYOUT1, DATAN_SIZE, v)
- #endif
- /*
- * HW_BCH_DEBUG0 - Hardware BCH ECC Debug Register0
- */
- #ifndef __LANGUAGE_ASM__
- typedef union {
- reg32_t U;
- struct {
- unsigned DEBUG_REG_SELECT:6;
- unsigned RSVD0:2;
- unsigned BM_KES_TEST_BYPASS:1;
- unsigned KES_DEBUG_STALL:1;
- unsigned KES_DEBUG_STEP:1;
- unsigned KES_STANDALONE:1;
- unsigned KES_DEBUG_KICK:1;
- unsigned KES_DEBUG_MODE4K:1;
- unsigned KES_DEBUG_PAYLOAD_FLAG:1;
- unsigned KES_DEBUG_SHIFT_SYND:1;
- unsigned KES_DEBUG_SYNDROME_SYMBOL:9;
- unsigned RSVD1:7;
- } B;
- } hw_bch_debug0_t;
- #endif
- /*
- * constants & macros for entire HW_BCH_DEBUG0 register
- */
- #define HW_BCH_DEBUG0_ADDR (0x00114100)
- #define HW_BCH_DEBUG0_SET_ADDR (0x00114104)
- #define HW_BCH_DEBUG0_CLR_ADDR (0x00114108)
- #define HW_BCH_DEBUG0_TOG_ADDR (0x0011410c)
- #ifndef __LANGUAGE_ASM__
- #ifndef ROCOO_TEST
- #define HW_BCH_DEBUG0 (*(volatile hw_bch_debug0_t *) HW_BCH_DEBUG0_ADDR)
- #define HW_BCH_DEBUG0_RD() (HW_BCH_DEBUG0.U)
- #define HW_BCH_DEBUG0_WR(v) (HW_BCH_DEBUG0.U = (v))
- #define HW_BCH_DEBUG0_SET(v) ((*(volatile reg32_t *) HW_BCH_DEBUG0_SET_ADDR) = (v))
- #define HW_BCH_DEBUG0_CLR(v) ((*(volatile reg32_t *) HW_BCH_DEBUG0_CLR_ADDR) = (v))
- #define HW_BCH_DEBUG0_TOG(v) ((*(volatile reg32_t *) HW_BCH_DEBUG0_TOG_ADDR) = (v))
- #else
- #define HW_BCH_DEBUG0_RD() (_rbase->mem32_read(HW_BCH_DEBUG0_ADDR))
- #define HW_BCH_DEBUG0_WR(v) (_rbase->mem32_write(HW_BCH_DEBUG0_ADDR,(v)))
- #define HW_BCH_DEBUG0_SET(v) (_rbase->mem32_write(HW_BCH_DEBUG0_SET_ADDR,(v)))
- #define HW_BCH_DEBUG0_CLR(v) (_rbase->mem32_write(HW_BCH_DEBUG0_CLR_ADDR,(v)))
- #define HW_BCH_DEBUG0_TOG(v) (_rbase->mem32_write(HW_BCH_DEBUG0_TOG_ADDR,(v)))
- #endif
- #endif
- /*
- * constants & macros for individual HW_BCH_DEBUG0 bitfields
- */
- /* --- Register HW_BCH_DEBUG0, field RSVD1 */
- #define BP_BCH_DEBUG0_RSVD1 25
- #define BM_BCH_DEBUG0_RSVD1 0xFE000000
- #ifndef __LANGUAGE_ASM__
- #define BF_BCH_DEBUG0_RSVD1(v) ((((reg32_t) v) << 25) & BM_BCH_DEBUG0_RSVD1)
- #else
- #define BF_BCH_DEBUG0_RSVD1(v) (((v) << 25) & BM_BCH_DEBUG0_RSVD1)
- #endif
- /* --- Register HW_BCH_DEBUG0, field KES_DEBUG_SYNDROME_SYMBOL */
- #define BP_BCH_DEBUG0_KES_DEBUG_SYNDROME_SYMBOL 16
- #define BM_BCH_DEBUG0_KES_DEBUG_SYNDROME_SYMBOL 0x01FF0000
- #define BF_BCH_DEBUG0_KES_DEBUG_SYNDROME_SYMBOL(v) (((v) << 16) & BM_BCH_DEBUG0_KES_DEBUG_SYNDROME_SYMBOL)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_DEBUG0_KES_DEBUG_SYNDROME_SYMBOL(v) BF_CS1(BCH_DEBUG0, KES_DEBUG_SYNDROME_SYMBOL, v)
- #endif
- #define BV_BCH_DEBUG0_KES_DEBUG_SYNDROME_SYMBOL__NORMAL 0x0
- #define BV_BCH_DEBUG0_KES_DEBUG_SYNDROME_SYMBOL__TEST_MODE 0x1
- /* --- Register HW_BCH_DEBUG0, field KES_DEBUG_SHIFT_SYND */
- #define BP_BCH_DEBUG0_KES_DEBUG_SHIFT_SYND 15
- #define BM_BCH_DEBUG0_KES_DEBUG_SHIFT_SYND 0x00008000
- #define BF_BCH_DEBUG0_KES_DEBUG_SHIFT_SYND(v) (((v) << 15) & BM_BCH_DEBUG0_KES_DEBUG_SHIFT_SYND)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_DEBUG0_KES_DEBUG_SHIFT_SYND(v) BF_CS1(BCH_DEBUG0, KES_DEBUG_SHIFT_SYND, v)
- #endif
- /* --- Register HW_BCH_DEBUG0, field KES_DEBUG_PAYLOAD_FLAG */
- #define BP_BCH_DEBUG0_KES_DEBUG_PAYLOAD_FLAG 14
- #define BM_BCH_DEBUG0_KES_DEBUG_PAYLOAD_FLAG 0x00004000
- #define BF_BCH_DEBUG0_KES_DEBUG_PAYLOAD_FLAG(v) (((v) << 14) & BM_BCH_DEBUG0_KES_DEBUG_PAYLOAD_FLAG)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_DEBUG0_KES_DEBUG_PAYLOAD_FLAG(v) BF_CS1(BCH_DEBUG0, KES_DEBUG_PAYLOAD_FLAG, v)
- #endif
- #define BV_BCH_DEBUG0_KES_DEBUG_PAYLOAD_FLAG__DATA 0x1
- #define BV_BCH_DEBUG0_KES_DEBUG_PAYLOAD_FLAG__AUX 0x1
- /* --- Register HW_BCH_DEBUG0, field KES_DEBUG_MODE4K */
- #define BP_BCH_DEBUG0_KES_DEBUG_MODE4K 13
- #define BM_BCH_DEBUG0_KES_DEBUG_MODE4K 0x00002000
- #define BF_BCH_DEBUG0_KES_DEBUG_MODE4K(v) (((v) << 13) & BM_BCH_DEBUG0_KES_DEBUG_MODE4K)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_DEBUG0_KES_DEBUG_MODE4K(v) BF_CS1(BCH_DEBUG0, KES_DEBUG_MODE4K, v)
- #endif
- #define BV_BCH_DEBUG0_KES_DEBUG_MODE4K__4k 0x1
- #define BV_BCH_DEBUG0_KES_DEBUG_MODE4K__2k 0x1
- /* --- Register HW_BCH_DEBUG0, field KES_DEBUG_KICK */
- #define BP_BCH_DEBUG0_KES_DEBUG_KICK 12
- #define BM_BCH_DEBUG0_KES_DEBUG_KICK 0x00001000
- #define BF_BCH_DEBUG0_KES_DEBUG_KICK(v) (((v) << 12) & BM_BCH_DEBUG0_KES_DEBUG_KICK)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_DEBUG0_KES_DEBUG_KICK(v) BF_CS1(BCH_DEBUG0, KES_DEBUG_KICK, v)
- #endif
- /* --- Register HW_BCH_DEBUG0, field KES_STANDALONE */
- #define BP_BCH_DEBUG0_KES_STANDALONE 11
- #define BM_BCH_DEBUG0_KES_STANDALONE 0x00000800
- #define BF_BCH_DEBUG0_KES_STANDALONE(v) (((v) << 11) & BM_BCH_DEBUG0_KES_STANDALONE)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_DEBUG0_KES_STANDALONE(v) BF_CS1(BCH_DEBUG0, KES_STANDALONE, v)
- #endif
- #define BV_BCH_DEBUG0_KES_STANDALONE__NORMAL 0x0
- #define BV_BCH_DEBUG0_KES_STANDALONE__TEST_MODE 0x1
- /* --- Register HW_BCH_DEBUG0, field KES_DEBUG_STEP */
- #define BP_BCH_DEBUG0_KES_DEBUG_STEP 10
- #define BM_BCH_DEBUG0_KES_DEBUG_STEP 0x00000400
- #define BF_BCH_DEBUG0_KES_DEBUG_STEP(v) (((v) << 10) & BM_BCH_DEBUG0_KES_DEBUG_STEP)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_DEBUG0_KES_DEBUG_STEP(v) BF_CS1(BCH_DEBUG0, KES_DEBUG_STEP, v)
- #endif
- /* --- Register HW_BCH_DEBUG0, field KES_DEBUG_STALL */
- #define BP_BCH_DEBUG0_KES_DEBUG_STALL 9
- #define BM_BCH_DEBUG0_KES_DEBUG_STALL 0x00000200
- #define BF_BCH_DEBUG0_KES_DEBUG_STALL(v) (((v) << 9) & BM_BCH_DEBUG0_KES_DEBUG_STALL)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_DEBUG0_KES_DEBUG_STALL(v) BF_CS1(BCH_DEBUG0, KES_DEBUG_STALL, v)
- #endif
- #define BV_BCH_DEBUG0_KES_DEBUG_STALL__NORMAL 0x0
- #define BV_BCH_DEBUG0_KES_DEBUG_STALL__WAIT 0x1
- /* --- Register HW_BCH_DEBUG0, field BM_KES_TEST_BYPASS */
- #define BP_BCH_DEBUG0_BM_KES_TEST_BYPASS 8
- #define BM_BCH_DEBUG0_BM_KES_TEST_BYPASS 0x00000100
- #define BF_BCH_DEBUG0_BM_KES_TEST_BYPASS(v) (((v) << 8) & BM_BCH_DEBUG0_BM_KES_TEST_BYPASS)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_DEBUG0_BM_KES_TEST_BYPASS(v) BF_CS1(BCH_DEBUG0, BM_KES_TEST_BYPASS, v)
- #endif
- #define BV_BCH_DEBUG0_BM_KES_TEST_BYPASS__NORMAL 0x0
- #define BV_BCH_DEBUG0_BM_KES_TEST_BYPASS__TEST_MODE 0x1
- /* --- Register HW_BCH_DEBUG0, field RSVD0 */
- #define BP_BCH_DEBUG0_RSVD0 6
- #define BM_BCH_DEBUG0_RSVD0 0x000000C0
- #define BF_BCH_DEBUG0_RSVD0(v) (((v) << 6) & BM_BCH_DEBUG0_RSVD0)
- /* --- Register HW_BCH_DEBUG0, field DEBUG_REG_SELECT */
- #define BP_BCH_DEBUG0_DEBUG_REG_SELECT 0
- #define BM_BCH_DEBUG0_DEBUG_REG_SELECT 0x0000003F
- #define BF_BCH_DEBUG0_DEBUG_REG_SELECT(v) (((v) << 0) & BM_BCH_DEBUG0_DEBUG_REG_SELECT)
- #ifndef __LANGUAGE_ASM__
- #define BW_BCH_DEBUG0_DEBUG_REG_SELECT(v) BF_CS1(BCH_DEBUG0, DEBUG_REG_SELECT, v)
- #endif
- /*
- * HW_BCH_DBGKESREAD - KES Debug Read Register
- */
- #ifndef __LANGUAGE_ASM__
- typedef union {
- reg32_t U;
- struct {
- unsigned VALUES:32;
- } B;
- } hw_bch_dbgkesread_t;
- #endif
- /*
- * constants & macros for entire HW_BCH_DBGKESREAD register
- */
- #define HW_BCH_DBGKESREAD_ADDR (0x00114110)
- #ifndef __LANGUAGE_ASM__
- #ifndef ROCOO_TEST
- #define HW_BCH_DBGKESREAD (*(volatile hw_bch_dbgkesread_t *) HW_BCH_DBGKESREAD_ADDR)
- #define HW_BCH_DBGKESREAD_RD() (HW_BCH_DBGKESREAD.U)
- #else
- #define HW_BCH_DBGKESREAD_RD() (_rbase->mem32_read(HW_BCH_DBGKESREAD_ADDR))
- #endif
- #endif
- /*
- * constants & macros for individual HW_BCH_DBGKESREAD bitfields
- */
- /* --- Register HW_BCH_DBGKESREAD, field VALUES */
- #define BP_BCH_DBGKESREAD_VALUES 0
- #define BM_BCH_DBGKESREAD_VALUES 0xFFFFFFFF
- #ifndef __LANGUAGE_ASM__
- #define BF_BCH_DBGKESREAD_VALUES(v) ((reg32_t) v)
- #else
- #define BF_BCH_DBGKESREAD_VALUES(v) (v)
- #endif
- /*
- * HW_BCH_DBGCSFEREAD - Chien Search Debug Read Register
- */
- #ifndef __LANGUAGE_ASM__
- typedef union {
- reg32_t U;
- struct {
- unsigned VALUES:32;
- } B;
- } hw_bch_dbgcsferead_t;
- #endif
- /*
- * constants & macros for entire HW_BCH_DBGCSFEREAD register
- */
- #define HW_BCH_DBGCSFEREAD_ADDR (0x00114120)
- #ifndef __LANGUAGE_ASM__
- #ifndef ROCOO_TEST
- #define HW_BCH_DBGCSFEREAD (*(volatile hw_bch_dbgcsferead_t *) HW_BCH_DBGCSFEREAD_ADDR)
- #define HW_BCH_DBGCSFEREAD_RD() (HW_BCH_DBGCSFEREAD.U)
- #else
- #define HW_BCH_DBGCSFEREAD_RD() (_rbase->mem32_read(HW_BCH_DBGCSFEREAD_ADDR))
- #endif
- #endif
- /*
- * constants & macros for individual HW_BCH_DBGCSFEREAD bitfields
- */
- /* --- Register HW_BCH_DBGCSFEREAD, field VALUES */
- #define BP_BCH_DBGCSFEREAD_VALUES 0
- #define BM_BCH_DBGCSFEREAD_VALUES 0xFFFFFFFF
- #ifndef __LANGUAGE_ASM__
- #define BF_BCH_DBGCSFEREAD_VALUES(v) ((reg32_t) v)
- #else
- #define BF_BCH_DBGCSFEREAD_VALUES(v) (v)
- #endif
- /*
- * HW_BCH_DBGSYNDGENREAD - Syndrome Generator Debug Read Register
- */
- #ifndef __LANGUAGE_ASM__
- typedef union {
- reg32_t U;
- struct {
- unsigned VALUES:32;
- } B;
- } hw_bch_dbgsyndgenread_t;
- #endif
- /*
- * constants & macros for entire HW_BCH_DBGSYNDGENREAD register
- */
- #define HW_BCH_DBGSYNDGENREAD_ADDR (0x00114130)
- #ifndef __LANGUAGE_ASM__
- #ifndef ROCOO_TEST
- #define HW_BCH_DBGSYNDGENREAD (*(volatile hw_bch_dbgsyndgenread_t *) HW_BCH_DBGSYNDGENREAD_ADDR)
- #define HW_BCH_DBGSYNDGENREAD_RD() (HW_BCH_DBGSYNDGENREAD.U)
- #else
- #define HW_BCH_DBGSYNDGENREAD_RD() (_rbase->mem32_read(HW_BCH_DBGSYNDGENREAD_ADDR))
- #endif
- #endif
- /*
- * constants & macros for individual HW_BCH_DBGSYNDGENREAD bitfields
- */
- /* --- Register HW_BCH_DBGSYNDGENREAD, field VALUES */
- #define BP_BCH_DBGSYNDGENREAD_VALUES 0
- #define BM_BCH_DBGSYNDGENREAD_VALUES 0xFFFFFFFF
- #ifndef __LANGUAGE_ASM__
- #define BF_BCH_DBGSYNDGENREAD_VALUES(v) ((reg32_t) v)
- #else
- #define BF_BCH_DBGSYNDGENREAD_VALUES(v) (v)
- #endif
- /*
- * HW_BCH_DBGAHBMREAD - Bus Master and ECC Controller Debug Read Register
- */
- #ifndef __LANGUAGE_ASM__
- typedef union {
- reg32_t U;
- struct {
- unsigned VALUES:32;
- } B;
- } hw_bch_dbgahbmread_t;
- #endif
- /*
- * constants & macros for entire HW_BCH_DBGAHBMREAD register
- */
- #define HW_BCH_DBGAHBMREAD_ADDR (0x00114140)
- #ifndef __LANGUAGE_ASM__
- #ifndef ROCOO_TEST
- #define HW_BCH_DBGAHBMREAD (*(volatile hw_bch_dbgahbmread_t *) HW_BCH_DBGAHBMREAD_ADDR)
- #define HW_BCH_DBGAHBMREAD_RD() (HW_BCH_DBGAHBMREAD.U)
- #else
- #define HW_BCH_DBGAHBMREAD_RD() (_rbase->mem32_read(HW_BCH_DBGAHBMREAD_ADDR))
- #endif
- #endif
- /*
- * constants & macros for individual HW_BCH_DBGAHBMREAD bitfields
- */
- /* --- Register HW_BCH_DBGAHBMREAD, field VALUES */
- #define BP_BCH_DBGAHBMREAD_VALUES 0
- #define BM_BCH_DBGAHBMREAD_VALUES 0xFFFFFFFF
- #ifndef __LANGUAGE_ASM__
- #define BF_BCH_DBGAHBMREAD_VALUES(v) ((reg32_t) v)
- #else
- #define BF_BCH_DBGAHBMREAD_VALUES(v) (v)
- #endif
- /*
- * HW_BCH_BLOCKNAME - Block Name Register
- */
- #ifndef __LANGUAGE_ASM__
- typedef union {
- reg32_t U;
- struct {
- unsigned NAME:32;
- } B;
- } hw_bch_blockname_t;
- #endif
- /*
- * constants & macros for entire HW_BCH_BLOCKNAME register
- */
- #define HW_BCH_BLOCKNAME_ADDR (0x00114150)
- #ifndef __LANGUAGE_ASM__
- #ifndef ROCOO_TEST
- #define HW_BCH_BLOCKNAME (*(volatile hw_bch_blockname_t *) HW_BCH_BLOCKNAME_ADDR)
- #define HW_BCH_BLOCKNAME_RD() (HW_BCH_BLOCKNAME.U)
- #else
- #define HW_BCH_BLOCKNAME_RD() (_rbase->mem32_read(HW_BCH_BLOCKNAME_ADDR))
- #endif
- #endif
- /*
- * constants & macros for individual HW_BCH_BLOCKNAME bitfields
- */
- /* --- Register HW_BCH_BLOCKNAME, field NAME */
- #define BP_BCH_BLOCKNAME_NAME 0
- #define BM_BCH_BLOCKNAME_NAME 0xFFFFFFFF
- #ifndef __LANGUAGE_ASM__
- #define BF_BCH_BLOCKNAME_NAME(v) ((reg32_t) v)
- #else
- #define BF_BCH_BLOCKNAME_NAME(v) (v)
- #endif
- /*
- * HW_BCH_VERSION - BCH Version Register
- */
- #ifndef __LANGUAGE_ASM__
- typedef union {
- reg32_t U;
- struct {
- unsigned STEP:16;
- unsigned MINOR:8;
- unsigned MAJOR:8;
- } B;
- } hw_bch_version_t;
- #endif
- /*
- * constants & macros for entire HW_BCH_VERSION register
- */
- #define HW_BCH_VERSION_ADDR (0x00114160)
- #ifndef __LANGUAGE_ASM__
- #ifndef ROCOO_TEST
- #define HW_BCH_VERSION (*(volatile hw_bch_version_t *) HW_BCH_VERSION_ADDR)
- #define HW_BCH_VERSION_RD() (HW_BCH_VERSION.U)
- #else
- #define HW_BCH_VERSION_RD() (_rbase->mem32_read(HW_BCH_VERSION_ADDR))
- #endif
- #endif
- /*
- * constants & macros for individual HW_BCH_VERSION bitfields
- */
- /* --- Register HW_BCH_VERSION, field MAJOR */
- #define BP_BCH_VERSION_MAJOR 24
- #define BM_BCH_VERSION_MAJOR 0xFF000000
- #ifndef __LANGUAGE_ASM__
- #define BF_BCH_VERSION_MAJOR(v) ((((reg32_t) v) << 24) & BM_BCH_VERSION_MAJOR)
- #else
- #define BF_BCH_VERSION_MAJOR(v) (((v) << 24) & BM_BCH_VERSION_MAJOR)
- #endif
- /* --- Register HW_BCH_VERSION, field MINOR */
- #define BP_BCH_VERSION_MINOR 16
- #define BM_BCH_VERSION_MINOR 0x00FF0000
- #define BF_BCH_VERSION_MINOR(v) (((v) << 16) & BM_BCH_VERSION_MINOR)
- /* --- Register HW_BCH_VERSION, field STEP */
- #define BP_BCH_VERSION_STEP 0
- #define BM_BCH_VERSION_STEP 0x0000FFFF
- #define BF_BCH_VERSION_STEP(v) (((v) << 0) & BM_BCH_VERSION_STEP)
- #endif /* _BCH_H */
- ////////////////////////////////////////////////////////////////////////////////
|