diff -pruN 1:0.5.0-1/debian/changelog 1:0.5.0-1ubuntu1/debian/changelog
--- 1:0.5.0-1/debian/changelog	2018-10-04 11:08:08.000000000 +0000
+++ 1:0.5.0-1ubuntu1/debian/changelog	2018-10-04 11:08:08.000000000 +0000
@@ -1,3 +1,10 @@
+xserver-xorg-video-fbdev (1:0.5.0-1ubuntu1) cosmic; urgency=medium
+
+  * revert-ae0aeffae665746.diff: Revert a commit which broke using grub
+    with gfxpayload=keep. (LP: #1794280)
+
+ -- Timo Aaltonen <tjaalton@debian.org>  Thu, 04 Oct 2018 10:11:49 +0300
+
 xserver-xorg-video-fbdev (1:0.5.0-1) unstable; urgency=medium
 
   * Let uscan verify upstream tarball signatures.
diff -pruN 1:0.5.0-1/debian/patches/revert-ae0aeffae665746.diff 1:0.5.0-1ubuntu1/debian/patches/revert-ae0aeffae665746.diff
--- 1:0.5.0-1/debian/patches/revert-ae0aeffae665746.diff	1970-01-01 00:00:00.000000000 +0000
+++ 1:0.5.0-1ubuntu1/debian/patches/revert-ae0aeffae665746.diff	2018-10-04 11:08:08.000000000 +0000
@@ -0,0 +1,37 @@
+diff --git a/src/fbdev.c b/src/fbdev.c
+index f25ef72..3f87ddf 100644
+--- a/src/fbdev.c
++++ b/src/fbdev.c
+@@ -279,7 +279,7 @@ static Bool FBDevPciProbe(DriverPtr drv, int entity_num,
+ 						  pScrn->entityInstanceList[0]);
+ 
+ 	device = xf86FindOptionValue(devSection->options, "fbdev");
+-	if (fbdevHWProbe(dev, device, NULL)) {
++	if (fbdevHWProbe(NULL, device, NULL)) {
+ 	    pScrn->driverVersion = FBDEV_VERSION;
+ 	    pScrn->driverName    = FBDEV_DRIVER_NAME;
+ 	    pScrn->name          = FBDEV_NAME;
+@@ -426,7 +426,6 @@ FBDevPreInit(ScrnInfoPtr pScrn, int flags)
+ 	int default_depth, fbbpp;
+ 	const char *s;
+ 	int type;
+-	void *pci_dev = NULL;
+ 
+ 	if (flags & PROBE_DETECT) return FALSE;
+ 
+@@ -454,14 +453,9 @@ FBDevPreInit(ScrnInfoPtr pScrn, int flags)
+ 		   "xf86RegisterResources() found resource conflicts\n");
+ 		return FALSE;
+ 	}
+-#else
+-	if (fPtr->pEnt->location.type == BUS_PCI)
+-	    pci_dev = fPtr->pEnt->location.id.pci;
+ #endif
+ 	/* open device */
+-	if (!fbdevHWInit(pScrn, pci_dev,
+-			 xf86FindOptionValue(fPtr->pEnt->device->options,
+-					     "fbdev")))
++	if (!fbdevHWInit(pScrn,NULL,xf86FindOptionValue(fPtr->pEnt->device->options,"fbdev")))
+ 		return FALSE;
+ 	default_depth = fbdevHWGetDepth(pScrn,&fbbpp);
+ 
diff -pruN 1:0.5.0-1/debian/patches/series 1:0.5.0-1ubuntu1/debian/patches/series
--- 1:0.5.0-1/debian/patches/series	2018-10-04 11:08:08.000000000 +0000
+++ 1:0.5.0-1ubuntu1/debian/patches/series	2018-10-04 11:08:08.000000000 +0000
@@ -1 +1,2 @@
 02-support-building-without-xv.patch
+revert-ae0aeffae665746.diff
diff -pruN 1:0.5.0-1/revert-ae0aeffae665746.diff 1:0.5.0-1ubuntu1/revert-ae0aeffae665746.diff
--- 1:0.5.0-1/revert-ae0aeffae665746.diff	1970-01-01 00:00:00.000000000 +0000
+++ 1:0.5.0-1ubuntu1/revert-ae0aeffae665746.diff	2018-10-04 11:08:08.000000000 +0000
@@ -0,0 +1,37 @@
+diff --git a/src/fbdev.c b/src/fbdev.c
+index f25ef72..3f87ddf 100644
+--- a/src/fbdev.c
++++ b/src/fbdev.c
+@@ -279,7 +279,7 @@ static Bool FBDevPciProbe(DriverPtr drv, int entity_num,
+ 						  pScrn->entityInstanceList[0]);
+ 
+ 	device = xf86FindOptionValue(devSection->options, "fbdev");
+-	if (fbdevHWProbe(dev, device, NULL)) {
++	if (fbdevHWProbe(NULL, device, NULL)) {
+ 	    pScrn->driverVersion = FBDEV_VERSION;
+ 	    pScrn->driverName    = FBDEV_DRIVER_NAME;
+ 	    pScrn->name          = FBDEV_NAME;
+@@ -426,7 +426,6 @@ FBDevPreInit(ScrnInfoPtr pScrn, int flags)
+ 	int default_depth, fbbpp;
+ 	const char *s;
+ 	int type;
+-	void *pci_dev = NULL;
+ 
+ 	if (flags & PROBE_DETECT) return FALSE;
+ 
+@@ -454,14 +453,9 @@ FBDevPreInit(ScrnInfoPtr pScrn, int flags)
+ 		   "xf86RegisterResources() found resource conflicts\n");
+ 		return FALSE;
+ 	}
+-#else
+-	if (fPtr->pEnt->location.type == BUS_PCI)
+-	    pci_dev = fPtr->pEnt->location.id.pci;
+ #endif
+ 	/* open device */
+-	if (!fbdevHWInit(pScrn, pci_dev,
+-			 xf86FindOptionValue(fPtr->pEnt->device->options,
+-					     "fbdev")))
++	if (!fbdevHWInit(pScrn,NULL,xf86FindOptionValue(fPtr->pEnt->device->options,"fbdev")))
+ 		return FALSE;
+ 	default_depth = fbdevHWGetDepth(pScrn,&fbbpp);
+ 
