[PATCH v9 4/7] drm/i915/gvt: Frame buffer decoder support for GVT-g

2017-06-15 Thread Xiaoguang Chen
decode frambuffer attributes of primary, cursor and sprite plane Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/Makefile | 3 +- drivers/gpu/drm/i915/gvt/display.c| 2 +- drivers/gpu/drm/i915/gvt/display.h| 2 + drivers/gpu/drm/i915/gvt/fb_decoder.c | 425

[PATCH v9 5/7] vfio: Define vfio based dma-buf operations

2017-06-15 Thread Xiaoguang Chen
ff-by: Xiaoguang Chen --- include/uapi/linux/vfio.h | 57 +++ 1 file changed, 57 insertions(+) diff --git a/include/uapi/linux/vfio.h b/include/uapi/linux/vfio.h index ae46105..7d86101 100644 --- a/include/uapi/linux/vfio.h +++ b/include/uapi/linux/v

[PATCH v9 3/7] drm: Extend the drm format

2017-06-15 Thread Xiaoguang Chen
Add new drm format which will be used by GVT-g. Signed-off-by: Xiaoguang Chen --- include/uapi/drm/drm_fourcc.h | 4 1 file changed, 4 insertions(+) diff --git a/include/uapi/drm/drm_fourcc.h b/include/uapi/drm/drm_fourcc.h index 55e3010..2681862 100644 --- a/include/uapi/drm/drm_fourcc.h

[PATCH v9 7/7] drm/i915/gvt: Adding user interface for dma-buf

2017-06-15 Thread Xiaoguang Chen
User space should create the management fd for the dma-buf operation first. Then user can query the plane information and create dma-buf if necessary using the management fd. Signed-off-by: Xiaoguang Chen Tested-by: Kechen Lu --- drivers/gpu/drm/i915/gvt/dmabuf.c| 45 +++- drivers

[PATCH v9 6/7] drm/i915/gvt: Dmabuf support for GVT-g

2017-06-15 Thread Xiaoguang Chen
this gem object to a dmabuf and export this dmabuf. A file descriptor will be generated for this dmabuf and this file descriptor can be sent to user space to do display. Signed-off-by: Xiaoguang Chen Tested-by: Kechen Lu --- drivers/gpu/drm/i915/gvt/Makefile | 2 +- drivers/gpu/drm/i9

[PATCH v9 2/7] drm/i915/gvt: OpRegion support for GVT-g

2017-06-15 Thread Xiaoguang Chen
OpRegion is needed to support display related operation for intel vgpu. A vfio device region is added to intel vgpu to deliver the host OpRegion information to user space so user space can construct the OpRegion for vgpu. Signed-off-by: Bing Niu Signed-off-by: Xiaoguang Chen --- drivers/gpu

[PATCH v9 0/7] drm/i915/gvt: Dma-buf support for GVT-g

2017-06-15 Thread Xiaoguang Chen
fd to query the plane information or create a dma-buf. The life cycle of this fd is managed by GVT-g user do not need to care about that. We have an example program on how to use the dma-buf. You can download the program to have a try. Good luck :) git repo: https://github.com/01org/igvtg-qemu

[PATCH v9 1/7] drm/i915/gvt: Extend the GVT-g architecture

2017-06-15 Thread Xiaoguang Chen
This patch extends the GVT-g architecture to support vfio device region. Later we will add a vfio device region for the vgpu to support OpRegion. Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/kvmgt.c | 21 ++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff

[PATCH v8 4/6] vfio: Define vfio based vgpu's dma-buf operations

2017-06-08 Thread Xiaoguang Chen
ff-by: Xiaoguang Chen --- include/uapi/linux/vfio.h | 58 +++ 1 file changed, 58 insertions(+) diff --git a/include/uapi/linux/vfio.h b/include/uapi/linux/vfio.h index ae46105..24427b7 100644 --- a/include/uapi/linux/vfio.h +++ b/include/uapi/linux/v

[PATCH v8 6/6] drm/i915/gvt: Adding user interface for dma-buf

2017-06-08 Thread Xiaoguang Chen
User space should create the management fd for the dma-buf operation first. Then user can query the plane information and create dma-buf if necessary using the management fd. Signed-off-by: Xiaoguang Chen Tested-by: Kechen Lu --- drivers/gpu/drm/i915/gvt/dmabuf.c| 37 - drivers

[PATCH v8 3/6] drm/i915/gvt: Frame buffer decoder support for GVT-g

2017-06-08 Thread Xiaoguang Chen
decode frambuffer attributes of primary, cursor and sprite plane Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/Makefile | 3 +- drivers/gpu/drm/i915/gvt/display.c| 2 +- drivers/gpu/drm/i915/gvt/display.h| 2 + drivers/gpu/drm/i915/gvt/fb_decoder.c | 425

[PATCH v8 0/6] drm/i915/gvt: Dma-buf support for GVT-g

2017-06-08 Thread Xiaoguang Chen
ample program on how to use the dma-buf. You can download the program to have a try. Good luck :) git repo: https://github.com/01org/igvtg-qemu branch:kvmgt_dmabuf_example Xiaoguang Chen (6): drm/i915/gvt: Extend the GVT-g architecture to support vfio device region drm/i915/gvt: OpRegion suppo

[PATCH v8 2/6] drm/i915/gvt: OpRegion support for GVT-g

2017-06-08 Thread Xiaoguang Chen
OpRegion is needed to support display related operation for intel vgpu. A vfio device region is added to intel vgpu to deliver the host OpRegion information to user space so user space can construct the OpRegion for vgpu. Signed-off-by: Bing Niu Signed-off-by: Xiaoguang Chen --- drivers/gpu

[PATCH v8 1/6] drm/i915/gvt: Extend the GVT-g architecture to support vfio device region

2017-06-08 Thread Xiaoguang Chen
Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/kvmgt.c | 21 ++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/i915/gvt/kvmgt.c b/drivers/gpu/drm/i915/gvt/kvmgt.c index 1ae0b40..3c6a02b 100644 --- a/drivers/gpu/drm/i915/gvt/kvmgt.c

[PATCH v8 5/6] drm/i915/gvt: Dmabuf support for GVT-g

2017-06-08 Thread Xiaoguang Chen
this gem object to a dmabuf and export this dmabuf. A file descriptor will be generated for this dmabuf and this file descriptor can be sent to user space to do display. Signed-off-by: Xiaoguang Chen Tested-by: Kechen Lu --- drivers/gpu/drm/i915/gvt/Makefile | 2 +- drivers/gpu/drm/i9

[PATCH v7 2/6] drm/i915/gvt: OpRegion support for GVT-g

2017-06-07 Thread Xiaoguang Chen
OpRegion is needed to support display related operation for intel vgpu. A vfio device region is added to intel vgpu to deliver the host OpRegion information to user space so user space can construct the OpRegion for vgpu. Signed-off-by: Bing Niu Signed-off-by: Xiaoguang Chen --- drivers/gpu

[PATCH v7 0/6] drm/i915/gvt: Dma-buf support for GVT-g

2017-06-07 Thread Xiaoguang Chen
Good luck :) git repo: https://github.com/01org/igvtg-qemu branch:kvmgt_dmabuf_example Xiaoguang Chen (6): drm/i915/gvt: Extend the GVT-g architecture to support vfio device region drm/i915/gvt: OpRegion support for GVT-g drm/i915/gvt: Frame buffer decoder support for GVT-g vfio: Define v

[PATCH v7 3/6] drm/i915/gvt: Frame buffer decoder support for GVT-g

2017-06-07 Thread Xiaoguang Chen
decode frambuffer attributes of primary, cursor and sprite plane Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/Makefile | 3 +- drivers/gpu/drm/i915/gvt/display.c| 2 +- drivers/gpu/drm/i915/gvt/display.h| 2 + drivers/gpu/drm/i915/gvt/fb_decoder.c | 439

[PATCH v7 4/6] vfio: Define vfio based vgpu's dma-buf operations

2017-06-07 Thread Xiaoguang Chen
ff-by: Xiaoguang Chen --- include/uapi/linux/vfio.h | 58 +++ 1 file changed, 58 insertions(+) diff --git a/include/uapi/linux/vfio.h b/include/uapi/linux/vfio.h index ae46105..24427b7 100644 --- a/include/uapi/linux/vfio.h +++ b/include/uapi/linux/v

[PATCH v7 5/6] drm/i915/gvt: Dmabuf support for GVT-g

2017-06-07 Thread Xiaoguang Chen
this gem object to a dmabuf and export this dmabuf. A file descriptor will be generated for this dmabuf and this file descriptor can be sent to user space to do display. Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/Makefile | 2 +- drivers/gpu/drm/i915/gvt/dmab

[PATCH v7 6/6] drm/i915/gvt: Adding user interface for dma-buf

2017-06-07 Thread Xiaoguang Chen
User space should create the management fd for the dma-buf operation first. Then user can query the plane information and create dma-buf if necessary using the management fd. Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/dmabuf.c| 37 - drivers/gpu/drm/i915/gvt

[PATCH v7 1/6] drm/i915/gvt: Extend the GVT-g architecture to support vfio device region

2017-06-07 Thread Xiaoguang Chen
Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/kvmgt.c | 21 ++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/i915/gvt/kvmgt.c b/drivers/gpu/drm/i915/gvt/kvmgt.c index 1ae0b40..3c6a02b 100644 --- a/drivers/gpu/drm/i915/gvt/kvmgt.c

[PATCH v6 2/6] drm/i915/gvt: OpRegion support for GVT-g

2017-05-27 Thread Xiaoguang Chen
OpRegion is needed to support display related operation for intel vgpu. A vfio device region is added to intel vgpu to deliver the host OpRegion information to user space so user space can construct the OpRegion for vgpu. Signed-off-by: Bing Niu Signed-off-by: Xiaoguang Chen --- drivers/gpu

[PATCH v6 0/6] drm/i915/gvt: Dma-buf support for GVT-g

2017-05-27 Thread Xiaoguang Chen
ma-buf. You can download the program to have a try. Good luck :) git repo: https://github.com/01org/igvtg-qemu branch:kvmgt_dmabuf_example Xiaoguang Chen (6): drm/i915/gvt: Extend the GVT-g architecture to support vfio device region drm/i915/gvt: OpRegion support for GVT-g drm/i915/

[PATCH v6 4/6] vfio: Define vfio based vgpu's dma-buf operations

2017-05-27 Thread Xiaoguang Chen
ff-by: Xiaoguang Chen --- include/uapi/linux/vfio.h | 50 +++ 1 file changed, 50 insertions(+) diff --git a/include/uapi/linux/vfio.h b/include/uapi/linux/vfio.h index ae46105..308e7a2 100644 --- a/include/uapi/linux/vfio.h +++ b/include/uapi/linux/v

[PATCH v6 3/6] drm/i915/gvt: Frame buffer decoder support for GVT-g

2017-05-27 Thread Xiaoguang Chen
decode frambuffer attributes of primary, cursor and sprite plane Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/Makefile | 3 +- drivers/gpu/drm/i915/gvt/display.c| 2 +- drivers/gpu/drm/i915/gvt/display.h| 2 + drivers/gpu/drm/i915/gvt/fb_decoder.c | 479

[PATCH v6 6/6] drm/i915/gvt: Adding interface so user space can get the dma-buf

2017-05-27 Thread Xiaoguang Chen
User space should create the management fd for the dma-buf operation first. Then user can query the plane information and create dma-buf if necessary using the management fd. Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/dmabuf.c | 12 drivers/gpu/drm/i915/gvt/dmabuf.h | 5

[PATCH v6 5/6] drm/i915/gvt: Dmabuf support for GVT-g

2017-05-27 Thread Xiaoguang Chen
this gem object to a dmabuf and export this dmabuf. A file descriptor will be generated for this dmabuf and this file descriptor can be sent to user space to do display. Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/Makefile | 2 +- drivers/gpu/drm/i915/gvt/dmab

[PATCH v6 1/6] drm/i915/gvt: Extend the GVT-g architecture to support vfio device region

2017-05-27 Thread Xiaoguang Chen
Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/kvmgt.c | 21 ++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/i915/gvt/kvmgt.c b/drivers/gpu/drm/i915/gvt/kvmgt.c index 1ae0b40..3c6a02b 100644 --- a/drivers/gpu/drm/i915/gvt/kvmgt.c

[PATCH v5 3/5] drm/i915/gvt: Frame buffer decoder support for GVT-g

2017-05-23 Thread Xiaoguang Chen
decode frambuffer attributes of primary, cursor and sprite plane Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/Makefile | 3 +- drivers/gpu/drm/i915/gvt/display.c| 2 +- drivers/gpu/drm/i915/gvt/display.h| 2 + drivers/gpu/drm/i915/gvt/fb_decoder.c | 479

[PATCH v5 4/5] drm/i915/gvt: Dmabuf support for GVT-g

2017-05-23 Thread Xiaoguang Chen
this gem object to a dmabuf and export this dmabuf. A file descriptor will be generated for this dmabuf and this file descriptor can be sent to user space to do display. Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/Makefile | 2 +- drivers/gpu/drm/i915/gvt/dmab

[PATCH v5 0/5] drm/i915/gvt: Dma-buf support for GVT-g

2017-05-23 Thread Xiaoguang Chen
create a dma-buf. The life cycle of this fd is managed by GVT-g user do not need to care about that. We have an example program on how to use the dma-buf. You can download the program to have a try. Good luck :) git repo: https://github.com/01org/igvtg-qemu branch:kvmgt_dmabuf_example Xiaog

[PATCH v5 1/5] drm/i915/gvt: Extend the GVT-g architecture to support vfio device region

2017-05-23 Thread Xiaoguang Chen
Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/kvmgt.c | 21 ++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/i915/gvt/kvmgt.c b/drivers/gpu/drm/i915/gvt/kvmgt.c index 1ae0b40..3c6a02b 100644 --- a/drivers/gpu/drm/i915/gvt/kvmgt.c

[PATCH v5 5/5] drm/i915/gvt: Adding interface so user space can get the dma-buf

2017-05-23 Thread Xiaoguang Chen
space should handle the life cycle of the created dma-buf fd close the dma-buf fd timely when finishing use. Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/dmabuf.c | 25 drivers/gpu/drm/i915/gvt/dmabuf.h | 21 --- drivers/gpu/drm/i915/gvt/fb_decoder.h | 2

[PATCH v5 2/5] drm/i915/gvt: OpRegion support for GVT-g

2017-05-23 Thread Xiaoguang Chen
OpRegion is needed to support display related operation for intel vgpu. A vfio device region is added to intel vgpu to deliver the host OpRegion information to user space so user space can construct the OpRegion for vgpu. Signed-off-by: Bing Niu Signed-off-by: Xiaoguang Chen --- drivers/gpu

[PATCH v4 2/5] drm/i915/gvt: OpRegion support for GVT-g

2017-05-22 Thread Xiaoguang Chen
OpRegion is needed to support display related operation for intel vgpu. A vfio device region is added to intel vgpu to deliver the host OpRegion information to user space so user space can construct the OpRegion for vgpu. Signed-off-by: Bing Niu Signed-off-by: Xiaoguang Chen --- drivers/gpu

