159829 Commits

Author SHA1 Message Date
Ahmed Ammar
b9fa2ad162 vpu: fix bitwork buffer segment location 2013-06-26 18:35:39 +02:00
Ahmed Ammar
3a6ceacb2b vpu: reserve memory for gpu to reduce load on dma_alloc 2013-06-25 19:20:22 +02:00
Ahmed Ammar
2fd5a777e7 ESS-165: increase DMA zone 2013-06-18 21:01:38 +02:00
Ahmed Ammar
079c4a435f ESS-164: remove ramzswap from default config. 2013-06-18 21:01:03 +02:00
Ahmed Ammar
3c4e2cc428 Reduce GPU memory to 48MB since aperture merge commit 2013-06-10 17:45:50 +02:00
Matt Sealey
00c1f3f149 amd-gpu: correct sharedmem allocation
Merge/tree mishap caused this code to go missing.

Signed-off-by: Matt Sealey <matt@genesi-usa.com>
2013-06-06 11:56:18 -05:00
Matt Sealey
7115396a0f amd-gpu: remove aperture concept from the memory manager
Now everything is one big memarena instead of a separate PHYS and EMEM,
and instead of having to micromanage the split between Z160 (always PHYS
here) and GPU (99% of it's allocations come out of EMEM), we give blocks
from the same memory pool.

This should effect some more efficient allocation strategies and allow
Xorg acceleration to proceed with much less movement of data (when it
evicts for low memory in PHYS, it moves it to userspace and uses pixman
to render everything, which is CPU intensive) at the potential cost of
leaving slightly less memory around for the 3D GPU, but userspace apps
using the GPU should be doing better with texture management so as not
to soak up >32MiB of reserved GPU memory needlessly.

Moving away from gsl_memmgr to genalloc is not desirable right now since
the driver requires multiple allocation alignment orders and genalloc can
only really guarantee a minimum alignment (i.e. size of allocation
represented by each bit in the allocation bitmap).

Moving to a dma_alloc_coherent/writecombine-only model also poses a
problem since significant amounts of code expects to be able to find the
"base" GPU memory address and with individual allocations instead of a
pooled area, there is no such thing.

Signed-off-by: Matt Sealey <matt@genesi-usa.com>
2013-06-06 10:38:12 -05:00
Matt Sealey
9ab968f3c9 Merge branch 'master' of github.com:genesi/linux-legacy 2013-05-22 17:29:34 -05:00
Matt Sealey
a4cb4046ce ipu: don't follow interface pixfmt again since 32-bit is problematic
Signed-off-by: Matt Sealey <matt@genesi-usa.com>
2013-05-22 17:28:56 -05:00
Ahmed Ammar
8451d8d6b6 amd-gpu: rework apertures
* increase from 64MB to 96MB total memory
* after some testing it seems that PHYS can be quite small compared
  to EMEM, therefore make the aperture split 16MB/80MB
2013-05-21 18:04:56 +02:00
Ahmed Ammar
1c537cf431 amd-gpu: increase MEM1 area some more for latest eglsink
- fixes crashes with full-screen 720p eglsink
2013-05-05 15:58:11 -05:00
Matt Sealey
c145eaeae5 Revert "ARM 5784/1 fix early boot machine ID mismatch error display"
Mistakenly applied this to 2.6.31 all those years ago while doing
experiments on later kernels. Actually it depends on several other
patches which never got applied.

This reverts commit 9dda27bbe8.

Signed-off-by: Matt Sealey <matt@genesi-usa.com>
2013-03-01 13:48:17 -06:00
Ahmed Ammar
c532e3bcc9 amd-gpu: increase MEM1 area
- fixes issue where allocations fail after compiz started.
2013-01-20 05:07:04 -06:00
Ahmed Ammar
87baf958d0 Merge branch 'amd-gpu' of git://github.com/genesi/linux-legacy
Conflicts:
	arch/arm/configs/mx51_efikamx_defconfig
	drivers/mxc/amd-gpu/gsl_hal.c
2013-01-20 04:03:20 -06:00
Richard Zhao
927c89c489 ENGR00162464 update pm4 microcode: pm4_microcode_r18_20111020.a.inl.rel
It fix gpu hang.

Signed-off-by: Richard Zhao <richard.zhao@freescale.com>
2012-12-10 21:04:18 -06:00
Matt Sealey
47252bb4b8 config: use preemptible rcu 2012-12-10 21:03:39 -06:00
Matt Sealey
b05c04388a config: disable wimax, several ancient usb wifi modules, thumbee extension 2012-12-10 21:01:58 -06:00
Matt Sealey
b40ea73fa8 config: disable profiling, tracepoints and related functionality 2012-12-10 20:56:11 -06:00
Matt Sealey
eefa06da41 config: disable BZIP2 ramdisk compression
Nobody uses it, it's slow to compress, slow to decompress, we support
GZIP and LZMA anyway.
2012-12-10 20:52:58 -06:00
Matt Sealey
7ceaad2879 config: disable sisusbvga (depends on vga_8x16) and enable the fixed_8x16 font 2012-12-10 20:51:15 -06:00
Matt Sealey
7d6f9461af font: add the Fixed 8x16 console font to the kernel.
It's a bit like Terminus, but more rounded and less harsh on the eyes. Ubuntu has shipped
it as their default console font for years, before they switched to the "Ubuntu" font. Putting
this in the kernel has practically no benefit except to reduce the amount of "glitching"
swapping the built-in kernel console font for a new one halfway through boot when you see the
kernel output on a screen.

Note to gain the benefit of it not swapping the font around again when "consolefont" or
similar service starts, you need to set your font to Uni3-Fixed16.psf.gz or something very
similar.
2012-12-10 20:49:34 -06:00
Matt Sealey
63f040b7ad amd-gpu: use kzalloc instead of kmalloc/memset 2012-12-10 20:43:42 -06:00
Xinyu Chen
4c741b2e31 ENGR00160722 amd gpu: add best fit algorithm to memory manager
The AMD gpu driver memory manager is stupid to allocating
a memory block from the first free block. Neither check the
best fit free block. Here just add a little codes to
let allocation to find a best size fitted free block.
To avoid memory fragement.

Signed-off-by: Xinyu Chen <xinyu.chen@freescale.com>
2012-12-10 20:42:50 -06:00
Richard Liu
f7501b49b9 ENGR00162193 amd gpu: fixed random gsl_kmod failure
increase max process number to fix gsl_kmod open issue

Signed-off-by: xianzhong <b07117@freescale.com>
Signed-off-by: Richard Liu <r66033@freescale.com>

Conflicts:

	drivers/mxc/amd-gpu/include/gsl_buildconfig.h
2012-12-10 20:42:17 -06:00
Matt Sealey
a984ec330b config: re-enable PREEMPT 2012-12-10 20:22:16 -06:00
Matt Sealey
c50431b567 BFS: back out BFS scheduler for stability reasons
It works faster sometimes, other times not.. the code is so old now
2012-12-10 20:18:47 -06:00
Matt Sealey
102933f39b amd-gpu: ensure timestamp read posted to CPU before returning 2012-12-10 19:36:19 -06:00
Matt Sealey
7b5ab2e982 amd-gpu: more sane way of doing an RB write 2012-12-10 19:36:18 -06:00
Matt Sealey
e98a2a565a amd-gpu: memory barrier additions in MMU code to ensure pagetables are posted 2012-12-10 19:36:18 -06:00
Matt Sealey
fbbe86a046 amd-gpu: ringbuffer polling/timestamp buffer alignment fix
According to Qualcomm it can be at a 4-byte boundary, but for using MMU
it needs to be at a page boundary
2012-12-10 19:36:17 -06:00
Matt Sealey
5395604743 amd-gpu: alignment for MMU page tables should be page-aligned 2012-12-10 19:36:16 -06:00
Matt Sealey
3b58ae2463 amd-gpu: don't use writecombining for remapping the sharedmem space even with MMU 2012-12-10 18:38:04 -06:00
Matt Sealey
be53471e10 amd-gpu: barriers in ringbuffer submit to ensure that the buffer is posted first 2012-12-10 18:36:59 -06:00
Matt Sealey
0c0087fe73 amd-gpu: memory barrier after waittimestamp ioctl to ensure buffers posted 2012-12-10 18:33:41 -06:00
Matt Sealey
287a1576a6 amd-gpu: memory barrier for safety after issueibcmds sync mem
Makes sense (and is from Qualcomm's driver) since we cannot guarantee
the memory writes have finished posting before we submit them to the
GPU.
2012-12-10 18:22:37 -06:00
Matt Sealey
f1ccc6aab6 amd-gpu: remove unused, non-kernelish debug_pm4 module
This is just causing some messy code.
2012-12-10 18:14:48 -06:00
Matt Sealey
95b52ba9b3 amd-gpu: remove device_clock ioctl
No userspace users except a reference in libkgsl.so which is never called.

kgsl_device_clock() is left in (but preprocessed out) since it has a fairly
interesting behavior in turning the autogating on and off which is not the
same as turning the actual clocks on and off and could be useful with
modification for further refinement of power management at a later date.
2012-12-10 18:11:27 -06:00
Matt Sealey
d09ae76082 amd-gpu: remove add_timestamp ioctl
No userspace activity on this ioctl means it needn't be implemented.
2012-12-10 18:00:59 -06:00
Matt Sealey
3b59a26f78 amd-gpu: remove regwrite ioctl and associated infrastructure
kgsl_device_regwrite() still exists as it is used for a single point in
the driver (reading timestamp for Z430 ringbuffer) dependent on a build
flag. This flag is not enabled but it is not within the scope of this
patch to actually change this (if it is ever enabled it will be quite
obvious what to do - use kgsl_yamato_regwrite directly as it is entirely
Z430-specific)
2012-12-10 16:25:50 -06:00
Matt Sealey
16d6513c0b amd-gpu: remove unused waitirq ioctl and associated infrastructure
This is implemented in the "current" userspace libkgsl.so but in fact
since the ioctl is deprecated, there are no users for it and no evidence
of it ever being used in real life can be presented. Therefore we can
just take out the few things it does and it's single-use dependencies.
2012-12-10 16:13:52 -06:00
Matt Sealey
9b0b2333c8 amd-gpu: remove unused files and logging infrastructure which was never enabled 2012-12-10 16:09:51 -06:00
Matt Sealey
9e902b2d15 Merge branch 'remove-bfs', remote-tracking branch 'origin' into amd-gpu 2012-11-25 00:07:41 -06:00
Matt Sealey
f35bfd5125 Merge branch 'amd-gpu' of github.com:genesi/linux-legacy into amd-gpu 2012-11-25 00:02:24 -06:00
Matt Sealey
d5eebcd215 config: re-enable PREEMPT, disable bzip2 ramdisks (waste of space) 2012-11-20 12:18:14 -06:00
Matt Sealey
db910a3b9b Back out BFS v376, step 2
Such an old version of BFS is not maintained and while it gave us some
noticable benefits, it is not worth dealing with the problems it could
cause.

This reverts commit 469d88e87d.
2012-11-20 12:09:28 -06:00
Matt Sealey
cb417eaf14 Back out BFS v376, step 1
Such an old version of BFS is not maintained and while it gave us some
noticable benefits, it is not worth dealing with the problems it could
cause.

This reverts commit 4259e4284d.
2012-11-20 12:08:37 -06:00
Matt Sealey
c0489d5cdc amd-gpu: remove unneeded barriers on hardware access
matches Freescale 2.6.38 kernel (ENGR00171209)
2012-11-19 21:32:45 +00:00
Matt Sealey
42f79c36bf amd-gpu: cleaned/added extra debug, plus use kzalloc instead of kmalloc/memset
Adds similar functionality as the following Freescale patch:

ENGR00142591 GPU: add some print message to help debug
2012-11-19 21:20:43 +00:00
Matt Sealey
467b7151ad efikamx: more config cutdowns, this time for TV tuners and related audio devices
May be some more cleanups with this, it is not clear which tuners and devices
relate to each other so some drivers may be being built without dependent
tuners - V4L2 is such a mess. Either way this cuts down build time and install
footprint and affects practically nobody.
2012-11-19 18:08:36 +00:00
Matt Sealey
99af5ec735 efikamx: more config cutdowns, this time for TV tuners and related audio devices
May be some more cleanups with this, it is not clear which tuners and devices
relate to each other so some drivers may be being built without dependent
tuners - V4L2 is such a mess. Either way this cuts down build time and install
footprint and affects practically nobody.
2012-11-19 12:00:27 -06:00