dde_bsd: handle platform session memory requests

Issue #1039
This commit is contained in:
Alexander Boettcher 2016-11-24 15:06:38 +01:00 committed by Christian Helmuth
parent ac2061abfe
commit 7dcfc8bd49
1 changed files with 6 additions and 2 deletions

View File

@ -118,8 +118,12 @@ class Pci_driver : public Bsd::Bus_driver
{
Platform::Device_capability cap;
/* shift values for Pci interface used by Genode */
cap = _pci.next_device(prev, PCI_CLASS_MULTIMEDIA << 16,
PCI_CLASS_MASK << 16);
cap = Genode::retry<Platform::Session::Out_of_metadata>(
[&] () { return _pci.next_device(prev,
PCI_CLASS_MULTIMEDIA << 16,
PCI_CLASS_MASK << 16); },
[&] () { _pci.upgrade_ram(4096); });
if (prev.valid())
_pci.release_device(prev);
return cap;