Am 15.05.2018 um 16:50 schrieb Alex Deucher: > From: Feifei Xu <Feifei.Xu at amd.com> > > Users can pass in an array to decide enable/disable Zero Frame Buffer. > zfb[0] = zfb_size(MB), zfb[1] = zfb_phys_addr(MB). > If zbf_size > 0, zfb is enabled. Otherwise disabled. > Usage for example: > modprobe amdgpu zfb=256,4096 I still vote for using the CMA instead of this hack for that. Should be trivial to implement and is far less error prone than manually messing with memory configuration. Christian. > > Signed-off-by: Feifei Xu <Feifei.Xu at amd.com> > Acked-by: John Bridgman <john.bridgman at amd.com> > Reviewed-by: Alex Deucher <alexander.deucher at amd.com> > Signed-off-by: Alex Deucher <alexander.deucher at amd.com> > --- > drivers/gpu/drm/amd/amdgpu/amdgpu.h | 1 + > drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 4 ++++ > 2 files changed, 5 insertions(+) > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h > index 2d7500921c0b..dc55b73cbeed 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h > @@ -130,6 +130,7 @@ extern int amdgpu_compute_multipipe; > extern int amdgpu_gpu_recovery; > extern int amdgpu_emu_mode; > extern uint amdgpu_smu_memory_pool_size; > +extern ulong amdgpu_zfb[]; > > #ifdef CONFIG_DRM_AMDGPU_SI > extern int amdgpu_si_support; > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c > index 739e7e09c8b0..a7a81ddab721 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c > @@ -134,6 +134,7 @@ int amdgpu_compute_multipipe = -1; > int amdgpu_gpu_recovery = -1; /* auto */ > int amdgpu_emu_mode = 0; > uint amdgpu_smu_memory_pool_size = 0; > +ulong amdgpu_zfb[2] = {0,4096UL}; /* {0,0x100000000} */ > > MODULE_PARM_DESC(vramlimit, "Restrict VRAM for testing, in megabytes"); > module_param_named(vramlimit, amdgpu_vram_limit, int, 0600); > @@ -292,6 +293,9 @@ module_param_named(gpu_recovery, amdgpu_gpu_recovery, int, 0444); > MODULE_PARM_DESC(emu_mode, "Emulation mode, (1 = enable, 0 = disable)"); > module_param_named(emu_mode, amdgpu_emu_mode, int, 0444); > > +MODULE_PARM_DESC(zfb, > + "Enable Zero Frame Buffer feature (zfb will be set like xxxx,xxxx(zfb_size MB,zfb_phys_addr MB),default disabled)"); > +module_param_array_named(zfb, amdgpu_zfb, ulong, NULL, 0444); > #ifdef CONFIG_DRM_AMDGPU_SI > > #if defined(CONFIG_DRM_RADEON) || defined(CONFIG_DRM_RADEON_MODULE)