Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
BMC 4MB limitation and alternative
#1
Hi All,
I am pretty new to Xen and embedded environment in general, so please forgive me if I am asking something really obvious to most of you Smile.

I am trying to make Linux Dom0 and Baremetal DomU communicate, and I was able to run baremetal application in this tutorial by Xilinx: https://xilinx-wiki.atlassian.net/wiki/s...metal+DomU, and later on I learned how to passthrough devices such as GPIO and AXI_Timer.

However, I am stuck at DomU and Dom0 communication... I would like to use BMC for that, but it has a 4MB of RAM cap to my understanding, and my application uses much more than that. 

So my question is:
1. Do people use BMC instead of the Xilinx build flow because Xilinx build flow does not provide more advance feature like inter-domain communication?
2. Is there a way to use more than 4MB of RAM for baremetal application running on BMC?
3. If not, what else can I try? 

Thanks a lot!
Reply
#2
NGNear,

Some quick answers to your questions:

1. Mostly because at the time we created it (circa 2015), Xilinx didn't have a build flow that produced Xen-ready guests. The BMC is still kind of nice because you can take software from outside the Xilinx build flow and get it to run in a Xen BM VM.

2. Yes! There's a #define that sets the size in the code in main.c, MAX_PAYLOAD_SIZE. You'll need to tweak any link scripts and guest .cfg files accordingly.
Reply
#3
Hi Jarvis,

Thank you so much for the quick respond! If I understand it correctly, BMC allows me to established inter-domain communication using Xen-API? Or I still need to achieve Baremetal to Linux communication using shared memory?

Thanks!
Reply
#4
(11-16-2018, 12:31 AM)NGNear Wrote: Hi Jarvis,

Thank you so much for the quick respond! If I understand it correctly, BMC allows me to established inter-domain communication using Xen-API? Or I still need to achieve Baremetal to Linux communication using shared memory?

Thanks!

NGNear,

Sorry, didn't notice your follow up question until now. You're going to want to set up shared memory. You could use the Xen virtual channel if you implemented all the necessary drivers for the Baremetal guest, but it'd probably just be easier to use shared memory.
Reply
#5
(11-26-2018, 03:44 PM)jarvis_roach Wrote:
(11-16-2018, 12:31 AM)NGNear Wrote: Hi Jarvis,

Thank you so much for the quick respond! If I understand it correctly, BMC allows me to established inter-domain communication using Xen-API? Or I still need to achieve Baremetal to Linux communication using shared memory?

Thanks!

NGNear,

Sorry, didn't notice your follow up question until now. You're going to want to set up shared memory. You could use the Xen virtual channel if you implemented all the necessary drivers for the Baremetal guest, but it'd probably just be easier to use shared memory.
Hi Jarvis,

That's really fast respond time already, thank you so much. I should have subscribed to this thread so I could respond to you faster.

For anyone who is also interested in this topic, I tried the shared memory suggested by Jarvis and it works well enough. There is a Xilinx Wiki talking about it Xen Shared Memory.

Cheers
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)