[PATCH v4 4/5] drm/i915/gvt: Dmabuf support for GVT-g

2017-05-22 Thread Xiaoguang Chen
this gem object to a dmabuf and export this dmabuf. A file descriptor will be generated for this dmabuf and this file descriptor can be sent to user space to do display. Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/Makefile | 2 +- drivers/gpu/drm/i915/gvt/dmab

[PATCH v4 1/5] drm/i915/gvt: Extend the GVT-g architecture to support vfio device region

2017-05-22 Thread Xiaoguang Chen
Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/kvmgt.c | 21 ++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/i915/gvt/kvmgt.c b/drivers/gpu/drm/i915/gvt/kvmgt.c index 1ae0b40..3c6a02b 100644 --- a/drivers/gpu/drm/i915/gvt/kvmgt.c

[PATCH v4 5/5] drm/i915/gvt: Adding interface so user space can get the dma-buf

2017-05-22 Thread Xiaoguang Chen
space should handle the life cycle of the created dma-buf fd close the dma-buf fd timely when finishing use. Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/dmabuf.c | 23 ++- drivers/gpu/drm/i915/gvt/dmabuf.h | 22 -- drivers/gpu/drm/i915/gvt/gvt.c| 2 + drivers/gpu

[PATCH v4 3/5] drm/i915/gvt: Frame buffer decoder support for GVT-g

2017-05-22 Thread Xiaoguang Chen
decode frambuffer attributes of primary, cursor and sprite plane Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/Makefile | 3 +- drivers/gpu/drm/i915/gvt/display.c| 2 +- drivers/gpu/drm/i915/gvt/display.h| 2 + drivers/gpu/drm/i915/gvt/fb_decoder.c | 487

[PATCH v4 0/5] drm/i915/gvt: Dma-buf support for GVT-g

2017-05-22 Thread Xiaoguang Chen
program to have a try. Good luck :) git repo: https://github.com/01org/igvtg-qemu branch:kvmgt_dmabuf_example Xiaoguang Chen (5): drm/i915/gvt: Extend the GVT-g architecture to support vfio device region drm/i915/gvt: OpRegion support for GVT-g drm/i915/gvt: Frame buffer decoder support f

[PATCH v3 1/5] drm/i915/gvt: Extend the GVT-g architecture to support vfio device region

2017-05-22 Thread Xiaoguang Chen
Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/kvmgt.c | 21 ++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/i915/gvt/kvmgt.c b/drivers/gpu/drm/i915/gvt/kvmgt.c index 1ae0b40..3c6a02b 100644 --- a/drivers/gpu/drm/i915/gvt/kvmgt.c

[PATCH v3 0/5] drm/i915/gvt: Dma-buf support for GVT-g

2017-05-22 Thread Xiaoguang Chen
cycle of this fd is managed by GVT-g user do not need to care about that. We have an example program on how to use the dma-buf. You can download the program to have a try. Good luck :) git repo: https://github.com/01org/igvtg-qemu branch:kvmgt_dmabuf_example Xiaoguang Chen (5): drm/i915/gvt: E

[PATCH v3 5/5] drm/i915/gvt: Adding interface so user space can get the dma-buf

2017-05-22 Thread Xiaoguang Chen
space should handle the life cycle of the created dma-buf fd close the dma-buf fd timely when finishing use. Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/dmabuf.c | 23 ++- drivers/gpu/drm/i915/gvt/dmabuf.h | 22 -- drivers/gpu/drm/i915/gvt/gvt.c| 2 + drivers/gpu

[PATCH v3 4/5] drm/i915/gvt: Dmabuf support for GVT-g

2017-05-22 Thread Xiaoguang Chen
for this dmabuf and this file descriptor can be sent to user space to do display. Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/Makefile | 2 +- drivers/gpu/drm/i915/gvt/dmabuf.c | 275 + drivers/gpu/drm/i915/gvt/dmabuf.h | 54 +++

[PATCH v3 3/5] drm/i915/gvt: Frame buffer decoder support for GVT-g

2017-05-22 Thread Xiaoguang Chen
decode frambuffer attributes of primary, cursor and sprite plane Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/Makefile | 3 +- drivers/gpu/drm/i915/gvt/display.c| 2 +- drivers/gpu/drm/i915/gvt/display.h| 2 + drivers/gpu/drm/i915/gvt/fb_decoder.c | 487

[PATCH v3 2/5] drm/i915/gvt: OpRegion support for GVT-g

2017-05-22 Thread Xiaoguang Chen
OpRegion is needed to support display related operation for intel vgpu. A vfio device region is added to intel vgpu to deliver the host OpRegion information to user space so user space can construct the OpRegion for vgpu. Signed-off-by: Bing Niu Signed-off-by: Xiaoguang Chen --- drivers/gpu

[PATCH v2 4/5] drm/i915/gvt: Dmabuf support for GVT-g

