Hello,
I'm trying to get Manufacturing tool up and running on a bespoke iMX6 Solo board with 256 MB of DRAM.
I've started with the fsl-image-mfgtool-initramfs target on imx6dlsabresd as the base.
MACHINE=imx6dlsabresd source fsl-setup-release.sh -b mfgToolTest
bitbake fsl-image-mfgtool-initramfs
I've modified U-Boot to boot with 256 MB and I've tested this configuration with the DDR stress tester, so I asume that the DRAM is correctly configured.
I've modified the device tree to reflect the board's hardware and Linux boots and the UTP client is started (as far as I can tell) though at this point the manufacturing tool says 'no device connected'.
I have reduced CMA size to 96 MB and I've configured the CONFIG_VMSPLIT_3G kernel config. I've got this in my device tree:
memory {
reg = <0x10000000 0x10000000>;
};
and I've tried the vmalloc=size boot argument...
My problem is that when Linux boots, in the virtual memory layout I see that vmalloc is greater than 256 MB (744MB). Which can't be right as it should be less than 256 MB. lowmem is 256 MB and it prints "Memory: 143232K/262144K available" which looks correct, so why is vmalloc so big? How can I fix this?
I've been banging my head against this all morning, any help or pointers would be greatly appreciated.
cma: CMA: reserved 96 MiB at 1a000000
Memory policy: Data cache writeback
CPU: All CPU(s) started in SVC mode.
PERCPU: Embedded 8 pages/cpu @c9db0000 s8896 r8192 d15680 u32768
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 65024
Kernel command line: console=ttymxc0,115200 rdinit=/linuxrc vmalloc=128MB g_mass
_storage.stall=0 g_mass_storage.removable=1 g_mass_storage.idVendor=0x066F g_mas
s_storage.idProduct=0x37FF g_mass_storage.iSerialNumber= enable_wait_mode=off
PID hash table entries: 1024 (order: 0, 4096 bytes)
Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
Memory: 143232K/262144K available (6601K kernel code, 334K rwdata, 5888K rodata,
300K init, 415K bss, 118912K reserved, 0K highmem)
Virtual kernel memory layout:
vector : 0xffff0000 - 0xffff1000 ( 4 kB)
fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
vmalloc : 0xd0800000 - 0xff000000 ( 744 MB)
lowmem : 0xc0000000 - 0xd0000000 ( 256 MB)
pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
.text : 0xc0008000 - 0xc0c3a8e8 (12491 kB)
.init : 0xc0c3b000 - 0xc0c862c0 ( 301 kB)
.data : 0xc0c88000 - 0xc0cdbac0 ( 335 kB)
.bss : 0xc0cdbacc - 0xc0d437f0 ( 416 kB)
SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
blah blah blah...
Starting UTP
ln: /etc/mtab: File exists
disable turn off display
Starting the hotplug events dispatcher udevd
Synthesizing initial hotplug evenudevd (72): /proc/72/oom_adj is deprecated, ple
ase use /proc/72/oom_score_adj instead.
ts
uuc 0.4 [built Aug 16 2013 01:24:08]
UTP: Waiting for device to appear
UTP: file/device node /dev/utp already exists
cpu_id is 0
Please make sure that swap is not turned on:
# grep -i swap /proc/meminfo
Have a great day,
Victor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------