linux/drivers/gpu/drm/amd/amdgpu
Nils Wallménius 50261151a1 drm/amdgpu: simplify allocation of scratch regs
The scratch regs are sequential so there's no need to keep
them in an array, we can just return the index of the first
free register + the base register. Also change the array
of bools for keeping track of the free regs to a bitfield.

Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Nils Wallménius <nils.wallmenius@gmail.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2017-01-27 11:13:32 -05:00
..
amdgpu_acp.c drm/virtio: fix busid in a different way, allocate more vbufs. 2016-11-30 14:18:51 +10:00
amdgpu_acp.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
amdgpu_acpi.c drm/amdgpu: Remove checking for atombios 2017-01-27 11:12:39 -05:00
amdgpu_afmt.c
amdgpu_amdkfd_gfx_v7.c drm/amdkfd: Fix possible infinite loop 2016-09-19 20:58:35 +03:00
amdgpu_amdkfd_gfx_v8.c drm/amdkfd: Fix possible infinite loop 2016-09-19 20:58:35 +03:00
amdgpu_amdkfd.c drm/amdgpu: remove unused functions 2016-09-22 10:24:16 -04:00
amdgpu_amdkfd.h drm/amdgpu: Return -EPROBE_DEFER when amdkfd not loaded 2016-02-27 22:52:40 +02:00
amdgpu_atombios.c drm/amdgpu/atom: remove a bunch of unused functions 2016-10-25 14:38:56 -04:00
amdgpu_atombios.h drm/amdgpu/atom: remove a bunch of unused functions 2016-10-25 14:38:56 -04:00
amdgpu_atpx_handler.c drm/amdgpu: fix check for port PM availability 2016-11-29 09:23:39 -05:00
amdgpu_benchmark.c dma-buf: Rename struct fence to dma_fence 2016-10-25 14:40:39 +02:00
amdgpu_bios.c drm/amdgpu: Refine the way to get atom bios 2017-01-27 11:12:45 -05:00
amdgpu_bo_list.c drm/amdgpu: Attach exclusive fence to prime exported bo's. (v5) 2016-11-11 10:20:04 -05:00
amdgpu_cgs.c drm/amdgpu: add cgs interface for enter/exit rlc safe mode. 2017-01-27 11:12:46 -05:00
amdgpu_connectors.c drm/virtio: fix busid in a different way, allocate more vbufs. 2016-11-30 14:18:51 +10:00
amdgpu_connectors.h
amdgpu_cs.c drm/amdgpu: use the num_rings variable for checking vce rings 2017-01-27 11:13:29 -05:00
amdgpu_ctx.c Merge tag 'topic/drm-misc-2016-10-27' of git://anongit.freedesktop.org/git/drm-intel into drm-next 2016-10-28 11:33:52 +10:00
amdgpu_device.c drm/amdgpu: do not reset gpu for virtualization 2017-01-27 11:13:27 -05:00
amdgpu_display.c drm/amdgpu: Refactor flip into prepare submit and submit. (v3) 2017-01-27 11:13:31 -05:00
amdgpu_dpm.c drm/amdgpu/dpm: add an implementation for get_vce_clock_state (v2) 2016-10-25 14:38:41 -04:00
amdgpu_dpm.h drm/amd/powerplay: Unify dpm level defines 2017-01-27 11:12:53 -05:00
amdgpu_drv.c drm/amdgpu: delete dead module parameter:amdgpu_powerplay. 2017-01-27 11:12:55 -05:00
amdgpu_drv.h
amdgpu_encoders.c
amdgpu_fb.c drm: Nuke fb->depth 2016-12-15 14:55:33 +02:00
amdgpu_fence.c drm/amdgpu:no gpu scheduler for KIQ 2016-11-11 10:20:58 -05:00
amdgpu_gart.c drm/amdgpu: add AMDGPU_GEM_CREATE_VRAM_CONTIGUOUS flag v3 2016-10-25 14:38:13 -04:00
amdgpu_gds.h amdgpu: move ttm stuff to amdgpu_ttm.h 2016-08-19 12:30:58 -04:00
amdgpu_gem.c drm/amd/amdgpu: add check that shadow page tables are GPU-accessible 2017-01-27 11:13:18 -05:00
amdgpu_gfx.c drm/amdgpu: simplify allocation of scratch regs 2017-01-27 11:13:32 -05:00
amdgpu_gfx.h drm/amdgpu: change function declarations and add missing header dependencies 2016-10-25 14:38:58 -04:00
amdgpu_gtt_mgr.c drm/amdgpu: use designated initializers 2017-01-27 11:12:40 -05:00
amdgpu_i2c.c drm/amdgpu: Remove checking for atombios 2017-01-27 11:12:39 -05:00
amdgpu_i2c.h drm/amdgpu/i2c: add const where appropriate 2016-09-27 13:00:52 -04:00
amdgpu_ib.c Merge tag 'topic/drm-misc-2016-10-27' of git://anongit.freedesktop.org/git/drm-intel into drm-next 2016-10-28 11:33:52 +10:00
amdgpu_ih.c drm/amdgpu: free the BO in kernel by helper amdgpu_bo_free_kernel() 2016-09-14 15:10:27 -04:00
amdgpu_ih.h
amdgpu_ioc32.c
amdgpu_irq.c drm/radeon|amdgpu: Remove redundant num_connectors check 2016-12-18 14:18:12 +01:00
amdgpu_irq.h drm/amdgpu: remove amdgpu_irq_get_delayed 2016-11-23 15:08:43 -05:00
amdgpu_job.c dma-buf: Rename struct fence to dma_fence 2016-10-25 14:40:39 +02:00
amdgpu_kms.c drm/amdgpu: request/release full gpu access if device is vf 2017-01-27 11:13:25 -05:00
amdgpu_mn.c drm/amdgpu: remove adev pointer from struct amdgpu_bo v2 2016-10-25 14:38:26 -04:00
amdgpu_mode.h drm/amdgpu: Refactor flip into prepare submit and submit. (v3) 2017-01-27 11:13:31 -05:00
amdgpu_object.c drm/amd/amdgpu: fix locking in bo creation error path 2017-01-27 11:13:29 -05:00
amdgpu_object.h drm/amd/amdgpu: add amdgpu_bo_gpu_accessible helper function 2017-01-27 11:13:17 -05:00
amdgpu_pll.c drm/amdgpu: add missing header dependencies 2016-09-14 15:10:37 -04:00
amdgpu_pll.h
amdgpu_pm.c drm/amdgpu: fix typo of CGTS 2017-01-27 11:13:27 -05:00
amdgpu_pm.h drm/amdgpu: add parse clock gating state 2017-01-27 11:13:07 -05:00
amdgpu_powerplay.c drm/amd/powerplay: refine powerplay interface. 2017-01-27 11:12:58 -05:00
amdgpu_powerplay.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
amdgpu_prime.c drm/amdgpu: Attach exclusive fence to prime exported bo's. (v5) 2016-11-11 10:20:04 -05:00
amdgpu_ring.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2016-12-16 10:24:44 -08:00
amdgpu_ring.h drm/amdgpu/ring: add two interfaces to support r/w registers with kiq 2017-01-27 11:13:21 -05:00
amdgpu_sa.c drm/amd/amdgpu : Fix NULL pointer comparison 2016-11-11 10:21:07 -05:00
amdgpu_sync.c dma-buf: Rename struct fence to dma_fence 2016-10-25 14:40:39 +02:00
amdgpu_sync.h Merge tag 'topic/drm-misc-2016-10-27' of git://anongit.freedesktop.org/git/drm-intel into drm-next 2016-10-28 11:33:52 +10:00
amdgpu_test.c dma-buf: Rename struct fence to dma_fence 2016-10-25 14:40:39 +02:00
amdgpu_trace_points.c
amdgpu_trace.h drm/amd/amdgpu: Widen mmio trace register address width 2017-01-27 11:12:39 -05:00
amdgpu_ttm.c drm/amd/amdgpu: move eviction counting to amdgpu_bo_move_notify 2017-01-27 11:13:16 -05:00
amdgpu_ttm.h Merge tag 'topic/drm-misc-2016-10-27' of git://anongit.freedesktop.org/git/drm-intel into drm-next 2016-10-28 11:33:52 +10:00
amdgpu_ucode.c drm/amdgpu:properly fix some JumpTable issues 2016-10-25 14:38:23 -04:00
amdgpu_ucode.h drm/amdgpu:add MEC_STORAGE ucode id for sriov 2016-10-25 14:38:23 -04:00
amdgpu_uvd.c drm/amd/amdgpu: get maximum and used UVD handles (v4) 2017-01-27 11:12:38 -05:00
amdgpu_uvd.h drm/amd/amdgpu: get maximum and used UVD handles (v4) 2017-01-27 11:12:38 -05:00
amdgpu_vce.c drm/amd/amdgpu: add Polaris12 support (v3) 2017-01-06 17:07:54 -05:00
amdgpu_vce.h Merge tag 'topic/drm-misc-2016-10-27' of git://anongit.freedesktop.org/git/drm-intel into drm-next 2016-10-28 11:33:52 +10:00
amdgpu_virt.c drm/amdgpu/virt: enable virtual display 2017-01-27 11:13:26 -05:00
amdgpu_virt.h drm/amdgpu/virt: implement VI virt operation interfaces 2017-01-27 11:13:24 -05:00
amdgpu_vm.c drm/amdgpu: use AMDGPU_GEM_CREATE_VRAM_CLEARED for VM PD/PTs (v2) 2016-11-23 15:08:46 -05:00
amdgpu_vm.h drm/amdgpu:new field members for SRIOV 2017-01-27 11:13:19 -05:00
amdgpu_vram_mgr.c drm/mm: Convert to drm_printer 2016-12-30 12:08:28 +01:00
amdgpu.h drm/amdgpu: simplify allocation of scratch regs 2017-01-27 11:13:32 -05:00
atom.c
atom.h drm/amd: cleanup remaining spaces and tabs v2 2016-05-11 12:31:20 -04:00
atombios_crtc.c drm/amdgpu: change function declarations and add missing header dependencies 2016-10-25 14:38:58 -04:00
atombios_crtc.h drm/amdgpu/atom: add SetDCEClock helper 2016-05-04 20:23:53 -04:00
atombios_dp.c drm/amdgpu: Don't retry 7 times in amdgpu_atombios_dp_get_dpcd() 2016-08-08 13:28:39 -04:00
atombios_dp.h
atombios_encoders.c drm/amdgpu: Remove checking for atombios 2017-01-27 11:12:39 -05:00
atombios_encoders.h
atombios_i2c.c drm/amdgpu: add missing header dependencies 2016-09-14 15:10:37 -04:00
atombios_i2c.h drm/amdgpu: fix power distribution issue for Polaris10 XT 2016-07-14 16:39:35 -04:00
ci_dpm.c drm/amdgpu: extend profiling mode. 2017-01-27 11:13:14 -05:00
ci_dpm.h drm/amdgpu: add the CI code to enable sclk OD(OverDrive) 2016-07-07 14:50:49 -04:00
ci_smc.c
cik_dpm.h
cik_ih.c drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
cik_ih.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
cik_sdma.c Merge tag 'topic/drm-misc-2016-10-27' of git://anongit.freedesktop.org/git/drm-intel into drm-next 2016-10-28 11:33:52 +10:00
cik_sdma.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
cik.c drm/amdgpu: remove detect_hw_virtualization interface 2017-01-27 11:13:05 -05:00
cik.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
cikd.h drm/amdgpu/dce8: simplify hpd code 2016-10-25 14:38:08 -04:00
clearstate_ci.h
clearstate_defs.h
clearstate_vi.h
cz_ih.c drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
cz_ih.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
dce_v6_0.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux into drm-next 2017-01-27 11:00:42 +10:00
dce_v6_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
dce_v8_0.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux into drm-next 2017-01-27 11:00:42 +10:00
dce_v8_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
dce_v10_0.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux into drm-next 2017-01-27 11:00:42 +10:00
dce_v10_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
dce_v11_0.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux into drm-next 2017-01-27 11:00:42 +10:00
dce_v11_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
dce_virtual.c ktime: Cleanup ktime_set() usage 2016-12-25 17:21:22 +01:00
dce_virtual.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
gfx_v6_0.c drm/amdgpu: simplify allocation of scratch regs 2017-01-27 11:13:32 -05:00
gfx_v6_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
gfx_v7_0.c drm/amdgpu: simplify allocation of scratch regs 2017-01-27 11:13:32 -05:00
gfx_v7_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
gfx_v8_0.c drm/amdgpu: simplify allocation of scratch regs 2017-01-27 11:13:32 -05:00
gfx_v8_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
gmc_v6_0.c drm/amdgpu: fix vm_fault_stop on gfx6 2017-01-12 17:39:34 -05:00
gmc_v6_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
gmc_v7_0.c Revert "drm/amdgpu: use the kernel zone memory size as the max remote memory in amdgpu" 2016-12-06 18:08:21 -05:00
gmc_v7_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
gmc_v8_0.c drm/amdgpu: add get clockgating_state method for gmc v8 2017-01-27 11:13:08 -05:00
gmc_v8_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
iceland_ih.c drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
iceland_ih.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
iceland_sdma_pkt_open.h
Kconfig drm/amdgpu: remove DRM_AMD_POWERPLAY 2016-10-04 11:15:59 -04:00
kv_dpm.c drm/amdgpu: delete dead definitions of dpm_ip_funcs 2017-01-27 11:12:56 -05:00
kv_dpm.h
kv_smc.c
Makefile drm/amdgpu/virt: implement VI virt operation interfaces 2017-01-27 11:13:24 -05:00
mxgpu_vi.c drm/amdgpu/virt: implement VI virt operation interfaces 2017-01-27 11:13:24 -05:00
mxgpu_vi.h drm/amdgpu/virt: implement VI virt operation interfaces 2017-01-27 11:13:24 -05:00
ObjectID.h Revert "drm/amdgpu: Add virtual connector and encoder macros." 2016-10-25 14:38:06 -04:00
ppsmc.h drm/amdgpu: add new definitions into ppsmc.h for iceland 2016-07-15 12:33:31 -04:00
r600_dpm.h drm/amdgpu: add SI DPM support (v4) 2016-08-31 15:21:09 -04:00
sdma_v2_4.c drm/amdgpu: cleanup unused iterator members for sdma v2.4 2016-11-23 15:08:41 -05:00
sdma_v2_4.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
sdma_v3_0.c drm/amdgpu: add get clockgating_state method for sdma v3 2017-01-27 11:13:09 -05:00
sdma_v3_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
si_dma.c Merge tag 'topic/drm-misc-2016-10-27' of git://anongit.freedesktop.org/git/drm-intel into drm-next 2016-10-28 11:33:52 +10:00
si_dma.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
si_dpm.c drm/amdgpu: delete dead definitions of dpm_ip_funcs 2017-01-27 11:12:56 -05:00
si_dpm.h drm/amdgpu: add SI DPM support (v4) 2016-08-31 15:21:09 -04:00
si_enums.h drm/amd/amdgpu: port of DCE v6 to new headers (v3) 2016-11-23 15:08:42 -05:00
si_ih.c drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
si_ih.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
si_smc.c drm/amdgpu/si/dpm: fix symbol conflicts with radeon 2016-09-14 15:10:40 -04:00
si.c drm/amdgpu: remove detect_hw_virtualization interface 2017-01-27 11:13:05 -05:00
si.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
sislands_smc.h drm/amdgpu/si/dpm: fix phase shedding setup 2016-09-28 16:13:17 -04:00
tonga_ih.c drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
tonga_ih.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
tonga_sdma_pkt_open.h
uvd_v4_2.c drm/amdgpu: change clock gating mode for uvd_v4. 2017-01-17 15:25:26 -05:00
uvd_v4_2.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
uvd_v5_0.c drm/amdgpu: add get clockgating_state method for uvd v5&v6 2017-01-27 11:13:10 -05:00
uvd_v5_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
uvd_v6_0.c drm/amdgpu: add get clockgating_state method for uvd v5&v6 2017-01-27 11:13:10 -05:00
uvd_v6_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
vce_v2_0.c drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
vce_v2_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
vce_v3_0.c drm/amdgpu: refine vce3.0 initialize. 2017-01-27 11:13:15 -05:00
vce_v3_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
vi_dpm.h drm/amdgpu: cleanup useless extern functions 2017-01-27 11:12:43 -05:00
vi.c drm/amdgpu/vi: add support virtualization 2017-01-27 11:13:25 -05:00
vi.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
vid.h drm/amdgpu/gfx8: add support kernel interface queue(KIQ) 2017-01-27 11:13:03 -05:00