2017-05-18 Thread Xiaoguang Chen
for this dmabuf and this file descriptor can be sent to user space to do display. Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/Makefile | 2 +- drivers/gpu/drm/i915/gvt/dmabuf.c | 321 ++ drivers/gpu/drm/i915/gvt/dmabuf.h | 44 ++ drivers/g

[PATCH v2 2/5] drm/i915/gvt: OpRegion support for GVT-g

2017-05-18 Thread Xiaoguang Chen
OpRegion is needed to support display related operation for intel vgpu. A vfio device region is added to intel vgpu to deliver the host OpRegion information to user space so user space can construct the OpRegion for vgpu. Signed-off-by: Bing Niu Signed-off-by: Xiaoguang Chen --- drivers/gpu

[PATCH v2 5/5] drm/i915/gvt: Adding interface so user space can get the dma-buf

2017-05-18 Thread Xiaoguang Chen
space should handle the life cycle of the created dma-buf fd close the dma-buf fd timely when finishing use. Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/gvt.c | 2 + drivers/gpu/drm/i915/gvt/gvt.h | 3 ++ drivers/gpu/drm/i915/gvt/kvmgt.c | 89

[PATCH v2 0/5] drm/i915/gvt: Dma-buf support for GVT-g

2017-05-18 Thread Xiaoguang Chen
. Good luck :) git repo: https://github.com/01org/igvtg-qemu branch:kvmgt_dmabuf_example. Xiaoguang Chen (5): drm/i915/gvt: Extend the GVT-g architecture to support vfio device region drm/i915/gvt: OpRegion support for GVT-g drm/i915/gvt: Frame buffer decoder support for GVT-g drm/i915/

[PATCH v2 1/5] drm/i915/gvt: Extend the GVT-g architecture to support vfio device region

2017-05-18 Thread Xiaoguang Chen
Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/kvmgt.c | 21 ++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/i915/gvt/kvmgt.c b/drivers/gpu/drm/i915/gvt/kvmgt.c index 1ae0b40..3c6a02b 100644 --- a/drivers/gpu/drm/i915/gvt/kvmgt.c

[PATCH v2 3/5] drm/i915/gvt: Frame buffer decoder support for GVT-g

2017-05-18 Thread Xiaoguang Chen
decode frambuffer attributes of primary, cursor and sprite plane Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/Makefile | 3 +- drivers/gpu/drm/i915/gvt/display.c| 2 +- drivers/gpu/drm/i915/gvt/display.h| 2 + drivers/gpu/drm/i915/gvt/fb_decoder.c | 487

[RFC PATCH 5/6] drm/i915/gvt: dmabuf support for GVT-g

2017-04-28 Thread Xiaoguang Chen
for this dmabuf and this file descriptor can be sent to user space to do display. Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/Makefile | 2 +- drivers/gpu/drm/i915/gvt/dmabuf.c | 268 ++ drivers/gpu/drm/i915/gvt/dmabuf.h | 50 +++ drivers/g

[RFC PATCH 6/6] drm/i915/gvt: support QEMU getting the dmabuf

2017-04-28 Thread Xiaoguang Chen
GVT-g will create an anonymous fd and a vfio device region to deliver the fd to QEMU. QEMU can do ioctl using this fd to query/generate dmabuf on an intel vgpu. Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/gvt.c | 2 + drivers/gpu/drm/i915/gvt/gvt.h | 2 + drivers/gpu/drm

[RFC PATCH 3/6] drm/i915/gvt: framebuffer decoder support for GVT-g

2017-04-28 Thread Xiaoguang Chen
decode frambuffer attributes of primary, cursor and sprite plane Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/Makefile | 3 +- drivers/gpu/drm/i915/gvt/display.c| 2 +- drivers/gpu/drm/i915/gvt/display.h| 2 + drivers/gpu/drm/i915/gvt/fb_decoder.c | 487

[RFC PATCH 4/6] drm/i915: export i915 dmabuf_ops

2017-04-28 Thread Xiaoguang Chen
GVT-g will use i915's dmabuf_ops to implement its own dmabuf so exporting it. Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/i915_drv.h| 2 ++ drivers/gpu/drm/i915/i915_gem_dmabuf.c | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm

[RFC PATCH 0/6] drm/i915/gvt: dma-buf support for GVT-g

2017-04-28 Thread Xiaoguang Chen
how to use the dma-buf. You can download the program to have a try :) git repo: https://github.com/01org/igvtg-qemu branch:kvmgt_dmabuf_example Xiaoguang Chen (6): drm/i915/gvt: extend the GVT-g architecture to support vfio device region drm/i915/gvt: OpRegion support for GVT-g dr

[RFC PATCH 2/6] drm/i915/gvt: OpRegion support for GVT-g

2017-04-28 Thread Xiaoguang Chen
OpRegion is needed to support display related operation for intel vgpu. A vfio device region is added to intel vgpu to deliver the host OpRegion information to user space so user space can construct the OpRegion for vgpu. Signed-off-by: Bing Niu Signed-off-by: Xiaoguang Chen --- drivers/gpu

[RFC PATCH 1/6] drm/i915/gvt: extend the GVT-g architecture to support vfio device region

2017-04-28 Thread Xiaoguang Chen
Signed-off-by: Xiaoguang Chen --- drivers/gpu/drm/i915/gvt/kvmgt.c | 21 ++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/i915/gvt/kvmgt.c b/drivers/gpu/drm/i915/gvt/kvmgt.c index 1ae0b40..3c6a02b 100644 --- a/drivers/gpu/drm/i915/gvt/kvmgt.c

mutual exculsion between clk_prepare_enable /clk_disable_unprepare and clk_set_parent

2014-01-21 Thread Xiaoguang Chen
Hi, Mike We met a issue between clk_prepare_enable /clk_disable_unprepare and clk_set_parent. As we know, clk preprare/unprare will grab preprare lock, and clk enable/disable will grab enable lock. clk_set_parent will grab prepare lock but there is no lock protection in clk_prepare_enable /clk_d

[PATCH 1/2] cpufreq: conservative: fix requested_freq reduction issue

2013-11-07 Thread Xiaoguang Chen
issue. when result becomes negative, set requested_freq as the min value of policy. Signed-off-by: Xiaoguang Chen Acked-by: Viresh Kumar --- drivers/cpufreq/cpufreq_conservative.c | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/cpufreq/cpufreq_conservative

[PATCH 2/2] cpufreq: conservative: set requested_freq to policy max when it is over policy max

2013-11-07 Thread Xiaoguang Chen
When requested_freq is over policy->max, set it to policy->max. This can help to speed up decreasing frequency. Signed-off-by: Xiaoguang Chen --- drivers/cpufreq/cpufreq_conservative.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/cpufreq/cpufreq_conservative.c b/d

Re: [PATCH] cpufreq: conservative: fix requested_freq reduction issue

2013-11-07 Thread Xiaoguang Chen
2013/11/8 Viresh Kumar : > On 8 November 2013 10:31, Xiaoguang Chen wrote: >> Hi, Viresh, Sorry for the late reply. > > That's fine :) > >> I'll prepare the patch. > > Thanks. > >> BTW, do you think we should set requeste_freq to policy->max

Re: [PATCH] cpufreq: conservative: fix requested_freq reduction issue

2013-11-07 Thread Xiaoguang Chen
Hi, Viresh, Sorry for the late reply. I'll prepare the patch. BTW, do you think we should set requeste_freq to policy->max when such condition happens? Thanks Xiaoguang 2013/11/8 Viresh Kumar : > On 8 November 2013 00:36, Stratos Karafotis wrote: >> I think the existing code already checks if th

[PATCH] cpufreq: conservative: fix requested_freq reduction issue

2013-11-06 Thread Xiaoguang Chen
issue. when result becomes negative, set requested_freq as the min value of policy. Signed-off-by: Xiaoguang Chen --- drivers/cpufreq/cpufreq_conservative.c | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/cpufreq/cpufreq_conservative.c b/drivers/cp

Re: [PATCH 1/2] cpufreq: Add governor operation ongoing flag

2013-08-14 Thread Xiaoguang Chen
2013/8/14 Viresh Kumar : > On 14 August 2013 13:49, Xiaoguang Chen wrote: >> Yes, "START (If STOP passed)", this is important, we don't have this >> patch on our code base, So even Process B's STOP failed(as governor >> enable flag is set to false by proc

Re: [PATCH 1/2] cpufreq: Add governor operation ongoing flag

2013-08-14 Thread Xiaoguang Chen
2013/8/14 Viresh Kumar : > I am still not sure if I got what you are trying to say, sorry :( > > On 14 August 2013 13:06, Xiaoguang Chen wrote: >> Please see below code in __cpufreq_governor function >> >> mutex_lock(&cpufreq_governor_lock); >> if

Re: [PATCH 2/2] cpufreq: Only do governor start after successful stop

2013-08-14 Thread Xiaoguang Chen
2013/8/14 Viresh Kumar : > On 13 August 2013 12:39, Xiaoguang Chen wrote: >> cpufreq_add_policy_cpu, __cpufreq_remove_dev and __cpufreq_set_policy >> have operations for governor stop and start. >> Only do the start operation when the previous stop operation succeeds

Re: [PATCH 1/2] cpufreq: Add governor operation ongoing flag

2013-08-14 Thread Xiaoguang Chen
2013/8/14 Viresh Kumar : > On 13 August 2013 12:39, Xiaoguang Chen wrote: >> __cpufreq_governor operation needs to be executed one by one. >> If one operation is ongoing, the other operation can't be executed. >> If the order is not guaranteed, there may be unexpected be

[PATCH 2/2] cpufreq: Only do governor start after successful stop

2013-08-13 Thread Xiaoguang Chen
cpufreq_add_policy_cpu, __cpufreq_remove_dev and __cpufreq_set_policy have operations for governor stop and start. Only do the start operation when the previous stop operation succeeds. Signed-off-by: Xiaoguang Chen --- drivers/cpufreq/cpufreq.c | 25 +++-- 1 file changed

[PATCH 1/2] cpufreq: Add governor operation ongoing flag

2013-08-13 Thread Xiaoguang Chen
e. Add the governor_ops_ongoing flag to check whether there is governor operation ongoing, if so, return -EAGAIN. Signed-off-by: Xiaoguang Chen --- drivers/cpufreq/cpufreq.c | 9 + include/linux/cpufreq.h | 1 + 2 files changed, 10 insertions(+) diff --git a/drivers/cpufreq/cpufreq.c b/driv

Re: [PATCH v9] Cpufreq: Fix governor start/stop race condition

2013-06-23 Thread Xiaoguang Chen
Hi, Rafael When can this patch be merged? 2013/6/19 Xiaoguang Chen : > On 06/19/2013 03:55 PM, Viresh Kumar wrote: >> >> On 19 June 2013 12:30, Xiaoguang Chen wrote: >>> >>> Cpufreq governor's stop and start operation should be kept in sequence. >>>

Re: [PATCH v9] Cpufreq: Fix governor start/stop race condition

2013-06-19 Thread Xiaoguang Chen
On 06/19/2013 03:55 PM, Viresh Kumar wrote: On 19 June 2013 12:30, Xiaoguang Chen wrote: Cpufreq governor's stop and start operation should be kept in sequence. If not, there will be unexpected behavior, for example: There are 4 CPUs and policy->cpu=CPU0, CPU1/2/3 are linked to C

[PATCH v9] Cpufreq: Fix governor start/stop race condition

2013-06-19 Thread Xiaoguang Chen
pped once for one policy, After it is stopped, No other governor stop operation should be executed. also add one mutex to protect __cpufreq_governor so governor operation can be kept in sequence. Signed-off-by: Xiaoguang Chen Acked-by: Viresh Kumar --- drivers/cpufreq/c

Re: [PATCH v8] Cpufreq: Fix governor start/stop race condition

2013-06-18 Thread Xiaoguang Chen
2013/6/19 Viresh Kumar : > On 19 June 2013 12:09, Xiaoguang Chen wrote: >> Change-Id: Ibd384d1f72c6e5e8e59059819a3cc47e914ae036 > > Sorry to ask the stupid question, but what is the use of Change-Id > and how do you get it? Sorry I forget to delete it. change-id is generated by

[PATCH v8] Cpufreq: Fix governor start/stop race condition

2013-06-18 Thread Xiaoguang Chen
pped once for one policy, After it is stopped, No other governor stop operation should be executed. also add one mutex to protect __cpufreq_governor so governor operation can be kept in sequence. Change-Id: Ibd384d1f72c6e5e8e59059819a3cc47e914ae036 Signed-off-by: Xiaoguang Chen Acked-by:

[PATCH v7] Cpufreq: Fix governor start/stop race condition

2013-06-18 Thread Xiaoguang Chen
only do once for one policy, After it is stopped, No other governor stop should be executed. also add one mutex to protect __cpufreq_governor so governor operation can be kept in sequence. Signed-off-by: Xiaoguang Chen --- drivers/cpufreq/cpufreq.c | 24 include/li

Re: [PATCH v6] Cpufreq: Fix governor start/stop race condition

2013-06-18 Thread Xiaoguang Chen
2013/6/19 Viresh Kumar : > On 19 June 2013 10:45, Xiaoguang Chen wrote: >> 2013/6/19 Viresh Kumar : >>> On 19 June 2013 07:13, Xiaoguang Chen wrote: >>>> There are 4 CPUs and policy->cpu=cpu0, cpu1/2/3 are linked to cpu0. >>>> The normal sequence i

Re: [PATCH v6] Cpufreq: Fix governor start/stop race condition

2013-06-18 Thread Xiaoguang Chen
2013/6/19 Viresh Kumar : > On 19 June 2013 07:13, Xiaoguang Chen wrote: >> There are 4 CPUs and policy->cpu=cpu0, cpu1/2/3 are linked to cpu0. >> The normal sequence is as below: > > I thought Rafael asked to write cpu0 as CPU0, ... I changed "cpus" to "

Re: [PATCH v5] cpufreq: fix governor start/stop race condition

2013-06-18 Thread Xiaoguang Chen
2013/6/19 Viresh Kumar : > On 19 June 2013 08:43, Viresh Kumar wrote: >> On 19 June 2013 06:50, Xiaoguang Chen wrote: >>> 2013/6/19 Rafael J. Wysocki : >> >>>>> 2) Current governor is userspace, now cpu0 hotplugs in cpu3, it will >>>> >&g

[PATCH v6] Cpufreq: Fix governor start/stop race condition

2013-06-18 Thread Xiaoguang Chen
or one policy, After it is stopped, No other governor stop should be executed. also add one mutext to protect __cpufreq_governor so governor operation can be kept in sequence. Signed-off-by: Xiaoguang Chen --- drivers/cpufreq/cpufreq.c | 24 include/linux/cpufreq.h |

Re: [PATCH v5] cpufreq: fix governor start/stop race condition

2013-06-18 Thread Xiaoguang Chen
2013/6/19 Rafael J. Wysocki : > On Thursday, June 13, 2013 05:01:58 PM Xiaoguang Chen wrote: >> cpufreq governor stop and start should be kept in sequence. >> If not, there will be unexpected behavior, for example: >> >> we have 4 cpus and policy->cpu=cpu0, cpu1/2/3

Re: [PATCH v5] cpufreq: fix governor start/stop race condition

2013-06-13 Thread Xiaoguang Chen
2013/6/13 Viresh Kumar : > On 13 June 2013 14:31, Xiaoguang Chen wrote: >> cpufreq governor stop and start should be kept in sequence. >> If not, there will be unexpected behavior, for example: >> >> we have 4 cpus and policy->cpu=cpu0, cpu1/2/3 are linked to cpu0

[PATCH v5] cpufreq: fix governor start/stop race condition

2013-06-13 Thread Xiaoguang Chen
er it is stopped, no other governor stop should be executed. also add one mutext to protect __cpufreq_governor so governor operation can be kept in sequence. Signed-off-by: Xiaoguang Chen --- drivers/cpufreq/cpufreq.c | 24 include/linux/cpufreq.h | 1 + 2 files cha

Re: [PATCH v4] cpufreq: fix governor start/stop race condition

2013-06-13 Thread Xiaoguang Chen
2013/6/13 Viresh Kumar : > On 13 June 2013 11:10, Xiaoguang Chen wrote: >> 2013/6/12 Viresh Kumar : >>> On 12 June 2013 14:39, Xiaoguang Chen wrote: >>> >>>> ret = policy->governor->governor(policy, event); >>> >>> We again

Re: [PATCH v4] cpufreq: fix governor start/stop race condition

2013-06-12 Thread Xiaoguang Chen
2013/6/12 Viresh Kumar : > On 12 June 2013 14:39, Xiaoguang Chen wrote: > >> ret = policy->governor->governor(policy, event); > > We again reached to the same problem. We shouldn't call > this between taking locks, otherwise recursive locks problems > wo

[PATCH v4] cpufreq: fix governor start/stop race condition

2013-06-12 Thread Xiaoguang Chen
er it is stopped, no other governor stop should be executed. also add one mutext to protect __cpufreq_governor so governor operation can be kept in sequence. Signed-off-by: Xiaoguang Chen --- drivers/cpufreq/cpufreq.c | 28 +++- include/linux/cpufreq.h | 1 + 2 files cha

Re: [PATCH v3] cpufreq: fix governor start/stop race condition

2013-06-12 Thread Xiaoguang Chen
2013/6/12 Viresh Kumar : > On 12 June 2013 12:56, Xiaoguang Chen wrote: >> cpufreq governor stop and start should be kept in sequence. >> If not, there will be unexpected behavior, for example: >> >> we have 4 cpus and policy->cpu=cpu0, cpu1/2/3 are linked to cpu0

[PATCH v3] cpufreq: fix governor start/stop race condition

2013-06-12 Thread Xiaoguang Chen
er it is stopped, no other governor stop should be executed. Signed-off-by: Xiaoguang Chen --- drivers/cpufreq/cpufreq.c | 9 + include/linux/cpufreq.h | 1 + 2 files changed, 10 insertions(+) diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c index 2d53f47..b4a2c94 1006

Re: [PATCH v2] cpufreq: fix governor start/stop race condition

2013-06-12 Thread Xiaoguang Chen
2013/6/10 Viresh Kumar : > On 9 June 2013 13:20, Xiaoguang Chen wrote: >> cpufreq governor stop and start should be kept in sequence. >> If not, there will be unexpected behavior, for example: >> >> we have 4 cpus and policy->cpu=cpu0, cpu1/2/3 are linked to cpu0

[PATCH v2] cpufreq: fix governor start/stop race condition

2013-06-09 Thread Xiaoguang Chen
nor stop should be executed. Signed-off-by: Xiaoguang Chen --- drivers/cpufreq/cpufreq.c | 10 +- include/linux/cpufreq.h | 1 + 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c index 2d53f47..c8d7cb2 100644 --- a/driv

Re: [PATCH] cpufreq: userspace: Simplify governor

2013-06-08 Thread Xiaoguang Chen
now to the problem reported by Xiaoguang as I don't feel > now there is a problem :( > Yes, I think the problem will disappear since the related code is deleted. the original code path will not be executed. >>> It is working per-cpu currently whereas it just >>> requir

Re: [PATCH] cpufreq: fix governor start/stop race condition

2013-05-22 Thread Xiaoguang Chen
On 05/22/2013 04:46 PM, Viresh Kumar wrote: Sorry for being late buddy.. On 16 May 2013 11:44, Xiaoguang Chen wrote: On 05/13/2013 06:47 PM, Xiaoguang Chen wrote: Why is the mail came this way.. You forwarded it? I didn't see your reponse, So I once replied this mail once.:) cp

Re: [PATCH] cpufreq: fix governor start/stop race condition

2013-05-15 Thread Xiaoguang Chen
On 05/13/2013 06:47 PM, Xiaoguang Chen wrote: cpufreq governor stop and start should be kept in sequence. If not, there will be unexpected behavior, for example: we have 4 cpus and policy->cpu=cpu0, cpu1/2/3 are linked to cpu0. the normal sequence is as below: 1) Current governor is usersp