Jonathan, > More generally for the flow that would bring the memory up as system ram > you would typically need the bios to have done the CXL enumeration or > a bunch of scripts in the kernel to have done it. In general it can't > be fully automated, because there are policy decisions to make on things like > interleaving.
BIOS CXL enumeration? is CEDT not enough? or BIOS further needs to create an entry in the e820 table? > > I'm not aware of any open source BIOSs that do it yet. So you have > to rely on the same kernel paths as for persistent memory - manual > configuration > etc in the kernel. > Manual works with "cxl create regiton" :) On Thu, 10 Aug 2023 at 16:05, Jonathan Cameron <jonathan.came...@huawei.com> wrote: > > On Wed, 9 Aug 2023 04:21:47 +0530 > Maverickk 78 <maverickk1...@gmail.com> wrote: > > > Hello, > > > > I am running qemu-system-x86_64 > > > > qemu-system-x86_64 --version > > QEMU emulator version 8.0.92 (v8.1.0-rc2-80-g0450cf0897) > > > +Cc linux-cxl as the answer is more todo with linux than qemu. > > > qemu-system-x86_64 \ > > -m 2G,slots=4,maxmem=4G \ > > -smp 4 \ > > -machine type=q35,accel=kvm,cxl=on \ > > -enable-kvm \ > > -nographic \ > > -device pxb-cxl,id=cxl.0,bus=pcie.0,bus_nr=52 \ > > -device cxl-rp,id=rp0,bus=cxl.0,chassis=0,port=0,slot=0 \ > > -object memory-backend-file,id=mem0,mem-path=/tmp/mem0,size=1G,share=true \ > > -device cxl-type3,bus=rp0,volatile-memdev=mem0,id=cxl-mem0 \ > > -M cxl-fmw.0.targets.0=cxl.0,cxl-fmw.0.size=1G > > There are some problems upstream at the moment (probably not cxl related but > I'm digging). So today I can't boot an x86 machine. (goody) > > > More generally for the flow that would bring the memory up as system ram > you would typically need the bios to have done the CXL enumeration or > a bunch of scripts in the kernel to have done it. In general it can't > be fully automated, because there are policy decisions to make on things like > interleaving. > > I'm not aware of any open source BIOSs that do it yet. So you have > to rely on the same kernel paths as for persistent memory - manual > configuration > etc in the kernel. > > There is support in ndctl for those enabling flows, so I'd look there > for more information > > Jonathan > > > > > > > > I was expecting the CXL memory to be listed in "System Ram", the lsmem > > shows only 2G memory which is System RAM, it's not listing the CXL > > memory. > > > > Do I need to pass any particular parameter in the kernel command line? > > > > Is there any documentation available? I followed the inputs provided in > > > > https://lore.kernel.org/linux-mm/y+csoehvlkudn...@kroah.com/T/ > > > > Is there any documentation/blog listed? >