Quantcast
Channel: Processors forum - Recent Threads
Viewing all articles
Browse latest Browse all 17527

CCS/EVMK2H: memory allocation

$
0
0

Part Number: EVMK2H

Tool/software: Code Composer Studio

Hi, all,

I have some confusion about Linux memory allocation:

1.The memory allocation in DTB is as follows. Does that mean Arm can use the memory 0x80000000~0x20000000, and DSP can use the memory 0xa0000000~0x20000000 ?

        1)keystone.dtsi
memory {
  reg = <0x00000000 0x80000000 0x00000000 0x20000000>;
        2)k2hk.dtsi
dspmem: dspmem {
   compatible = "linux,rproc-user";
   mem  = <0x0c000000 0x000600000
     0xa0000000 0x20000000>;
   label = "dspmem";

2. If I set U-boot environment mem_reserve =512M,  Does that mean reserve 512M from 0xE0000000 for DSP applications and retain first 1.5GB (from 0x80000000) for Linux ??

If I both set the 1 and 2, which one will Linux use??  Which section of memory can be safely used by DSP??

That confuse me a long time . Looking forward to your reply. Thank you!

Here is my Linux start log:

-------------------------------------------------------------------------------

U-Boot 2013.01 (Sep 30 2015 - 00:58:09)
I2C:   ready
SPD csum OK; in SPD: 19 A7; computed 00000019 A7
DDR3A Speed will be configured for 1333 Operation.
Detected SO-DIMM [SQR-SD3T-2G1333SED]
DDR3 speed 1333
DRAM: 2 GiB (includes reported below)
Reseting entire DDR3 memory to 0 ...
DRAM:  2 GiB
NAND:  512 MiB
Net:   K2HK_EMAC, K2HK_EMAC1, K2HK_EMAC2, K2HK_EMAC3
Hit any key to stop autoboot:  0
Creating 1 MTD partitions on "nand0":
0x000000180000-0x000020000000 : "mtd=2"
UBI: attaching mtd1 to ubi0
UBI: physical eraseblock size:   131072 bytes (128 KiB)
UBI: logical eraseblock size:    126976 bytes
UBI: smallest flash I/O unit:    2048
UBI: VID header offset:          2048 (aligned 2048)
UBI: data offset:                4096
UBI: attached mtd1 to ubi0
UBI: MTD device name:            "mtd=2"
UBI: MTD device size:            510 MiB
UBI: number of good PEBs:        4080
UBI: number of bad PEBs:         4
UBI: max. allowed volumes:       128
UBI: wear-leveling threshold:    4096
UBI: number of internal volumes: 1
UBI: number of user volumes:     3
UBI: available PEBs:             0
UBI: total number of reserved PEBs: 4080
UBI: number of PEBs reserved for bad PEB handling: 40
UBI: max/mean erase counter: 16/3
UBIFS: mounted UBI device 0, volume 0, name "boot"
UBIFS: mounted read-only
UBIFS: file system size:   4571136 bytes (4464 KiB, 4 MiB, 36 LEBs)
UBIFS: journal size:       1142785 bytes (1116 KiB, 1 MiB, 8 LEBs)
UBIFS: media format:       w4/r0 (latest is w4/r0)
UBIFS: default compressor: LZO
UBIFS: reserved for root:  0 bytes (0 KiB)
Loading file 'securedb.key.bin' to addr 0x0c000000 with size 28 (0x0000001c)...
Done
Loading file 'uImage-k2hk-evm.dtb' to addr 0x87000000 with size 55893 (0x0000da55)...
Done
Loading file 'skern-k2hk-evm.bin' to addr 0x0c5f0000 with size 45056 (0x0000b000)...
Done
Loading file 'uImage-keystone-evm.bin' to addr 0x88000000 with size 4175312 (0x003fb5d0)...
Done
## installed monitor, freq [200000000], status 0
## Booting kernel from Legacy Image at 88000000 ...
   Image Name:   Linux-3.10.72
   Created:      2018-12-24   5:04:14 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    4175248 Bytes = 4 MiB
   Load Address: 80008000
   Entry Point:  80008000
   Verifying Checksum ... OK
## Flattened Device Tree blob at 87000000
   Booting using the fdt blob at 0x87000000
   Loading Kernel Image ... OK
OK
   Using Device Tree in place at 87000000, end 87010a54
Starting kernel ...
[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 3.10.72 (root@athena-VirtualBox) (gcc version 4.7.3 20130226 (prerelease) (crosstool-NG linaro-1.13.1-4.7-2013.03-20130313 - Linaro GCC 2013.03) ) #2 SMP Mon Dec 24 13:03:07 CST 2018
[    0.000000] CPU: ARMv7 Processor [412fc0f4] revision 4 (ARMv7), cr=30c7387d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
[    0.000000] Machine: KeyStone2, model: Texas Instruments Keystone 2 SoC
[    0.000000] switching to high address space at 0x800000000
[    0.000000] cma: CMA: reserved 16 MiB at 2e800000
[    0.000000] Memory policy: ECC disabled, Data cache writealloc
[    0.000000] PERCPU: Embedded 8 pages/cpu @c146f000 s11264 r8192 d13312 u32768
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 391696
[    0.000000] Kernel command line: console=ttyS0,115200n8 rootwait=1 rootfstype=ubifs root=ubi0:rootfs rootflags=sync rw ubi.mtd=2,2048
[    0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
[    0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
[    0.000000] Memory: 1536MB = 1536MB total
[    0.000000] Memory: 1534528k/1534528k available, 38336k reserved, 794624K highmem
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
[    0.000000]     vmalloc : 0xf0000000 - 0xff000000   ( 240 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xef800000   ( 760 MB)
[    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
[    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)
[    0.000000]       .text : 0xc0008000 - 0xc075cbd4   (7507 kB)
[    0.000000]       .init : 0xc075d000 - 0xc07b0c00   ( 335 kB)
[    0.000000]       .data : 0xc07b2000 - 0xc081a498   ( 418 kB)
[    0.000000]        .bss : 0xc081a498 - 0xc084c6fc   ( 201 kB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] Hierarchical RCU implementation.
[    0.000000] NR_IRQS:16 nr_irqs:16 16
[    0.000000] ipc irq: irqchip registered, range 512-539
[    0.000000] Main PLL clk (1200000000 Hz), parent (122880000 Hz),postdiv = 2, mult = 624, prediv = 31
[    0.000000] Generic PLL clk (1400000000 Hz), parent (125000000 Hz),postdiv = 1, mult = 55, prediv = 4
[    0.000000] Generic PLL clk (983040000 Hz), parent (122880000 Hz),postdiv = 2, mult = 15, prediv = 0
[    0.000000] Generic PLL clk (333333333 Hz), parent (100000000 Hz),postdiv = 6, mult = 19, prediv = 0
[    0.000000] Generic PLL clk (333333333 Hz), parent (100000000 Hz),postdiv = 6, mult = 19, prediv = 0
[    0.000000] Architected local timer running at 200.00MHz (phys).
[    0.000000] Switching to timer-based delay loop
[    0.000000] sched_clock: ARM arch timer >56 bits at 200000kHz, resolution 640/128ns
[    0.000000] keystone timer clock @200000000 MHz
[    0.000000] sched_clock: 32 bits at 100 Hz, resolution 10000000ns, wraps every 4294967286ms
[    0.000000] Console: colour dummy device 80x30
[   20.615809] Calibrating delay loop (skipped), value calculated using timer frequency.. 400.00 BogoMIPS (lpj=2000000)
[   20.615817] pid_max: default: 4096 minimum: 301
[   20.615933] Mount-cache hash table entries: 512
[   20.623938] CPU: Testing write buffer coherency: ok
[   20.624097] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[   20.624106] psci: probing function IDs from device-tree
[   20.624116] Setting up static identity map for 0xc05307e0 - 0xc0530838
[   20.628925] CPU1: Booted secondary processor
[   20.628949] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
[   20.633533] CPU2: Booted secondary processor
[   20.633558] CPU2: thread -1, cpu 2, socket 0, mpidr 80000002
[   20.638137] CPU3: Booted secondary processor
[   20.638162] CPU3: thread -1, cpu 3, socket 0, mpidr 80000003
[   20.638230] Brought up 4 CPUs
[   20.638247] SMP: Total of 4 processors activated (1600.00 BogoMIPS).
[   20.638251] CPU: All CPU(s) started in SVC mode.
[   20.638643] devtmpfs: initialized
[   20.649503] NET: Registered protocol family 16
[   20.650294] DMA: preallocated 256 KiB pool for atomic coherent allocations
[   20.661253] No ATAGs?
[   20.661268] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
[   20.661273] hw-breakpoint: maximum watchpoint size is 8 bytes.
[   20.670172] bio: create slab <bio-0> at 0
[   20.670513] keystone-pcie: keystone_pcie_rc_init - start
[   20.670532] keystone2_pcie_serdes_setup for domain 0
[   20.672652] keystone2_pcie_serdes_setup done domain 0, en_link_train = 1
[   20.672677] keystone-pcie: MEM 0x0000000050000000..0x000000005fffffff -> 0x0000000050000000
[   20.672685] keystone-pcie: IO 0x0000000023250000..0x0000000023253fff -> 0x0000000000000000


Viewing all articles
Browse latest Browse all 17527


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>