Changeset a35b458 in mainline for boot/arch/ppc32/src/asm.S


Ignore:
Timestamp:
2018-03-02T20:10:49Z (6 years ago)
Author:
Jiří Zárevúcky <zarevucky.jiri@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
f1380b7
Parents:
3061bc1
git-author:
Jiří Zárevúcky <zarevucky.jiri@…> (2018-02-28 17:38:31)
git-committer:
Jiří Zárevúcky <zarevucky.jiri@…> (2018-03-02 20:10:49)
Message:

style: Remove trailing whitespace on _all_ lines, including empty ones, for particular file types.

Command used: tools/srepl '\s\+$' '' -- *.c *.h *.py *.sh *.s *.S *.ag

Currently, whitespace on empty lines is very inconsistent.
There are two basic choices: Either remove the whitespace, or keep empty lines
indented to the level of surrounding code. The former is AFAICT more common,
and also much easier to do automatically.

Alternatively, we could write script for automatic indentation, and use that
instead. However, if such a script exists, it's possible to use the indented
style locally, by having the editor apply relevant conversions on load/save,
without affecting remote repository. IMO, it makes more sense to adopt
the simpler rule.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • boot/arch/ppc32/src/asm.S

    r3061bc1 ra35b458  
    4848        li \reg, 0
    4949        sync
    50        
     50
    5151        .rept 64
    5252                tlbie \reg
    5353                addi \reg, \reg, 0x1000
    5454        .endr
    55        
     55
    5656        eieio
    5757        tlbsync
     
    6161.macro BAT_COMPUTE base size mask lower upper
    6262        # less than 128 KB -> no BAT
    63        
     63
    6464        lis \upper, 0x0002
    6565        cmpw \size, \upper
    6666        blt no_bat
    67        
     67
    6868        # mask = total >> 18
    69        
     69
    7070        li \upper, 18
    7171        srw \mask, \size, \upper
    72        
     72
    7373        # create Block Length mask by replicating
    7474        # the leading logical one 14 times
    75        
     75
    7676        li \upper, 14
    7777        mtctr \mask
    7878        li \upper, 1
    79        
     79
    8080        0:
    8181                # mask = (mask >> 1) | mask
    82                
     82
    8383                srw \lower, \mask, \upper
    8484                or \mask, \mask, \lower
    85                
     85
    8686                bdnz 0b
    87        
     87
    8888        # mask = mask & 0x07ff
    8989        # (BAT can map up to 256 MB)
    90        
     90
    9191        andi. \mask, \mask, 0x07ff
    92        
     92
    9393        # mask = (mask << 2) | 0x0002
    9494        # (priviledged access only)
    95        
     95
    9696        li \upper, 2
    9797        slw \mask, \mask, \upper
    9898        ori \mask, \mask, 0x0002
    99        
     99
    100100        lis \upper, (0x8000 + \base)
    101101        or \upper, \upper, \mask
    102        
     102
    103103        lis \lower, \base
    104104        ori \lower, \lower, 0x0002
     
    111111        addi r4, r4, ofw_cif@l
    112112        stw r5, 0(r4)
    113        
     113
    114114        bl ofw_init
    115115        b bootstrap
     
    127127        # r5 = pages to translate
    128128        # r6 = real mode meeting point (physical address)
    129        
     129
    130130        # disable interrupts
    131        
     131
    132132        mfmsr r31
    133133        rlwinm r31, r31, 0, 17, 15
    134134        mtmsr r31
    135        
     135
    136136        # set real mode meeting point physical address
    137        
     137
    138138        mtspr srr0, r6
    139        
     139
    140140        # jump to real_mode
    141        
     141
    142142        mfmsr r31
    143143        lis r30, ~0@h
     
    145145        and r31, r31, r30
    146146        mtspr srr1, r31
    147        
     147
    148148        sync
    149149        isync
     
    155155.align PAGE_WIDTH
    156156SYMBOL(real_mode)
    157        
     157
    158158        # arguments:
    159159        # r3 = bootinfo (physical address)
    160160        # r4 = translate table (physical address)
    161161        # r5 = pages to translate
    162        
     162
    163163        # move the images of components to the proper
    164164        # location using the translate table
    165        
     165
    166166        li r31, PAGE_SIZE >> 2
    167167        li r30, 0
    168        
     168
    169169        page_copy:
    170                
     170
    171171                cmpwi r5, 0
    172172                beq copy_end
    173                
     173
    174174                mtctr r31
    175175                lwz r29, 0(r4)
    176                
     176
    177177                copy_loop:
    178                        
     178
    179179                        lwz r28, 0(r29)
    180180                        stw r28, 0(r30)
    181                        
     181
    182182                        SMC_COHERENCY r30
    183                        
     183
    184184                        addi r29, r29, 4
    185185                        addi r30, r30, 4
    186                        
     186
    187187                        bdnz copy_loop
    188                
     188
    189189                addi r4, r4, 4
    190190                subi r5, r5, 1
    191191                b page_copy
    192        
     192
    193193        copy_end:
    194        
     194
    195195        # initially fill segment registers
    196        
     196
    197197        li r31, 0
    198        
     198
    199199        li r29, 8
    200200        mtctr r29
    201201        li r30, 0                     # ASID 0 (VSIDs 0 .. 7)
    202        
     202
    203203        seg_fill_uspace:
    204        
     204
    205205                mtsrin r30, r31
    206206                addi r30, r30, 1
    207207                addis r31, r31, 0x1000    # move to next SR
    208                
     208
    209209                bdnz seg_fill_uspace
    210        
     210
    211211        li r29, 8
    212212        mtctr r29
    213213        lis r30, 0x4000               # priviledged access only
    214214        ori r30, r30, 8               # ASID 0 (VSIDs 8 .. 15)
    215        
     215
    216216        seg_fill_kernel:
    217        
     217
    218218                mtsrin r30, r31
    219219                addi r30, r30, 1
    220220                addis r31, r31, 0x1000    # move to next SR
    221                
     221
    222222                bdnz seg_fill_kernel
    223        
     223
    224224        # invalidate block address translation registers
    225        
     225
    226226        li r30, 0
    227        
     227
    228228        mtspr ibat0u, r30
    229229        mtspr ibat0l, r30
    230        
     230
    231231        mtspr ibat1u, r30
    232232        mtspr ibat1l, r30
    233        
     233
    234234        mtspr ibat2u, r30
    235235        mtspr ibat2l, r30
    236        
     236
    237237        mtspr ibat3u, r30
    238238        mtspr ibat3l, r30
    239        
     239
    240240        mtspr dbat0u, r30
    241241        mtspr dbat0l, r30
    242        
     242
    243243        mtspr dbat1u, r30
    244244        mtspr dbat1l, r30
    245        
     245
    246246        mtspr dbat2u, r30
    247247        mtspr dbat2l, r30
    248        
     248
    249249        mtspr dbat3u, r30
    250250        mtspr dbat3l, r30
    251        
     251
    252252        # create empty Page Hash Table
    253253        # on top of memory, size 64 KB
    254        
     254
    255255        lwz r31, 4(r3)                # r31 = memory size
    256        
     256
    257257        lis r30, 65536@h
    258258        ori r30, r30, 65536@l         # r30 = 65536
    259        
     259
    260260        subi r29, r30, 1              # r29 = 65535
    261        
     261
    262262        sub r31, r31, r30
    263263        andc r31, r31, r29            # pht = ALIGN_DOWN(memory_size - 65536, 65536)
    264        
     264
    265265        mtsdr1 r31
    266        
     266
    267267        li r29, 2
    268268        srw r30, r30, r29             # r30 = 16384
    269269        li r29, 0
    270        
     270
    271271        pht_clear:
    272                
     272
    273273                # write zeroes
    274                
     274
    275275                stw r29, 0(r31)
    276276                FLUSH_DCACHE r31
    277                
     277
    278278                addi r31, r31, 4
    279279                subi r30, r30, 4
    280                
     280
    281281                cmpwi r30, 0
    282282                beq clear_end
    283                
     283
    284284                bdnz pht_clear
    285                
     285
    286286        clear_end:
    287        
     287
    288288        # create BAT identity mapping
    289        
     289
    290290        lwz r31, 4(r3)                # r31 = memory size
    291        
     291
    292292        lis r30, 268435456@h
    293293        ori r30, r30, 268435456@l     # r30 = 256 MB
    294        
     294
    295295        # BAT0
    296        
     296
    297297        # r29 = min(r31, r30)
    298        
     298
    299299        cmpw r31, r30
    300300        blt bat0_r31
    301        
     301
    302302                mr r29, r30
    303303                b bat0_r30
    304        
     304
    305305        bat0_r31:
    306        
     306
    307307                mr r29, r31
    308        
     308
    309309        bat0_r30:
    310        
     310
    311311        BAT_COMPUTE 0x0000 r29 r28 r27 r26
    312312        mtspr ibat0u, r26
    313313        mtspr ibat0l, r27
    314        
     314
    315315        mtspr dbat0u, r26
    316316        mtspr dbat0l, r27
    317        
     317
    318318        # BAT1
    319        
     319
    320320        sub r31, r31, r29             # r31 = r31 - r29
    321        
     321
    322322        # r29 = min(r31, r30)
    323        
     323
    324324        cmpw r31, r30
    325325        blt bat1_r31
    326        
     326
    327327                mr r29, r30
    328328                b bat1_r30
    329        
     329
    330330        bat1_r31:
    331        
     331
    332332                mr r29, r31
    333        
     333
    334334        bat1_r30:
    335        
     335
    336336        BAT_COMPUTE 0x1000 r29 r28 r27 r26
    337337        mtspr ibat1u, r26
    338338        mtspr ibat1l, r27
    339        
     339
    340340        mtspr dbat1u, r26
    341341        mtspr dbat1l, r27
    342        
     342
    343343        # BAT2
    344        
     344
    345345        sub r31, r31, r29             # r31 = r31 - r29
    346        
     346
    347347        # r29 = min(r31, r30)
    348        
     348
    349349        cmpw r31, r30
    350350        blt bat2_r31
    351        
     351
    352352                mr r29, r30
    353353                b bat2_r30
    354        
     354
    355355        bat2_r31:
    356        
     356
    357357                mr r29, r31
    358        
     358
    359359        bat2_r30:
    360        
     360
    361361        BAT_COMPUTE 0x2000 r29 r28 r27 r26
    362362        mtspr ibat2u, r26
    363363        mtspr ibat2l, r27
    364        
     364
    365365        mtspr dbat2u, r26
    366366        mtspr dbat2l, r27
    367        
     367
    368368        # BAT3
    369        
     369
    370370        sub r31, r31, r29             # r31 = r31 - r29
    371        
     371
    372372        # r29 = min(r31, r30)
    373        
     373
    374374        cmpw r31, r30
    375375        blt bat3_r31
    376        
     376
    377377                mr r29, r30
    378378                b bat3_r30
    379        
     379
    380380        bat3_r31:
    381        
     381
    382382                mr r29, r31
    383        
     383
    384384        bat3_r30:
    385        
     385
    386386        BAT_COMPUTE 0x3000 r29 r28 r27 r26
    387387        mtspr ibat3u, r26
    388388        mtspr ibat3l, r27
    389        
     389
    390390        mtspr dbat3u, r26
    391391        mtspr dbat3l, r27
    392        
     392
    393393        no_bat:
    394        
     394
    395395        # flush TLB
    396        
     396
    397397        TLB_FLUSH r31
    398        
     398
    399399        # start the kernel
    400400        #
     
    404404        # sprg3 = physical memory size
    405405        # sp = 0 (enforces the usage of sprg0 as exception stack)
    406        
     406
    407407        lis r31, PA2KA(BOOT_OFFSET)@ha
    408408        addi r31, r31, PA2KA(BOOT_OFFSET)@l
    409409        mtspr srr0, r31
    410        
     410
    411411        lis r31, BOOT_OFFSET@ha
    412412        addi r31, r31, BOOT_OFFSET@l
    413413        mtsprg0 r31
    414        
     414
    415415        # bootinfo starts with a 64 bit integer containing
    416416        # the physical memory size, get the lower 4 bytes
    417        
     417
    418418        lwz r31, 4(r3)
    419419        mtsprg3 r31
    420        
     420
    421421        li sp, 0
    422        
     422
    423423        mfmsr r31
    424424        ori r31, r31, (msr_ir | msr_dr)@l
    425425        mtspr srr1, r31
    426        
     426
    427427        sync
    428428        isync
Note: See TracChangeset for help on using the changeset viewer.