mpc5748g enet d-cache

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

mpc5748g enet d-cache

Jump to solution
1,916 Views
tomyqg
Contributor II

Hi, everyone!

How to configure the D-cache for memory and put the enet Rx Description and Tx Description in the un-cachable memory space on MPC5748G?

Labels (1)
Tags (1)
0 Kudos
1 Solution
1,422 Views
tomyqg
Contributor II

Thank you very much, SMPU is the point!

View solution in original post

0 Kudos
2 Replies
1,422 Views
lukaszadrapa
NXP TechSupport
NXP TechSupport

Hi,

data cache can be enabled in this way:

__dcache_cfg:

        e_li r5, 0x2

        mtspr 1010,r5

        e_li r7, 0x4

        e_li r8, 0x2

        e_lis    r11,0xFFFF

        e_or2i    r11,0xFFFB

__dcache_inv:

        mfspr r9, 1010

        and.  r10, r7, r9

        e_beq   __dcache_no_abort

        and.  r10, r11, r9

        mtspr 1010, r10

        e_b __icache_cfg

__dcache_no_abort:

        and.  r10, r8, r9

        e_bne __dcache_inv

        mfspr r5, 1010

        e_ori   r5, r5, 0x0001

        se_isync

        msync

        mtspr 1010, r5

If you want to configure certain address space as cache inhibited, use SMPU module. Simple example for SMPU configuration can be found here:

Example MPC5748G SMPU initialization

"Cache Inhibit" bit CI can be found in Word 3 of the descriptor (register SMPUx_RGDn_WRD3).

Regards,

Lukas

0 Kudos
1,423 Views
tomyqg
Contributor II

Thank you very much, SMPU is the point!

0 Kudos