Hi Rongrong, Thanks for your hard work. For this whole series patches: Reviewed-by: Xinliang Liu <xinliang.liu@xxxxxxxxxx> Thanks, -xinliang On 16 November 2016 at 21:43, Rongrong Zou <zourongrong@xxxxxxxxx> wrote: > This patch set adds a new drm driver for Hisilicon Hibmc. Hibmc is a > BMC SoC with a display controller intergrated, usually it is used on > server for Out-of-band management purpose. In this patch set, we just > support basic function for Hibmc display subsystem. Hibmc display > subsystem is connected to host CPU by PCIe as blow: > > +----------+ +----------+ > | | PCIe | Hibmc | > |host CPU( |<----->| display | > |arm64,x86)| |subsystem | > +----------+ +----------+ > > Hardware Detail for Hibmc display subsystem > ----------- > > The display subsystem of Hibmc is show as bellow: > +----+ +----+ +----+ +--------+ > | | | | | | | | > | FB |----->| DE |----->|VDAC|---->|external| > | | | | | | | VGA | > +----+ +----+ +----+ +--------+ > > -DE(Display Engine) is the display controller. > -VDAC(Video Digital-to-Analog converter) converts the RGB diaital data > stream from DE to VGA analog signals. > > Change History > ------------ > Changes in v7: > -remove hibmc_drm_power.c/hibmc_drm_power.h, move the functions to > hibmc_drm_drv.c. > -remove hibmc_drm_de.h and move the struct defined in head file to > hibmc_drm_de.c. > -plane is initialized inside crtc, not in hibmc_kms_init(). > -connector is initialized inside encoder, not in hibmc_kms_init(). > -remove plane/crtc/encoder/connector from hibmc_drm_private struct. > -call drm_atomic_helper_suspend/resume in hibmc_pm_suspend/resume. > -remove these empty stubs because caller will do NULL check. > hibmc_plane_atomic_disable > hibmc_crtc_atomic_check > hibmc_encoder_disable > hibmc_encoder_enable > hibmc_encoder_atomic_check > -clean up in all error paths of creating driver-private framebuffer. > > Changes in v6: > -remove the embedded framebuffer and use a pointer of hibmc_framebuffer > instead. > -remove the deprecated drm_framebuffer_unregister_private(), > drm_framebuffer_unreference() will be called in hibmc_fbdev_destroy(). > -uninstall irq in hibmc_unload(). > > Changes in v5: > -rebase on v4.9-rc2. > -replace drm_fb_helper_set_suspend with drm_fb_helper_set_suspend_unlocked. > and remove redundant console_lock and console_unlock. > > Changes in v4: > -remove unused include files, and include header file when it is needed. > -remove unused FLAG in Kconfig: DRM_GEM_CMA_HELPER/DRM_KMS_CMA_HELPER. > -remove drm_helper_disable_unused_functions, since we use DRIVER_ATOMIC. > > Changes in v3: > -enable KMS, in v2, only fbdev is enabled. > -management video memory with ttm. > -add vblank interrupt. > -remove drm_connector_register_all() and drm_connector_unregister_all(). > -I have a basic test with igt. > > Changes in v2: > -Remove self-defined macros for bit operations. > -Remove unused register. > -Replace those deprecated functions with new version of them. > -use drm_connector_register_all() to register connector after > drm_dev_register(). > > The patch v2 is at > https://lists.freedesktop.org/archives/dri-devel/2016-May/108661.html > > Rongrong Zou (7): > drm/hisilicon/hibmc: Add hisilicon hibmc drm master driver > drm/hisilicon/hibmc: Add video memory management > drm/hisilicon/hibmc: Add support for frame buffer > drm/hisilicon/hibmc: Add support for display engine > drm/hisilicon/hibmc: Add support for VDAC > drm/hisilicon/hibmc: Add support for vblank interrupt > MAINTAINERS: Update HISILICON DRM entries > > MAINTAINERS | 1 + > drivers/gpu/drm/hisilicon/Kconfig | 1 + > drivers/gpu/drm/hisilicon/Makefile | 1 + > drivers/gpu/drm/hisilicon/hibmc/Kconfig | 9 + > drivers/gpu/drm/hisilicon/hibmc/Makefile | 4 + > drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_de.c | 477 ++++++++++++++++++ > drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c | 456 ++++++++++++++++++ > drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.h | 114 +++++ > drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_fbdev.c | 267 +++++++++++ > drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_regs.h | 196 ++++++++ > drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_vdac.c | 147 ++++++ > drivers/gpu/drm/hisilicon/hibmc/hibmc_ttm.c | 558 ++++++++++++++++++++++ > 12 files changed, 2231 insertions(+) > create mode 100644 drivers/gpu/drm/hisilicon/hibmc/Kconfig > create mode 100644 drivers/gpu/drm/hisilicon/hibmc/Makefile > create mode 100644 drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_de.c > create mode 100644 drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c > create mode 100644 drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.h > create mode 100644 drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_fbdev.c > create mode 100644 drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_regs.h > create mode 100644 drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_vdac.c > create mode 100644 drivers/gpu/drm/hisilicon/hibmc/hibmc_ttm.c > > -- > 1.9.1 > _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel