All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] drm/mediatek: Implement gem prime vmap/vunmap function
@ 2019-01-16  1:39 ` CK Hu
  0 siblings, 0 replies; 22+ messages in thread
From: CK Hu @ 2019-01-16  1:39 UTC (permalink / raw)
  To: Philipp Zabel, David Airlie, Daniel Vetter, Matthias Brugger,
	Noralf Tr�nnes, Frank Wunderlich
  Cc: dri-devel, linux-arm-kernel, linux-mediatek, linux-kernel,
	srv_heupstream, CK Hu

For some application which need kernel virtual address, such as fbcon,
implement these function to map/unmap kernel virtual address of prime
buffer.

Signed-off-by: CK Hu <ck.hu@mediatek.com>
---
 drivers/gpu/drm/mediatek/mtk_drm_drv.c |  2 ++
 drivers/gpu/drm/mediatek/mtk_drm_gem.c | 46 ++++++++++++++++++++++++++
 drivers/gpu/drm/mediatek/mtk_drm_gem.h |  3 ++
 3 files changed, 51 insertions(+)

diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
index 6422e99952fe..6ec4ca070382 100644
--- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
+++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
@@ -341,6 +341,8 @@ static struct drm_driver mtk_drm_driver = {
 	.gem_prime_get_sg_table = mtk_gem_prime_get_sg_table,
 	.gem_prime_import_sg_table = mtk_gem_prime_import_sg_table,
 	.gem_prime_mmap = mtk_drm_gem_mmap_buf,
+	.gem_prime_vmap = mtk_drm_gem_prime_vmap,
+	.gem_prime_vunmap = mtk_drm_gem_prime_vunmap,
 	.fops = &mtk_drm_fops,
 
 	.name = DRIVER_NAME,
diff --git a/drivers/gpu/drm/mediatek/mtk_drm_gem.c b/drivers/gpu/drm/mediatek/mtk_drm_gem.c
index 259b7b0de1d2..38483e9ee071 100644
--- a/drivers/gpu/drm/mediatek/mtk_drm_gem.c
+++ b/drivers/gpu/drm/mediatek/mtk_drm_gem.c
@@ -241,3 +241,49 @@ struct drm_gem_object *mtk_gem_prime_import_sg_table(struct drm_device *dev,
 	kfree(mtk_gem);
 	return ERR_PTR(ret);
 }
+
+void *mtk_drm_gem_prime_vmap(struct drm_gem_object *obj)
+{
+	struct mtk_drm_gem_obj *mtk_gem = to_mtk_gem_obj(obj);
+	struct sg_table *sgt;
+	struct sg_page_iter iter;
+	unsigned int npages;
+	unsigned int i = 0;
+
+	if (mtk_gem->kvaddr)
+		return mtk_gem->kvaddr;
+
+	sgt = mtk_gem_prime_get_sg_table(obj);
+	if (IS_ERR(sgt))
+		return NULL;
+
+	npages = obj->size >> PAGE_SHIFT;
+	mtk_gem->pages = kcalloc(npages, sizeof(*mtk_gem->pages), GFP_KERNEL);
+	if (!mtk_gem->pages)
+		goto out;
+
+	for_each_sg_page(sgt->sgl, &iter, sgt->orig_nents, 0) {
+		mtk_gem->pages[i++] = sg_page_iter_page(&iter);
+		if (i > npages)
+			break;
+	}
+	mtk_gem->kvaddr = vmap(mtk_gem->pages, npages, VM_MAP,
+			       pgprot_writecombine(PAGE_KERNEL));
+
+out:
+	kfree((void *)sgt);
+
+	return mtk_gem->kvaddr;
+}
+
+void mtk_drm_gem_prime_vunmap(struct drm_gem_object *obj, void *vaddr)
+{
+	struct mtk_drm_gem_obj *mtk_gem = to_mtk_gem_obj(obj);
+
+	if (!mtk_gem->pages)
+		return;
+
+	vunmap(vaddr);
+	mtk_gem->kvaddr = 0;
+	kfree((void *)mtk_gem->pages);
+}
diff --git a/drivers/gpu/drm/mediatek/mtk_drm_gem.h b/drivers/gpu/drm/mediatek/mtk_drm_gem.h
index 534639b43a1c..c047a7ef294f 100644
--- a/drivers/gpu/drm/mediatek/mtk_drm_gem.h
+++ b/drivers/gpu/drm/mediatek/mtk_drm_gem.h
@@ -37,6 +37,7 @@ struct mtk_drm_gem_obj {
 	dma_addr_t		dma_addr;
 	unsigned long		dma_attrs;
 	struct sg_table		*sg;
+	struct page		**pages;
 };
 
 #define to_mtk_gem_obj(x)	container_of(x, struct mtk_drm_gem_obj, base)
@@ -52,5 +53,7 @@ int mtk_drm_gem_mmap_buf(struct drm_gem_object *obj,
 struct sg_table *mtk_gem_prime_get_sg_table(struct drm_gem_object *obj);
 struct drm_gem_object *mtk_gem_prime_import_sg_table(struct drm_device *dev,
 			struct dma_buf_attachment *attach, struct sg_table *sg);
+void *mtk_drm_gem_prime_vmap(struct drm_gem_object *obj);
+void mtk_drm_gem_prime_vunmap(struct drm_gem_object *obj, void *vaddr);
 
 #endif
-- 
2.18.1


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [PATCH 1/2] drm/mediatek: Implement gem prime vmap/vunmap function
@ 2019-01-16  1:39 ` CK Hu
  0 siblings, 0 replies; 22+ messages in thread
From: CK Hu @ 2019-01-16  1:39 UTC (permalink / raw)
  To: Philipp Zabel, David Airlie, Daniel Vetter, Matthias Brugger,
	Noralf Tr�nnes, Frank Wunderlich
  Cc: srv_heupstream, linux-kernel, dri-devel, linux-mediatek,
	linux-arm-kernel

For some application which need kernel virtual address, such as fbcon,
implement these function to map/unmap kernel virtual address of prime
buffer.

Signed-off-by: CK Hu <ck.hu@mediatek.com>
---
 drivers/gpu/drm/mediatek/mtk_drm_drv.c |  2 ++
 drivers/gpu/drm/mediatek/mtk_drm_gem.c | 46 ++++++++++++++++++++++++++
 drivers/gpu/drm/mediatek/mtk_drm_gem.h |  3 ++
 3 files changed, 51 insertions(+)

diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
index 6422e99952fe..6ec4ca070382 100644
--- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
+++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
@@ -341,6 +341,8 @@ static struct drm_driver mtk_drm_driver = {
 	.gem_prime_get_sg_table = mtk_gem_prime_get_sg_table,
 	.gem_prime_import_sg_table = mtk_gem_prime_import_sg_table,
 	.gem_prime_mmap = mtk_drm_gem_mmap_buf,
+	.gem_prime_vmap = mtk_drm_gem_prime_vmap,
+	.gem_prime_vunmap = mtk_drm_gem_prime_vunmap,
 	.fops = &mtk_drm_fops,
 
 	.name = DRIVER_NAME,
diff --git a/drivers/gpu/drm/mediatek/mtk_drm_gem.c b/drivers/gpu/drm/mediatek/mtk_drm_gem.c
index 259b7b0de1d2..38483e9ee071 100644
--- a/drivers/gpu/drm/mediatek/mtk_drm_gem.c
+++ b/drivers/gpu/drm/mediatek/mtk_drm_gem.c
@@ -241,3 +241,49 @@ struct drm_gem_object *mtk_gem_prime_import_sg_table(struct drm_device *dev,
 	kfree(mtk_gem);
 	return ERR_PTR(ret);
 }
+
+void *mtk_drm_gem_prime_vmap(struct drm_gem_object *obj)
+{
+	struct mtk_drm_gem_obj *mtk_gem = to_mtk_gem_obj(obj);
+	struct sg_table *sgt;
+	struct sg_page_iter iter;
+	unsigned int npages;
+	unsigned int i = 0;
+
+	if (mtk_gem->kvaddr)
+		return mtk_gem->kvaddr;
+
+	sgt = mtk_gem_prime_get_sg_table(obj);
+	if (IS_ERR(sgt))
+		return NULL;
+
+	npages = obj->size >> PAGE_SHIFT;
+	mtk_gem->pages = kcalloc(npages, sizeof(*mtk_gem->pages), GFP_KERNEL);
+	if (!mtk_gem->pages)
+		goto out;
+
+	for_each_sg_page(sgt->sgl, &iter, sgt->orig_nents, 0) {
+		mtk_gem->pages[i++] = sg_page_iter_page(&iter);
+		if (i > npages)
+			break;
+	}
+	mtk_gem->kvaddr = vmap(mtk_gem->pages, npages, VM_MAP,
+			       pgprot_writecombine(PAGE_KERNEL));
+
+out:
+	kfree((void *)sgt);
+
+	return mtk_gem->kvaddr;
+}
+
+void mtk_drm_gem_prime_vunmap(struct drm_gem_object *obj, void *vaddr)
+{
+	struct mtk_drm_gem_obj *mtk_gem = to_mtk_gem_obj(obj);
+
+	if (!mtk_gem->pages)
+		return;
+
+	vunmap(vaddr);
+	mtk_gem->kvaddr = 0;
+	kfree((void *)mtk_gem->pages);
+}
diff --git a/drivers/gpu/drm/mediatek/mtk_drm_gem.h b/drivers/gpu/drm/mediatek/mtk_drm_gem.h
index 534639b43a1c..c047a7ef294f 100644
--- a/drivers/gpu/drm/mediatek/mtk_drm_gem.h
+++ b/drivers/gpu/drm/mediatek/mtk_drm_gem.h
@@ -37,6 +37,7 @@ struct mtk_drm_gem_obj {
 	dma_addr_t		dma_addr;
 	unsigned long		dma_attrs;
 	struct sg_table		*sg;
+	struct page		**pages;
 };
 
 #define to_mtk_gem_obj(x)	container_of(x, struct mtk_drm_gem_obj, base)
@@ -52,5 +53,7 @@ int mtk_drm_gem_mmap_buf(struct drm_gem_object *obj,
 struct sg_table *mtk_gem_prime_get_sg_table(struct drm_gem_object *obj);
 struct drm_gem_object *mtk_gem_prime_import_sg_table(struct drm_device *dev,
 			struct dma_buf_attachment *attach, struct sg_table *sg);
+void *mtk_drm_gem_prime_vmap(struct drm_gem_object *obj);
+void mtk_drm_gem_prime_vunmap(struct drm_gem_object *obj, void *vaddr);
 
 #endif
-- 
2.18.1

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [PATCH 1/2] drm/mediatek: Implement gem prime vmap/vunmap function
@ 2019-01-16  1:39 ` CK Hu
  0 siblings, 0 replies; 22+ messages in thread
From: CK Hu @ 2019-01-16  1:39 UTC (permalink / raw)
  To: Philipp Zabel, David Airlie, Daniel Vetter, Matthias Brugger,
	Noralf Tr�nnes, Frank Wunderlich
  Cc: srv_heupstream, linux-kernel, dri-devel, linux-mediatek, CK Hu,
	linux-arm-kernel

For some application which need kernel virtual address, such as fbcon,
implement these function to map/unmap kernel virtual address of prime
buffer.

Signed-off-by: CK Hu <ck.hu@mediatek.com>
---
 drivers/gpu/drm/mediatek/mtk_drm_drv.c |  2 ++
 drivers/gpu/drm/mediatek/mtk_drm_gem.c | 46 ++++++++++++++++++++++++++
 drivers/gpu/drm/mediatek/mtk_drm_gem.h |  3 ++
 3 files changed, 51 insertions(+)

diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
index 6422e99952fe..6ec4ca070382 100644
--- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
+++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
@@ -341,6 +341,8 @@ static struct drm_driver mtk_drm_driver = {
 	.gem_prime_get_sg_table = mtk_gem_prime_get_sg_table,
 	.gem_prime_import_sg_table = mtk_gem_prime_import_sg_table,
 	.gem_prime_mmap = mtk_drm_gem_mmap_buf,
+	.gem_prime_vmap = mtk_drm_gem_prime_vmap,
+	.gem_prime_vunmap = mtk_drm_gem_prime_vunmap,
 	.fops = &mtk_drm_fops,
 
 	.name = DRIVER_NAME,
diff --git a/drivers/gpu/drm/mediatek/mtk_drm_gem.c b/drivers/gpu/drm/mediatek/mtk_drm_gem.c
index 259b7b0de1d2..38483e9ee071 100644
--- a/drivers/gpu/drm/mediatek/mtk_drm_gem.c
+++ b/drivers/gpu/drm/mediatek/mtk_drm_gem.c
@@ -241,3 +241,49 @@ struct drm_gem_object *mtk_gem_prime_import_sg_table(struct drm_device *dev,
 	kfree(mtk_gem);
 	return ERR_PTR(ret);
 }
+
+void *mtk_drm_gem_prime_vmap(struct drm_gem_object *obj)
+{
+	struct mtk_drm_gem_obj *mtk_gem = to_mtk_gem_obj(obj);
+	struct sg_table *sgt;
+	struct sg_page_iter iter;
+	unsigned int npages;
+	unsigned int i = 0;
+
+	if (mtk_gem->kvaddr)
+		return mtk_gem->kvaddr;
+
+	sgt = mtk_gem_prime_get_sg_table(obj);
+	if (IS_ERR(sgt))
+		return NULL;
+
+	npages = obj->size >> PAGE_SHIFT;
+	mtk_gem->pages = kcalloc(npages, sizeof(*mtk_gem->pages), GFP_KERNEL);
+	if (!mtk_gem->pages)
+		goto out;
+
+	for_each_sg_page(sgt->sgl, &iter, sgt->orig_nents, 0) {
+		mtk_gem->pages[i++] = sg_page_iter_page(&iter);
+		if (i > npages)
+			break;
+	}
+	mtk_gem->kvaddr = vmap(mtk_gem->pages, npages, VM_MAP,
+			       pgprot_writecombine(PAGE_KERNEL));
+
+out:
+	kfree((void *)sgt);
+
+	return mtk_gem->kvaddr;
+}
+
+void mtk_drm_gem_prime_vunmap(struct drm_gem_object *obj, void *vaddr)
+{
+	struct mtk_drm_gem_obj *mtk_gem = to_mtk_gem_obj(obj);
+
+	if (!mtk_gem->pages)
+		return;
+
+	vunmap(vaddr);
+	mtk_gem->kvaddr = 0;
+	kfree((void *)mtk_gem->pages);
+}
diff --git a/drivers/gpu/drm/mediatek/mtk_drm_gem.h b/drivers/gpu/drm/mediatek/mtk_drm_gem.h
index 534639b43a1c..c047a7ef294f 100644
--- a/drivers/gpu/drm/mediatek/mtk_drm_gem.h
+++ b/drivers/gpu/drm/mediatek/mtk_drm_gem.h
@@ -37,6 +37,7 @@ struct mtk_drm_gem_obj {
 	dma_addr_t		dma_addr;
 	unsigned long		dma_attrs;
 	struct sg_table		*sg;
+	struct page		**pages;
 };
 
 #define to_mtk_gem_obj(x)	container_of(x, struct mtk_drm_gem_obj, base)
@@ -52,5 +53,7 @@ int mtk_drm_gem_mmap_buf(struct drm_gem_object *obj,
 struct sg_table *mtk_gem_prime_get_sg_table(struct drm_gem_object *obj);
 struct drm_gem_object *mtk_gem_prime_import_sg_table(struct drm_device *dev,
 			struct dma_buf_attachment *attach, struct sg_table *sg);
+void *mtk_drm_gem_prime_vmap(struct drm_gem_object *obj);
+void mtk_drm_gem_prime_vunmap(struct drm_gem_object *obj, void *vaddr);
 
 #endif
-- 
2.18.1


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device
  2019-01-16  1:39 ` CK Hu
  (?)
@ 2019-01-16  1:39   ` CK Hu
  -1 siblings, 0 replies; 22+ messages in thread
From: CK Hu @ 2019-01-16  1:39 UTC (permalink / raw)
  To: Philipp Zabel, David Airlie, Daniel Vetter, Matthias Brugger,
	Noralf Tr�nnes, Frank Wunderlich
  Cc: dri-devel, linux-arm-kernel, linux-mediatek, linux-kernel,
	srv_heupstream, CK Hu

For Mediatek drm driver, use fbdev emulation to create a framebuffer
device.

Signed-off-by: CK Hu <ck.hu@mediatek.com>
---
 drivers/gpu/drm/mediatek/mtk_drm_drv.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
index 6ec4ca070382..5fcc0e294696 100644
--- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
+++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
@@ -16,6 +16,7 @@
 #include <drm/drm_atomic.h>
 #include <drm/drm_atomic_helper.h>
 #include <drm/drm_crtc_helper.h>
+#include <drm/drm_fb_helper.h>
 #include <drm/drm_gem.h>
 #include <drm/drm_gem_cma_helper.h>
 #include <drm/drm_of.h>
@@ -378,6 +379,10 @@ static int mtk_drm_bind(struct device *dev)
 	if (ret < 0)
 		goto err_deinit;
 
+	ret = drm_fbdev_generic_setup(drm, 32);
+	if (ret)
+		DRM_ERROR("Failed to initialize fbdev: %d\n", ret);
+
 	return 0;
 
 err_deinit:
-- 
2.18.1


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device
@ 2019-01-16  1:39   ` CK Hu
  0 siblings, 0 replies; 22+ messages in thread
From: CK Hu @ 2019-01-16  1:39 UTC (permalink / raw)
  To: Philipp Zabel, David Airlie, Daniel Vetter, Matthias Brugger,
	Noralf Tr�nnes, Frank Wunderlich
  Cc: srv_heupstream, linux-kernel, dri-devel, linux-mediatek,
	linux-arm-kernel

For Mediatek drm driver, use fbdev emulation to create a framebuffer
device.

Signed-off-by: CK Hu <ck.hu@mediatek.com>
---
 drivers/gpu/drm/mediatek/mtk_drm_drv.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
index 6ec4ca070382..5fcc0e294696 100644
--- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
+++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
@@ -16,6 +16,7 @@
 #include <drm/drm_atomic.h>
 #include <drm/drm_atomic_helper.h>
 #include <drm/drm_crtc_helper.h>
+#include <drm/drm_fb_helper.h>
 #include <drm/drm_gem.h>
 #include <drm/drm_gem_cma_helper.h>
 #include <drm/drm_of.h>
@@ -378,6 +379,10 @@ static int mtk_drm_bind(struct device *dev)
 	if (ret < 0)
 		goto err_deinit;
 
+	ret = drm_fbdev_generic_setup(drm, 32);
+	if (ret)
+		DRM_ERROR("Failed to initialize fbdev: %d\n", ret);
+
 	return 0;
 
 err_deinit:
-- 
2.18.1

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device
@ 2019-01-16  1:39   ` CK Hu
  0 siblings, 0 replies; 22+ messages in thread
From: CK Hu @ 2019-01-16  1:39 UTC (permalink / raw)
  To: Philipp Zabel, David Airlie, Daniel Vetter, Matthias Brugger,
	Noralf Tr�nnes, Frank Wunderlich
  Cc: srv_heupstream, linux-kernel, dri-devel, linux-mediatek, CK Hu,
	linux-arm-kernel

For Mediatek drm driver, use fbdev emulation to create a framebuffer
device.

Signed-off-by: CK Hu <ck.hu@mediatek.com>
---
 drivers/gpu/drm/mediatek/mtk_drm_drv.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
index 6ec4ca070382..5fcc0e294696 100644
--- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
+++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
@@ -16,6 +16,7 @@
 #include <drm/drm_atomic.h>
 #include <drm/drm_atomic_helper.h>
 #include <drm/drm_crtc_helper.h>
+#include <drm/drm_fb_helper.h>
 #include <drm/drm_gem.h>
 #include <drm/drm_gem_cma_helper.h>
 #include <drm/drm_of.h>
@@ -378,6 +379,10 @@ static int mtk_drm_bind(struct device *dev)
 	if (ret < 0)
 		goto err_deinit;
 
+	ret = drm_fbdev_generic_setup(drm, 32);
+	if (ret)
+		DRM_ERROR("Failed to initialize fbdev: %d\n", ret);
+
 	return 0;
 
 err_deinit:
-- 
2.18.1


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* Aw: [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device
  2019-01-16  1:39   ` CK Hu
  (?)
@ 2019-01-17 14:14     ` Frank Wunderlich
  -1 siblings, 0 replies; 22+ messages in thread
From: Frank Wunderlich @ 2019-01-17 14:14 UTC (permalink / raw)
  To: CK Hu
  Cc: Philipp Zabel, David Airlie, Daniel Vetter, Matthias Brugger,
	"Noralf Tr�nnes",
	dri-devel, linux-arm-kernel, linux-mediatek, linux-kernel,
	srv_heupstream, CK Hu

Hi,

this Patchset does not hang on Bananapi R2, but does not show anything on FB-Console...seems anything is missing

https://github.com/frank-w/BPI-R2-4.14/tree/4.20-fbdev

dmesg | grep 'fb\|framebuffer'
[    0.000000] Linux version 4.20.0-rc7-bpi-r2-fbdev (frank@frank-N56VZ) (gcc version 7.3.0 (Ubuntu/Linaro 7.3.0-27ubuntu1~18.04)) 9
[    0.000000] cma: Reserved 64 MiB at 0xfb800000
[    0.000000] Kernel command line: board=bpi-r2 console=earlyprintk console=tty1 fbcon=map:0 console=ttyS0,115200 root=/dev/mmcblk7
[    5.733185] [drm:drm_fb_helper_generic_probe] surface width(1280), height(1024) and bpp(32)
[    5.754452] [drm:drm_mode_addfb2] [FB:44]
[    5.792878] mediatek-drm 14000000.dispsys: fb0: DRM emulated frame buffer device
[    5.814067] [drm:drm_fb_helper_hotplug_event.part.11] 
[    6.203083] mediatek-drm 14000000.dispsys: [drm:drm_client_dev_hotplug] fbdev: ret=0
[   24.930347] mediatek-drm 14000000.dispsys: [drm:drm_client_dev_restore] fbdev: ret=0
[   25.196872] mediatek-drm 14000000.dispsys: [drm:drm_client_dev_restore] fbdev: ret=0
[   25.281184] [drm:drm_mode_addfb2] [FB:49]
[   27.947962] [drm:drm_mode_addfb2] [FB:49]

regards Frank


> Gesendet: Mittwoch, 16. Januar 2019 um 02:39 Uhr
> Von: "CK Hu" <ck.hu@mediatek.com>
> An: "Philipp Zabel" <p.zabel@pengutronix.de>, "David Airlie" <airlied@linux.ie>, "Daniel Vetter" <daniel@ffwll.ch>, "Matthias Brugger" <matthias.bgg@gmail.com>, "Noralf Tr�nnes" <noralf@tronnes.org>, "Frank Wunderlich" <frank-w@public-files.de>
> Cc: dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org, srv_heupstream@mediatek.com, "CK Hu" <ck.hu@mediatek.com>
> Betreff: [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device
>
> For Mediatek drm driver, use fbdev emulation to create a framebuffer
> device.
> 
> Signed-off-by: CK Hu <ck.hu@mediatek.com>
> ---
>  drivers/gpu/drm/mediatek/mtk_drm_drv.c | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> index 6ec4ca070382..5fcc0e294696 100644
> --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> @@ -16,6 +16,7 @@
>  #include <drm/drm_atomic.h>
>  #include <drm/drm_atomic_helper.h>
>  #include <drm/drm_crtc_helper.h>
> +#include <drm/drm_fb_helper.h>
>  #include <drm/drm_gem.h>
>  #include <drm/drm_gem_cma_helper.h>
>  #include <drm/drm_of.h>
> @@ -378,6 +379,10 @@ static int mtk_drm_bind(struct device *dev)
>  	if (ret < 0)
>  		goto err_deinit;
>  
> +	ret = drm_fbdev_generic_setup(drm, 32);
> +	if (ret)
> +		DRM_ERROR("Failed to initialize fbdev: %d\n", ret);
> +
>  	return 0;
>  
>  err_deinit:
> -- 
> 2.18.1
> 
>

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Aw: [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device
@ 2019-01-17 14:14     ` Frank Wunderlich
  0 siblings, 0 replies; 22+ messages in thread
From: Frank Wunderlich @ 2019-01-17 14:14 UTC (permalink / raw)
  Cc: Philipp Zabel, David Airlie, Daniel Vetter, Matthias Brugger,
	"Noralf Tr�nnes",
	dri-devel, linux-arm-kernel, linux-mediatek, linux-kernel,
	srv_heupstream, CK Hu

Hi,

this Patchset does not hang on Bananapi R2, but does not show anything on FB-Console...seems anything is missing

https://github.com/frank-w/BPI-R2-4.14/tree/4.20-fbdev

dmesg | grep 'fb\|framebuffer'
[    0.000000] Linux version 4.20.0-rc7-bpi-r2-fbdev (frank@frank-N56VZ) (gcc version 7.3.0 (Ubuntu/Linaro 7.3.0-27ubuntu1~18.04)) 9
[    0.000000] cma: Reserved 64 MiB at 0xfb800000
[    0.000000] Kernel command line: board=bpi-r2 console=earlyprintk console=tty1 fbcon=map:0 console=ttyS0,115200 root=/dev/mmcblk7
[    5.733185] [drm:drm_fb_helper_generic_probe] surface width(1280), height(1024) and bpp(32)
[    5.754452] [drm:drm_mode_addfb2] [FB:44]
[    5.792878] mediatek-drm 14000000.dispsys: fb0: DRM emulated frame buffer device
[    5.814067] [drm:drm_fb_helper_hotplug_event.part.11] 
[    6.203083] mediatek-drm 14000000.dispsys: [drm:drm_client_dev_hotplug] fbdev: ret=0
[   24.930347] mediatek-drm 14000000.dispsys: [drm:drm_client_dev_restore] fbdev: ret=0
[   25.196872] mediatek-drm 14000000.dispsys: [drm:drm_client_dev_restore] fbdev: ret=0
[   25.281184] [drm:drm_mode_addfb2] [FB:49]
[   27.947962] [drm:drm_mode_addfb2] [FB:49]

regards Frank


> Gesendet: Mittwoch, 16. Januar 2019 um 02:39 Uhr
> Von: "CK Hu" <ck.hu@mediatek.com>
> An: "Philipp Zabel" <p.zabel@pengutronix.de>, "David Airlie" <airlied@linux.ie>, "Daniel Vetter" <daniel@ffwll.ch>, "Matthias Brugger" <matthias.bgg@gmail.com>, "Noralf Tr�nnes" <noralf@tronnes.org>, "Frank Wunderlich" <frank-w@public-files.de>
> Cc: dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org, srv_heupstream@mediatek.com, "CK Hu" <ck.hu@mediatek.com>
> Betreff: [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device
>
> For Mediatek drm driver, use fbdev emulation to create a framebuffer
> device.
> 
> Signed-off-by: CK Hu <ck.hu@mediatek.com>
> ---
>  drivers/gpu/drm/mediatek/mtk_drm_drv.c | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> index 6ec4ca070382..5fcc0e294696 100644
> --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> @@ -16,6 +16,7 @@
>  #include <drm/drm_atomic.h>
>  #include <drm/drm_atomic_helper.h>
>  #include <drm/drm_crtc_helper.h>
> +#include <drm/drm_fb_helper.h>
>  #include <drm/drm_gem.h>
>  #include <drm/drm_gem_cma_helper.h>
>  #include <drm/drm_of.h>
> @@ -378,6 +379,10 @@ static int mtk_drm_bind(struct device *dev)
>  	if (ret < 0)
>  		goto err_deinit;
>  
> +	ret = drm_fbdev_generic_setup(drm, 32);
> +	if (ret)
> +		DRM_ERROR("Failed to initialize fbdev: %d\n", ret);
> +
>  	return 0;
>  
>  err_deinit:
> -- 
> 2.18.1
> 
>

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Aw: [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device
@ 2019-01-17 14:14     ` Frank Wunderlich
  0 siblings, 0 replies; 22+ messages in thread
From: Frank Wunderlich @ 2019-01-17 14:14 UTC (permalink / raw)
  To: CK Hu
  Cc: Philipp Zabel, srv_heupstream, David Airlie, linux-kernel,
	dri-devel, CK Hu, "Noralf Tr�nnes",
	linux-mediatek, Daniel Vetter, Matthias Brugger,
	linux-arm-kernel

Hi,

this Patchset does not hang on Bananapi R2, but does not show anything on FB-Console...seems anything is missing

https://github.com/frank-w/BPI-R2-4.14/tree/4.20-fbdev

dmesg | grep 'fb\|framebuffer'
[    0.000000] Linux version 4.20.0-rc7-bpi-r2-fbdev (frank@frank-N56VZ) (gcc version 7.3.0 (Ubuntu/Linaro 7.3.0-27ubuntu1~18.04)) 9
[    0.000000] cma: Reserved 64 MiB at 0xfb800000
[    0.000000] Kernel command line: board=bpi-r2 console=earlyprintk console=tty1 fbcon=map:0 console=ttyS0,115200 root=/dev/mmcblk7
[    5.733185] [drm:drm_fb_helper_generic_probe] surface width(1280), height(1024) and bpp(32)
[    5.754452] [drm:drm_mode_addfb2] [FB:44]
[    5.792878] mediatek-drm 14000000.dispsys: fb0: DRM emulated frame buffer device
[    5.814067] [drm:drm_fb_helper_hotplug_event.part.11] 
[    6.203083] mediatek-drm 14000000.dispsys: [drm:drm_client_dev_hotplug] fbdev: ret=0
[   24.930347] mediatek-drm 14000000.dispsys: [drm:drm_client_dev_restore] fbdev: ret=0
[   25.196872] mediatek-drm 14000000.dispsys: [drm:drm_client_dev_restore] fbdev: ret=0
[   25.281184] [drm:drm_mode_addfb2] [FB:49]
[   27.947962] [drm:drm_mode_addfb2] [FB:49]

regards Frank


> Gesendet: Mittwoch, 16. Januar 2019 um 02:39 Uhr
> Von: "CK Hu" <ck.hu@mediatek.com>
> An: "Philipp Zabel" <p.zabel@pengutronix.de>, "David Airlie" <airlied@linux.ie>, "Daniel Vetter" <daniel@ffwll.ch>, "Matthias Brugger" <matthias.bgg@gmail.com>, "Noralf Tr�nnes" <noralf@tronnes.org>, "Frank Wunderlich" <frank-w@public-files.de>
> Cc: dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org, srv_heupstream@mediatek.com, "CK Hu" <ck.hu@mediatek.com>
> Betreff: [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device
>
> For Mediatek drm driver, use fbdev emulation to create a framebuffer
> device.
> 
> Signed-off-by: CK Hu <ck.hu@mediatek.com>
> ---
>  drivers/gpu/drm/mediatek/mtk_drm_drv.c | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> index 6ec4ca070382..5fcc0e294696 100644
> --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> @@ -16,6 +16,7 @@
>  #include <drm/drm_atomic.h>
>  #include <drm/drm_atomic_helper.h>
>  #include <drm/drm_crtc_helper.h>
> +#include <drm/drm_fb_helper.h>
>  #include <drm/drm_gem.h>
>  #include <drm/drm_gem_cma_helper.h>
>  #include <drm/drm_of.h>
> @@ -378,6 +379,10 @@ static int mtk_drm_bind(struct device *dev)
>  	if (ret < 0)
>  		goto err_deinit;
>  
> +	ret = drm_fbdev_generic_setup(drm, 32);
> +	if (ret)
> +		DRM_ERROR("Failed to initialize fbdev: %d\n", ret);
> +
>  	return 0;
>  
>  err_deinit:
> -- 
> 2.18.1
> 
>

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: Aw: [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device
  2019-01-17 14:14     ` Frank Wunderlich
@ 2019-01-18  1:46       ` CK Hu
  -1 siblings, 0 replies; 22+ messages in thread
From: CK Hu @ 2019-01-18  1:46 UTC (permalink / raw)
  To: Frank Wunderlich
  Cc: Philipp Zabel, srv_heupstream, David Airlie, linux-kernel,
	dri-devel, "Noralf Tr�nnes",
	linux-mediatek, Daniel Vetter, Matthias Brugger,
	linux-arm-kernel

Hi, Frank:

On Thu, 2019-01-17 at 15:14 +0100, Frank Wunderlich wrote:
> Hi,
> 
> this Patchset does not hang on Bananapi R2, but does not show anything on FB-Console...seems anything is missing
> 
> https://github.com/frank-w/BPI-R2-4.14/tree/4.20-fbdev
> 
> dmesg | grep 'fb\|framebuffer'
> [    0.000000] Linux version 4.20.0-rc7-bpi-r2-fbdev (frank@frank-N56VZ) (gcc version 7.3.0 (Ubuntu/Linaro 7.3.0-27ubuntu1~18.04)) 9
> [    0.000000] cma: Reserved 64 MiB at 0xfb800000
> [    0.000000] Kernel command line: board=bpi-r2 console=earlyprintk console=tty1 fbcon=map:0 console=ttyS0,115200 root=/dev/mmcblk7
> [    5.733185] [drm:drm_fb_helper_generic_probe] surface width(1280), height(1024) and bpp(32)
> [    5.754452] [drm:drm_mode_addfb2] [FB:44]
> [    5.792878] mediatek-drm 14000000.dispsys: fb0: DRM emulated frame buffer device
> [    5.814067] [drm:drm_fb_helper_hotplug_event.part.11] 
> [    6.203083] mediatek-drm 14000000.dispsys: [drm:drm_client_dev_hotplug] fbdev: ret=0
> [   24.930347] mediatek-drm 14000000.dispsys: [drm:drm_client_dev_restore] fbdev: ret=0
> [   25.196872] mediatek-drm 14000000.dispsys: [drm:drm_client_dev_restore] fbdev: ret=0
> [   25.281184] [drm:drm_mode_addfb2] [FB:49]
> [   27.947962] [drm:drm_mode_addfb2] [FB:49]

The log does not show any information of error, but it close fbdev at
the time 24.930347.

I just test vmap() by writing white color into framebuffer after vmap()
and use user space program to control fbdev to show this framebuffer and
the panel shows white screen. So I believe that vmap() and fbdev works
fine, but I'm not sure what happen to fbcon. I would try to setup fbcon
to find out the bug. If you could try to debug parallelly, it would be
much help.

Regards,
CK

> 
> regards Frank
> 
> 
> > Gesendet: Mittwoch, 16. Januar 2019 um 02:39 Uhr
> > Von: "CK Hu" <ck.hu@mediatek.com>
> > An: "Philipp Zabel" <p.zabel@pengutronix.de>, "David Airlie" <airlied@linux.ie>, "Daniel Vetter" <daniel@ffwll.ch>, "Matthias Brugger" <matthias.bgg@gmail.com>, "Noralf Tr�nnes" <noralf@tronnes.org>, "Frank Wunderlich" <frank-w@public-files.de>
> > Cc: dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org, srv_heupstream@mediatek.com, "CK Hu" <ck.hu@mediatek.com>
> > Betreff: [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device
> >
> > For Mediatek drm driver, use fbdev emulation to create a framebuffer
> > device.
> > 
> > Signed-off-by: CK Hu <ck.hu@mediatek.com>
> > ---
> >  drivers/gpu/drm/mediatek/mtk_drm_drv.c | 5 +++++
> >  1 file changed, 5 insertions(+)
> > 
> > diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> > index 6ec4ca070382..5fcc0e294696 100644
> > --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> > +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> > @@ -16,6 +16,7 @@
> >  #include <drm/drm_atomic.h>
> >  #include <drm/drm_atomic_helper.h>
> >  #include <drm/drm_crtc_helper.h>
> > +#include <drm/drm_fb_helper.h>
> >  #include <drm/drm_gem.h>
> >  #include <drm/drm_gem_cma_helper.h>
> >  #include <drm/drm_of.h>
> > @@ -378,6 +379,10 @@ static int mtk_drm_bind(struct device *dev)
> >  	if (ret < 0)
> >  		goto err_deinit;
> >  
> > +	ret = drm_fbdev_generic_setup(drm, 32);
> > +	if (ret)
> > +		DRM_ERROR("Failed to initialize fbdev: %d\n", ret);
> > +
> >  	return 0;
> >  
> >  err_deinit:
> > -- 
> > 2.18.1
> > 
> >
> 
> _______________________________________________
> Linux-mediatek mailing list
> Linux-mediatek@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-mediatek



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: Aw: [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device
@ 2019-01-18  1:46       ` CK Hu
  0 siblings, 0 replies; 22+ messages in thread
From: CK Hu @ 2019-01-18  1:46 UTC (permalink / raw)
  To: Frank Wunderlich
  Cc: Daniel Vetter, srv_heupstream, David Airlie, linux-kernel,
	dri-devel, "Noralf Tr�nnes",
	linux-mediatek, Philipp Zabel, Matthias Brugger,
	linux-arm-kernel

Hi, Frank:

On Thu, 2019-01-17 at 15:14 +0100, Frank Wunderlich wrote:
> Hi,
> 
> this Patchset does not hang on Bananapi R2, but does not show anything on FB-Console...seems anything is missing
> 
> https://github.com/frank-w/BPI-R2-4.14/tree/4.20-fbdev
> 
> dmesg | grep 'fb\|framebuffer'
> [    0.000000] Linux version 4.20.0-rc7-bpi-r2-fbdev (frank@frank-N56VZ) (gcc version 7.3.0 (Ubuntu/Linaro 7.3.0-27ubuntu1~18.04)) 9
> [    0.000000] cma: Reserved 64 MiB at 0xfb800000
> [    0.000000] Kernel command line: board=bpi-r2 console=earlyprintk console=tty1 fbcon=map:0 console=ttyS0,115200 root=/dev/mmcblk7
> [    5.733185] [drm:drm_fb_helper_generic_probe] surface width(1280), height(1024) and bpp(32)
> [    5.754452] [drm:drm_mode_addfb2] [FB:44]
> [    5.792878] mediatek-drm 14000000.dispsys: fb0: DRM emulated frame buffer device
> [    5.814067] [drm:drm_fb_helper_hotplug_event.part.11] 
> [    6.203083] mediatek-drm 14000000.dispsys: [drm:drm_client_dev_hotplug] fbdev: ret=0
> [   24.930347] mediatek-drm 14000000.dispsys: [drm:drm_client_dev_restore] fbdev: ret=0
> [   25.196872] mediatek-drm 14000000.dispsys: [drm:drm_client_dev_restore] fbdev: ret=0
> [   25.281184] [drm:drm_mode_addfb2] [FB:49]
> [   27.947962] [drm:drm_mode_addfb2] [FB:49]

The log does not show any information of error, but it close fbdev at
the time 24.930347.

I just test vmap() by writing white color into framebuffer after vmap()
and use user space program to control fbdev to show this framebuffer and
the panel shows white screen. So I believe that vmap() and fbdev works
fine, but I'm not sure what happen to fbcon. I would try to setup fbcon
to find out the bug. If you could try to debug parallelly, it would be
much help.

Regards,
CK

> 
> regards Frank
> 
> 
> > Gesendet: Mittwoch, 16. Januar 2019 um 02:39 Uhr
> > Von: "CK Hu" <ck.hu@mediatek.com>
> > An: "Philipp Zabel" <p.zabel@pengutronix.de>, "David Airlie" <airlied@linux.ie>, "Daniel Vetter" <daniel@ffwll.ch>, "Matthias Brugger" <matthias.bgg@gmail.com>, "Noralf Tr�nnes" <noralf@tronnes.org>, "Frank Wunderlich" <frank-w@public-files.de>
> > Cc: dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org, srv_heupstream@mediatek.com, "CK Hu" <ck.hu@mediatek.com>
> > Betreff: [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device
> >
> > For Mediatek drm driver, use fbdev emulation to create a framebuffer
> > device.
> > 
> > Signed-off-by: CK Hu <ck.hu@mediatek.com>
> > ---
> >  drivers/gpu/drm/mediatek/mtk_drm_drv.c | 5 +++++
> >  1 file changed, 5 insertions(+)
> > 
> > diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> > index 6ec4ca070382..5fcc0e294696 100644
> > --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> > +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> > @@ -16,6 +16,7 @@
> >  #include <drm/drm_atomic.h>
> >  #include <drm/drm_atomic_helper.h>
> >  #include <drm/drm_crtc_helper.h>
> > +#include <drm/drm_fb_helper.h>
> >  #include <drm/drm_gem.h>
> >  #include <drm/drm_gem_cma_helper.h>
> >  #include <drm/drm_of.h>
> > @@ -378,6 +379,10 @@ static int mtk_drm_bind(struct device *dev)
> >  	if (ret < 0)
> >  		goto err_deinit;
> >  
> > +	ret = drm_fbdev_generic_setup(drm, 32);
> > +	if (ret)
> > +		DRM_ERROR("Failed to initialize fbdev: %d\n", ret);
> > +
> >  	return 0;
> >  
> >  err_deinit:
> > -- 
> > 2.18.1
> > 
> >
> 
> _______________________________________________
> Linux-mediatek mailing list
> Linux-mediatek@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-mediatek



_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: Aw: [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device
  2019-01-18  1:46       ` CK Hu
@ 2019-01-18  8:39         ` Matthias Brugger
  -1 siblings, 0 replies; 22+ messages in thread
From: Matthias Brugger @ 2019-01-18  8:39 UTC (permalink / raw)
  To: CK Hu, Frank Wunderlich
  Cc: Daniel Vetter, srv_heupstream, David Airlie, linux-kernel,
	dri-devel, Noralf Tr�nnes, linux-mediatek, Philipp Zabel,
	linux-arm-kernel



On 18/01/2019 02:46, CK Hu wrote:
> Hi, Frank:
> 
> On Thu, 2019-01-17 at 15:14 +0100, Frank Wunderlich wrote:
>> Hi,
>>
>> this Patchset does not hang on Bananapi R2, but does not show anything on FB-Console...seems anything is missing
>>
>> https://github.com/frank-w/BPI-R2-4.14/tree/4.20-fbdev
>>
>> dmesg | grep 'fb\|framebuffer'
>> [    0.000000] Linux version 4.20.0-rc7-bpi-r2-fbdev (frank@frank-N56VZ) (gcc version 7.3.0 (Ubuntu/Linaro 7.3.0-27ubuntu1~18.04)) 9
>> [    0.000000] cma: Reserved 64 MiB at 0xfb800000
>> [    0.000000] Kernel command line: board=bpi-r2 console=earlyprintk console=tty1 fbcon=map:0 console=ttyS0,115200 root=/dev/mmcblk7
>> [    5.733185] [drm:drm_fb_helper_generic_probe] surface width(1280), height(1024) and bpp(32)
>> [    5.754452] [drm:drm_mode_addfb2] [FB:44]
>> [    5.792878] mediatek-drm 14000000.dispsys: fb0: DRM emulated frame buffer device
>> [    5.814067] [drm:drm_fb_helper_hotplug_event.part.11] 
>> [    6.203083] mediatek-drm 14000000.dispsys: [drm:drm_client_dev_hotplug] fbdev: ret=0
>> [   24.930347] mediatek-drm 14000000.dispsys: [drm:drm_client_dev_restore] fbdev: ret=0
>> [   25.196872] mediatek-drm 14000000.dispsys: [drm:drm_client_dev_restore] fbdev: ret=0
>> [   25.281184] [drm:drm_mode_addfb2] [FB:49]
>> [   27.947962] [drm:drm_mode_addfb2] [FB:49]
> 
> The log does not show any information of error, but it close fbdev at
> the time 24.930347.
> 
> I just test vmap() by writing white color into framebuffer after vmap()
> and use user space program to control fbdev to show this framebuffer and
> the panel shows white screen. So I believe that vmap() and fbdev works
> fine, but I'm not sure what happen to fbcon. I would try to setup fbcon
> to find out the bug. If you could try to debug parallelly, it would be
> much help.
> 

may it be the not yet fixed mmsys compatible problem?
Frank, did you test with my last series [1]?

Regards,
Matthias

[1] https://patchwork.kernel.org/cover/10686345/

> Regards,
> CK
> 
>>
>> regards Frank
>>
>>
>>> Gesendet: Mittwoch, 16. Januar 2019 um 02:39 Uhr
>>> Von: "CK Hu" <ck.hu@mediatek.com>
>>> An: "Philipp Zabel" <p.zabel@pengutronix.de>, "David Airlie" <airlied@linux.ie>, "Daniel Vetter" <daniel@ffwll.ch>, "Matthias Brugger" <matthias.bgg@gmail.com>, "Noralf Tr�nnes" <noralf@tronnes.org>, "Frank Wunderlich" <frank-w@public-files.de>
>>> Cc: dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org, srv_heupstream@mediatek.com, "CK Hu" <ck.hu@mediatek.com>
>>> Betreff: [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device
>>>
>>> For Mediatek drm driver, use fbdev emulation to create a framebuffer
>>> device.
>>>
>>> Signed-off-by: CK Hu <ck.hu@mediatek.com>
>>> ---
>>>  drivers/gpu/drm/mediatek/mtk_drm_drv.c | 5 +++++
>>>  1 file changed, 5 insertions(+)
>>>
>>> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
>>> index 6ec4ca070382..5fcc0e294696 100644
>>> --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
>>> +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
>>> @@ -16,6 +16,7 @@
>>>  #include <drm/drm_atomic.h>
>>>  #include <drm/drm_atomic_helper.h>
>>>  #include <drm/drm_crtc_helper.h>
>>> +#include <drm/drm_fb_helper.h>
>>>  #include <drm/drm_gem.h>
>>>  #include <drm/drm_gem_cma_helper.h>
>>>  #include <drm/drm_of.h>
>>> @@ -378,6 +379,10 @@ static int mtk_drm_bind(struct device *dev)
>>>  	if (ret < 0)
>>>  		goto err_deinit;
>>>  
>>> +	ret = drm_fbdev_generic_setup(drm, 32);
>>> +	if (ret)
>>> +		DRM_ERROR("Failed to initialize fbdev: %d\n", ret);
>>> +
>>>  	return 0;
>>>  
>>>  err_deinit:
>>> -- 
>>> 2.18.1
>>>
>>>
>>
>> _______________________________________________
>> Linux-mediatek mailing list
>> Linux-mediatek@lists.infradead.org
>> http://lists.infradead.org/mailman/listinfo/linux-mediatek
> 
> 
> 
> _______________________________________________
> Linux-mediatek mailing list
> Linux-mediatek@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-mediatek
> 

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: Aw: [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device
@ 2019-01-18  8:39         ` Matthias Brugger
  0 siblings, 0 replies; 22+ messages in thread
From: Matthias Brugger @ 2019-01-18  8:39 UTC (permalink / raw)
  To: CK Hu, Frank Wunderlich
  Cc: Philipp Zabel, srv_heupstream, David Airlie, linux-kernel,
	dri-devel, Noralf Tr�nnes, linux-mediatek, Daniel Vetter,
	linux-arm-kernel



On 18/01/2019 02:46, CK Hu wrote:
> Hi, Frank:
> 
> On Thu, 2019-01-17 at 15:14 +0100, Frank Wunderlich wrote:
>> Hi,
>>
>> this Patchset does not hang on Bananapi R2, but does not show anything on FB-Console...seems anything is missing
>>
>> https://github.com/frank-w/BPI-R2-4.14/tree/4.20-fbdev
>>
>> dmesg | grep 'fb\|framebuffer'
>> [    0.000000] Linux version 4.20.0-rc7-bpi-r2-fbdev (frank@frank-N56VZ) (gcc version 7.3.0 (Ubuntu/Linaro 7.3.0-27ubuntu1~18.04)) 9
>> [    0.000000] cma: Reserved 64 MiB at 0xfb800000
>> [    0.000000] Kernel command line: board=bpi-r2 console=earlyprintk console=tty1 fbcon=map:0 console=ttyS0,115200 root=/dev/mmcblk7
>> [    5.733185] [drm:drm_fb_helper_generic_probe] surface width(1280), height(1024) and bpp(32)
>> [    5.754452] [drm:drm_mode_addfb2] [FB:44]
>> [    5.792878] mediatek-drm 14000000.dispsys: fb0: DRM emulated frame buffer device
>> [    5.814067] [drm:drm_fb_helper_hotplug_event.part.11] 
>> [    6.203083] mediatek-drm 14000000.dispsys: [drm:drm_client_dev_hotplug] fbdev: ret=0
>> [   24.930347] mediatek-drm 14000000.dispsys: [drm:drm_client_dev_restore] fbdev: ret=0
>> [   25.196872] mediatek-drm 14000000.dispsys: [drm:drm_client_dev_restore] fbdev: ret=0
>> [   25.281184] [drm:drm_mode_addfb2] [FB:49]
>> [   27.947962] [drm:drm_mode_addfb2] [FB:49]
> 
> The log does not show any information of error, but it close fbdev at
> the time 24.930347.
> 
> I just test vmap() by writing white color into framebuffer after vmap()
> and use user space program to control fbdev to show this framebuffer and
> the panel shows white screen. So I believe that vmap() and fbdev works
> fine, but I'm not sure what happen to fbcon. I would try to setup fbcon
> to find out the bug. If you could try to debug parallelly, it would be
> much help.
> 

may it be the not yet fixed mmsys compatible problem?
Frank, did you test with my last series [1]?

Regards,
Matthias

[1] https://patchwork.kernel.org/cover/10686345/

> Regards,
> CK
> 
>>
>> regards Frank
>>
>>
>>> Gesendet: Mittwoch, 16. Januar 2019 um 02:39 Uhr
>>> Von: "CK Hu" <ck.hu@mediatek.com>
>>> An: "Philipp Zabel" <p.zabel@pengutronix.de>, "David Airlie" <airlied@linux.ie>, "Daniel Vetter" <daniel@ffwll.ch>, "Matthias Brugger" <matthias.bgg@gmail.com>, "Noralf Tr�nnes" <noralf@tronnes.org>, "Frank Wunderlich" <frank-w@public-files.de>
>>> Cc: dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org, srv_heupstream@mediatek.com, "CK Hu" <ck.hu@mediatek.com>
>>> Betreff: [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device
>>>
>>> For Mediatek drm driver, use fbdev emulation to create a framebuffer
>>> device.
>>>
>>> Signed-off-by: CK Hu <ck.hu@mediatek.com>
>>> ---
>>>  drivers/gpu/drm/mediatek/mtk_drm_drv.c | 5 +++++
>>>  1 file changed, 5 insertions(+)
>>>
>>> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
>>> index 6ec4ca070382..5fcc0e294696 100644
>>> --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
>>> +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
>>> @@ -16,6 +16,7 @@
>>>  #include <drm/drm_atomic.h>
>>>  #include <drm/drm_atomic_helper.h>
>>>  #include <drm/drm_crtc_helper.h>
>>> +#include <drm/drm_fb_helper.h>
>>>  #include <drm/drm_gem.h>
>>>  #include <drm/drm_gem_cma_helper.h>
>>>  #include <drm/drm_of.h>
>>> @@ -378,6 +379,10 @@ static int mtk_drm_bind(struct device *dev)
>>>  	if (ret < 0)
>>>  		goto err_deinit;
>>>  
>>> +	ret = drm_fbdev_generic_setup(drm, 32);
>>> +	if (ret)
>>> +		DRM_ERROR("Failed to initialize fbdev: %d\n", ret);
>>> +
>>>  	return 0;
>>>  
>>>  err_deinit:
>>> -- 
>>> 2.18.1
>>>
>>>
>>
>> _______________________________________________
>> Linux-mediatek mailing list
>> Linux-mediatek@lists.infradead.org
>> http://lists.infradead.org/mailman/listinfo/linux-mediatek
> 
> 
> 
> _______________________________________________
> Linux-mediatek mailing list
> Linux-mediatek@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-mediatek
> 

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Aw: Re:  [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device
  2019-01-18  8:39         ` Matthias Brugger
@ 2019-01-18 12:33           ` Frank Wunderlich
  -1 siblings, 0 replies; 22+ messages in thread
From: Frank Wunderlich @ 2019-01-18 12:33 UTC (permalink / raw)
  To: Matthias Brugger
  Cc: CK Hu, Daniel Vetter, srv_heupstream, David Airlie, linux-kernel,
	dri-devel, "Noralf Tr�nnes",
	linux-mediatek, Philipp Zabel, linux-arm-kernel

I have tested same codebase where my FBDev-Patch works (4.20-hdmiv5), only without it and CK Hu's 2 Patches

does generic fbdev depend on the mmsys-Patch?

regards Frank


> Gesendet: Freitag, 18. Januar 2019 um 09:39 Uhr
> Von: "Matthias Brugger" <matthias.bgg@gmail.com>
> may it be the not yet fixed mmsys compatible problem?
> Frank, did you test with my last series [1]?
> 
> Regards,
> Matthias
> 
> [1] https://patchwork.kernel.org/cover/10686345/

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Aw: Re:  [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device
@ 2019-01-18 12:33           ` Frank Wunderlich
  0 siblings, 0 replies; 22+ messages in thread
From: Frank Wunderlich @ 2019-01-18 12:33 UTC (permalink / raw)
  To: Matthias Brugger
  Cc: Philipp Zabel, srv_heupstream, David Airlie, linux-kernel,
	dri-devel, "Noralf Tr�nnes",
	linux-mediatek, Daniel Vetter, CK Hu, linux-arm-kernel

I have tested same codebase where my FBDev-Patch works (4.20-hdmiv5), only without it and CK Hu's 2 Patches

does generic fbdev depend on the mmsys-Patch?

regards Frank


> Gesendet: Freitag, 18. Januar 2019 um 09:39 Uhr
> Von: "Matthias Brugger" <matthias.bgg@gmail.com>
> may it be the not yet fixed mmsys compatible problem?
> Frank, did you test with my last series [1]?
> 
> Regards,
> Matthias
> 
> [1] https://patchwork.kernel.org/cover/10686345/

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Aw: Re:  [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device
  2019-01-18  8:39         ` Matthias Brugger
  (?)
@ 2019-01-20 13:36           ` Frank Wunderlich
  -1 siblings, 0 replies; 22+ messages in thread
From: Frank Wunderlich @ 2019-01-20 13:36 UTC (permalink / raw)
  To: Matthias Brugger
  Cc: CK Hu, Daniel Vetter, srv_heupstream, David Airlie, linux-kernel,
	dri-devel, "Noralf Tr�nnes",
	linux-mediatek, Philipp Zabel, linux-arm-kernel

Tested with mmsys-Patch, but same result, no fbcon, tft is switched on but i see no kernel-log

after boot is finished, i see X-server, until this point i see only black screen

regards Frank


> Gesendet: Freitag, 18. Januar 2019 um 09:39 Uhr
> Von: "Matthias Brugger" <matthias.bgg@gmail.com>
> may it be the not yet fixed mmsys compatible problem?
> Frank, did you test with my last series [1]?
> [1] https://patchwork.kernel.org/cover/10686345/

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Aw: Re:  [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device
@ 2019-01-20 13:36           ` Frank Wunderlich
  0 siblings, 0 replies; 22+ messages in thread
From: Frank Wunderlich @ 2019-01-20 13:36 UTC (permalink / raw)
  To: Matthias Brugger
  Cc: Philipp Zabel, srv_heupstream, David Airlie, linux-kernel,
	dri-devel, "Noralf Tr�nnes",
	linux-mediatek, Daniel Vetter, CK Hu, linux-arm-kernel

Tested with mmsys-Patch, but same result, no fbcon, tft is switched on but i see no kernel-log

after boot is finished, i see X-server, until this point i see only black screen

regards Frank


> Gesendet: Freitag, 18. Januar 2019 um 09:39 Uhr
> Von: "Matthias Brugger" <matthias.bgg@gmail.com>
> may it be the not yet fixed mmsys compatible problem?
> Frank, did you test with my last series [1]?
> [1] https://patchwork.kernel.org/cover/10686345/

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Aw: Re:  [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device
@ 2019-01-20 13:36           ` Frank Wunderlich
  0 siblings, 0 replies; 22+ messages in thread
From: Frank Wunderlich @ 2019-01-20 13:36 UTC (permalink / raw)
  To: Matthias Brugger
  Cc: Philipp Zabel, srv_heupstream, David Airlie, linux-kernel,
	dri-devel, "Noralf Tr�nnes",
	linux-mediatek, Daniel Vetter, CK Hu, linux-arm-kernel

Tested with mmsys-Patch, but same result, no fbcon, tft is switched on but i see no kernel-log

after boot is finished, i see X-server, until this point i see only black screen

regards Frank


> Gesendet: Freitag, 18. Januar 2019 um 09:39 Uhr
> Von: "Matthias Brugger" <matthias.bgg@gmail.com>
> may it be the not yet fixed mmsys compatible problem?
> Frank, did you test with my last series [1]?
> [1] https://patchwork.kernel.org/cover/10686345/

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: Aw: Re:  [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device
  2019-01-20 13:36           ` Frank Wunderlich
@ 2019-03-19  3:12             ` CK Hu
  -1 siblings, 0 replies; 22+ messages in thread
From: CK Hu @ 2019-03-19  3:12 UTC (permalink / raw)
  To: Frank Wunderlich
  Cc: Matthias Brugger, Daniel Vetter, srv_heupstream, David Airlie,
	linux-kernel, dri-devel, "Noralf Tr�nnes",
	linux-mediatek, Philipp Zabel, linux-arm-kernel

Hi, Frank:

My platform's fbcon works correctly, so I've applied this series to [1].
If you have another patch, I'd treat it as a bug-fix.

[1]
https://github.com/ckhu-mediatek/linux.git-tags/commits/mediatek-drm-fixes-5.1

Regards,
CK

On Sun, 2019-01-20 at 14:36 +0100, Frank Wunderlich wrote:
> Tested with mmsys-Patch, but same result, no fbcon, tft is switched on but i see no kernel-log
> 
> after boot is finished, i see X-server, until this point i see only black screen
> 
> regards Frank
> 
> 
> > Gesendet: Freitag, 18. Januar 2019 um 09:39 Uhr
> > Von: "Matthias Brugger" <matthias.bgg@gmail.com>
> > may it be the not yet fixed mmsys compatible problem?
> > Frank, did you test with my last series [1]?
> > [1] https://patchwork.kernel.org/cover/10686345/



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: Aw: Re:  [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device
@ 2019-03-19  3:12             ` CK Hu
  0 siblings, 0 replies; 22+ messages in thread
From: CK Hu @ 2019-03-19  3:12 UTC (permalink / raw)
  To: Frank Wunderlich
  Cc: Philipp Zabel, srv_heupstream, David Airlie, linux-kernel,
	dri-devel, "Noralf Tr�nnes",
	linux-mediatek, Daniel Vetter, Matthias Brugger,
	linux-arm-kernel

Hi, Frank:

My platform's fbcon works correctly, so I've applied this series to [1].
If you have another patch, I'd treat it as a bug-fix.

[1]
https://github.com/ckhu-mediatek/linux.git-tags/commits/mediatek-drm-fixes-5.1

Regards,
CK

On Sun, 2019-01-20 at 14:36 +0100, Frank Wunderlich wrote:
> Tested with mmsys-Patch, but same result, no fbcon, tft is switched on but i see no kernel-log
> 
> after boot is finished, i see X-server, until this point i see only black screen
> 
> regards Frank
> 
> 
> > Gesendet: Freitag, 18. Januar 2019 um 09:39 Uhr
> > Von: "Matthias Brugger" <matthias.bgg@gmail.com>
> > may it be the not yet fixed mmsys compatible problem?
> > Frank, did you test with my last series [1]?
> > [1] https://patchwork.kernel.org/cover/10686345/



_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Aw: Re:  Re:  [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device
  2019-03-19  3:12             ` CK Hu
@ 2019-03-19 16:52               ` Frank Wunderlich
  -1 siblings, 0 replies; 22+ messages in thread
From: Frank Wunderlich @ 2019-03-19 16:52 UTC (permalink / raw)
  To: CK Hu
  Cc: Philipp Zabel, srv_heupstream, David Airlie, linux-kernel,
	dri-devel, "Noralf Tr�nnes",
	linux-mediatek, Daniel Vetter, Matthias Brugger,
	linux-arm-kernel

Hi,

i try to get hdmi running on bananapi-r2 with 5.1 but also without CK Hu's frambuffer-Patch i get no x-server working

my codebase: https://github.com/frank-w/BPI-R2-4.14/commits/5.1-hdmi
reused some Patches working on 5.0 (here X-server is working, but not fbcon)

WARNING: CPU: 2 PID: 895 at drivers/gpu/drm/drm_atomic_helper.c:1430 drm_atomic_helper_wait_for_vblanks.part.1+0x2a4/0x2a8

any hint how to fix this? if needed i can send full bootlog (with drm.debug=7)

regards Frank

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Aw: Re:  Re:  [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device
@ 2019-03-19 16:52               ` Frank Wunderlich
  0 siblings, 0 replies; 22+ messages in thread
From: Frank Wunderlich @ 2019-03-19 16:52 UTC (permalink / raw)
  To: CK Hu
  Cc: Daniel Vetter, srv_heupstream, David Airlie, linux-kernel,
	dri-devel, "Noralf Tr�nnes",
	linux-mediatek, Philipp Zabel, Matthias Brugger,
	linux-arm-kernel

Hi,

i try to get hdmi running on bananapi-r2 with 5.1 but also without CK Hu's frambuffer-Patch i get no x-server working

my codebase: https://github.com/frank-w/BPI-R2-4.14/commits/5.1-hdmi
reused some Patches working on 5.0 (here X-server is working, but not fbcon)

WARNING: CPU: 2 PID: 895 at drivers/gpu/drm/drm_atomic_helper.c:1430 drm_atomic_helper_wait_for_vblanks.part.1+0x2a4/0x2a8

any hint how to fix this? if needed i can send full bootlog (with drm.debug=7)

regards Frank

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2019-03-19 16:53 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-01-16  1:39 [PATCH 1/2] drm/mediatek: Implement gem prime vmap/vunmap function CK Hu
2019-01-16  1:39 ` CK Hu
2019-01-16  1:39 ` CK Hu
2019-01-16  1:39 ` [PATCH 2/2] drm/mediatek: Add Mediatek framebuffer device CK Hu
2019-01-16  1:39   ` CK Hu
2019-01-16  1:39   ` CK Hu
2019-01-17 14:14   ` Aw: " Frank Wunderlich
2019-01-17 14:14     ` Frank Wunderlich
2019-01-17 14:14     ` Frank Wunderlich
2019-01-18  1:46     ` CK Hu
2019-01-18  1:46       ` CK Hu
2019-01-18  8:39       ` Matthias Brugger
2019-01-18  8:39         ` Matthias Brugger
2019-01-18 12:33         ` Aw: " Frank Wunderlich
2019-01-18 12:33           ` Frank Wunderlich
2019-01-20 13:36         ` Frank Wunderlich
2019-01-20 13:36           ` Frank Wunderlich
2019-01-20 13:36           ` Frank Wunderlich
2019-03-19  3:12           ` CK Hu
2019-03-19  3:12             ` CK Hu
2019-03-19 16:52             ` Aw: " Frank Wunderlich
2019-03-19 16:52               ` Frank Wunderlich

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.