Compare commits
227 Commits
tools_r21
...
android-4.
Author | SHA1 | Date | |
---|---|---|---|
![]() |
f29c214d6a | ||
![]() |
a811d7a8e6 | ||
![]() |
5ba74660e3 | ||
![]() |
f0e402dbd2 | ||
![]() |
7cc2dec82e | ||
![]() |
2c287e9510 | ||
![]() |
956092e07c | ||
![]() |
3ef4fecd30 | ||
![]() |
98957db553 | ||
![]() |
2e0452cbd1 | ||
![]() |
f84bc8d6f6 | ||
![]() |
f27642c082 | ||
![]() |
204b26b440 | ||
![]() |
9014818f61 | ||
![]() |
f4b34b6c39 | ||
![]() |
6c0e373d38 | ||
![]() |
ecf67e152a | ||
![]() |
d2eea0e6d6 | ||
![]() |
cc95d69c25 | ||
![]() |
e0a00a8a2c | ||
![]() |
f707007435 | ||
![]() |
a9dca77315 | ||
![]() |
8ab03a28d0 | ||
![]() |
4430aa6aaa | ||
![]() |
02e06782fc | ||
![]() |
0ef0009044 | ||
![]() |
4513ad77ef | ||
![]() |
e58303249b | ||
![]() |
2aceb4bcb3 | ||
![]() |
dd526b010d | ||
![]() |
4b3ff1f0fa | ||
![]() |
b67d4ec5ba | ||
![]() |
9d1defbf47 | ||
![]() |
b2af8b6848 | ||
![]() |
1eaa3e6f72 | ||
![]() |
2b270a0cac | ||
![]() |
155a70b93f | ||
![]() |
c7fda6a96d | ||
![]() |
bec648ee9f | ||
![]() |
478f8ff3f0 | ||
![]() |
29861b5d8e | ||
![]() |
f238e06d3a | ||
![]() |
f801cf55be | ||
![]() |
ccd7ee624a | ||
![]() |
5766b0932f | ||
![]() |
cc0f225365 | ||
![]() |
49b5eb4ded | ||
![]() |
f50b99f471 | ||
![]() |
e3738414a6 | ||
![]() |
9209fd3868 | ||
![]() |
af4371b46b | ||
![]() |
b010245490 | ||
![]() |
b18d4f6361 | ||
![]() |
973bf681b7 | ||
![]() |
de0dc25112 | ||
![]() |
abce26b05a | ||
![]() |
183d0a57a2 | ||
![]() |
85811fc7c2 | ||
![]() |
dc81b44759 | ||
![]() |
2da907059e | ||
![]() |
faf361a6ac | ||
![]() |
ac3e35cd8f | ||
![]() |
f71d757f6e | ||
![]() |
3a8807df34 | ||
![]() |
ab558163a3 | ||
![]() |
f34c6d7796 | ||
![]() |
877ad30fd6 | ||
![]() |
c0e3b9ddd6 | ||
![]() |
2b49277d84 | ||
![]() |
b9ad1a1e00 | ||
![]() |
83d5e567d6 | ||
![]() |
8c368b5d1d | ||
![]() |
fe7d7d4693 | ||
![]() |
8900e2de45 | ||
![]() |
15afed42ca | ||
![]() |
f71fa0830a | ||
![]() |
b2d46d3632 | ||
![]() |
66edcd9dad | ||
![]() |
5f1d206de3 | ||
![]() |
e0d680176f | ||
![]() |
2c344d3631 | ||
![]() |
4f90a0932c | ||
![]() |
54662dd4de | ||
![]() |
d7440f3725 | ||
![]() |
6fa20f8296 | ||
![]() |
3ffdef19b4 | ||
![]() |
4be256b50b | ||
![]() |
48c8880429 | ||
![]() |
8c7f4777ec | ||
![]() |
19c0b800a3 | ||
![]() |
3ad36e525f | ||
![]() |
eeddc30e7e | ||
![]() |
a190cbb825 | ||
![]() |
cbd76d15af | ||
![]() |
eb75db7d83 | ||
![]() |
81af404b63 | ||
![]() |
21120f6d7b | ||
![]() |
561bf16be5 | ||
![]() |
453294d1da | ||
![]() |
f72ee26927 | ||
![]() |
78a3069f82 | ||
![]() |
e49df0203c | ||
![]() |
6773054eb3 | ||
![]() |
974e16cd82 | ||
![]() |
5d8cfb3e66 | ||
![]() |
f861705f8c | ||
![]() |
4ac3b0a148 | ||
![]() |
cc1f4acbda | ||
![]() |
76f60e2ebd | ||
![]() |
f706b3dfcf | ||
![]() |
dd0e991c6a | ||
![]() |
db2903fac3 | ||
![]() |
efd3983446 | ||
![]() |
28ae6f5dfd | ||
![]() |
a7d8f3d50e | ||
![]() |
820ad4283d | ||
![]() |
09d9dd3acd | ||
![]() |
52bf2d5659 | ||
![]() |
e20afb140c | ||
![]() |
a626bbdb36 | ||
![]() |
29af938cbd | ||
![]() |
4d63f33cdc | ||
![]() |
2e3756b4d3 | ||
![]() |
46bb2a222e | ||
![]() |
8225911775 | ||
![]() |
df88d88f56 | ||
![]() |
fdbecf3b5a | ||
![]() |
056b4bc499 | ||
![]() |
77b25702ba | ||
![]() |
89a3543568 | ||
![]() |
dc320d99f1 | ||
![]() |
b6d6ec5326 | ||
![]() |
d8450043b0 | ||
![]() |
82393decdf | ||
![]() |
59b222ac75 | ||
![]() |
93a9d53485 | ||
![]() |
69fc1522a3 | ||
![]() |
eab7bddd9e | ||
![]() |
ad8ff472b6 | ||
![]() |
cfd0345fe0 | ||
![]() |
ca7ee8a9e5 | ||
![]() |
c60a0027b1 | ||
![]() |
71c0366fc7 | ||
![]() |
19b1041930 | ||
![]() |
df0cf64781 | ||
![]() |
2a22a69e94 | ||
![]() |
9eeaa4bd17 | ||
![]() |
0837c69a63 | ||
![]() |
73d99958bb | ||
![]() |
d71ada630d | ||
![]() |
5adc7fdc2b | ||
![]() |
5140b785a0 | ||
![]() |
5520650483 | ||
![]() |
29b8fb3d5e | ||
![]() |
b6c1e34dca | ||
![]() |
6ccc2c8f43 | ||
![]() |
5467f25f82 | ||
![]() |
31ab6ac05e | ||
![]() |
3fc211983e | ||
![]() |
536b1daf00 | ||
![]() |
b13ad93f4a | ||
![]() |
73ac7d94b7 | ||
![]() |
366c01992a | ||
![]() |
10e2d222ce | ||
![]() |
affd1b4243 | ||
![]() |
eeb321c54e | ||
![]() |
f4497e15b7 | ||
![]() |
a72246d67e | ||
![]() |
5fec211f60 | ||
![]() |
3b4c9db256 | ||
![]() |
6ff66601a4 | ||
![]() |
cddedade5b | ||
![]() |
eaac1e5a1c | ||
![]() |
7bf1c31cac | ||
![]() |
4bac8f689e | ||
![]() |
5f0701c9fa | ||
![]() |
c9dbebe344 | ||
![]() |
48955d24b9 | ||
![]() |
d7552a3101 | ||
![]() |
9b6a453865 | ||
![]() |
f94effdab2 | ||
![]() |
82dcfee5fc | ||
![]() |
c07196605c | ||
![]() |
673c092e0f | ||
![]() |
402ec70899 | ||
![]() |
248321bb6f | ||
![]() |
617a5ee417 | ||
![]() |
cbbe9528ca | ||
![]() |
4f13bdd45c | ||
![]() |
81f1617a68 | ||
![]() |
f19979710a | ||
![]() |
b78aa53904 | ||
![]() |
15e0ca8186 | ||
![]() |
0c2d318837 | ||
![]() |
e5b635c885 | ||
![]() |
681ccffb45 | ||
![]() |
b7dd54f0c7 | ||
![]() |
d6c3369cec | ||
![]() |
65b48f892e | ||
![]() |
2eb46df63a | ||
![]() |
a1d1abbc26 | ||
![]() |
c823b2c741 | ||
![]() |
d7dfcb0cb0 | ||
![]() |
22bd479e2e | ||
![]() |
cb9ea8873a | ||
![]() |
408e3e5046 | ||
![]() |
6320848df6 | ||
![]() |
c636ff1944 | ||
![]() |
186b36b65b | ||
![]() |
68c1f682ff | ||
![]() |
edc5fe530f | ||
![]() |
7c3323516b | ||
![]() |
0b82e1bd77 | ||
![]() |
7cfe2c5c07 | ||
![]() |
acda32c8f2 | ||
![]() |
2730674ca9 | ||
![]() |
8958a38329 | ||
![]() |
3e210abf7d | ||
![]() |
b9462d5f88 | ||
![]() |
3fc3b7fd94 | ||
![]() |
05ad617b5b | ||
![]() |
402b93c16d | ||
![]() |
3fad2b17b9 | ||
![]() |
240b3349fc | ||
![]() |
5e94df8a4f | ||
![]() |
29d03a8f39 | ||
![]() |
3cb8cdea3c |
241
libc/Android.mk
241
libc/Android.mk
@@ -8,14 +8,68 @@ libc_common_src_files := \
|
||||
$(syscall_src) \
|
||||
unistd/abort.c \
|
||||
unistd/alarm.c \
|
||||
unistd/brk.c \
|
||||
unistd/daemon.c \
|
||||
unistd/eventfd.c \
|
||||
unistd/exec.c \
|
||||
unistd/fcntl.c \
|
||||
unistd/fnmatch.c \
|
||||
unistd/fstatfs.c \
|
||||
unistd/ftime.c \
|
||||
unistd/ftok.c \
|
||||
unistd/getdtablesize.c \
|
||||
unistd/gethostname.c \
|
||||
unistd/getopt_long.c \
|
||||
unistd/getpgrp.c \
|
||||
unistd/getpriority.c \
|
||||
unistd/getpt.c \
|
||||
unistd/initgroups.c \
|
||||
unistd/isatty.c \
|
||||
unistd/issetugid.c \
|
||||
unistd/killpg.c \
|
||||
unistd/lseek64.c \
|
||||
unistd/mmap.c \
|
||||
unistd/open.c \
|
||||
unistd/openat.c \
|
||||
unistd/opendir.c \
|
||||
unistd/pathconf.c \
|
||||
unistd/perror.c \
|
||||
unistd/popen.c \
|
||||
unistd/pread.c \
|
||||
unistd/pselect.c \
|
||||
unistd/ptsname.c \
|
||||
unistd/ptsname_r.c \
|
||||
unistd/pwrite.c \
|
||||
unistd/raise.c \
|
||||
unistd/reboot.c \
|
||||
unistd/recv.c \
|
||||
unistd/sbrk.c \
|
||||
unistd/send.c \
|
||||
unistd/setegid.c \
|
||||
unistd/setuid.c \
|
||||
unistd/seteuid.c \
|
||||
unistd/setreuid.c \
|
||||
unistd/setresuid.c \
|
||||
unistd/setpgrp.c \
|
||||
unistd/sigblock.c \
|
||||
unistd/siginterrupt.c \
|
||||
unistd/siglist.c \
|
||||
unistd/signal.c \
|
||||
unistd/signame.c \
|
||||
unistd/sigsetmask.c \
|
||||
unistd/sigsuspend.c \
|
||||
unistd/sigwait.c \
|
||||
unistd/sleep.c \
|
||||
unistd/statfs.c \
|
||||
unistd/syslog.c \
|
||||
unistd/system.c \
|
||||
unistd/tcgetpgrp.c \
|
||||
unistd/tcsetpgrp.c \
|
||||
unistd/time.c \
|
||||
unistd/umount.c \
|
||||
unistd/unlockpt.c \
|
||||
unistd/usleep.c \
|
||||
unistd/wait.c \
|
||||
stdio/asprintf.c \
|
||||
stdio/clrerr.c \
|
||||
stdio/fclose.c \
|
||||
@@ -30,6 +84,7 @@ libc_common_src_files := \
|
||||
stdio/fileno.c \
|
||||
stdio/findfp.c \
|
||||
stdio/flags.c \
|
||||
stdio/flockfile.c \
|
||||
stdio/fopen.c \
|
||||
stdio/fprintf.c \
|
||||
stdio/fpurge.c \
|
||||
@@ -68,6 +123,7 @@ libc_common_src_files := \
|
||||
stdio/sscanf.c \
|
||||
stdio/stdio.c \
|
||||
stdio/tempnam.c \
|
||||
stdio/tmpfile.c \
|
||||
stdio/tmpnam.c \
|
||||
stdio/ungetc.c \
|
||||
stdio/vasprintf.c \
|
||||
@@ -80,19 +136,37 @@ libc_common_src_files := \
|
||||
stdio/vsscanf.c \
|
||||
stdio/wbuf.c \
|
||||
stdio/wsetup.c \
|
||||
stdio/__fgets_chk.c \
|
||||
stdio/__snprintf_chk.c \
|
||||
stdio/__sprintf_chk.c \
|
||||
stdio/__vsnprintf_chk.c \
|
||||
stdio/__vsprintf_chk.c \
|
||||
stdlib/_rand48.c \
|
||||
stdlib/assert.c \
|
||||
stdlib/atexit.c \
|
||||
stdlib/atoi.c \
|
||||
stdlib/atol.c \
|
||||
stdlib/atoll.c \
|
||||
stdlib/bsearch.c \
|
||||
stdlib/ctype_.c \
|
||||
stdlib/div.c \
|
||||
stdlib/exit.c \
|
||||
stdlib/getenv.c \
|
||||
stdlib/jrand48.c \
|
||||
stdlib/ldiv.c \
|
||||
stdlib/lldiv.c \
|
||||
stdlib/locale.c \
|
||||
stdlib/lrand48.c \
|
||||
stdlib/mrand48.c \
|
||||
stdlib/nrand48.c \
|
||||
stdlib/putenv.c \
|
||||
stdlib/qsort.c \
|
||||
stdlib/seed48.c \
|
||||
stdlib/setenv.c \
|
||||
stdlib/setjmperr.c \
|
||||
stdlib/srand48.c \
|
||||
stdlib/strntoimax.c \
|
||||
stdlib/strntoumax.c \
|
||||
stdlib/strtod.c \
|
||||
stdlib/strtoimax.c \
|
||||
stdlib/strtol.c \
|
||||
@@ -102,29 +176,50 @@ libc_common_src_files := \
|
||||
stdlib/strtoumax.c \
|
||||
stdlib/tolower_.c \
|
||||
stdlib/toupper_.c \
|
||||
stdlib/wchar.c \
|
||||
string/index.c \
|
||||
string/memccpy.c \
|
||||
string/memchr.c \
|
||||
string/memmem.c \
|
||||
string/memrchr.c \
|
||||
string/memswap.c \
|
||||
string/strcasecmp.c \
|
||||
string/strcasestr.c \
|
||||
string/strcat.c \
|
||||
string/strchr.c \
|
||||
string/strcoll.c \
|
||||
string/strcspn.c \
|
||||
string/strdup.c \
|
||||
string/strlcat.c \
|
||||
string/strlcpy.c \
|
||||
string/strncat.c \
|
||||
string/strncpy.c \
|
||||
string/strndup.c \
|
||||
string/strnlen.c \
|
||||
string/strpbrk.c \
|
||||
string/strrchr.c \
|
||||
string/strsep.c \
|
||||
string/strspn.c \
|
||||
string/strstr.c \
|
||||
string/strtok.c \
|
||||
string/strtotimeval.c \
|
||||
string/__memcpy_chk.c \
|
||||
string/__memmove_chk.c \
|
||||
string/__memset_chk.c \
|
||||
string/__strcat_chk.c \
|
||||
string/__strcpy_chk.c \
|
||||
string/__strlcat_chk.c \
|
||||
string/__strlcpy_chk.c \
|
||||
string/__strlen_chk.c \
|
||||
string/__strncat_chk.c \
|
||||
string/__strncpy_chk.c \
|
||||
wchar/wcpcpy.c \
|
||||
wchar/wcpncpy.c \
|
||||
wchar/wcscasecmp.c \
|
||||
wchar/wcscat.c \
|
||||
wchar/wcschr.c \
|
||||
wchar/wcscmp.c \
|
||||
wchar/wcscoll.c \
|
||||
wchar/wcscpy.c \
|
||||
wchar/wcscspn.c \
|
||||
wchar/wcsdup.c \
|
||||
@@ -148,148 +243,61 @@ libc_common_src_files := \
|
||||
wchar/wmemcpy.c \
|
||||
wchar/wmemmove.c \
|
||||
wchar/wmemset.c \
|
||||
inet/bindresvport.c \
|
||||
inet/inet_addr.c \
|
||||
inet/inet_aton.c \
|
||||
inet/inet_ntoa.c \
|
||||
inet/inet_ntop.c \
|
||||
inet/inet_pton.c \
|
||||
inet/ether_aton.c \
|
||||
inet/ether_ntoa.c \
|
||||
tzcode/asctime.c \
|
||||
tzcode/difftime.c \
|
||||
tzcode/localtime.c \
|
||||
tzcode/strftime.c \
|
||||
tzcode/strptime.c \
|
||||
bionic/__set_errno.c \
|
||||
bionic/bionic_clone.c \
|
||||
bionic/cpuacct.c \
|
||||
bionic/arc4random.c \
|
||||
bionic/atoi.c \
|
||||
bionic/atol.c \
|
||||
bionic/atoll.c \
|
||||
bionic/basename.c \
|
||||
bionic/basename_r.c \
|
||||
bionic/bindresvport.c \
|
||||
bionic/bionic_clone.c \
|
||||
bionic/brk.c \
|
||||
bionic/clearenv.c \
|
||||
bionic/cpuacct.c \
|
||||
bionic/daemon.c \
|
||||
bionic/dirname.c \
|
||||
bionic/dirname_r.c \
|
||||
bionic/drand48.c \
|
||||
bionic/erand48.c \
|
||||
bionic/err.c \
|
||||
bionic/ether_aton.c \
|
||||
bionic/ether_ntoa.c \
|
||||
bionic/eventfd.c \
|
||||
bionic/fcntl.c \
|
||||
bionic/fdprintf.c \
|
||||
bionic/__fgets_chk.c \
|
||||
bionic/flockfile.c \
|
||||
bionic/fork.c \
|
||||
bionic/fstatfs.c \
|
||||
bionic/ftime.c \
|
||||
bionic/ftok.c \
|
||||
bionic/fts.c \
|
||||
bionic/getcwd.cpp \
|
||||
bionic/getdtablesize.c \
|
||||
bionic/gethostname.c \
|
||||
bionic/getpgrp.c \
|
||||
bionic/getpriority.c \
|
||||
bionic/getpt.c \
|
||||
bionic/if_indextoname.c \
|
||||
bionic/if_nametoindex.c \
|
||||
bionic/initgroups.c \
|
||||
bionic/if_indextoname.c \
|
||||
bionic/ioctl.c \
|
||||
bionic/isatty.c \
|
||||
bionic/issetugid.c \
|
||||
bionic/ldexp.c \
|
||||
bionic/libc_init_common.c \
|
||||
bionic/locale.c \
|
||||
bionic/logd_write.c \
|
||||
bionic/lseek64.c \
|
||||
bionic/md5.c \
|
||||
bionic/memccpy.c \
|
||||
bionic/memchr.c \
|
||||
bionic/__memcpy_chk.c \
|
||||
bionic/memmem.c \
|
||||
bionic/__memmove_chk.c \
|
||||
bionic/memmove_words.c \
|
||||
bionic/memrchr.c \
|
||||
bionic/__memset_chk.c \
|
||||
bionic/memswap.c \
|
||||
bionic/mmap.c \
|
||||
bionic/openat.c \
|
||||
bionic/open.c \
|
||||
bionic/opendir.c \
|
||||
bionic/pathconf.c \
|
||||
bionic/perror.c \
|
||||
bionic/pread.c \
|
||||
bionic/pselect.c \
|
||||
bionic/ptsname.c \
|
||||
bionic/ptsname_r.c \
|
||||
bionic/pututline.c \
|
||||
bionic/pwrite.c \
|
||||
bionic/raise.c \
|
||||
bionic/realpath.c \
|
||||
bionic/reboot.c \
|
||||
bionic/recv.c \
|
||||
bionic/sbrk.c \
|
||||
bionic/sched_cpualloc.c \
|
||||
bionic/sched_cpucount.c \
|
||||
bionic/sched_getaffinity.c \
|
||||
bionic/sched_getcpu.c \
|
||||
bionic/sched_cpualloc.c \
|
||||
bionic/sched_cpucount.c \
|
||||
bionic/semaphore.c \
|
||||
bionic/send.c \
|
||||
bionic/setegid.c \
|
||||
bionic/__set_errno.c \
|
||||
bionic/seteuid.c \
|
||||
bionic/setpgrp.c \
|
||||
bionic/setresuid.c \
|
||||
bionic/setreuid.c \
|
||||
bionic/setuid.c \
|
||||
bionic/sha1.c \
|
||||
bionic/sigblock.c \
|
||||
bionic/siginterrupt.c \
|
||||
bionic/siglist.c \
|
||||
bionic/signal.c \
|
||||
bionic/signame.c \
|
||||
bionic/sigsetmask.c \
|
||||
bionic/sigsuspend.c \
|
||||
bionic/sigwait.c \
|
||||
bionic/sleep.c \
|
||||
bionic/__snprintf_chk.c \
|
||||
bionic/__sprintf_chk.c \
|
||||
bionic/statfs.c \
|
||||
bionic/__strcat_chk.c \
|
||||
bionic/strcoll.c \
|
||||
bionic/__strcpy_chk.c \
|
||||
bionic/strerror.cpp \
|
||||
bionic/strerror_r.cpp \
|
||||
bionic/__strlcat_chk.c \
|
||||
bionic/__strlcpy_chk.c \
|
||||
bionic/__strlen_chk.c \
|
||||
bionic/__strncat_chk.c \
|
||||
bionic/__strncpy_chk.c \
|
||||
bionic/strndup.c \
|
||||
bionic/strnlen.c \
|
||||
bionic/strntoimax.c \
|
||||
bionic/strntoumax.c \
|
||||
bionic/strsignal.cpp \
|
||||
bionic/strtotimeval.c \
|
||||
bionic/stubs.cpp \
|
||||
bionic/system_properties.c \
|
||||
bionic/tcgetpgrp.c \
|
||||
bionic/tcsetpgrp.c \
|
||||
bionic/tdestroy.c \
|
||||
bionic/thread_atexit.c \
|
||||
bionic/time64.c \
|
||||
bionic/tmpfile.cpp \
|
||||
bionic/__umask_chk.c \
|
||||
bionic/umount.c \
|
||||
bionic/unlockpt.c \
|
||||
bionic/usleep.c \
|
||||
bionic/thread_atexit.c \
|
||||
bionic/utime.c \
|
||||
bionic/utmp.c \
|
||||
bionic/__vsnprintf_chk.c \
|
||||
bionic/__vsprintf_chk.c \
|
||||
bionic/wait.c \
|
||||
bionic/wchar.c \
|
||||
bionic/wcscoll.c \
|
||||
netbsd/gethnamaddr.c \
|
||||
netbsd/isc/ev_timers.c \
|
||||
netbsd/isc/ev_streams.c \
|
||||
@@ -331,17 +339,6 @@ libc_upstream_netbsd_src_files := \
|
||||
upstream-netbsd/libc/regex/regerror.c \
|
||||
upstream-netbsd/libc/regex/regexec.c \
|
||||
upstream-netbsd/libc/regex/regfree.c \
|
||||
upstream-netbsd/libc/stdio/getdelim.c \
|
||||
upstream-netbsd/libc/stdio/getline.c \
|
||||
upstream-netbsd/libc/stdlib/drand48.c \
|
||||
upstream-netbsd/libc/stdlib/erand48.c \
|
||||
upstream-netbsd/libc/stdlib/jrand48.c \
|
||||
upstream-netbsd/libc/stdlib/lrand48.c \
|
||||
upstream-netbsd/libc/stdlib/mrand48.c \
|
||||
upstream-netbsd/libc/stdlib/nrand48.c \
|
||||
upstream-netbsd/libc/stdlib/_rand48.c \
|
||||
upstream-netbsd/libc/stdlib/seed48.c \
|
||||
upstream-netbsd/libc/stdlib/srand48.c \
|
||||
upstream-netbsd/libc/stdlib/tdelete.c \
|
||||
upstream-netbsd/libc/stdlib/tfind.c \
|
||||
upstream-netbsd/libc/stdlib/tsearch.c \
|
||||
@@ -361,40 +358,40 @@ libc_upstream_netbsd_src_files := \
|
||||
# below.
|
||||
#
|
||||
libc_static_common_src_files := \
|
||||
unistd/sysconf.c \
|
||||
bionic/__errno.c \
|
||||
bionic/sysconf.c \
|
||||
|
||||
# Architecture specific source files go here
|
||||
# =========================================================
|
||||
ifeq ($(TARGET_ARCH),arm)
|
||||
libc_common_src_files += \
|
||||
arch-arm/bionic/__get_sp.S \
|
||||
arch-arm/bionic/_exit_with_stack_teardown.S \
|
||||
arch-arm/bionic/_setjmp.S \
|
||||
arch-arm/bionic/abort_arm.S \
|
||||
arch-arm/bionic/atomics_arm.c \
|
||||
arch-arm/bionic/clone.S \
|
||||
arch-arm/bionic/eabi.c \
|
||||
arch-arm/bionic/_exit_with_stack_teardown.S \
|
||||
arch-arm/bionic/ffs.S \
|
||||
arch-arm/bionic/futex_arm.S \
|
||||
arch-arm/bionic/__get_sp.S \
|
||||
arch-arm/bionic/kill.S \
|
||||
arch-arm/bionic/libgcc_compat.c \
|
||||
arch-arm/bionic/memcmp16.S \
|
||||
arch-arm/bionic/tkill.S \
|
||||
arch-arm/bionic/tgkill.S \
|
||||
arch-arm/bionic/memcmp.S \
|
||||
arch-arm/bionic/memcmp16.S \
|
||||
arch-arm/bionic/memcpy.S \
|
||||
arch-arm/bionic/memset.S \
|
||||
arch-arm/bionic/_setjmp.S \
|
||||
arch-arm/bionic/setjmp.S \
|
||||
arch-arm/bionic/sigsetjmp.S \
|
||||
arch-arm/bionic/strcmp.S \
|
||||
arch-arm/bionic/strcpy.S \
|
||||
arch-arm/bionic/strlen.c.arm \
|
||||
arch-arm/bionic/strcpy.S \
|
||||
arch-arm/bionic/strcmp.S \
|
||||
arch-arm/bionic/syscall.S \
|
||||
arch-arm/bionic/tgkill.S \
|
||||
arch-arm/bionic/tkill.S \
|
||||
bionic/memmove.c.arm \
|
||||
bionic/socketcalls.c \
|
||||
string/memmove.c.arm \
|
||||
string/bcopy.c \
|
||||
string/strncmp.c \
|
||||
unistd/socketcalls.c
|
||||
|
||||
# These files need to be arm so that gdbserver
|
||||
# can set breakpoints in them without messing
|
||||
@@ -479,8 +476,8 @@ libc_common_src_files += \
|
||||
arch-mips/string/mips_strlen.c
|
||||
|
||||
libc_common_src_files += \
|
||||
bionic/memcmp.c \
|
||||
string/bcopy.c \
|
||||
string/memcmp.c \
|
||||
string/strcmp.c \
|
||||
string/strcpy.c \
|
||||
string/strncmp.c
|
||||
|
61
libc/NOTICE
61
libc/NOTICE
@@ -438,40 +438,6 @@ SUCH DAMAGE.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
|
||||
Copyright (c) 1982, 1986, 1993
|
||||
The Regents of the University of California. All rights reserved.
|
||||
(c) UNIX System Laboratories, Inc.
|
||||
All or some portions of this file are derived from material licensed
|
||||
to the University of California by American Telephone and Telegraph
|
||||
Co. or Unix System Laboratories, Inc. and are reproduced herein with
|
||||
the permission of UNIX System Laboratories, Inc.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in the
|
||||
documentation and/or other materials provided with the distribution.
|
||||
3. Neither the name of the University nor the names of its contributors
|
||||
may be used to endorse or promote products derived from this software
|
||||
without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
||||
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
||||
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
SUCH DAMAGE.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
|
||||
Copyright (c) 1983, 1987, 1989
|
||||
The Regents of the University of California. All rights reserved.
|
||||
|
||||
@@ -3867,33 +3833,6 @@ SUCH DAMAGE.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
|
||||
Copyright (c) 2009 The NetBSD Foundation, Inc.
|
||||
|
||||
This code is derived from software contributed to The NetBSD Foundation
|
||||
by Roy Marples.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in the
|
||||
documentation and/or other materials provided with the distribution.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
|
||||
Copyright (c) 2010 MIPS Technologies, Inc.
|
||||
|
||||
All rights reserved.
|
||||
|
@@ -288,7 +288,7 @@ int delete_module(const char*, unsigned int) 129
|
||||
int klogctl:syslog(int, char *, int) 103
|
||||
int sysinfo(struct sysinfo *) 116
|
||||
int personality(unsigned long) 136
|
||||
long perf_event_open(struct perf_event_attr *attr_uptr, pid_t pid, int cpu, int group_fd, unsigned long flags) 364,336,333
|
||||
long perf_event_open(struct perf_event_attr *attr_uptr, pid_t pid, int cpu, int group_fd, unsigned long flags) 364
|
||||
|
||||
# futex
|
||||
int futex(void *, int, int, void *, void *, int) 240,240,238
|
||||
|
@@ -37,24 +37,23 @@
|
||||
// TODO: move __cxa_guard_acquire and __cxa_guard_release into libc.
|
||||
|
||||
#define GLOBAL_INIT_THREAD_LOCAL_BUFFER(name) \
|
||||
static pthread_once_t __bionic_tls_ ## name ## _once; \
|
||||
static pthread_key_t __bionic_tls_ ## name ## _key; \
|
||||
static void __bionic_tls_ ## name ## _key_destroy(void* buffer) { \
|
||||
static pthread_once_t name ## _once; \
|
||||
static pthread_key_t name ## _key; \
|
||||
static void name ## _key_destroy(void* buffer) { \
|
||||
free(buffer); \
|
||||
} \
|
||||
static void __bionic_tls_ ## name ## _key_init() { \
|
||||
pthread_key_create(&__bionic_tls_ ## name ## _key, __bionic_tls_ ## name ## _key_destroy); \
|
||||
static void name ## _key_init() { \
|
||||
pthread_key_create(&name ## _key, name ## _key_destroy); \
|
||||
}
|
||||
|
||||
// Leaves "name_tls_buffer" and "name_tls_buffer_size" defined and initialized.
|
||||
// Leaves "name_buffer" and "name_byte_count" defined and initialized.
|
||||
#define LOCAL_INIT_THREAD_LOCAL_BUFFER(type, name, byte_count) \
|
||||
pthread_once(&__bionic_tls_ ## name ## _once, __bionic_tls_ ## name ## _key_init); \
|
||||
type name ## _tls_buffer = \
|
||||
reinterpret_cast<type>(pthread_getspecific(__bionic_tls_ ## name ## _key)); \
|
||||
if (name ## _tls_buffer == NULL) { \
|
||||
name ## _tls_buffer = reinterpret_cast<type>(calloc(1, byte_count)); \
|
||||
pthread_setspecific(__bionic_tls_ ## name ## _key, name ## _tls_buffer); \
|
||||
pthread_once(&name ## _once, name ## _key_init); \
|
||||
type name ## _buffer = reinterpret_cast<type>(pthread_getspecific(name ## _key)); \
|
||||
if (name ## _buffer == NULL) { \
|
||||
name ## _buffer = reinterpret_cast<type>(malloc(byte_count)); \
|
||||
pthread_setspecific(name ## _key, name ## _buffer); \
|
||||
} \
|
||||
const size_t name ## _tls_buffer_size __attribute__((unused)) = byte_count
|
||||
const size_t name ## _buffer_size = byte_count
|
||||
|
||||
#endif // _BIONIC_THREAD_LOCAL_BUFFER_H_included
|
@@ -1,53 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2012 The Android Open Source Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
||||
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
|
||||
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#undef _FORTIFY_SOURCE
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include <private/logd.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
/*
|
||||
* Runtime implementation of __umask_chk.
|
||||
*
|
||||
* Validate that umask is called with sane mode.
|
||||
*
|
||||
* This umask check is called if _FORTIFY_SOURCE is defined and
|
||||
* greater than 0.
|
||||
*/
|
||||
mode_t __umask_chk(mode_t mode)
|
||||
{
|
||||
if ((mode & 0777) != mode) {
|
||||
__libc_android_log_print(ANDROID_LOG_FATAL, "libc",
|
||||
"*** FORTIFY_SOURCE: umask called with invalid mask ***\n");
|
||||
abort();
|
||||
}
|
||||
|
||||
return umask(mode);
|
||||
}
|
@@ -1,5 +1,3 @@
|
||||
/* $NetBSD: drand48.c,v 1.6 2005/06/12 05:21:28 lukem Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1993 Martin Birgmeier
|
||||
* All rights reserved.
|
||||
@@ -14,16 +12,10 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
#if defined(LIBC_SCCS) && !defined(lint)
|
||||
__RCSID("$NetBSD: drand48.c,v 1.6 2005/06/12 05:21:28 lukem Exp $");
|
||||
#endif /* LIBC_SCCS and not lint */
|
||||
|
||||
#include "namespace.h"
|
||||
#include "rand48.h"
|
||||
|
||||
#ifdef __weak_alias
|
||||
__weak_alias(drand48,_drand48)
|
||||
#endif
|
||||
extern unsigned short __rand48_seed[3];
|
||||
|
||||
double
|
||||
drand48(void)
|
@@ -1,5 +1,3 @@
|
||||
/* $NetBSD: erand48.c,v 1.9 2006/03/22 20:52:16 drochner Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1993 Martin Birgmeier
|
||||
* All rights reserved.
|
||||
@@ -14,27 +12,12 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
#if defined(LIBC_SCCS) && !defined(lint)
|
||||
__RCSID("$NetBSD: erand48.c,v 1.9 2006/03/22 20:52:16 drochner Exp $");
|
||||
#endif /* LIBC_SCCS and not lint */
|
||||
|
||||
#include "namespace.h"
|
||||
|
||||
#include <assert.h>
|
||||
#include <math.h>
|
||||
|
||||
#include "rand48.h"
|
||||
|
||||
#ifdef __weak_alias
|
||||
__weak_alias(erand48,_erand48)
|
||||
#endif
|
||||
|
||||
double
|
||||
erand48(unsigned short xseed[3])
|
||||
{
|
||||
|
||||
_DIAGASSERT(xseed != NULL);
|
||||
|
||||
__dorand48(xseed);
|
||||
return ldexp((double) xseed[0], -48) +
|
||||
ldexp((double) xseed[1], -32) +
|
@@ -40,23 +40,22 @@ char* getcwd(char* buf, size_t size) {
|
||||
|
||||
// Allocate a buffer if necessary.
|
||||
char* allocated_buf = NULL;
|
||||
size_t allocated_size = size;
|
||||
if (buf == NULL) {
|
||||
size_t allocated_size = size;
|
||||
if (size == 0) {
|
||||
// The Linux kernel won't return more than a page, so translate size 0 to 4KiB.
|
||||
// TODO: if we need to support paths longer than that, we'll have to walk the tree ourselves.
|
||||
allocated_size = getpagesize();
|
||||
size = getpagesize();
|
||||
}
|
||||
buf = allocated_buf = static_cast<char*>(malloc(allocated_size));
|
||||
if (buf == NULL) {
|
||||
// malloc should set errno, but valgrind's malloc wrapper doesn't.
|
||||
errno = ENOMEM;
|
||||
// malloc set errno.
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
|
||||
// Ask the kernel to fill our buffer.
|
||||
int rc = __getcwd(buf, allocated_size);
|
||||
int rc = __getcwd(buf, size);
|
||||
if (rc == -1) {
|
||||
free(allocated_buf);
|
||||
// __getcwd set errno.
|
||||
|
@@ -26,30 +26,31 @@
|
||||
* SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#include <arpa/inet.h>
|
||||
#include <dlfcn.h>
|
||||
#include <errno.h>
|
||||
#include <errno.h>
|
||||
#include <fcntl.h>
|
||||
#include <pthread.h>
|
||||
#include <stdarg.h>
|
||||
#include <stdbool.h>
|
||||
#include <stddef.h>
|
||||
#include <time.h>
|
||||
#include <stdio.h>
|
||||
#include <arpa/inet.h>
|
||||
#include <sys/socket.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <sys/socket.h>
|
||||
#include <sys/system_properties.h>
|
||||
#include <sys/types.h>
|
||||
#include <time.h>
|
||||
#include <unistd.h>
|
||||
#include <errno.h>
|
||||
#include <stddef.h>
|
||||
#include <stdarg.h>
|
||||
#include <fcntl.h>
|
||||
#include <unwind.h>
|
||||
#include <dlfcn.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sys/system_properties.h>
|
||||
|
||||
#include "dlmalloc.h"
|
||||
#include "logd.h"
|
||||
#include "malloc_debug_check_mapinfo.h"
|
||||
|
||||
#include "malloc_debug_common.h"
|
||||
#include "ScopedPthreadMutexLocker.h"
|
||||
#include "malloc_debug_check_mapinfo.h"
|
||||
|
||||
static mapinfo *milist;
|
||||
|
||||
@@ -406,16 +407,14 @@ extern "C" void chk_free(void *ptr) {
|
||||
extern "C" void *chk_realloc(void *ptr, size_t size) {
|
||||
// log_message("%s: %s\n", __FILE__, __FUNCTION__);
|
||||
|
||||
if (!ptr) {
|
||||
return chk_malloc(size);
|
||||
}
|
||||
|
||||
#ifdef REALLOC_ZERO_BYTES_FREE
|
||||
if (!size) {
|
||||
chk_free(ptr);
|
||||
return NULL;
|
||||
}
|
||||
#endif
|
||||
|
||||
if (!ptr) {
|
||||
return chk_malloc(size);
|
||||
}
|
||||
|
||||
hdr_t* hdr = meta(ptr);
|
||||
|
||||
|
@@ -40,14 +40,11 @@
|
||||
* or static (libc.a) linking.
|
||||
*/
|
||||
|
||||
#include "malloc_debug_common.h"
|
||||
|
||||
#include <pthread.h>
|
||||
#include <stdlib.h>
|
||||
#include <pthread.h>
|
||||
#include <unistd.h>
|
||||
|
||||
#include "dlmalloc.h"
|
||||
#include "ScopedPthreadMutexLocker.h"
|
||||
#include "malloc_debug_common.h"
|
||||
|
||||
/*
|
||||
* In a VM process, this is set to 1 after fork()ing out of zygote.
|
||||
@@ -379,7 +376,7 @@ static void malloc_init_impl() {
|
||||
}
|
||||
}
|
||||
|
||||
// Choose the appropriate .so for the requested debug level.
|
||||
// Lets see which .so must be loaded for the requested debug level
|
||||
switch (debug_level) {
|
||||
case 1:
|
||||
case 5:
|
||||
|
@@ -33,8 +33,6 @@
|
||||
#ifndef MALLOC_DEBUG_COMMON_H
|
||||
#define MALLOC_DEBUG_COMMON_H
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
#define HASHTABLE_SIZE 1543
|
||||
#define BACKTRACE_SIZE 32
|
||||
/* flag definitions, currently sharing storage with "size" */
|
||||
@@ -103,4 +101,18 @@ typedef void (*MallocDebugFini)();
|
||||
#define info_log(format, ...) \
|
||||
__libc_android_log_print(ANDROID_LOG_INFO, "malloc_leak_check", (format), ##__VA_ARGS__ )
|
||||
|
||||
class ScopedPthreadMutexLocker {
|
||||
public:
|
||||
explicit ScopedPthreadMutexLocker(pthread_mutex_t* mu) : mu_(mu) {
|
||||
pthread_mutex_lock(mu_);
|
||||
}
|
||||
|
||||
~ScopedPthreadMutexLocker() {
|
||||
pthread_mutex_unlock(mu_);
|
||||
}
|
||||
|
||||
private:
|
||||
pthread_mutex_t* mu_;
|
||||
};
|
||||
|
||||
#endif // MALLOC_DEBUG_COMMON_H
|
||||
|
@@ -26,7 +26,6 @@
|
||||
* SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#include <arpa/inet.h>
|
||||
#include <dlfcn.h>
|
||||
#include <errno.h>
|
||||
#include <fcntl.h>
|
||||
@@ -37,18 +36,19 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <unistd.h>
|
||||
#include <unwind.h>
|
||||
|
||||
#include <arpa/inet.h>
|
||||
#include <sys/select.h>
|
||||
#include <sys/socket.h>
|
||||
#include <sys/system_properties.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/un.h>
|
||||
#include <unistd.h>
|
||||
#include <unwind.h>
|
||||
|
||||
#include "dlmalloc.h"
|
||||
#include "logd.h"
|
||||
#include "malloc_debug_common.h"
|
||||
#include "ScopedPthreadMutexLocker.h"
|
||||
|
||||
// This file should be included into the build only when
|
||||
// MALLOC_LEAK_CHECK, or MALLOC_QEMU_INSTRUMENT, or both
|
||||
@@ -366,7 +366,7 @@ extern "C" void* leak_memalign(size_t alignment, size_t bytes) {
|
||||
alignment = 1L << (31 - __builtin_clz(alignment));
|
||||
}
|
||||
|
||||
// here, alignment is at least MALLOC_ALIGNMENT<<1 bytes
|
||||
// here, aligment is at least MALLOC_ALIGNMENT<<1 bytes
|
||||
// we will align by at least MALLOC_ALIGNMENT bytes
|
||||
// and at most alignment-MALLOC_ALIGNMENT bytes
|
||||
size_t size = (alignment-MALLOC_ALIGNMENT) + bytes;
|
||||
|
@@ -163,20 +163,20 @@ __get_stack_base(int *p_stack_size)
|
||||
}
|
||||
|
||||
|
||||
void __init_tls(void** tls, void* thread) {
|
||||
((pthread_internal_t*) thread)->tls = tls;
|
||||
void __init_tls(void** tls, void* thread)
|
||||
{
|
||||
int nn;
|
||||
|
||||
// Zero-initialize all the slots.
|
||||
for (size_t i = 0; i < BIONIC_TLS_SLOTS; ++i) {
|
||||
tls[i] = NULL;
|
||||
}
|
||||
((pthread_internal_t*)thread)->tls = tls;
|
||||
|
||||
// Slot 0 must point to the tls area, this is required by the implementation
|
||||
// of the x86 Linux kernel thread-local-storage.
|
||||
tls[TLS_SLOT_SELF] = (void*) tls;
|
||||
tls[TLS_SLOT_THREAD_ID] = thread;
|
||||
// slot 0 must point to the tls area, this is required by the implementation
|
||||
// of the x86 Linux kernel thread-local-storage
|
||||
tls[TLS_SLOT_SELF] = (void*)tls;
|
||||
tls[TLS_SLOT_THREAD_ID] = thread;
|
||||
for (nn = TLS_SLOT_ERRNO; nn < BIONIC_TLS_SLOTS; nn++)
|
||||
tls[nn] = 0;
|
||||
|
||||
__set_tls((void*) tls);
|
||||
__set_tls( (void*)tls );
|
||||
}
|
||||
|
||||
|
||||
|
@@ -45,13 +45,6 @@ typedef struct pthread_internal_t
|
||||
int internal_flags;
|
||||
__pthread_cleanup_t* cleanup_stack;
|
||||
void** tls; /* thread-local storage area */
|
||||
|
||||
/*
|
||||
* The dynamic linker implements dlerror(3), which makes it hard for us to implement this
|
||||
* per-thread buffer by simply using malloc(3) and free(3).
|
||||
*/
|
||||
#define __BIONIC_DLERROR_BUFFER_SIZE 512
|
||||
char dlerror_buffer[__BIONIC_DLERROR_BUFFER_SIZE];
|
||||
} pthread_internal_t;
|
||||
|
||||
int _init_thread(pthread_internal_t* thread, pid_t kernel_id, pthread_attr_t* attr,
|
||||
|
@@ -41,6 +41,6 @@ char* strerror(int error_number) {
|
||||
}
|
||||
|
||||
LOCAL_INIT_THREAD_LOCAL_BUFFER(char*, strerror, NL_TEXTMAX);
|
||||
strerror_r(error_number, strerror_tls_buffer, strerror_tls_buffer_size);
|
||||
return strerror_tls_buffer;
|
||||
strerror_r(error_number, strerror_buffer, strerror_buffer_size);
|
||||
return strerror_buffer;
|
||||
}
|
||||
|
@@ -42,5 +42,5 @@ char* strsignal(int signal_number) {
|
||||
}
|
||||
|
||||
LOCAL_INIT_THREAD_LOCAL_BUFFER(char*, strsignal, NL_TEXTMAX);
|
||||
return const_cast<char*>(__strsignal(signal_number, strsignal_tls_buffer, strsignal_tls_buffer_size));
|
||||
return const_cast<char*>(__strsignal(signal_number, strsignal_buffer, strsignal_buffer_size));
|
||||
}
|
||||
|
277
libc/docs/CHANGES.TXT
Normal file
277
libc/docs/CHANGES.TXT
Normal file
@@ -0,0 +1,277 @@
|
||||
Bionic ChangeLog:
|
||||
-----------------
|
||||
|
||||
Differences between current and Android 2.3:
|
||||
|
||||
- <android/api-level.h>: Added new header to define __ANDROID_API__ to
|
||||
a constant integer corresponding to the native API level. This header
|
||||
also exists in the NDK's platform headers.
|
||||
|
||||
- <sys/cdefs.h>: Include <android/api-level.h>
|
||||
|
||||
- <time.h>: Add timegm(), timelocal(), time2posix() and posix2time()
|
||||
|
||||
- <sched.h>: Add sched_getcpu(), sched_getaffinity(), sched_setaffinity(),
|
||||
cpu_set_t and related macros (e.g. CPU_SETSIZE, CPU_ZERO, CPU_SET, ...)
|
||||
|
||||
- <unistd.h>: Add ftruncate64().
|
||||
|
||||
- <signal.h>: Changed the definition of SIGRTMAX to 64. However, note that
|
||||
sigset_t is only 32-bit and cannot deal with real-time signals.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Differences between Android 2.3 and Android 2.2:
|
||||
|
||||
- <pthread.h>: Add reader/writer locks implementation. Add sanity
|
||||
checking to pthread_mutex_destroy() (e.g. a locked mutex will return
|
||||
EBUSY).
|
||||
|
||||
- <semaphore.h>: Use private futexes for semaphore implementation,
|
||||
unless your set 'pshared' to non-0 when calling sem_init().
|
||||
|
||||
Also fixed a bug in sem_post() to make it wake up all waiting
|
||||
threads, instead of one. As a consequence, the maximum semaphore
|
||||
value is now reduced to 0x3fffffff.
|
||||
|
||||
- <math.h>: Added sincos(), sincosf() and sincosl() (GLibc compatibility).
|
||||
|
||||
- <sys/sysinfo.h>: Added missing sysinfo() system call implementation
|
||||
(the function was already declared in the header though).
|
||||
|
||||
- sysconf() didn't work for some arguments due to a small bug in the
|
||||
/proc line parser.
|
||||
|
||||
- <termio.h>: added missing header (just includes <termios.h>)
|
||||
|
||||
- <unistd.h>: add missing declaration for truncate(). The implementation
|
||||
was already here since Android 1.5.
|
||||
|
||||
modify implementation of alarm() to return 0 in case of error (i.e.
|
||||
if a value larger than 0x7fffffff seconds is passed to it). This
|
||||
makes the implementation compliant with the GLibc behaviour.
|
||||
|
||||
- <wchar.h>: small fixes to really support wchar_t in Bionic (not there yet).
|
||||
|
||||
the size of wchar_t is still 32-bit (decided by the compiler)
|
||||
|
||||
WCHAR_MIN: changed from 0 to INT_MIN
|
||||
WCHAR_MAX: changed from 255 to INT_MAX
|
||||
|
||||
wcpcpy(), wcpncpy(), wcscat(), wcschr(), wcscmp(),
|
||||
wcscpy(), wcscspn(), wcsdup(), wcslcat(), wcslcpy(),
|
||||
wcslen(), wcsncat(), wcsncmp(), wcsncpy(), wcsnlen(),
|
||||
wcspbrk(), wcsrchr(), wcsrchr(), wcsspn(), wcsstr(),
|
||||
wcstok(), wcswidth(), wmemchr(), wmemcmp(), wmemcpy(),
|
||||
wmemmove(), wmemset(): Added proper implementations.
|
||||
|
||||
wcscasecmp(), wcsncasecmp(): Added implementation limited
|
||||
to ASCII codes for lower/upper.
|
||||
|
||||
wcscoll(): added dummy implementation that calls wcscmp()
|
||||
wcsxfrm(): added dummy implementation that calls wcsncpy()
|
||||
|
||||
NOTE: Technically, this breaks the ABI, but we never claimed to support
|
||||
wchar_t anyway. The wchar_t support is still *NOT* official at this
|
||||
point. We need better multi-byte support code, and wprintf/wscanf
|
||||
stuff too.
|
||||
|
||||
- <inttypes.h>: add missing declarations for strntoimax abd strntoumax.
|
||||
|
||||
- <stdlib.h>: add missing declarations for drand48() and erand48().
|
||||
|
||||
- clearerr(): fix broken implementation.
|
||||
|
||||
- Feature test macros like _POSIX_C_SOURCE / _XOPEN_SOURCE / _C99_SOURCE
|
||||
are now handled correctly by our C library headers (see <sys/cdefs.h>)
|
||||
|
||||
- <sys/select.h>: add missing declaration for pselect()
|
||||
|
||||
- <sys/vfs.h>: fixed implementation of fstatfs() (also fixes fpathconf()
|
||||
which uses it).
|
||||
|
||||
- Added an implementation of pthread_atfork()
|
||||
|
||||
- <dlfcn.h>: fixed dlopen() implementation to support dlopen(NULL, ...).
|
||||
This allows one to look at the dynamic symbols exported by an executable.
|
||||
|
||||
- <private/bionic_tls.h>: use kernel helper functions for static versions
|
||||
of the C library. This is necessary because we don't know where the corresponding
|
||||
machine code is going to run, and the optimization for __get_tls() might
|
||||
not match the features of the target device where we run a static executable
|
||||
linked to the C library. This fixes one of the bug that explains why gdbserver
|
||||
didn't work well with threads.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Differences between Android 2.2. and Android 2.1:
|
||||
|
||||
- Support FP register save/load in setjmp()/longjmp() on ARMv7 builds.
|
||||
|
||||
- Add support for SH-4 CPU architecture !
|
||||
|
||||
- __atomic_swap(): use LDREX/STREX CPU instructions on ARMv6 and higher.
|
||||
|
||||
- <arpa/telnet.h>: New header (declarations only, no implementation).
|
||||
|
||||
- <err.h>: New header + implementation. GLibc compatibility.
|
||||
|
||||
- <warn.h>: New header + implementation. GLibc compatibility.
|
||||
|
||||
- <fts.h>: New header + implementation.
|
||||
|
||||
- <mntent.h>: Add missing <stdio.h> include.
|
||||
|
||||
- <regex.h>: New header + implementation.
|
||||
|
||||
- <signal.h>: Added killpg()
|
||||
|
||||
- <stdint.h>: Allow 64-bit type declarations on C99 builds.
|
||||
|
||||
- <stdio.h>: Add fdprintf() and vfdprintf(). Note that GLibc provides
|
||||
the confusing 'dprintf' and 'vdprintf()' functions instead.
|
||||
|
||||
- <stdlib.h>: Fix ptsname_r(): the return type is int instead of char*.
|
||||
The mistake comes from a GLibc man page bug (the man page listed a return
|
||||
type of char*, while the implementation used int. Fixed in late 2009 only).
|
||||
The Bionic implementation was incorrect. Technically, this is an ABI
|
||||
breakage, but code that used this function probably never worked or
|
||||
compiled properly anyway.
|
||||
|
||||
- <strings.h>: Add missing <sys/types.h> include.
|
||||
|
||||
- <sys/queue.h>: Added new header (no implementation - macro templates).
|
||||
|
||||
- <sys/resource.h>: Add rlim_t proper definition.
|
||||
|
||||
- <time64.h>: Add missing C++ header inclusion guards.
|
||||
|
||||
- <unistd.h>: Add getusershell(), setusershell() and endusershell(), though
|
||||
implementation are bogus. GLibc compatibility.
|
||||
|
||||
- <wchar.h>: Add mbstowcs() and wcstombs()
|
||||
|
||||
- add clone() implementation for ARM (x86 and SH-4 not working yet).
|
||||
|
||||
- <sys/epoll.h>: <sys/system_properties.h>: Add missing C++ inclusion guards
|
||||
|
||||
- fix getpwnam() and getpwgrp() to accept "app_0" as a valid user name.
|
||||
|
||||
- fix sem_trywait() to return -1 and set errno to EAGAIN, instead of
|
||||
returning EAGAIN directly.
|
||||
|
||||
- fix sem_post() to wake up multiple threads when called rapidly in
|
||||
succession.
|
||||
|
||||
- DNS: partial implementation of RFC3484 (rule 1, 2, 5, 6, 8, 10 and
|
||||
modified rule 9), for better address selection/sorting.
|
||||
In the process, removed code that was previously used for "sortlist"
|
||||
in /etc/resolv.conf. (resolv.conf is already ignored, so the latter
|
||||
is a no-op for actual functionality.)
|
||||
|
||||
- fix pthread_sigmask() to properly return an error code without touching
|
||||
errno. Previous implementation returned -1 on error, setting errno, which
|
||||
is not Posix compliant.
|
||||
|
||||
- add sigaltstack() implementation for ARM.
|
||||
|
||||
- <time.h>: Properly implement the 'timezone' and 'daylight' global variables
|
||||
(they were not defined previously, though declared in the header).
|
||||
|
||||
- <time.h>: Fix timezone management implementation to properly update
|
||||
'tm_gmtoff' field in 'struct tm' structure.
|
||||
|
||||
- DNS: get rid of spurious random DNS queries when trying to resolve
|
||||
an unknown domain name. Due to an initialization bug, a random DNS search
|
||||
list was generated for each thread if net.dns.search is not defined.
|
||||
|
||||
- <pthread.h>: Add pthread_condattr_init/destroy/setpshared/getpshared functions
|
||||
to enable proper shared conditional variable initialization.
|
||||
|
||||
Modify the pthread_mutex_t and pthread_cond_t implementation to use private
|
||||
futexes for performance reasons. Mutexes and Condvars are no longer shareable
|
||||
between processes by default anymore, unless you use PTHREAD_PROCESS_SHARED
|
||||
with pthread_mutexattr_setpshared() and/or pthread_condattr_setpshared().
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Differences between Android 2.1 and 2.0.1:
|
||||
|
||||
- zoneinfo: updated data tables to version 2009s
|
||||
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Differences between Android 2.0.1 and 2.0:
|
||||
|
||||
- abort(): ARM-specific hack to preserve the 'lr' register when abort()
|
||||
is called (GCC does not preserve it by default since it thinks that
|
||||
abort() never returns). This improves stack traces considerably.
|
||||
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Differences between Android 2.0 and 1.6:
|
||||
|
||||
- memcmp(), memcpy(): ARMv7 optimized versions.
|
||||
|
||||
- pthread_mutexattr_setpshared(): implementation will not return ENOTSUP
|
||||
if PTHREAD_PROCESS_SHARED is used, because our Mutex implementation can
|
||||
work across multiple processes.
|
||||
|
||||
*HOWEVER* it does not use "robust futexes" which means that held mutexes
|
||||
*are not* automatically released by the kernel when the owner process
|
||||
crashes or exits. This is only done to simplify communication between
|
||||
two always-live system processes, DO NOT USE THIS IN APPLICATIONS !
|
||||
|
||||
- pthread_mutex_lock_timeout_np(): New Android-specific function to
|
||||
perform a timed lock (). In case of timeout, it returns EBUSY.
|
||||
|
||||
- pthread_cond_timedwait_monotonic_np(): Same as pthread_cond_timedwait()
|
||||
but uses the monotonic clock(). Android-specific.
|
||||
|
||||
- pthread_cond_timedwait_relative_np(): Same as pthread_cond_timedwait()
|
||||
but uses a relative timeout instead. Android-specific.
|
||||
|
||||
- <netinet/in.h>: Now includes <netinet/in6.h>.
|
||||
|
||||
- <netinet/in6.h>: Added IPV6_JOIN_GROUP, IPV6_LEAVE_GROUP, IN6ADDR_ANY_INIT
|
||||
and ipv6mr_interface definitions.
|
||||
|
||||
- <time.h>:
|
||||
* Add missing tzset() declaration.
|
||||
* Add Android-specific strftime_tz().
|
||||
|
||||
- getaddrinfo():
|
||||
Only perform IPv6 lookup for AF_UNSPEC if we have IPv6 connectivity.
|
||||
This saves one DNS query per lookup on non-IPv6 systems.
|
||||
|
||||
- mktime(): Fix an infinite loop problen that appeared when switching to
|
||||
GCC 4.4.0.
|
||||
|
||||
- strftime(): fix incorrect handling of dates > 2038 due to 64-bit issue
|
||||
in original code.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Differences between Android 1.6 and 1.5:
|
||||
|
||||
- C runtime: Fix runtime initialization to be called before any static C++
|
||||
constructors. This allows these to use pthread functions properly.
|
||||
|
||||
- __aeabi_atexit(): Fix implementation to properly call C++ static destructors
|
||||
when the program exits (or when a shared library is unloaded).
|
||||
|
||||
- <sys/stat.h>: added GLibc compatibility macros definitions:
|
||||
|
||||
#define st_atimensec st_atime_nsec
|
||||
#define st_mtimensec st_mtime_nsec
|
||||
#define st_ctimensec st_ctime_nsec
|
||||
|
||||
- getaddrinfo(): implementation will now allow numeric ports if ai_socktype is
|
||||
set to ANY. This is to match the GLibc behaviour.
|
||||
|
||||
- getservent(): and getservent_r() incorrectly returned the port in host-endian
|
||||
order in the s_port field. It now returns it in big-endian order.
|
||||
|
||||
- DNS: Allow underscore in the middle of DNS labels. While not really
|
||||
standard, this extension is needed for some VPN configurations and is
|
||||
supported by other operating systems.
|
||||
|
||||
- DNS: Support for DNS domain search lists through the new net.dns.search
|
||||
system property. The corresponding value must be a space-separated list of
|
||||
domain suffixes.
|
20
libc/docs/ISSUES.TXT
Normal file
20
libc/docs/ISSUES.TXT
Normal file
@@ -0,0 +1,20 @@
|
||||
Bionic C Library Issues:
|
||||
========================
|
||||
|
||||
This document lists important known issues of various releases
|
||||
of the Bionic C library. Note that these differ from specific
|
||||
implementation choices that are documented in the OVERVIEW.TXT
|
||||
document.
|
||||
|
||||
Currently known issues:
|
||||
-----------------------
|
||||
|
||||
- The C library initialization will improperly run static C++
|
||||
constructors located in shared libraries twice.
|
||||
|
||||
Android-1.5 issues:
|
||||
-------------------
|
||||
|
||||
- getservbyname() returned the port number in the s_port field of
|
||||
the 'struct servent' structure in host-byte-order, instead of
|
||||
network-byte-order.
|
@@ -89,22 +89,6 @@
|
||||
#include <sys/syslimits.h>
|
||||
#endif
|
||||
|
||||
/* GLibc compatibility definitions.
|
||||
Note that these are defined by GCC's <limits.h>
|
||||
only when __GNU_LIBRARY__ is defined, i.e. when
|
||||
targetting GLibc. */
|
||||
#ifndef LONG_LONG_MIN
|
||||
#define LONG_LONG_MIN LLONG_MIN
|
||||
#endif
|
||||
|
||||
#ifndef LONG_LONG_MAX
|
||||
#define LONG_LONG_MAX LLONG_MAX
|
||||
#endif
|
||||
|
||||
#ifndef ULONG_LONG_MAX
|
||||
#define ULONG_LONG_MAX ULLONG_MAX
|
||||
#endif
|
||||
|
||||
#ifndef PAGESIZE
|
||||
#include <asm/page.h>
|
||||
#define PAGESIZE PAGE_SIZE
|
||||
|
@@ -310,4 +310,9 @@ extern void __pthread_cleanup_pop(__pthread_cleanup_t* c,
|
||||
} /* extern "C" */
|
||||
#endif
|
||||
|
||||
/************ TO FIX ************/
|
||||
|
||||
#define LONG_LONG_MAX __LONG_LONG_MAX__
|
||||
#define LONG_LONG_MIN (-__LONG_LONG_MAX__ - 1)
|
||||
|
||||
#endif /* _PTHREAD_H_ */
|
||||
|
@@ -41,21 +41,23 @@
|
||||
#include <sys/cdefs.h>
|
||||
#include <sys/_types.h>
|
||||
|
||||
/* va_list and size_t must be defined by stdio.h according to Posix */
|
||||
#define __need___va_list
|
||||
#include <stdarg.h>
|
||||
|
||||
/* note that this forces stddef.h to *only* define size_t */
|
||||
#define __need_size_t
|
||||
#include <stddef.h>
|
||||
|
||||
#include <stddef.h>
|
||||
|
||||
#if __BSD_VISIBLE || __POSIX_VISIBLE || __XPG_VISIBLE
|
||||
#include <sys/types.h> /* XXX should be removed */
|
||||
#endif
|
||||
|
||||
#ifndef _SIZE_T_DEFINED_
|
||||
#define _SIZE_T_DEFINED_
|
||||
typedef unsigned int size_t;
|
||||
#endif
|
||||
|
||||
#ifndef _SSIZE_T_DEFINED_
|
||||
#define _SSIZE_T_DEFINED_
|
||||
typedef long int ssize_t;
|
||||
#ifndef _SIZE_T_DEFINED_
|
||||
#define _SIZE_T_DEFINED_
|
||||
typedef unsigned long size_t;
|
||||
#endif
|
||||
|
||||
#ifndef _OFF_T_DEFINED_
|
||||
@@ -63,8 +65,13 @@ typedef long int ssize_t;
|
||||
typedef long off_t;
|
||||
#endif
|
||||
|
||||
#define __need_NULL
|
||||
#include <stddef.h>
|
||||
#ifndef NULL
|
||||
#ifdef __GNUG__
|
||||
#define NULL __null
|
||||
#else
|
||||
#define NULL 0L
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#define _FSTDIO /* Define for new stdio with functions. */
|
||||
|
||||
@@ -242,9 +249,6 @@ off_t ftello(FILE *);
|
||||
size_t fwrite(const void *, size_t, size_t, FILE *);
|
||||
int getc(FILE *);
|
||||
int getchar(void);
|
||||
ssize_t getdelim(char ** __restrict, size_t * __restrict, int,
|
||||
FILE * __restrict);
|
||||
ssize_t getline(char ** __restrict, size_t * __restrict, FILE * __restrict);
|
||||
char *gets(char *);
|
||||
#if __BSD_VISIBLE && !defined(__SYS_ERRLIST)
|
||||
#define __SYS_ERRLIST
|
||||
|
@@ -30,6 +30,12 @@
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
|
||||
/* wchar_t is required in stdlib.h according to POSIX.
|
||||
* note that defining __need_wchar_t prevents stddef.h
|
||||
* to define all other symbols it does normally */
|
||||
#define __need_wchar_t
|
||||
#include <stddef.h>
|
||||
|
||||
#include <stddef.h>
|
||||
#include <string.h>
|
||||
#include <alloca.h>
|
||||
@@ -52,8 +58,8 @@ extern int unsetenv(const char *);
|
||||
extern int clearenv(void);
|
||||
|
||||
extern char *mkdtemp(char *);
|
||||
extern char *mktemp(char *);
|
||||
extern int mkstemp(char *);
|
||||
extern char *mktemp (char *);
|
||||
extern int mkstemp (char *);
|
||||
|
||||
extern long strtol(const char *, char **, int);
|
||||
extern long long strtoll(const char *, char **, int);
|
||||
|
@@ -84,6 +84,7 @@
|
||||
#define __NR_readv (__NR_SYSCALL_BASE + 145)
|
||||
#define __NR_writev (__NR_SYSCALL_BASE + 146)
|
||||
#define __NR_getsid (__NR_SYSCALL_BASE + 147)
|
||||
#define __NR_perf_event_open (__NR_SYSCALL_BASE + 364)
|
||||
|
||||
#ifdef __arm__
|
||||
#define __NR_exit_group (__NR_SYSCALL_BASE + 248)
|
||||
@@ -201,7 +202,6 @@
|
||||
#define __NR_getcpu (__NR_SYSCALL_BASE + 345)
|
||||
#define __NR_ioprio_set (__NR_SYSCALL_BASE + 314)
|
||||
#define __NR_ioprio_get (__NR_SYSCALL_BASE + 315)
|
||||
#define __NR_perf_event_open (__NR_SYSCALL_BASE + 364)
|
||||
#define __NR_futex (__NR_SYSCALL_BASE + 240)
|
||||
#define __NR_epoll_create (__NR_SYSCALL_BASE + 250)
|
||||
#define __NR_epoll_ctl (__NR_SYSCALL_BASE + 251)
|
||||
@@ -330,7 +330,6 @@
|
||||
#define __NR_utimensat (__NR_SYSCALL_BASE + 320)
|
||||
#define __NR_eventfd2 (__NR_SYSCALL_BASE + 328)
|
||||
#define __NR_pipe2 (__NR_SYSCALL_BASE + 331)
|
||||
#define __NR_perf_event_open (__NR_SYSCALL_BASE + 336)
|
||||
#endif
|
||||
|
||||
#ifdef __mips__
|
||||
@@ -463,7 +462,6 @@
|
||||
#define __NR_utimensat (__NR_SYSCALL_BASE + 316)
|
||||
#define __NR_eventfd2 (__NR_SYSCALL_BASE + 325)
|
||||
#define __NR_pipe2 (__NR_SYSCALL_BASE + 328)
|
||||
#define __NR_perf_event_open (__NR_SYSCALL_BASE + 333)
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
@@ -37,6 +37,4 @@
|
||||
#define ALIGNBYTES 3
|
||||
#define ALIGN(p) (((unsigned int)(p) + ALIGNBYTES) &~ ALIGNBYTES)
|
||||
|
||||
#define powerof2(x) ((((x)-1)&(x))==0)
|
||||
|
||||
#endif /* _SYS_PARAM_H_ */
|
||||
|
@@ -122,27 +122,6 @@ extern int lstat(const char *, struct stat *);
|
||||
extern int mknod(const char *, mode_t, dev_t);
|
||||
extern mode_t umask(mode_t);
|
||||
|
||||
#if defined(__BIONIC_FORTIFY_INLINE)
|
||||
|
||||
extern mode_t __umask_chk(mode_t);
|
||||
extern mode_t __umask_real(mode_t)
|
||||
__asm__(__USER_LABEL_PREFIX__ "umask");
|
||||
extern void __umask_error()
|
||||
__attribute__((__error__("umask called with invalid mode")));
|
||||
|
||||
__BIONIC_FORTIFY_INLINE
|
||||
mode_t umask(mode_t mode) {
|
||||
if (__builtin_constant_p(mode)) {
|
||||
if ((mode & 0777) != mode) {
|
||||
__umask_error();
|
||||
}
|
||||
return __umask_real(mode);
|
||||
}
|
||||
return __umask_chk(mode);
|
||||
}
|
||||
#endif /* defined(__BIONIC_FORTIFY_INLINE) */
|
||||
|
||||
|
||||
#define stat64 stat
|
||||
#define fstat64 fstat
|
||||
#define lstat64 lstat
|
||||
|
@@ -28,6 +28,8 @@
|
||||
#ifndef _SYS_TYPES_H_
|
||||
#define _SYS_TYPES_H_
|
||||
|
||||
#define __need_size_t
|
||||
#define __need_ptrdiff_t
|
||||
#include <stddef.h>
|
||||
#include <stdint.h>
|
||||
#include <sys/cdefs.h>
|
||||
@@ -43,7 +45,7 @@ typedef __u32 __kernel_dev_t;
|
||||
* these are defined as 16-bit for legacy reason, but
|
||||
* the kernel uses 32-bits instead.
|
||||
*
|
||||
* 32-bit values are required for Android, so use
|
||||
* 32-bit valuea are required for Android, so use
|
||||
* __kernel_uid32_t and __kernel_gid32_t
|
||||
*/
|
||||
|
||||
@@ -88,6 +90,7 @@ typedef .... pthread_t;
|
||||
typedef unsigned int size_t;
|
||||
#endif
|
||||
|
||||
/* size_t is defined by the GCC-specific <stddef.h> */
|
||||
#ifndef _SSIZE_T_DEFINED_
|
||||
#define _SSIZE_T_DEFINED_
|
||||
typedef long int ssize_t;
|
||||
|
@@ -31,11 +31,16 @@
|
||||
#include <sys/cdefs.h>
|
||||
#include <stdio.h>
|
||||
|
||||
#include <stdarg.h>
|
||||
/* wchar_t is required in stdlib.h according to POSIX */
|
||||
#define __need___wchar_t
|
||||
#include <stddef.h>
|
||||
|
||||
#include <stdarg.h>
|
||||
#include <time.h>
|
||||
#include <malloc.h>
|
||||
|
||||
#include <stddef.h>
|
||||
|
||||
/* IMPORTANT: Any code that relies on wide character support is essentially
|
||||
* non-portable and/or broken. the only reason this header exist
|
||||
* is because I'm really a nice guy. However, I'm not nice enough
|
||||
|
@@ -27,7 +27,7 @@ struct ucontext {
|
||||
struct sigcontext uc_mcontext;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
sigset_t uc_sigmask;
|
||||
int __linux_unused[32 - (sizeof (sigset_t) / sizeof (int))];
|
||||
int __unused[32 - (sizeof (sigset_t) / sizeof (int))];
|
||||
unsigned long uc_regspace[128] __attribute__((__aligned__(8)));
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
|
24
libc/kernel/arch-mips/asm/asmmacro.h
Normal file
24
libc/kernel/arch-mips/asm/asmmacro.h
Normal file
@@ -0,0 +1,24 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _ASM_ASMMACRO_H
|
||||
#define _ASM_ASMMACRO_H
|
||||
#include <asm/hazards.h>
|
||||
#include <asm/asmmacro-32.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
@@ -1,79 +0,0 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _ASM_PGTABLE_32_H
|
||||
#define _ASM_PGTABLE_32_H
|
||||
#include <asm/addrspace.h>
|
||||
#include <asm/page.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#include <linux/linkage.h>
|
||||
#include <asm/cachectl.h>
|
||||
#include <asm/fixmap.h>
|
||||
#include <asm-generic/pgtable-nopmd.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define PGDIR_SHIFT (2 * PAGE_SHIFT + PTE_ORDER - PTE_T_LOG2)
|
||||
#define PGDIR_SIZE (1UL << PGDIR_SHIFT)
|
||||
#define PGDIR_MASK (~(PGDIR_SIZE-1))
|
||||
#define __PGD_ORDER (32 - 3 * PAGE_SHIFT + PGD_T_LOG2 + PTE_T_LOG2)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define PGD_ORDER (__PGD_ORDER >= 0 ? __PGD_ORDER : 0)
|
||||
#define PUD_ORDER aieeee_attempt_to_allocate_pud
|
||||
#define PMD_ORDER 1
|
||||
#define PTE_ORDER 0
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define PTRS_PER_PGD (USER_PTRS_PER_PGD * 2)
|
||||
#define PTRS_PER_PTE ((PAGE_SIZE << PTE_ORDER) / sizeof(pte_t))
|
||||
#define USER_PTRS_PER_PGD (0x80000000UL/PGDIR_SIZE)
|
||||
#define FIRST_USER_ADDRESS 0
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VMALLOC_START MAP_BASE
|
||||
#define PKMAP_BASE (0xfe000000UL)
|
||||
#define VMALLOC_END (FIXADDR_START-2*PAGE_SIZE)
|
||||
#define pte_ERROR(e) printk("%s:%d: bad pte %08lx.\n", __FILE__, __LINE__, pte_val(e))
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define pgd_ERROR(e) printk("%s:%d: bad pgd %08lx.\n", __FILE__, __LINE__, pgd_val(e))
|
||||
#define pmd_bad(pmd) (pmd_val(pmd) & ~PAGE_MASK)
|
||||
#define pte_page(x) pfn_to_page(pte_pfn(x))
|
||||
#define pte_pfn(x) ((unsigned long)((x).pte >> _PFN_SHIFT))
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define pfn_pte(pfn, prot) __pte(((unsigned long long)(pfn) << _PFN_SHIFT) | pgprot_val(prot))
|
||||
#define __pgd_offset(address) pgd_index(address)
|
||||
#define __pud_offset(address) (((address) >> PUD_SHIFT) & (PTRS_PER_PUD-1))
|
||||
#define __pmd_offset(address) (((address) >> PMD_SHIFT) & (PTRS_PER_PMD-1))
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define pgd_offset_k(address) pgd_offset(&init_mm, address)
|
||||
#define pgd_index(address) (((address) >> PGDIR_SHIFT) & (PTRS_PER_PGD-1))
|
||||
#define pgd_offset(mm, addr) ((mm)->pgd + pgd_index(addr))
|
||||
#define __pte_offset(address) (((address) >> PAGE_SHIFT) & (PTRS_PER_PTE - 1))
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define pte_offset(dir, address) ((pte_t *) pmd_page_vaddr(*(dir)) + __pte_offset(address))
|
||||
#define pte_offset_kernel(dir, address) ((pte_t *) pmd_page_vaddr(*(dir)) + __pte_offset(address))
|
||||
#define pte_offset_map(dir, address) ((pte_t *)page_address(pmd_page(*(dir))) + __pte_offset(address))
|
||||
#define pte_unmap(pte) ((void)(pte))
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define __swp_type(x) (((x).val >> 8) & 0x1f)
|
||||
#define __swp_offset(x) ((x).val >> 13)
|
||||
#define __swp_entry(type,offset) ((swp_entry_t) { ((type) << 8) | ((offset) << 13) })
|
||||
#define PTE_FILE_MAX_BITS 28
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define pte_to_pgoff(_pte) ((((_pte).pte >> 1) & 0x7) | (((_pte).pte >> 2) & 0x8) | (((_pte).pte >> 8) << 4))
|
||||
#define pgoff_to_pte(off) ((pte_t) { (((off) & 0x7) << 1) | (((off) & 0x8) << 2) | (((off) >> 4) << 8) | _PAGE_FILE })
|
||||
#define __pte_to_swp_entry(pte) ((swp_entry_t) { pte_val(pte) })
|
||||
#define __swp_entry_to_pte(x) ((pte_t) { (x).val })
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
@@ -47,8 +47,8 @@
|
||||
#define O_NONBLOCK 00004000
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
#ifndef O_SYNC
|
||||
#define O_SYNC 00010000
|
||||
#ifndef O_DSYNC
|
||||
#define O_DSYNC 00010000
|
||||
#endif
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#ifndef FASYNC
|
||||
@@ -73,97 +73,120 @@
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define O_NOATIME 01000000
|
||||
#endif
|
||||
#ifndef O_CLOEXEC
|
||||
#define O_CLOEXEC 02000000
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
#ifndef O_SYNC
|
||||
#define __O_SYNC 04000000
|
||||
#define O_SYNC (__O_SYNC|O_DSYNC)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
#ifndef O_PATH
|
||||
#define O_PATH 010000000
|
||||
#endif
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#ifndef O_NDELAY
|
||||
#define O_NDELAY O_NONBLOCK
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
#define F_DUPFD 0
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define F_GETFD 1
|
||||
#define F_SETFD 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define F_GETFL 3
|
||||
#define F_SETFL 4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#ifndef F_GETLK
|
||||
#define F_GETLK 5
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define F_SETLK 6
|
||||
#define F_SETLKW 7
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
#ifndef F_SETOWN
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define F_SETOWN 8
|
||||
#define F_GETOWN 9
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
#ifndef F_SETSIG
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define F_SETSIG 10
|
||||
#define F_GETSIG 11
|
||||
#endif
|
||||
#define FD_CLOEXEC 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#ifndef F_RDLCK
|
||||
#define F_RDLCK 0
|
||||
#define F_WRLCK 1
|
||||
#define F_UNLCK 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
#ifndef F_EXLCK
|
||||
#define F_EXLCK 4
|
||||
#define F_SHLCK 8
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
#ifndef F_INPROGRESS
|
||||
#define F_INPROGRESS 16
|
||||
#endif
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define LOCK_SH 1
|
||||
#define LOCK_EX 2
|
||||
#define LOCK_NB 4
|
||||
#define LOCK_UN 8
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define LOCK_MAND 32
|
||||
#define LOCK_READ 64
|
||||
#define LOCK_WRITE 128
|
||||
#define LOCK_RW 192
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define F_LINUX_SPECIFIC_BASE 1024
|
||||
#ifndef HAVE_ARCH_STRUCT_FLOCK
|
||||
#ifndef __ARCH_FLOCK_PAD
|
||||
#define __ARCH_FLOCK_PAD
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
struct flock {
|
||||
short l_type;
|
||||
short l_whence;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
off_t l_start;
|
||||
off_t l_len;
|
||||
pid_t l_pid;
|
||||
__ARCH_FLOCK_PAD
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#endif
|
||||
#ifndef F_GETLK64
|
||||
#define F_GETLK64 12
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define F_SETLK64 13
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define F_SETLKW64 14
|
||||
#endif
|
||||
#ifndef HAVE_ARCH_STRUCT_FLOCK64
|
||||
#ifndef F_SETOWN_EX
|
||||
#define F_SETOWN_EX 15
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#ifndef __ARCH_FLOCK64_PAD
|
||||
#define __ARCH_FLOCK64_PAD
|
||||
#define F_GETOWN_EX 16
|
||||
#endif
|
||||
struct flock64 {
|
||||
#define F_OWNER_TID 0
|
||||
#define F_OWNER_PID 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define F_OWNER_PGRP 2
|
||||
struct f_owner_ex {
|
||||
int type;
|
||||
__kernel_pid_t pid;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define FD_CLOEXEC 1
|
||||
#ifndef F_RDLCK
|
||||
#define F_RDLCK 0
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define F_WRLCK 1
|
||||
#define F_UNLCK 2
|
||||
#endif
|
||||
#ifndef F_EXLCK
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define F_EXLCK 4
|
||||
#define F_SHLCK 8
|
||||
#endif
|
||||
#define LOCK_SH 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define LOCK_EX 2
|
||||
#define LOCK_NB 4
|
||||
#define LOCK_UN 8
|
||||
#define LOCK_MAND 32
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define LOCK_READ 64
|
||||
#define LOCK_WRITE 128
|
||||
#define LOCK_RW 192
|
||||
#define F_LINUX_SPECIFIC_BASE 1024
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#ifndef HAVE_ARCH_STRUCT_FLOCK
|
||||
#ifndef __ARCH_FLOCK_PAD
|
||||
#define __ARCH_FLOCK_PAD
|
||||
#endif
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct flock {
|
||||
short l_type;
|
||||
short l_whence;
|
||||
loff_t l_start;
|
||||
loff_t l_len;
|
||||
__kernel_off_t l_start;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
pid_t l_pid;
|
||||
__kernel_off_t l_len;
|
||||
__kernel_pid_t l_pid;
|
||||
__ARCH_FLOCK_PAD
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
#ifndef HAVE_ARCH_STRUCT_FLOCK64
|
||||
#ifndef __ARCH_FLOCK64_PAD
|
||||
#define __ARCH_FLOCK64_PAD
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
struct flock64 {
|
||||
short l_type;
|
||||
short l_whence;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__kernel_loff_t l_start;
|
||||
__kernel_loff_t l_len;
|
||||
__kernel_pid_t l_pid;
|
||||
__ARCH_FLOCK64_PAD
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#endif
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
|
||||
|
111
libc/kernel/common/linux/fb.h
Normal file → Executable file
111
libc/kernel/common/linux/fb.h
Normal file → Executable file
@@ -51,152 +51,157 @@
|
||||
#define FB_TYPE_TEXT 3
|
||||
#define FB_TYPE_VGA_PLANES 4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_TYPE_FOURCC 5
|
||||
#define FB_AUX_TEXT_MDA 0
|
||||
#define FB_AUX_TEXT_CGA 1
|
||||
#define FB_AUX_TEXT_S3_MMIO 2
|
||||
#define FB_AUX_TEXT_MGA_STEP16 3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_AUX_TEXT_MGA_STEP16 3
|
||||
#define FB_AUX_TEXT_MGA_STEP8 4
|
||||
#define FB_AUX_TEXT_SVGA_GROUP 8
|
||||
#define FB_AUX_TEXT_SVGA_MASK 7
|
||||
#define FB_AUX_TEXT_SVGA_STEP2 8
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_AUX_TEXT_SVGA_STEP2 8
|
||||
#define FB_AUX_TEXT_SVGA_STEP4 9
|
||||
#define FB_AUX_TEXT_SVGA_STEP8 10
|
||||
#define FB_AUX_TEXT_SVGA_STEP16 11
|
||||
#define FB_AUX_TEXT_SVGA_LAST 15
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_AUX_TEXT_SVGA_LAST 15
|
||||
#define FB_AUX_VGA_PLANES_VGA4 0
|
||||
#define FB_AUX_VGA_PLANES_CFB4 1
|
||||
#define FB_AUX_VGA_PLANES_CFB8 2
|
||||
#define FB_VISUAL_MONO01 0
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_VISUAL_MONO01 0
|
||||
#define FB_VISUAL_MONO10 1
|
||||
#define FB_VISUAL_TRUECOLOR 2
|
||||
#define FB_VISUAL_PSEUDOCOLOR 3
|
||||
#define FB_VISUAL_DIRECTCOLOR 4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_VISUAL_DIRECTCOLOR 4
|
||||
#define FB_VISUAL_STATIC_PSEUDOCOLOR 5
|
||||
#define FB_VISUAL_FOURCC 6
|
||||
#define FB_ACCEL_NONE 0
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_ATARIBLITT 1
|
||||
#define FB_ACCEL_AMIGABLITT 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_S3_TRIO64 3
|
||||
#define FB_ACCEL_NCR_77C32BLT 4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_S3_VIRGE 5
|
||||
#define FB_ACCEL_ATI_MACH64GX 6
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_DEC_TGA 7
|
||||
#define FB_ACCEL_ATI_MACH64CT 8
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_ATI_MACH64VT 9
|
||||
#define FB_ACCEL_ATI_MACH64GT 10
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_SUN_CREATOR 11
|
||||
#define FB_ACCEL_SUN_CGSIX 12
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_SUN_LEO 13
|
||||
#define FB_ACCEL_IMS_TWINTURBO 14
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_3DLABS_PERMEDIA2 15
|
||||
#define FB_ACCEL_MATROX_MGA2064W 16
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_MATROX_MGA1064SG 17
|
||||
#define FB_ACCEL_MATROX_MGA2164W 18
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_MATROX_MGA2164W_AGP 19
|
||||
#define FB_ACCEL_MATROX_MGAG100 20
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_MATROX_MGAG200 21
|
||||
#define FB_ACCEL_SUN_CG14 22
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_SUN_BWTWO 23
|
||||
#define FB_ACCEL_SUN_CGTHREE 24
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_SUN_TCX 25
|
||||
#define FB_ACCEL_MATROX_MGAG400 26
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_NV3 27
|
||||
#define FB_ACCEL_NV4 28
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_NV5 29
|
||||
#define FB_ACCEL_CT_6555x 30
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_3DFX_BANSHEE 31
|
||||
#define FB_ACCEL_ATI_RAGE128 32
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_IGS_CYBER2000 33
|
||||
#define FB_ACCEL_IGS_CYBER2010 34
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_IGS_CYBER5000 35
|
||||
#define FB_ACCEL_SIS_GLAMOUR 36
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_3DLABS_PERMEDIA3 37
|
||||
#define FB_ACCEL_ATI_RADEON 38
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_I810 39
|
||||
#define FB_ACCEL_SIS_GLAMOUR_2 40
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_SIS_XABRE 41
|
||||
#define FB_ACCEL_I830 42
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_NV_10 43
|
||||
#define FB_ACCEL_NV_20 44
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_NV_30 45
|
||||
#define FB_ACCEL_NV_40 46
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_XGI_VOLARI_V 47
|
||||
#define FB_ACCEL_XGI_VOLARI_Z 48
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_OMAP1610 49
|
||||
#define FB_ACCEL_TRIDENT_TGUI 50
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_TRIDENT_3DIMAGE 51
|
||||
#define FB_ACCEL_TRIDENT_BLADE3D 52
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_TRIDENT_BLADEXP 53
|
||||
#define FB_ACCEL_CIRRUS_ALPINE 53
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_NEOMAGIC_NM2070 90
|
||||
#define FB_ACCEL_NEOMAGIC_NM2090 91
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_NEOMAGIC_NM2093 92
|
||||
#define FB_ACCEL_NEOMAGIC_NM2097 93
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_NEOMAGIC_NM2160 94
|
||||
#define FB_ACCEL_NEOMAGIC_NM2200 95
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_NEOMAGIC_NM2230 96
|
||||
#define FB_ACCEL_NEOMAGIC_NM2360 97
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_NEOMAGIC_NM2380 98
|
||||
#define FB_ACCEL_PXA3XX 99
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_SAVAGE4 0x80
|
||||
#define FB_ACCEL_SAVAGE3D 0x81
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_SAVAGE3D_MV 0x82
|
||||
#define FB_ACCEL_SAVAGE2000 0x83
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_SAVAGE_MX_MV 0x84
|
||||
#define FB_ACCEL_SAVAGE_MX 0x85
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_SAVAGE_IX_MV 0x86
|
||||
#define FB_ACCEL_SAVAGE_IX 0x87
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_PROSAVAGE_PM 0x88
|
||||
#define FB_ACCEL_PROSAVAGE_KM 0x89
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_S3TWISTER_P 0x8a
|
||||
#define FB_ACCEL_S3TWISTER_K 0x8b
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_SUPERSAVAGE 0x8c
|
||||
#define FB_ACCEL_PROSAVAGE_DDR 0x8d
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_ACCEL_PROSAVAGE_DDRK 0x8e
|
||||
#define FB_ACCEL_PUV3_UNIGFX 0xa0
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_CAP_FOURCC 1
|
||||
struct fb_fix_screeninfo {
|
||||
char id[16];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long smem_start;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 smem_len;
|
||||
__u32 type;
|
||||
__u32 type_aux;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 visual;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u16 xpanstep;
|
||||
__u16 ypanstep;
|
||||
__u16 ywrapstep;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 line_length;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long mmio_start;
|
||||
__u32 mmio_len;
|
||||
__u32 accel;
|
||||
__u16 capabilities;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u16 reserved[3];
|
||||
__u16 reserved[2];
|
||||
};
|
||||
struct fb_bitfield {
|
||||
__u32 offset;
|
||||
@@ -286,114 +291,116 @@ struct fb_var_screeninfo {
|
||||
__u32 vmode;
|
||||
__u32 rotate;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 reserved[5];
|
||||
__u32 colorspace;
|
||||
__u32 reserved[4];
|
||||
};
|
||||
struct fb_cmap {
|
||||
__u32 start;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 start;
|
||||
__u32 len;
|
||||
__u16 *red;
|
||||
__u16 *green;
|
||||
__u16 *blue;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u16 *blue;
|
||||
__u16 *transp;
|
||||
};
|
||||
struct fb_con2fbmap {
|
||||
__u32 console;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 console;
|
||||
__u32 framebuffer;
|
||||
};
|
||||
#define VESA_NO_BLANKING 0
|
||||
#define VESA_VSYNC_SUSPEND 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VESA_VSYNC_SUSPEND 1
|
||||
#define VESA_HSYNC_SUSPEND 2
|
||||
#define VESA_POWERDOWN 3
|
||||
enum {
|
||||
FB_BLANK_UNBLANK = VESA_NO_BLANKING,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
FB_BLANK_UNBLANK = VESA_NO_BLANKING,
|
||||
FB_BLANK_NORMAL = VESA_NO_BLANKING + 1,
|
||||
FB_BLANK_VSYNC_SUSPEND = VESA_VSYNC_SUSPEND + 1,
|
||||
FB_BLANK_HSYNC_SUSPEND = VESA_HSYNC_SUSPEND + 1,
|
||||
FB_BLANK_POWERDOWN = VESA_POWERDOWN + 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
FB_BLANK_POWERDOWN = VESA_POWERDOWN + 1
|
||||
};
|
||||
#define FB_VBLANK_VBLANKING 0x001
|
||||
#define FB_VBLANK_HBLANKING 0x002
|
||||
#define FB_VBLANK_HAVE_VBLANK 0x004
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_VBLANK_HAVE_VBLANK 0x004
|
||||
#define FB_VBLANK_HAVE_HBLANK 0x008
|
||||
#define FB_VBLANK_HAVE_COUNT 0x010
|
||||
#define FB_VBLANK_HAVE_VCOUNT 0x020
|
||||
#define FB_VBLANK_HAVE_HCOUNT 0x040
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_VBLANK_HAVE_HCOUNT 0x040
|
||||
#define FB_VBLANK_VSYNCING 0x080
|
||||
#define FB_VBLANK_HAVE_VSYNC 0x100
|
||||
struct fb_vblank {
|
||||
__u32 flags;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 flags;
|
||||
__u32 count;
|
||||
__u32 vcount;
|
||||
__u32 hcount;
|
||||
__u32 reserved[4];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 reserved[4];
|
||||
};
|
||||
#define ROP_COPY 0
|
||||
#define ROP_XOR 1
|
||||
struct fb_copyarea {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct fb_copyarea {
|
||||
__u32 dx;
|
||||
__u32 dy;
|
||||
__u32 width;
|
||||
__u32 height;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 height;
|
||||
__u32 sx;
|
||||
__u32 sy;
|
||||
};
|
||||
struct fb_fillrect {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct fb_fillrect {
|
||||
__u32 dx;
|
||||
__u32 dy;
|
||||
__u32 width;
|
||||
__u32 height;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 height;
|
||||
__u32 color;
|
||||
__u32 rop;
|
||||
};
|
||||
struct fb_image {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct fb_image {
|
||||
__u32 dx;
|
||||
__u32 dy;
|
||||
__u32 width;
|
||||
__u32 height;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 height;
|
||||
__u32 fg_color;
|
||||
__u32 bg_color;
|
||||
__u8 depth;
|
||||
const char *data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
const char *data;
|
||||
struct fb_cmap cmap;
|
||||
};
|
||||
#define FB_CUR_SETIMAGE 0x01
|
||||
#define FB_CUR_SETPOS 0x02
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_CUR_SETPOS 0x02
|
||||
#define FB_CUR_SETHOT 0x04
|
||||
#define FB_CUR_SETCMAP 0x08
|
||||
#define FB_CUR_SETSHAPE 0x10
|
||||
#define FB_CUR_SETSIZE 0x20
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FB_CUR_SETSIZE 0x20
|
||||
#define FB_CUR_SETALL 0xFF
|
||||
struct fbcurpos {
|
||||
__u16 x, y;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct fb_cursor {
|
||||
__u16 set;
|
||||
__u16 enable;
|
||||
__u16 rop;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u16 rop;
|
||||
const char *mask;
|
||||
struct fbcurpos hot;
|
||||
struct fb_image image;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#endif
|
||||
|
||||
|
46
libc/kernel/common/linux/genlock.h
Normal file
46
libc/kernel/common/linux/genlock.h
Normal file
@@ -0,0 +1,46 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _GENLOCK_H_
|
||||
#define _GENLOCK_H_
|
||||
#define GENLOCK_UNLOCK 0
|
||||
#define GENLOCK_WRLOCK 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define GENLOCK_RDLOCK 2
|
||||
#define GENLOCK_NOBLOCK (1 << 0)
|
||||
#define GENLOCK_WRITE_TO_READ (1 << 1)
|
||||
struct genlock_lock {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int fd;
|
||||
int op;
|
||||
int flags;
|
||||
int timeout;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define GENLOCK_IOC_MAGIC 'G'
|
||||
#define GENLOCK_IOC_NEW _IO(GENLOCK_IOC_MAGIC, 0)
|
||||
#define GENLOCK_IOC_EXPORT _IOR(GENLOCK_IOC_MAGIC, 1, struct genlock_lock)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define GENLOCK_IOC_ATTACH _IOW(GENLOCK_IOC_MAGIC, 2, struct genlock_lock)
|
||||
#define GENLOCK_IOC_LOCK _IOW(GENLOCK_IOC_MAGIC, 3, struct genlock_lock)
|
||||
#define GENLOCK_IOC_RELEASE _IO(GENLOCK_IOC_MAGIC, 4)
|
||||
#define GENLOCK_IOC_WAIT _IOW(GENLOCK_IOC_MAGIC, 5, struct genlock_lock)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define GENLOCK_IOC_DREADLOCK _IOW(GENLOCK_IOC_MAGIC, 6, struct genlock_lock)
|
||||
#endif
|
||||
|
59
libc/kernel/common/linux/idle_stats_device.h
Normal file
59
libc/kernel/common/linux/idle_stats_device.h
Normal file
@@ -0,0 +1,59 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ARCH_ARM_MACH_MSM_IDLE_STATS_DEVICE_H
|
||||
#define __ARCH_ARM_MACH_MSM_IDLE_STATS_DEVICE_H
|
||||
#include <linux/types.h>
|
||||
#include <linux/ioctl.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_IDLE_STATS_EVENT_NONE 0
|
||||
#define MSM_IDLE_STATS_EVENT_BUSY_TIMER_EXPIRED 1
|
||||
#define MSM_IDLE_STATS_EVENT_BUSY_TIMER_EXPIRED_RESET 2
|
||||
#define MSM_IDLE_STATS_EVENT_COLLECTION_NEARLY_FULL 4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_IDLE_STATS_EVENT_COLLECTION_FULL 8
|
||||
#define MSM_IDLE_STATS_EVENT_IDLE_TIMER_EXPIRED 16
|
||||
#define MSM_IDLE_STATS_NR_MAX_INTERVALS 200
|
||||
struct msm_idle_pulse {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__s64 busy_start_time;
|
||||
__u32 busy_interval;
|
||||
__u32 wait_interval;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_idle_read_stats {
|
||||
__u32 event;
|
||||
__s64 return_timestamp;
|
||||
__u32 busy_timer_remaining;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 nr_collected;
|
||||
struct msm_idle_pulse pulse_chain[MSM_IDLE_STATS_NR_MAX_INTERVALS];
|
||||
};
|
||||
struct msm_idle_write_stats {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 busy_timer;
|
||||
__u32 next_busy_timer;
|
||||
__u32 max_samples;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_IDLE_STATS_IOC_MAGIC 0xD8
|
||||
#define MSM_IDLE_STATS_IOC_READ_STATS _IOWR(MSM_IDLE_STATS_IOC_MAGIC, 1, struct msm_idle_read_stats)
|
||||
#define MSM_IDLE_STATS_IOC_WRITE_STATS _IOWR(MSM_IDLE_STATS_IOC_MAGIC, 2, struct msm_idle_write_stats)
|
||||
#endif
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
|
@@ -27,44 +27,46 @@ enum ion_heap_type {
|
||||
ION_HEAP_TYPE_CARVEOUT,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ION_HEAP_TYPE_CUSTOM,
|
||||
ION_NUM_HEAPS,
|
||||
ION_NUM_HEAPS = 16,
|
||||
};
|
||||
#define ION_HEAP_SYSTEM_MASK (1 << ION_HEAP_TYPE_SYSTEM)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ION_HEAP_SYSTEM_CONTIG_MASK (1 << ION_HEAP_TYPE_SYSTEM_CONTIG)
|
||||
#define ION_HEAP_CARVEOUT_MASK (1 << ION_HEAP_TYPE_CARVEOUT)
|
||||
#define ION_FLAG_CACHED 1
|
||||
struct ion_allocation_data {
|
||||
#define ION_FLAG_CACHED_NEEDS_SYNC 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ion_allocation_data {
|
||||
size_t len;
|
||||
size_t align;
|
||||
unsigned int heap_mask;
|
||||
unsigned int flags;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int flags;
|
||||
struct ion_handle *handle;
|
||||
};
|
||||
struct ion_fd_data {
|
||||
struct ion_handle *handle;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ion_handle *handle;
|
||||
int fd;
|
||||
};
|
||||
struct ion_handle_data {
|
||||
struct ion_handle *handle;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ion_handle *handle;
|
||||
};
|
||||
struct ion_custom_data {
|
||||
unsigned int cmd;
|
||||
unsigned long arg;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long arg;
|
||||
};
|
||||
#define ION_IOC_MAGIC 'I'
|
||||
#define ION_IOC_ALLOC _IOWR(ION_IOC_MAGIC, 0, struct ion_allocation_data)
|
||||
#define ION_IOC_FREE _IOWR(ION_IOC_MAGIC, 1, struct ion_handle_data)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ION_IOC_FREE _IOWR(ION_IOC_MAGIC, 1, struct ion_handle_data)
|
||||
#define ION_IOC_MAP _IOWR(ION_IOC_MAGIC, 2, struct ion_fd_data)
|
||||
#define ION_IOC_SHARE _IOWR(ION_IOC_MAGIC, 4, struct ion_fd_data)
|
||||
#define ION_IOC_IMPORT _IOWR(ION_IOC_MAGIC, 5, int)
|
||||
#define ION_IOC_CUSTOM _IOWR(ION_IOC_MAGIC, 6, struct ion_custom_data)
|
||||
#define ION_IOC_IMPORT _IOWR(ION_IOC_MAGIC, 5, struct ion_fd_data)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ION_IOC_SYNC _IOWR(ION_IOC_MAGIC, 7, struct ion_fd_data)
|
||||
#define ION_IOC_CUSTOM _IOWR(ION_IOC_MAGIC, 6, struct ion_custom_data)
|
||||
#endif
|
||||
|
||||
|
126
libc/kernel/common/linux/media.h
Normal file
126
libc/kernel/common/linux/media.h
Normal file
@@ -0,0 +1,126 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __LINUX_MEDIA_H
|
||||
#define __LINUX_MEDIA_H
|
||||
#include <linux/ioctl.h>
|
||||
#include <linux/types.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#include <linux/version.h>
|
||||
#define MEDIA_API_VERSION KERNEL_VERSION(0, 1, 0)
|
||||
struct media_device_info {
|
||||
char driver[16];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
char model[32];
|
||||
char serial[40];
|
||||
char bus_info[32];
|
||||
__u32 media_version;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 hw_revision;
|
||||
__u32 driver_version;
|
||||
__u32 reserved[31];
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MEDIA_ENT_ID_FLAG_NEXT (1 << 31)
|
||||
#define MEDIA_ENT_TYPE_SHIFT 16
|
||||
#define MEDIA_ENT_TYPE_MASK 0x00ff0000
|
||||
#define MEDIA_ENT_SUBTYPE_MASK 0x0000ffff
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MEDIA_ENT_T_DEVNODE (1 << MEDIA_ENT_TYPE_SHIFT)
|
||||
#define MEDIA_ENT_T_DEVNODE_V4L (MEDIA_ENT_T_DEVNODE + 1)
|
||||
#define MEDIA_ENT_T_DEVNODE_FB (MEDIA_ENT_T_DEVNODE + 2)
|
||||
#define MEDIA_ENT_T_DEVNODE_ALSA (MEDIA_ENT_T_DEVNODE + 3)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MEDIA_ENT_T_DEVNODE_DVB (MEDIA_ENT_T_DEVNODE + 4)
|
||||
#define MEDIA_ENT_T_V4L2_SUBDEV (2 << MEDIA_ENT_TYPE_SHIFT)
|
||||
#define MEDIA_ENT_T_V4L2_SUBDEV_SENSOR (MEDIA_ENT_T_V4L2_SUBDEV + 1)
|
||||
#define MEDIA_ENT_T_V4L2_SUBDEV_FLASH (MEDIA_ENT_T_V4L2_SUBDEV + 2)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MEDIA_ENT_T_V4L2_SUBDEV_LENS (MEDIA_ENT_T_V4L2_SUBDEV + 3)
|
||||
#define MEDIA_ENT_FL_DEFAULT (1 << 0)
|
||||
struct media_entity_desc {
|
||||
__u32 id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
char name[32];
|
||||
__u32 type;
|
||||
__u32 revision;
|
||||
__u32 flags;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 group_id;
|
||||
__u16 pads;
|
||||
__u16 links;
|
||||
__u32 reserved[4];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
union {
|
||||
struct {
|
||||
__u32 major;
|
||||
__u32 minor;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
} v4l;
|
||||
struct {
|
||||
__u32 major;
|
||||
__u32 minor;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
} fb;
|
||||
struct {
|
||||
__u32 card;
|
||||
__u32 device;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 subdevice;
|
||||
} alsa;
|
||||
int dvb;
|
||||
__u8 raw[184];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
};
|
||||
#define MEDIA_PAD_FL_SINK (1 << 0)
|
||||
#define MEDIA_PAD_FL_SOURCE (1 << 1)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct media_pad_desc {
|
||||
__u32 entity;
|
||||
__u16 index;
|
||||
__u32 flags;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 reserved[2];
|
||||
};
|
||||
#define MEDIA_LNK_FL_ENABLED (1 << 0)
|
||||
#define MEDIA_LNK_FL_IMMUTABLE (1 << 1)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MEDIA_LNK_FL_DYNAMIC (1 << 2)
|
||||
struct media_link_desc {
|
||||
struct media_pad_desc source;
|
||||
struct media_pad_desc sink;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 flags;
|
||||
__u32 reserved[2];
|
||||
};
|
||||
struct media_links_enum {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 entity;
|
||||
struct media_pad_desc __user *pads;
|
||||
struct media_link_desc __user *links;
|
||||
__u32 reserved[4];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define MEDIA_IOC_DEVICE_INFO _IOWR('|', 0x00, struct media_device_info)
|
||||
#define MEDIA_IOC_ENUM_ENTITIES _IOWR('|', 0x01, struct media_entity_desc)
|
||||
#define MEDIA_IOC_ENUM_LINKS _IOWR('|', 0x02, struct media_links_enum)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MEDIA_IOC_SETUP_LINK _IOWR('|', 0x03, struct media_link_desc)
|
||||
#endif
|
||||
|
110
libc/kernel/common/linux/mfd/msm-adie-codec.h
Normal file
110
libc/kernel/common/linux/mfd/msm-adie-codec.h
Normal file
@@ -0,0 +1,110 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __LINUX_MFD_MSM_ADIE_CODEC_H
|
||||
#define __LINUX_MFD_MSM_ADIE_CODEC_H
|
||||
#include <linux/types.h>
|
||||
#define ADIE_CODEC_ACTION_ENTRY 0x1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ADIE_CODEC_ACTION_DELAY_WAIT 0x2
|
||||
#define ADIE_CODEC_ACTION_STAGE_REACHED 0x3
|
||||
#define ADIE_CODEC_PATH_OFF 0x0050
|
||||
#define ADIE_CODEC_DIGITAL_READY 0x0100
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ADIE_CODEC_DIGITAL_ANALOG_READY 0x1000
|
||||
#define ADIE_CODEC_ANALOG_OFF 0x0750
|
||||
#define ADIE_CODEC_DIGITAL_OFF 0x0600
|
||||
#define ADIE_CODEC_FLASH_IMAGE 0x0001
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ADIE_CODEC_RX 0
|
||||
#define ADIE_CODEC_TX 1
|
||||
#define ADIE_CODEC_LB 3
|
||||
#define ADIE_CODEC_MAX 4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ADIE_CODEC_PACK_ENTRY(reg, mask, val) ((val)|(mask << 8)|(reg << 16))
|
||||
#define ADIE_CODEC_UNPACK_ENTRY(packed, reg, mask, val) do { ((reg) = ((packed >> 16) & (0xff))); ((mask) = ((packed >> 8) & (0xff))); ((val) = ((packed) & (0xff))); } while (0);
|
||||
struct adie_codec_action_unit {
|
||||
u32 type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
u32 action;
|
||||
};
|
||||
struct adie_codec_hwsetting_entry{
|
||||
struct adie_codec_action_unit *actions;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
u32 action_sz;
|
||||
u32 freq_plan;
|
||||
u32 osr;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct adie_codec_dev_profile {
|
||||
u32 path_type;
|
||||
u32 setting_sz;
|
||||
struct adie_codec_hwsetting_entry *settings;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct adie_codec_register {
|
||||
u8 reg;
|
||||
u8 mask;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
u8 val;
|
||||
};
|
||||
struct adie_codec_register_image {
|
||||
struct adie_codec_register *regs;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
u32 img_sz;
|
||||
};
|
||||
struct adie_codec_path;
|
||||
struct adie_codec_anc_data {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
u32 size;
|
||||
u32 writes[];
|
||||
};
|
||||
struct adie_codec_operations {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int codec_id;
|
||||
int (*codec_open) (struct adie_codec_dev_profile *profile,
|
||||
struct adie_codec_path **path_pptr);
|
||||
int (*codec_close) (struct adie_codec_path *path_ptr);
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int (*codec_setpath) (struct adie_codec_path *path_ptr,
|
||||
u32 freq_plan, u32 osr);
|
||||
int (*codec_proceed_stage) (struct adie_codec_path *path_ptr,
|
||||
u32 state);
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
u32 (*codec_freq_supported) (struct adie_codec_dev_profile *profile,
|
||||
u32 requested_freq);
|
||||
int (*codec_enable_sidetone) (struct adie_codec_path *rx_path_ptr,
|
||||
u32 enable);
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int (*codec_enable_anc) (struct adie_codec_path *rx_path_ptr,
|
||||
u32 enable, struct adie_codec_anc_data *calibration_writes);
|
||||
int (*codec_set_device_digital_volume) (
|
||||
struct adie_codec_path *path_ptr,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
u32 num_channels,
|
||||
u32 vol_percentage);
|
||||
int (*codec_set_device_analog_volume) (struct adie_codec_path *path_ptr,
|
||||
u32 num_channels,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
u32 volume);
|
||||
int (*codec_set_master_mode) (struct adie_codec_path *path_ptr,
|
||||
u8 master);
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
|
4600
libc/kernel/common/linux/mfd/timpani-audio.h
Normal file
4600
libc/kernel/common/linux/mfd/timpani-audio.h
Normal file
File diff suppressed because it is too large
Load Diff
1381
libc/kernel/common/linux/mfd/wcd9xxx/wcd9310_registers.h
Normal file
1381
libc/kernel/common/linux/mfd/wcd9xxx/wcd9310_registers.h
Normal file
File diff suppressed because it is too large
Load Diff
55
libc/kernel/common/linux/mfd/wcd9xxx/wcd9xxx_registers.h
Normal file
55
libc/kernel/common/linux/mfd/wcd9xxx/wcd9xxx_registers.h
Normal file
@@ -0,0 +1,55 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef WCD9XXX_CODEC_DIGITAL_H
|
||||
#define WCD9XXX_CODEC_DIGITAL_H
|
||||
#define WCD9XXX_A_CHIP_CTL (0x00)
|
||||
#define WCD9XXX_A_CHIP_CTL__POR (0x00000000)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CHIP_STATUS (0x01)
|
||||
#define WCD9XXX_A_CHIP_STATUS__POR (0x00000000)
|
||||
#define WCD9XXX_A_CHIP_ID_BYTE_0 (0x04)
|
||||
#define WCD9XXX_A_CHIP_ID_BYTE_0__POR (0x00000000)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CHIP_ID_BYTE_1 (0x05)
|
||||
#define WCD9XXX_A_CHIP_ID_BYTE_1__POR (0x00000000)
|
||||
#define WCD9XXX_A_CHIP_ID_BYTE_2 (0x06)
|
||||
#define WCD9XXX_A_CHIP_ID_BYTE_2__POR (0x00000000)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CHIP_ID_BYTE_3 (0x07)
|
||||
#define WCD9XXX_A_CHIP_ID_BYTE_3__POR (0x00000001)
|
||||
#define WCD9XXX_A_CHIP_VERSION (0x08)
|
||||
#define WCD9XXX_A_CHIP_VERSION__POR (0x00000020)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_SB_VERSION (0x09)
|
||||
#define WCD9XXX_A_SB_VERSION__POR (0x00000010)
|
||||
#define WCD9XXX_A_SLAVE_ID_1 (0x0C)
|
||||
#define WCD9XXX_A_SLAVE_ID_1__POR (0x00000077)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_SLAVE_ID_2 (0x0D)
|
||||
#define WCD9XXX_A_SLAVE_ID_2__POR (0x00000066)
|
||||
#define WCD9XXX_A_SLAVE_ID_3 (0x0E)
|
||||
#define WCD9XXX_A_SLAVE_ID_3__POR (0x00000055)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_CTL (0x80)
|
||||
#define WCD9XXX_A_CDC_CTL__POR (0x00000000)
|
||||
#define WCD9XXX_A_LEAKAGE_CTL (0x88)
|
||||
#define WCD9XXX_A_LEAKAGE_CTL__POR (0x00000004)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
|
@@ -21,69 +21,326 @@
|
||||
#include <linux/types.h>
|
||||
#include <linux/ioctl.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#include <asm/sizes.h>
|
||||
#define AUDIO_IOCTL_MAGIC 'a'
|
||||
#define AUDIO_START _IOW(AUDIO_IOCTL_MAGIC, 0, unsigned)
|
||||
#define AUDIO_STOP _IOW(AUDIO_IOCTL_MAGIC, 1, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_FLUSH _IOW(AUDIO_IOCTL_MAGIC, 2, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_GET_CONFIG _IOR(AUDIO_IOCTL_MAGIC, 3, unsigned)
|
||||
#define AUDIO_SET_CONFIG _IOW(AUDIO_IOCTL_MAGIC, 4, unsigned)
|
||||
#define AUDIO_GET_STATS _IOR(AUDIO_IOCTL_MAGIC, 5, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_ENABLE_AUDPP _IOW(AUDIO_IOCTL_MAGIC, 6, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SET_ADRC _IOW(AUDIO_IOCTL_MAGIC, 7, unsigned)
|
||||
#define AUDIO_SET_EQ _IOW(AUDIO_IOCTL_MAGIC, 8, unsigned)
|
||||
#define AUDIO_SET_RX_IIR _IOW(AUDIO_IOCTL_MAGIC, 9, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SET_VOLUME _IOW(AUDIO_IOCTL_MAGIC, 10, unsigned)
|
||||
#define AUDIO_ENABLE_AUDPRE _IOW(AUDIO_IOCTL_MAGIC, 11, unsigned)
|
||||
#define AUDIO_SET_AGC _IOW(AUDIO_IOCTL_MAGIC, 12, unsigned)
|
||||
#define AUDIO_SET_NS _IOW(AUDIO_IOCTL_MAGIC, 13, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SET_TX_IIR _IOW(AUDIO_IOCTL_MAGIC, 14, unsigned)
|
||||
#define AUDIO_PAUSE _IOW(AUDIO_IOCTL_MAGIC, 11, unsigned)
|
||||
#define AUDIO_PLAY_DTMF _IOW(AUDIO_IOCTL_MAGIC, 12, unsigned)
|
||||
#define AUDIO_GET_EVENT _IOR(AUDIO_IOCTL_MAGIC, 13, unsigned)
|
||||
#define AUDIO_ABORT_GET_EVENT _IOW(AUDIO_IOCTL_MAGIC, 14, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_REGISTER_PMEM _IOW(AUDIO_IOCTL_MAGIC, 15, unsigned)
|
||||
#define AUDIO_DEREGISTER_PMEM _IOW(AUDIO_IOCTL_MAGIC, 16, unsigned)
|
||||
#define AUDIO_ASYNC_WRITE _IOW(AUDIO_IOCTL_MAGIC, 17, unsigned)
|
||||
#define AUDIO_ASYNC_READ _IOW(AUDIO_IOCTL_MAGIC, 18, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SET_INCALL _IOW(AUDIO_IOCTL_MAGIC, 19, struct msm_voicerec_mode)
|
||||
#define AUDIO_GET_NUM_SND_DEVICE _IOR(AUDIO_IOCTL_MAGIC, 20, unsigned)
|
||||
#define AUDIO_GET_SND_DEVICES _IOWR(AUDIO_IOCTL_MAGIC, 21, struct msm_snd_device_list)
|
||||
#define AUDIO_ENABLE_SND_DEVICE _IOW(AUDIO_IOCTL_MAGIC, 22, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_DISABLE_SND_DEVICE _IOW(AUDIO_IOCTL_MAGIC, 23, unsigned)
|
||||
#define AUDIO_ROUTE_STREAM _IOW(AUDIO_IOCTL_MAGIC, 24, struct msm_audio_route_config)
|
||||
#define AUDIO_GET_PCM_CONFIG _IOR(AUDIO_IOCTL_MAGIC, 30, unsigned)
|
||||
#define AUDIO_SET_PCM_CONFIG _IOW(AUDIO_IOCTL_MAGIC, 31, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SWITCH_DEVICE _IOW(AUDIO_IOCTL_MAGIC, 32, unsigned)
|
||||
#define AUDIO_SET_MUTE _IOW(AUDIO_IOCTL_MAGIC, 33, unsigned)
|
||||
#define AUDIO_UPDATE_ACDB _IOW(AUDIO_IOCTL_MAGIC, 34, unsigned)
|
||||
#define AUDIO_START_VOICE _IOW(AUDIO_IOCTL_MAGIC, 35, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_STOP_VOICE _IOW(AUDIO_IOCTL_MAGIC, 36, unsigned)
|
||||
#define AUDIO_REINIT_ACDB _IOW(AUDIO_IOCTL_MAGIC, 39, unsigned)
|
||||
#define AUDIO_OUTPORT_FLUSH _IOW(AUDIO_IOCTL_MAGIC, 40, unsigned short)
|
||||
#define AUDIO_SET_ERR_THRESHOLD_VALUE _IOW(AUDIO_IOCTL_MAGIC, 41, unsigned short)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_GET_BITSTREAM_ERROR_INFO _IOR(AUDIO_IOCTL_MAGIC, 42, struct msm_audio_bitstream_error_info)
|
||||
#define AUDIO_SET_SRS_TRUMEDIA_PARAM _IOW(AUDIO_IOCTL_MAGIC, 43, unsigned)
|
||||
#define AUDIO_SET_STREAM_CONFIG _IOW(AUDIO_IOCTL_MAGIC, 80, struct msm_audio_stream_config)
|
||||
#define AUDIO_GET_STREAM_CONFIG _IOR(AUDIO_IOCTL_MAGIC, 81, struct msm_audio_stream_config)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_GET_SESSION_ID _IOR(AUDIO_IOCTL_MAGIC, 82, unsigned short)
|
||||
#define AUDIO_GET_STREAM_INFO _IOR(AUDIO_IOCTL_MAGIC, 83, struct msm_audio_bitstream_info)
|
||||
#define AUDIO_SET_PAN _IOW(AUDIO_IOCTL_MAGIC, 84, unsigned)
|
||||
#define AUDIO_SET_QCONCERT_PLUS _IOW(AUDIO_IOCTL_MAGIC, 85, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SET_MBADRC _IOW(AUDIO_IOCTL_MAGIC, 86, unsigned)
|
||||
#define AUDIO_SET_VOLUME_PATH _IOW(AUDIO_IOCTL_MAGIC, 87, struct msm_vol_info)
|
||||
#define AUDIO_SET_MAX_VOL_ALL _IOW(AUDIO_IOCTL_MAGIC, 88, unsigned)
|
||||
#define AUDIO_ENABLE_AUDPRE _IOW(AUDIO_IOCTL_MAGIC, 89, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SET_AGC _IOW(AUDIO_IOCTL_MAGIC, 90, unsigned)
|
||||
#define AUDIO_SET_NS _IOW(AUDIO_IOCTL_MAGIC, 91, unsigned)
|
||||
#define AUDIO_SET_TX_IIR _IOW(AUDIO_IOCTL_MAGIC, 92, unsigned)
|
||||
#define AUDIO_GET_BUF_CFG _IOW(AUDIO_IOCTL_MAGIC, 93, struct msm_audio_buf_cfg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SET_BUF_CFG _IOW(AUDIO_IOCTL_MAGIC, 94, struct msm_audio_buf_cfg)
|
||||
#define AUDIO_SET_ACDB_BLK _IOW(AUDIO_IOCTL_MAGIC, 95, struct msm_acdb_cmd_device)
|
||||
#define AUDIO_GET_ACDB_BLK _IOW(AUDIO_IOCTL_MAGIC, 96, struct msm_acdb_cmd_device)
|
||||
#define AUDIO_REGISTER_ION _IOW(AUDIO_IOCTL_MAGIC, 97, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_DEREGISTER_ION _IOW(AUDIO_IOCTL_MAGIC, 98, unsigned)
|
||||
#define AUDIO_MAX_COMMON_IOCTL_NUM 100
|
||||
#define HANDSET_MIC 0x01
|
||||
#define HANDSET_SPKR 0x02
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HEADSET_MIC 0x03
|
||||
#define HEADSET_SPKR_MONO 0x04
|
||||
#define HEADSET_SPKR_STEREO 0x05
|
||||
#define SPKR_PHONE_MIC 0x06
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SPKR_PHONE_MONO 0x07
|
||||
#define SPKR_PHONE_STEREO 0x08
|
||||
#define BT_SCO_MIC 0x09
|
||||
#define BT_SCO_SPKR 0x0A
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define BT_A2DP_SPKR 0x0B
|
||||
#define TTY_HEADSET_MIC 0x0C
|
||||
#define TTY_HEADSET_SPKR 0x0D
|
||||
#define DEFAULT_TX 0x0E
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define DEFAULT_RX 0x0F
|
||||
#define BT_A2DP_TX 0x10
|
||||
#define HEADSET_MONO_PLUS_SPKR_MONO_RX 0x11
|
||||
#define HEADSET_MONO_PLUS_SPKR_STEREO_RX 0x12
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HEADSET_STEREO_PLUS_SPKR_MONO_RX 0x13
|
||||
#define HEADSET_STEREO_PLUS_SPKR_STEREO_RX 0x14
|
||||
#define I2S_RX 0x20
|
||||
#define I2S_TX 0x21
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ADRC_ENABLE 0x0001
|
||||
#define EQ_ENABLE 0x0002
|
||||
#define IIR_ENABLE 0x0004
|
||||
#define QCONCERT_PLUS_ENABLE 0x0008
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MBADRC_ENABLE 0x0010
|
||||
#define SRS_ENABLE 0x0020
|
||||
#define SRS_DISABLE 0x0040
|
||||
#define AGC_ENABLE 0x0001
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define NS_ENABLE 0x0002
|
||||
#define TX_IIR_ENABLE 0x0004
|
||||
#define FLUENCE_ENABLE 0x0008
|
||||
#define VOC_REC_UPLINK 0x00
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VOC_REC_DOWNLINK 0x01
|
||||
#define VOC_REC_BOTH 0x02
|
||||
struct msm_audio_config {
|
||||
uint32_t buffer_size;
|
||||
uint32_t buffer_count;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t buffer_count;
|
||||
uint32_t channel_count;
|
||||
uint32_t sample_rate;
|
||||
uint32_t type;
|
||||
uint32_t unused[3];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t meta_field;
|
||||
uint32_t bits;
|
||||
uint32_t unused[3];
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_audio_stream_config {
|
||||
uint32_t buffer_size;
|
||||
uint32_t buffer_count;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_audio_buf_cfg{
|
||||
uint32_t meta_info_enable;
|
||||
uint32_t frames_per_buf;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_audio_stats {
|
||||
uint32_t byte_count;
|
||||
uint32_t sample_count;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t unused[2];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_audio_ion_info {
|
||||
int fd;
|
||||
void *vaddr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_audio_pmem_info {
|
||||
int fd;
|
||||
void *vaddr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_audio_aio_buf {
|
||||
void *buf_addr;
|
||||
uint32_t buf_len;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t data_len;
|
||||
void *private_data;
|
||||
unsigned short mfield_sz;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SND_IOCTL_MAGIC 's'
|
||||
#define SND_MUTE_UNMUTED 0
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SND_MUTE_MUTED 1
|
||||
struct msm_mute_info {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t mute;
|
||||
uint32_t path;
|
||||
};
|
||||
struct msm_vol_info {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t vol;
|
||||
uint32_t path;
|
||||
};
|
||||
struct msm_voicerec_mode {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t rec_mode;
|
||||
};
|
||||
struct msm_snd_device_config {
|
||||
uint32_t device;
|
||||
uint32_t ear_mute;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t ear_mute;
|
||||
uint32_t mic_mute;
|
||||
};
|
||||
#define SND_SET_DEVICE _IOW(SND_IOCTL_MAGIC, 2, struct msm_device_config *)
|
||||
#define SND_METHOD_VOICE 0
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SND_METHOD_VOICE 0
|
||||
struct msm_snd_volume_config {
|
||||
uint32_t device;
|
||||
uint32_t method;
|
||||
uint32_t volume;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t volume;
|
||||
};
|
||||
#define SND_SET_VOLUME _IOW(SND_IOCTL_MAGIC, 3, struct msm_snd_volume_config *)
|
||||
#define SND_GET_NUM_ENDPOINTS _IOR(SND_IOCTL_MAGIC, 4, unsigned *)
|
||||
struct msm_snd_endpoint {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_snd_endpoint {
|
||||
int id;
|
||||
char name[64];
|
||||
};
|
||||
#define SND_GET_ENDPOINT _IOWR(SND_IOCTL_MAGIC, 5, struct msm_snd_endpoint *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SND_GET_ENDPOINT _IOWR(SND_IOCTL_MAGIC, 5, struct msm_snd_endpoint *)
|
||||
#define SND_AVC_CTL _IOW(SND_IOCTL_MAGIC, 6, unsigned *)
|
||||
#define SND_AGC_CTL _IOW(SND_IOCTL_MAGIC, 7, unsigned *)
|
||||
struct msm_audio_pcm_config {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t pcm_feedback;
|
||||
uint32_t buffer_count;
|
||||
uint32_t buffer_size;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_EVENT_SUSPEND 0
|
||||
#define AUDIO_EVENT_RESUME 1
|
||||
#define AUDIO_EVENT_WRITE_DONE 2
|
||||
#define AUDIO_EVENT_READ_DONE 3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_EVENT_STREAM_INFO 4
|
||||
#define AUDIO_EVENT_BITSTREAM_ERROR_INFO 5
|
||||
#define AUDIO_CODEC_TYPE_MP3 0
|
||||
#define AUDIO_CODEC_TYPE_AAC 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_audio_bitstream_info {
|
||||
uint32_t codec_type;
|
||||
uint32_t chan_info;
|
||||
uint32_t sample_rate;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t bit_stream_info;
|
||||
uint32_t bit_rate;
|
||||
uint32_t unused[3];
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_audio_bitstream_error_info {
|
||||
uint32_t dec_id;
|
||||
uint32_t err_msg_indicator;
|
||||
uint32_t err_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
union msm_audio_event_payload {
|
||||
struct msm_audio_aio_buf aio_buf;
|
||||
struct msm_audio_bitstream_info stream_info;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_audio_bitstream_error_info error_info;
|
||||
int reserved;
|
||||
};
|
||||
struct msm_audio_event {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int event_type;
|
||||
int timeout_ms;
|
||||
union msm_audio_event_payload event_payload;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_SNDDEV_CAP_RX 0x1
|
||||
#define MSM_SNDDEV_CAP_TX 0x2
|
||||
#define MSM_SNDDEV_CAP_VOICE 0x4
|
||||
struct msm_snd_device_info {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t dev_id;
|
||||
uint32_t dev_cap;
|
||||
char dev_name[64];
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_snd_device_list {
|
||||
uint32_t num_dev;
|
||||
struct msm_snd_device_info *list;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_dtmf_config {
|
||||
uint16_t path;
|
||||
uint16_t dtmf_hi;
|
||||
uint16_t dtmf_low;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t duration;
|
||||
uint16_t tx_gain;
|
||||
uint16_t rx_gain;
|
||||
uint16_t mixing;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define AUDIO_ROUTE_STREAM_VOICE_RX 0
|
||||
#define AUDIO_ROUTE_STREAM_VOICE_TX 1
|
||||
#define AUDIO_ROUTE_STREAM_PLAYBACK 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_ROUTE_STREAM_REC 3
|
||||
struct msm_audio_route_config {
|
||||
uint32_t stream_type;
|
||||
uint32_t stream_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t dev_id;
|
||||
};
|
||||
#define AUDIO_MAX_EQ_BANDS 12
|
||||
struct msm_audio_eq_band {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t band_idx;
|
||||
uint32_t filter_type;
|
||||
uint32_t center_freq_hz;
|
||||
uint32_t filter_gain;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t q_factor;
|
||||
} __attribute__ ((packed));
|
||||
struct msm_audio_eq_stream_config {
|
||||
uint32_t enable;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t num_bands;
|
||||
struct msm_audio_eq_band eq_bands[AUDIO_MAX_EQ_BANDS];
|
||||
} __attribute__ ((packed));
|
||||
struct msm_acdb_cmd_device {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t command_id;
|
||||
uint32_t device_id;
|
||||
uint32_t network_id;
|
||||
uint32_t sample_rate_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t interface_id;
|
||||
uint32_t algorithm_block_id;
|
||||
uint32_t total_bytes;
|
||||
uint32_t *phys_buf;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#endif
|
||||
|
||||
|
80
libc/kernel/common/linux/msm_audio_aac.h
Normal file
80
libc/kernel/common/linux/msm_audio_aac.h
Normal file
@@ -0,0 +1,80 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __MSM_AUDIO_AAC_H
|
||||
#define __MSM_AUDIO_AAC_H
|
||||
#include <linux/msm_audio.h>
|
||||
#define AUDIO_SET_AAC_CONFIG _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+0), unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_GET_AAC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+1), unsigned)
|
||||
#define AUDIO_SET_AAC_ENC_CONFIG _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+3), struct msm_audio_aac_enc_config)
|
||||
#define AUDIO_GET_AAC_ENC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+4), struct msm_audio_aac_enc_config)
|
||||
#define AUDIO_AAC_FORMAT_ADTS -1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_AAC_FORMAT_RAW 0x0000
|
||||
#define AUDIO_AAC_FORMAT_PSUEDO_RAW 0x0001
|
||||
#define AUDIO_AAC_FORMAT_LOAS 0x0002
|
||||
#define AUDIO_AAC_FORMAT_ADIF 0x0003
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_AAC_OBJECT_LC 0x0002
|
||||
#define AUDIO_AAC_OBJECT_LTP 0x0004
|
||||
#define AUDIO_AAC_OBJECT_ERLC 0x0011
|
||||
#define AUDIO_AAC_OBJECT_BSAC 0x0016
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_AAC_SEC_DATA_RES_ON 0x0001
|
||||
#define AUDIO_AAC_SEC_DATA_RES_OFF 0x0000
|
||||
#define AUDIO_AAC_SCA_DATA_RES_ON 0x0001
|
||||
#define AUDIO_AAC_SCA_DATA_RES_OFF 0x0000
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_AAC_SPEC_DATA_RES_ON 0x0001
|
||||
#define AUDIO_AAC_SPEC_DATA_RES_OFF 0x0000
|
||||
#define AUDIO_AAC_SBR_ON_FLAG_ON 0x0001
|
||||
#define AUDIO_AAC_SBR_ON_FLAG_OFF 0x0000
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_AAC_SBR_PS_ON_FLAG_ON 0x0001
|
||||
#define AUDIO_AAC_SBR_PS_ON_FLAG_OFF 0x0000
|
||||
#define AUDIO_AAC_DUAL_MONO_PL_PR 0
|
||||
#define AUDIO_AAC_DUAL_MONO_SL_SR 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_AAC_DUAL_MONO_SL_PR 2
|
||||
#define AUDIO_AAC_DUAL_MONO_PL_SR 3
|
||||
struct msm_audio_aac_config {
|
||||
signed short format;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned short audio_object;
|
||||
unsigned short ep_config;
|
||||
unsigned short aac_section_data_resilience_flag;
|
||||
unsigned short aac_scalefactor_data_resilience_flag;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned short aac_spectral_data_resilience_flag;
|
||||
unsigned short sbr_on_flag;
|
||||
unsigned short sbr_ps_on_flag;
|
||||
unsigned short dual_mono_mode;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned short channel_configuration;
|
||||
};
|
||||
struct msm_audio_aac_enc_config {
|
||||
uint32_t channels;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t sample_rate;
|
||||
uint32_t bit_rate;
|
||||
uint32_t stream_format;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
|
71
libc/kernel/common/linux/msm_audio_acdb.h
Normal file
71
libc/kernel/common/linux/msm_audio_acdb.h
Normal file
@@ -0,0 +1,71 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __MSM_AUDIO_ACDB_H
|
||||
#define __MSM_AUDIO_ACDB_H
|
||||
#include <linux/msm_audio.h>
|
||||
#define AUDIO_SET_VOCPROC_CAL _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+0), unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SET_VOCPROC_STREAM_CAL _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+1), unsigned)
|
||||
#define AUDIO_SET_VOCPROC_VOL_CAL _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+2), unsigned)
|
||||
#define AUDIO_SET_AUDPROC_RX_CAL _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+3), unsigned)
|
||||
#define AUDIO_SET_AUDPROC_RX_STREAM_CAL _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+4), unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SET_AUDPROC_RX_VOL_CAL _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+5), unsigned)
|
||||
#define AUDIO_SET_AUDPROC_TX_CAL _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+6), unsigned)
|
||||
#define AUDIO_SET_AUDPROC_TX_STREAM_CAL _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+7), unsigned)
|
||||
#define AUDIO_SET_AUDPROC_TX_VOL_CAL _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+8), unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SET_SIDETONE_CAL _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+9), unsigned)
|
||||
#define AUDIO_SET_ANC_CAL _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+10), unsigned)
|
||||
#define AUDIO_SET_VOICE_RX_TOPOLOGY _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+11), unsigned)
|
||||
#define AUDIO_SET_VOICE_TX_TOPOLOGY _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+12), unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SET_ADM_RX_TOPOLOGY _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+13), unsigned)
|
||||
#define AUDIO_SET_ADM_TX_TOPOLOGY _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+14), unsigned)
|
||||
#define AUDIO_SET_ASM_TOPOLOGY _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+15), unsigned)
|
||||
#define AUDIO_SET_AFE_TX_CAL _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+16), unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SET_AFE_RX_CAL _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+17), unsigned)
|
||||
#define AUDIO_MAX_ACDB_IOCTL (AUDIO_MAX_COMMON_IOCTL_NUM+30)
|
||||
struct cal_block {
|
||||
uint32_t cal_size;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t cal_offset;
|
||||
};
|
||||
struct sidetone_cal {
|
||||
uint16_t enable;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t gain;
|
||||
};
|
||||
#define AUDIO_GET_RTAC_ADM_INFO _IOR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_ACDB_IOCTL+1), unsigned)
|
||||
#define AUDIO_GET_RTAC_VOICE_INFO _IOR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_ACDB_IOCTL+2), unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_GET_RTAC_ADM_CAL _IOWR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_ACDB_IOCTL+3), unsigned)
|
||||
#define AUDIO_SET_RTAC_ADM_CAL _IOWR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_ACDB_IOCTL+4), unsigned)
|
||||
#define AUDIO_GET_RTAC_ASM_CAL _IOWR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_ACDB_IOCTL+5), unsigned)
|
||||
#define AUDIO_SET_RTAC_ASM_CAL _IOWR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_ACDB_IOCTL+6), unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_GET_RTAC_CVS_CAL _IOWR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_ACDB_IOCTL+7), unsigned)
|
||||
#define AUDIO_SET_RTAC_CVS_CAL _IOWR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_ACDB_IOCTL+8), unsigned)
|
||||
#define AUDIO_GET_RTAC_CVP_CAL _IOWR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_ACDB_IOCTL+9), unsigned)
|
||||
#define AUDIO_SET_RTAC_CVP_CAL _IOWR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_ACDB_IOCTL+10), unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_MAX_RTAC_IOCTL (AUDIO_MAX_ACDB_IOCTL+20)
|
||||
#endif
|
||||
|
@@ -16,33 +16,34 @@
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _PGTABLE_NOPMD_H
|
||||
#define _PGTABLE_NOPMD_H
|
||||
#ifndef __ASSEMBLY__
|
||||
#include <asm-generic/pgtable-nopud.h>
|
||||
#ifndef __MSM_AUDIO_WMA_H
|
||||
#define __MSM_AUDIO_WMA_H
|
||||
#define AUDIO_GET_WMA_CONFIG _IOR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+0), unsigned)
|
||||
#define AUDIO_SET_WMA_CONFIG _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+1), unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct mm_struct;
|
||||
#define __PAGETABLE_PMD_FOLDED
|
||||
typedef struct { pud_t pud; } pmd_t;
|
||||
#define PMD_SHIFT PUD_SHIFT
|
||||
#define AUDIO_GET_WMA_CONFIG_V2 _IOR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+2), struct msm_audio_wma_config_v2)
|
||||
#define AUDIO_SET_WMA_CONFIG_V2 _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+3), struct msm_audio_wma_config_v2)
|
||||
struct msm_audio_wma_config {
|
||||
unsigned short armdatareqthr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define PTRS_PER_PMD 1
|
||||
#define PMD_SIZE (1UL << PMD_SHIFT)
|
||||
#define PMD_MASK (~(PMD_SIZE-1))
|
||||
#define pmd_ERROR(pmd) (pud_ERROR((pmd).pud))
|
||||
unsigned short channelsdecoded;
|
||||
unsigned short wmabytespersec;
|
||||
unsigned short wmasamplingfreq;
|
||||
unsigned short wmaencoderopts;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define pud_populate(mm, pmd, pte) do { } while (0)
|
||||
#define set_pud(pudptr, pudval) set_pmd((pmd_t *)(pudptr), (pmd_t) { pudval })
|
||||
#define pmd_val(x) (pud_val((x).pud))
|
||||
#define __pmd(x) ((pmd_t) { __pud(x) } )
|
||||
};
|
||||
struct msm_audio_wma_config_v2 {
|
||||
unsigned short format_tag;
|
||||
unsigned short numchannels;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define pud_page(pud) (pmd_page((pmd_t){ pud }))
|
||||
#define pud_page_vaddr(pud) (pmd_page_vaddr((pmd_t){ pud }))
|
||||
#define pmd_alloc_one(mm, address) NULL
|
||||
#define __pmd_free_tlb(tlb, x, a) do { } while (0)
|
||||
uint32_t samplingrate;
|
||||
uint32_t avgbytespersecond;
|
||||
unsigned short block_align;
|
||||
unsigned short validbitspersample;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#undef pmd_addr_end
|
||||
#define pmd_addr_end(addr, end) (end)
|
||||
#endif
|
||||
uint32_t channelmask;
|
||||
unsigned short encodeopt;
|
||||
};
|
||||
#endif
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
|
41
libc/kernel/common/linux/msm_audio_wmapro.h
Normal file
41
libc/kernel/common/linux/msm_audio_wmapro.h
Normal file
@@ -0,0 +1,41 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __MSM_AUDIO_WMAPRO_H
|
||||
#define __MSM_AUDIO_WMAPRO_H
|
||||
#define AUDIO_GET_WMAPRO_CONFIG _IOR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+0), unsigned)
|
||||
#define AUDIO_SET_WMAPRO_CONFIG _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM+1), unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_audio_wmapro_config {
|
||||
unsigned short armdatareqthr;
|
||||
uint8_t validbitspersample;
|
||||
uint8_t numchannels;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned short formattag;
|
||||
unsigned short samplingrate;
|
||||
unsigned short avgbytespersecond;
|
||||
unsigned short asfpacketlength;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned short channelmask;
|
||||
unsigned short encodeopt;
|
||||
unsigned short advancedencodeopt;
|
||||
uint32_t advancedencodeopt2;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#endif
|
||||
|
39
libc/kernel/common/linux/msm_charm.h
Normal file
39
libc/kernel/common/linux/msm_charm.h
Normal file
@@ -0,0 +1,39 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _ARCH_ARM_MACH_MSM_MDM_IOCTLS_H
|
||||
#define _ARXH_ARM_MACH_MSM_MDM_IOCTLS_H
|
||||
#define CHARM_CODE 0xCC
|
||||
#define WAKE_CHARM _IO(CHARM_CODE, 1)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define RESET_CHARM _IO(CHARM_CODE, 2)
|
||||
#define CHECK_FOR_BOOT _IOR(CHARM_CODE, 3, int)
|
||||
#define WAIT_FOR_BOOT _IO(CHARM_CODE, 4)
|
||||
#define NORMAL_BOOT_DONE _IOW(CHARM_CODE, 5, int)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define RAM_DUMP_DONE _IOW(CHARM_CODE, 6, int)
|
||||
#define WAIT_FOR_RESTART _IOR(CHARM_CODE, 7, int)
|
||||
#define GET_DLOAD_STATUS _IOR(CHARM_CODE, 8, int)
|
||||
enum charm_boot_type {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CHARM_NORMAL_BOOT = 0,
|
||||
CHARM_RAM_DUMPS,
|
||||
};
|
||||
#endif
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
|
31
libc/kernel/common/linux/msm_dsps.h
Normal file
31
libc/kernel/common/linux/msm_dsps.h
Normal file
@@ -0,0 +1,31 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _DSPS_H_
|
||||
#define _DSPS_H_
|
||||
#include <linux/ioctl.h>
|
||||
#define DSPS_IOCTL_MAGIC 'd'
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define DSPS_IOCTL_ON _IO(DSPS_IOCTL_MAGIC, 1)
|
||||
#define DSPS_IOCTL_OFF _IO(DSPS_IOCTL_MAGIC, 2)
|
||||
#define DSPS_IOCTL_READ_SLOW_TIMER _IOR(DSPS_IOCTL_MAGIC, 3, unsigned int*)
|
||||
#define DSPS_IOCTL_READ_FAST_TIMER _IOR(DSPS_IOCTL_MAGIC, 4, unsigned int*)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define DSPS_IOCTL_RESET _IO(DSPS_IOCTL_MAGIC, 5)
|
||||
#endif
|
||||
|
105
libc/kernel/common/linux/msm_ion.h
Normal file
105
libc/kernel/common/linux/msm_ion.h
Normal file
@@ -0,0 +1,105 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __LINUX_MSM_ION_H__
|
||||
#define __LINUX_MSM_ION_H__
|
||||
#include <linux/ion.h>
|
||||
enum msm_ion_heap_types {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ION_HEAP_TYPE_IOMMU = ION_HEAP_TYPE_CUSTOM + 1,
|
||||
ION_HEAP_TYPE_CP = ION_HEAP_TYPE_CUSTOM + 2,
|
||||
};
|
||||
enum ion_heap_ids {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
INVALID_HEAP_ID = -1,
|
||||
ION_CP_MM_HEAP_ID = 8,
|
||||
ION_CP_MFC_HEAP_ID = 12,
|
||||
ION_CP_WB_HEAP_ID = 16,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ION_CAMERA_HEAP_ID = 20,
|
||||
ION_SF_HEAP_ID = 24,
|
||||
ION_IOMMU_HEAP_ID = 25,
|
||||
ION_QSECOM_HEAP_ID = 27,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ION_AUDIO_HEAP_ID = 28,
|
||||
ION_MM_FIRMWARE_HEAP_ID = 29,
|
||||
ION_SYSTEM_HEAP_ID = 30,
|
||||
ION_HEAP_ID_RESERVED = 31
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum ion_fixed_position {
|
||||
NOT_FIXED,
|
||||
FIXED_LOW,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
FIXED_MIDDLE,
|
||||
FIXED_HIGH,
|
||||
};
|
||||
enum cp_mem_usage {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VIDEO_BITSTREAM = 0x1,
|
||||
VIDEO_PIXEL = 0x2,
|
||||
VIDEO_NONPIXEL = 0x3,
|
||||
MAX_USAGE = 0x4,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
UNKNOWN = 0x7FFFFFFF,
|
||||
};
|
||||
#define ION_HEAP_CP_MASK (1 << ION_HEAP_TYPE_CP)
|
||||
#define ION_SECURE (1 << ION_HEAP_ID_RESERVED)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ION_HEAP(bit) (1 << (bit))
|
||||
#define ION_VMALLOC_HEAP_NAME "vmalloc"
|
||||
#define ION_AUDIO_HEAP_NAME "audio"
|
||||
#define ION_SF_HEAP_NAME "sf"
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ION_MM_HEAP_NAME "mm"
|
||||
#define ION_CAMERA_HEAP_NAME "camera_preview"
|
||||
#define ION_IOMMU_HEAP_NAME "iommu"
|
||||
#define ION_MFC_HEAP_NAME "mfc"
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ION_WB_HEAP_NAME "wb"
|
||||
#define ION_MM_FIRMWARE_HEAP_NAME "mm_fw"
|
||||
#define ION_QSECOM_HEAP_NAME "qsecom"
|
||||
#define ION_FMEM_HEAP_NAME "fmem"
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define CACHED 1
|
||||
#define UNCACHED 0
|
||||
#define ION_CACHE_SHIFT 0
|
||||
#define ION_SET_CACHE(__cache) ((__cache) << ION_CACHE_SHIFT)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ION_IS_CACHED(__flags) ((__flags) & (1 << ION_CACHE_SHIFT))
|
||||
struct ion_flush_data {
|
||||
struct ion_handle *handle;
|
||||
int fd;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
void *vaddr;
|
||||
unsigned int offset;
|
||||
unsigned int length;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ion_flag_data {
|
||||
struct ion_handle *handle;
|
||||
unsigned long flags;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ION_IOC_CLEAN_CACHES _IOWR(ION_IOC_MAGIC, 20, struct ion_flush_data)
|
||||
#define ION_IOC_INV_CACHES _IOWR(ION_IOC_MAGIC, 21, struct ion_flush_data)
|
||||
#define ION_IOC_CLEAN_INV_CACHES _IOWR(ION_IOC_MAGIC, 22, struct ion_flush_data)
|
||||
#define ION_IOC_GET_FLAGS _IOWR(ION_IOC_MAGIC, 23, struct ion_flag_data)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
|
@@ -18,67 +18,112 @@
|
||||
****************************************************************************/
|
||||
#ifndef _MSM_KGSL_H
|
||||
#define _MSM_KGSL_H
|
||||
#define KGSL_CONTEXT_SAVE_GMEM 1
|
||||
#define KGSL_CONTEXT_NO_GMEM_ALLOC 2
|
||||
#define KGSL_VERSION_MAJOR 3
|
||||
#define KGSL_VERSION_MINOR 12
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_CONTEXT_SAVE_GMEM 0x00000001
|
||||
#define KGSL_CONTEXT_NO_GMEM_ALLOC 0x00000002
|
||||
#define KGSL_CONTEXT_SUBMIT_IB_LIST 0x00000004
|
||||
#define KGSL_CONTEXT_CTX_SWITCH 0x00000008
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_CONTEXT_PREAMBLE 0x00000010
|
||||
#define KGSL_CONTEXT_TRASH_STATE 0x00000020
|
||||
#define KGSL_CONTEXT_PER_CONTEXT_TS 0x00000040
|
||||
#define KGSL_CONTEXT_INVALID 0xffffffff
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_MEMFLAGS_GPUREADONLY 0x01000000
|
||||
#define KGSL_FLAGS_NORMALMODE 0x00000000
|
||||
#define KGSL_FLAGS_SAFEMODE 0x00000001
|
||||
#define KGSL_FLAGS_INITIALIZED0 0x00000002
|
||||
#define KGSL_FLAGS_INITIALIZED 0x00000004
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_FLAGS_INITIALIZED 0x00000004
|
||||
#define KGSL_FLAGS_STARTED 0x00000008
|
||||
#define KGSL_FLAGS_ACTIVE 0x00000010
|
||||
#define KGSL_FLAGS_RESERVED0 0x00000020
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_FLAGS_RESERVED1 0x00000040
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_FLAGS_RESERVED2 0x00000080
|
||||
enum kgsl_deviceid {
|
||||
KGSL_DEVICE_ANY = 0x00000000,
|
||||
KGSL_DEVICE_YAMATO = 0x00000001,
|
||||
#define KGSL_FLAGS_SOFT_RESET 0x00000100
|
||||
#define KGSL_FLAGS_PER_CONTEXT_TIMESTAMPS 0x00000200
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
KGSL_DEVICE_G12 = 0x00000002,
|
||||
KGSL_DEVICE_MAX = 0x00000002
|
||||
#define KGSL_CLK_SRC 0x00000001
|
||||
#define KGSL_CLK_CORE 0x00000002
|
||||
#define KGSL_CLK_IFACE 0x00000004
|
||||
#define KGSL_CLK_MEM 0x00000008
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_CLK_MEM_IFACE 0x00000010
|
||||
#define KGSL_CLK_AXI 0x00000020
|
||||
enum kgsl_ctx_reset_stat {
|
||||
KGSL_CTX_STAT_NO_ERROR = 0x00000000,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
KGSL_CTX_STAT_GUILTY_CONTEXT_RESET_EXT = 0x00000001,
|
||||
KGSL_CTX_STAT_INNOCENT_CONTEXT_RESET_EXT = 0x00000002,
|
||||
KGSL_CTX_STAT_UNKNOWN_CONTEXT_RESET_EXT = 0x00000003
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_CONVERT_TO_MBPS(val) (val*1000*1000U)
|
||||
enum kgsl_deviceid {
|
||||
KGSL_DEVICE_3D0 = 0x00000000,
|
||||
KGSL_DEVICE_2D0 = 0x00000001,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
KGSL_DEVICE_2D1 = 0x00000002,
|
||||
KGSL_DEVICE_MAX = 0x00000003
|
||||
};
|
||||
enum kgsl_user_mem_type {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
KGSL_USER_MEM_TYPE_PMEM = 0x00000000,
|
||||
KGSL_USER_MEM_TYPE_ASHMEM = 0x00000001,
|
||||
KGSL_USER_MEM_TYPE_ADDR = 0x00000002,
|
||||
KGSL_USER_MEM_TYPE_ION = 0x00000003,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
KGSL_USER_MEM_TYPE_MAX = 0x00000004,
|
||||
};
|
||||
struct kgsl_devinfo {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int device_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int chip_id;
|
||||
unsigned int mmu_enabled;
|
||||
unsigned int gmem_gpubaseaddr;
|
||||
unsigned int gpu_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int gmem_hostbaseaddr;
|
||||
unsigned int gmem_sizebytes;
|
||||
};
|
||||
struct kgsl_devmemstore {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
volatile unsigned int soptimestamp;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int sbz;
|
||||
volatile unsigned int eoptimestamp;
|
||||
unsigned int sbz2;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
volatile unsigned int ts_cmp_enable;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int sbz3;
|
||||
volatile unsigned int ref_wait_ts;
|
||||
unsigned int sbz4;
|
||||
unsigned int current_context;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int sbz5;
|
||||
};
|
||||
#define KGSL_DEVICE_MEMSTORE_OFFSET(field) offsetof(struct kgsl_devmemstore, field)
|
||||
#define KGSL_MEMSTORE_OFFSET(ctxt_id, field) ((ctxt_id)*sizeof(struct kgsl_devmemstore) + offsetof(struct kgsl_devmemstore, field))
|
||||
enum kgsl_timestamp_type {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
KGSL_TIMESTAMP_CONSUMED = 0x00000001,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
KGSL_TIMESTAMP_RETIRED = 0x00000002,
|
||||
KGSL_TIMESTAMP_MAX = 0x00000002,
|
||||
KGSL_TIMESTAMP_QUEUED = 0x00000003,
|
||||
};
|
||||
enum kgsl_property_type {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum kgsl_property_type {
|
||||
KGSL_PROP_DEVICE_INFO = 0x00000001,
|
||||
KGSL_PROP_DEVICE_SHADOW = 0x00000002,
|
||||
KGSL_PROP_DEVICE_POWER = 0x00000003,
|
||||
KGSL_PROP_SHMEM = 0x00000004,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
KGSL_PROP_SHMEM = 0x00000004,
|
||||
KGSL_PROP_SHMEM_APERTURES = 0x00000005,
|
||||
KGSL_PROP_MMU_ENABLE = 0x00000006,
|
||||
KGSL_PROP_INTERRUPT_WAITS = 0x00000007,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
KGSL_PROP_VERSION = 0x00000008,
|
||||
KGSL_PROP_GPU_RESET_STAT = 0x00000009,
|
||||
KGSL_PROP_PWRCTRL = 0x0000000E,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct kgsl_shadowprop {
|
||||
@@ -87,6 +132,21 @@ struct kgsl_shadowprop {
|
||||
unsigned int flags;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct kgsl_version {
|
||||
unsigned int drv_major;
|
||||
unsigned int drv_minor;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int dev_major;
|
||||
unsigned int dev_minor;
|
||||
};
|
||||
struct kgsl_ibdesc {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int gpuaddr;
|
||||
void *hostptr;
|
||||
unsigned int sizedwords;
|
||||
unsigned int ctrl;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define KGSL_IOC_TYPE 0x09
|
||||
struct kgsl_device_getproperty {
|
||||
unsigned int type;
|
||||
@@ -96,67 +156,112 @@ struct kgsl_device_getproperty {
|
||||
};
|
||||
#define IOCTL_KGSL_DEVICE_GETPROPERTY _IOWR(KGSL_IOC_TYPE, 0x2, struct kgsl_device_getproperty)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct kgsl_device_regread {
|
||||
unsigned int offsetwords;
|
||||
unsigned int value;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_DEVICE_REGREAD _IOWR(KGSL_IOC_TYPE, 0x3, struct kgsl_device_regread)
|
||||
struct kgsl_device_waittimestamp {
|
||||
unsigned int timestamp;
|
||||
unsigned int timeout;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_DEVICE_WAITTIMESTAMP _IOW(KGSL_IOC_TYPE, 0x6, struct kgsl_device_waittimestamp)
|
||||
struct kgsl_ringbuffer_issueibcmds {
|
||||
unsigned int drawctxt_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int ibaddr;
|
||||
unsigned int sizedwords;
|
||||
struct kgsl_device_waittimestamp_ctxtid {
|
||||
unsigned int context_id;
|
||||
unsigned int timestamp;
|
||||
unsigned int flags;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int timeout;
|
||||
};
|
||||
#define IOCTL_KGSL_DEVICE_WAITTIMESTAMP_CTXTID _IOW(KGSL_IOC_TYPE, 0x7, struct kgsl_device_waittimestamp_ctxtid)
|
||||
struct kgsl_ringbuffer_issueibcmds {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int drawctxt_id;
|
||||
unsigned int ibdesc_addr;
|
||||
unsigned int numibs;
|
||||
unsigned int timestamp;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int flags;
|
||||
};
|
||||
#define IOCTL_KGSL_RINGBUFFER_ISSUEIBCMDS _IOWR(KGSL_IOC_TYPE, 0x10, struct kgsl_ringbuffer_issueibcmds)
|
||||
struct kgsl_cmdstream_readtimestamp {
|
||||
unsigned int type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int type;
|
||||
unsigned int timestamp;
|
||||
};
|
||||
#define IOCTL_KGSL_CMDSTREAM_READTIMESTAMP _IOR(KGSL_IOC_TYPE, 0x11, struct kgsl_cmdstream_readtimestamp)
|
||||
struct kgsl_cmdstream_freememontimestamp {
|
||||
#define IOCTL_KGSL_CMDSTREAM_READTIMESTAMP_OLD _IOR(KGSL_IOC_TYPE, 0x11, struct kgsl_cmdstream_readtimestamp)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_CMDSTREAM_READTIMESTAMP _IOWR(KGSL_IOC_TYPE, 0x11, struct kgsl_cmdstream_readtimestamp)
|
||||
struct kgsl_cmdstream_freememontimestamp {
|
||||
unsigned int gpuaddr;
|
||||
unsigned int type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int timestamp;
|
||||
};
|
||||
#define IOCTL_KGSL_CMDSTREAM_FREEMEMONTIMESTAMP _IOW(KGSL_IOC_TYPE, 0x12, struct kgsl_cmdstream_freememontimestamp)
|
||||
#define IOCTL_KGSL_CMDSTREAM_FREEMEMONTIMESTAMP_OLD _IOR(KGSL_IOC_TYPE, 0x12, struct kgsl_cmdstream_freememontimestamp)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_CMDSTREAM_FREEMEMONTIMESTAMP _IOR(KGSL_IOC_TYPE, 0x12, struct kgsl_cmdstream_freememontimestamp)
|
||||
struct kgsl_drawctxt_create {
|
||||
unsigned int flags;
|
||||
unsigned int drawctxt_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_DRAWCTXT_CREATE _IOWR(KGSL_IOC_TYPE, 0x13, struct kgsl_drawctxt_create)
|
||||
struct kgsl_drawctxt_destroy {
|
||||
unsigned int drawctxt_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define IOCTL_KGSL_DRAWCTXT_DESTROY _IOW(KGSL_IOC_TYPE, 0x14, struct kgsl_drawctxt_destroy)
|
||||
struct kgsl_sharedmem_from_pmem {
|
||||
int pmem_fd;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_DRAWCTXT_DESTROY _IOW(KGSL_IOC_TYPE, 0x14, struct kgsl_drawctxt_destroy)
|
||||
struct kgsl_map_user_mem {
|
||||
int fd;
|
||||
unsigned int gpuaddr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int len;
|
||||
unsigned int offset;
|
||||
unsigned int hostptr;
|
||||
enum kgsl_user_mem_type memtype;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int reserved;
|
||||
};
|
||||
#define IOCTL_KGSL_MAP_USER_MEM _IOWR(KGSL_IOC_TYPE, 0x15, struct kgsl_map_user_mem)
|
||||
struct kgsl_cmdstream_readtimestamp_ctxtid {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int context_id;
|
||||
unsigned int type;
|
||||
unsigned int timestamp;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_CMDSTREAM_READTIMESTAMP_CTXTID _IOWR(KGSL_IOC_TYPE, 0x16, struct kgsl_cmdstream_readtimestamp_ctxtid)
|
||||
struct kgsl_cmdstream_freememontimestamp_ctxtid {
|
||||
unsigned int context_id;
|
||||
unsigned int gpuaddr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int type;
|
||||
unsigned int timestamp;
|
||||
};
|
||||
#define IOCTL_KGSL_CMDSTREAM_FREEMEMONTIMESTAMP_CTXTID _IOW(KGSL_IOC_TYPE, 0x17, struct kgsl_cmdstream_freememontimestamp_ctxtid)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct kgsl_sharedmem_from_pmem {
|
||||
int pmem_fd;
|
||||
unsigned int gpuaddr;
|
||||
unsigned int len;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int offset;
|
||||
};
|
||||
#define IOCTL_KGSL_SHAREDMEM_FROM_PMEM _IOWR(KGSL_IOC_TYPE, 0x20, struct kgsl_sharedmem_from_pmem)
|
||||
struct kgsl_sharedmem_free {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int gpuaddr;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_SHAREDMEM_FREE _IOW(KGSL_IOC_TYPE, 0x21, struct kgsl_sharedmem_free)
|
||||
struct kgsl_cff_user_event {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned char cff_opcode;
|
||||
unsigned int op1;
|
||||
unsigned int op2;
|
||||
unsigned int op3;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int op4;
|
||||
unsigned int op5;
|
||||
unsigned int __pad[2];
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_CFF_USER_EVENT _IOW(KGSL_IOC_TYPE, 0x31, struct kgsl_cff_user_event)
|
||||
struct kgsl_gmem_desc {
|
||||
unsigned int x;
|
||||
unsigned int y;
|
||||
@@ -191,7 +296,7 @@ struct kgsl_sharedmem_from_vmalloc {
|
||||
unsigned int gpuaddr;
|
||||
unsigned int hostptr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int force_no_low_watermark;
|
||||
unsigned int flags;
|
||||
};
|
||||
#define IOCTL_KGSL_SHAREDMEM_FROM_VMALLOC _IOWR(KGSL_IOC_TYPE, 0x23, struct kgsl_sharedmem_from_vmalloc)
|
||||
#define IOCTL_KGSL_SHAREDMEM_FLUSH_CACHE _IOW(KGSL_IOC_TYPE, 0x24, struct kgsl_sharedmem_free)
|
||||
@@ -202,4 +307,60 @@ struct kgsl_drawctxt_set_bin_base_offset {
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_DRAWCTXT_SET_BIN_BASE_OFFSET _IOW(KGSL_IOC_TYPE, 0x25, struct kgsl_drawctxt_set_bin_base_offset)
|
||||
enum kgsl_cmdwindow_type {
|
||||
KGSL_CMDWINDOW_MIN = 0x00000000,
|
||||
KGSL_CMDWINDOW_2D = 0x00000000,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
KGSL_CMDWINDOW_3D = 0x00000001,
|
||||
KGSL_CMDWINDOW_MMU = 0x00000002,
|
||||
KGSL_CMDWINDOW_ARBITER = 0x000000FF,
|
||||
KGSL_CMDWINDOW_MAX = 0x000000FF,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct kgsl_cmdwindow_write {
|
||||
enum kgsl_cmdwindow_type target;
|
||||
unsigned int addr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int data;
|
||||
};
|
||||
#define IOCTL_KGSL_CMDWINDOW_WRITE _IOW(KGSL_IOC_TYPE, 0x2e, struct kgsl_cmdwindow_write)
|
||||
struct kgsl_gpumem_alloc {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long gpuaddr;
|
||||
size_t size;
|
||||
unsigned int flags;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_GPUMEM_ALLOC _IOWR(KGSL_IOC_TYPE, 0x2f, struct kgsl_gpumem_alloc)
|
||||
struct kgsl_cff_syncmem {
|
||||
unsigned int gpuaddr;
|
||||
unsigned int len;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int __pad[2];
|
||||
};
|
||||
#define IOCTL_KGSL_CFF_SYNCMEM _IOW(KGSL_IOC_TYPE, 0x30, struct kgsl_cff_syncmem)
|
||||
struct kgsl_timestamp_event {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int type;
|
||||
unsigned int timestamp;
|
||||
unsigned int context_id;
|
||||
void *priv;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
size_t len;
|
||||
};
|
||||
#define IOCTL_KGSL_TIMESTAMP_EVENT_OLD _IOW(KGSL_IOC_TYPE, 0x31, struct kgsl_timestamp_event)
|
||||
#define KGSL_TIMESTAMP_EVENT_GENLOCK 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct kgsl_timestamp_event_genlock {
|
||||
int handle;
|
||||
};
|
||||
#define KGSL_TIMESTAMP_EVENT_FENCE 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct kgsl_timestamp_event_fence {
|
||||
int fence_fd;
|
||||
};
|
||||
#define IOCTL_KGSL_SETPROPERTY _IOW(KGSL_IOC_TYPE, 0x32, struct kgsl_device_getproperty)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_TIMESTAMP_EVENT _IOWR(KGSL_IOC_TYPE, 0x33, struct kgsl_timestamp_event)
|
||||
#endif
|
||||
|
||||
|
@@ -19,15 +19,70 @@
|
||||
#ifndef _MSM_MDP_H_
|
||||
#define _MSM_MDP_H_
|
||||
#include <linux/types.h>
|
||||
#define MSMFB_IOCTL_MAGIC 'm'
|
||||
#include <linux/fb.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSMFB_IOCTL_MAGIC 'm'
|
||||
#define MSMFB_GRP_DISP _IOW(MSMFB_IOCTL_MAGIC, 1, unsigned int)
|
||||
#define MSMFB_BLIT _IOW(MSMFB_IOCTL_MAGIC, 2, unsigned int)
|
||||
#define MSMFB_SUSPEND_SW_REFRESHER _IOW(MSMFB_IOCTL_MAGIC, 128, unsigned int)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSMFB_RESUME_SW_REFRESHER _IOW(MSMFB_IOCTL_MAGIC, 129, unsigned int)
|
||||
#define MSMFB_CURSOR _IOW(MSMFB_IOCTL_MAGIC, 130, struct fb_cursor)
|
||||
#define MSMFB_SET_LUT _IOW(MSMFB_IOCTL_MAGIC, 131, struct fb_cmap)
|
||||
#define MSMFB_HISTOGRAM _IOWR(MSMFB_IOCTL_MAGIC, 132, struct mdp_histogram_data)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSMFB_GET_CCS_MATRIX _IOWR(MSMFB_IOCTL_MAGIC, 133, struct mdp_ccs)
|
||||
#define MSMFB_SET_CCS_MATRIX _IOW(MSMFB_IOCTL_MAGIC, 134, struct mdp_ccs)
|
||||
#define MSMFB_OVERLAY_SET _IOWR(MSMFB_IOCTL_MAGIC, 135, struct mdp_overlay)
|
||||
#define MSMFB_OVERLAY_UNSET _IOW(MSMFB_IOCTL_MAGIC, 136, unsigned int)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSMFB_OVERLAY_PLAY _IOW(MSMFB_IOCTL_MAGIC, 137, struct msmfb_overlay_data)
|
||||
#define MSMFB_OVERLAY_QUEUE MSMFB_OVERLAY_PLAY
|
||||
#define MSMFB_GET_PAGE_PROTECTION _IOR(MSMFB_IOCTL_MAGIC, 138, struct mdp_page_protection)
|
||||
#define MSMFB_SET_PAGE_PROTECTION _IOW(MSMFB_IOCTL_MAGIC, 139, struct mdp_page_protection)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSMFB_OVERLAY_GET _IOR(MSMFB_IOCTL_MAGIC, 140, struct mdp_overlay)
|
||||
#define MSMFB_OVERLAY_PLAY_ENABLE _IOW(MSMFB_IOCTL_MAGIC, 141, unsigned int)
|
||||
#define MSMFB_OVERLAY_BLT _IOWR(MSMFB_IOCTL_MAGIC, 142, struct msmfb_overlay_blt)
|
||||
#define MSMFB_OVERLAY_BLT_OFFSET _IOW(MSMFB_IOCTL_MAGIC, 143, unsigned int)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSMFB_HISTOGRAM_START _IOR(MSMFB_IOCTL_MAGIC, 144, struct mdp_histogram_start_req)
|
||||
#define MSMFB_HISTOGRAM_STOP _IOR(MSMFB_IOCTL_MAGIC, 145, unsigned int)
|
||||
#define MSMFB_NOTIFY_UPDATE _IOW(MSMFB_IOCTL_MAGIC, 146, unsigned int)
|
||||
#define MSMFB_OVERLAY_3D _IOWR(MSMFB_IOCTL_MAGIC, 147, struct msmfb_overlay_3d)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSMFB_MIXER_INFO _IOWR(MSMFB_IOCTL_MAGIC, 148, struct msmfb_mixer_info_req)
|
||||
#define MSMFB_OVERLAY_PLAY_WAIT _IOWR(MSMFB_IOCTL_MAGIC, 149, struct msmfb_overlay_data)
|
||||
#define MSMFB_WRITEBACK_INIT _IO(MSMFB_IOCTL_MAGIC, 150)
|
||||
#define MSMFB_WRITEBACK_START _IO(MSMFB_IOCTL_MAGIC, 151)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSMFB_WRITEBACK_STOP _IO(MSMFB_IOCTL_MAGIC, 152)
|
||||
#define MSMFB_WRITEBACK_QUEUE_BUFFER _IOW(MSMFB_IOCTL_MAGIC, 153, struct msmfb_data)
|
||||
#define MSMFB_WRITEBACK_DEQUEUE_BUFFER _IOW(MSMFB_IOCTL_MAGIC, 154, struct msmfb_data)
|
||||
#define MSMFB_WRITEBACK_TERMINATE _IO(MSMFB_IOCTL_MAGIC, 155)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSMFB_MDP_PP _IOWR(MSMFB_IOCTL_MAGIC, 156, struct msmfb_mdp_pp)
|
||||
#define MSMFB_OVERLAY_VSYNC_CTRL _IOW(MSMFB_IOCTL_MAGIC, 160, unsigned int)
|
||||
#define MSMFB_VSYNC_CTRL _IOW(MSMFB_IOCTL_MAGIC, 161, unsigned int)
|
||||
#define MSMFB_BUFFER_SYNC _IOW(MSMFB_IOCTL_MAGIC, 162, struct mdp_buf_sync)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSMFB_OVERLAY_COMMIT _IOW(MSMFB_IOCTL_MAGIC, 163, unsigned int)
|
||||
#define MSMFB_DISPLAY_COMMIT _IOW(MSMFB_IOCTL_MAGIC, 164, struct mdp_display_commit)
|
||||
#define FB_TYPE_3D_PANEL 0x10101010
|
||||
#define MDP_IMGTYPE2_START 0x10000
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSMFB_DRIVER_VERSION 0xF9E8D701
|
||||
enum {
|
||||
NOTIFY_UPDATE_START,
|
||||
NOTIFY_UPDATE_STOP,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum {
|
||||
MDP_RGB_565,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MDP_XRGB_8888,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MDP_Y_CBCR_H2V2,
|
||||
MDP_Y_CBCR_H2V2_ADRENO,
|
||||
MDP_ARGB_8888,
|
||||
MDP_RGB_888,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
@@ -36,17 +91,47 @@ enum {
|
||||
MDP_Y_CRCB_H2V1,
|
||||
MDP_Y_CBCR_H2V1,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MDP_Y_CRCB_H1V2,
|
||||
MDP_Y_CBCR_H1V2,
|
||||
MDP_RGBA_8888,
|
||||
MDP_BGRA_8888,
|
||||
MDP_RGBX_8888,
|
||||
MDP_IMGTYPE_LIMIT
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MDP_RGBX_8888,
|
||||
MDP_Y_CRCB_H2V2_TILE,
|
||||
MDP_Y_CBCR_H2V2_TILE,
|
||||
MDP_Y_CR_CB_H2V2,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MDP_Y_CR_CB_GH2V2,
|
||||
MDP_Y_CB_CR_H2V2,
|
||||
MDP_Y_CRCB_H1V1,
|
||||
MDP_Y_CBCR_H1V1,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MDP_YCRCB_H1V1,
|
||||
MDP_YCBCR_H1V1,
|
||||
MDP_BGR_565,
|
||||
MDP_IMGTYPE_LIMIT,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MDP_RGB_BORDERFILL,
|
||||
MDP_FB_FORMAT = MDP_IMGTYPE2_START,
|
||||
MDP_IMGTYPE_LIMIT2
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum {
|
||||
PMEM_IMG,
|
||||
FB_IMG,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum {
|
||||
HSIC_HUE = 0,
|
||||
HSIC_SAT,
|
||||
HSIC_INT,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
HSIC_CON,
|
||||
NUM_HSIC_PARAM,
|
||||
};
|
||||
#define MDSS_MDP_ROT_ONLY 0x80
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MDSS_MDP_RIGHT_MIXER 0x100
|
||||
#define MDP_ROT_NOP 0
|
||||
#define MDP_FLIP_LR 0x1
|
||||
#define MDP_FLIP_UD 0x2
|
||||
@@ -58,39 +143,389 @@ enum {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MDP_BLUR 0x10
|
||||
#define MDP_BLEND_FG_PREMULT 0x20000
|
||||
#define MDP_DEINTERLACE 0x80000000
|
||||
#define MDP_SHARPENING 0x40000000
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MDP_NO_DMA_BARRIER_START 0x20000000
|
||||
#define MDP_NO_DMA_BARRIER_END 0x10000000
|
||||
#define MDP_NO_BLIT 0x08000000
|
||||
#define MDP_BLIT_WITH_DMA_BARRIERS 0x000
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MDP_BLIT_WITH_NO_DMA_BARRIERS (MDP_NO_DMA_BARRIER_START | MDP_NO_DMA_BARRIER_END)
|
||||
#define MDP_BLIT_SRC_GEM 0x04000000
|
||||
#define MDP_BLIT_DST_GEM 0x02000000
|
||||
#define MDP_BLIT_NON_CACHED 0x01000000
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MDP_OV_PIPE_SHARE 0x00800000
|
||||
#define MDP_DEINTERLACE_ODD 0x00400000
|
||||
#define MDP_OV_PLAY_NOWAIT 0x00200000
|
||||
#define MDP_SOURCE_ROTATED_90 0x00100000
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MDP_OVERLAY_PP_CFG_EN 0x00080000
|
||||
#define MDP_BACKEND_COMPOSITION 0x00040000
|
||||
#define MDP_BORDERFILL_SUPPORTED 0x00010000
|
||||
#define MDP_SECURE_OVERLAY_SESSION 0x00008000
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MDP_MEMORY_ID_TYPE_FB 0x00001000
|
||||
#define MDP_TRANSP_NOP 0xffffffff
|
||||
#define MDP_ALPHA_NOP 0xff
|
||||
#define MDP_FB_PAGE_PROTECTION_NONCACHED (0)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MDP_FB_PAGE_PROTECTION_WRITECOMBINE (1)
|
||||
#define MDP_FB_PAGE_PROTECTION_WRITETHROUGHCACHE (2)
|
||||
#define MDP_FB_PAGE_PROTECTION_WRITEBACKCACHE (3)
|
||||
#define MDP_FB_PAGE_PROTECTION_WRITEBACKWACACHE (4)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MDP_FB_PAGE_PROTECTION_INVALID (5)
|
||||
#define MDP_NUM_FB_PAGE_PROTECTION_VALUES (5)
|
||||
struct mdp_rect {
|
||||
uint32_t x;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t y;
|
||||
uint32_t w;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t h;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct mdp_img {
|
||||
uint32_t width;
|
||||
uint32_t height;
|
||||
uint32_t format;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t offset;
|
||||
int memory_id;
|
||||
uint32_t priv;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MDP_CCS_RGB2YUV 0
|
||||
#define MDP_CCS_YUV2RGB 1
|
||||
#define MDP_CCS_SIZE 9
|
||||
#define MDP_BV_SIZE 3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct mdp_ccs {
|
||||
int direction;
|
||||
uint16_t ccs[MDP_CCS_SIZE];
|
||||
uint16_t bv[MDP_BV_SIZE];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct mdp_csc {
|
||||
int id;
|
||||
uint32_t csc_mv[9];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t csc_pre_bv[3];
|
||||
uint32_t csc_post_bv[3];
|
||||
uint32_t csc_pre_lv[6];
|
||||
uint32_t csc_post_lv[6];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define MDP_BLIT_REQ_VERSION 2
|
||||
struct mdp_blit_req {
|
||||
struct mdp_img src;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct mdp_img dst;
|
||||
struct mdp_rect src_rect;
|
||||
struct mdp_rect dst_rect;
|
||||
uint32_t alpha;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t transp_mask;
|
||||
uint32_t flags;
|
||||
int sharpening_strength;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct mdp_blit_req_list {
|
||||
uint32_t count;
|
||||
struct mdp_blit_req req[];
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSMFB_DATA_VERSION 2
|
||||
struct msmfb_data {
|
||||
uint32_t offset;
|
||||
int memory_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int id;
|
||||
uint32_t flags;
|
||||
uint32_t priv;
|
||||
uint32_t iova;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define MSMFB_NEW_REQUEST -1
|
||||
struct msmfb_overlay_data {
|
||||
uint32_t id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msmfb_data data;
|
||||
uint32_t version_key;
|
||||
struct msmfb_data plane1_data;
|
||||
struct msmfb_data plane2_data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msmfb_data dst_data;
|
||||
};
|
||||
struct msmfb_img {
|
||||
uint32_t width;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t height;
|
||||
uint32_t format;
|
||||
uint32_t offset;
|
||||
int memory_id;
|
||||
};
|
||||
#define MSMFB_WRITEBACK_DEQUEUE_BLOCKING 0x1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msmfb_writeback_data {
|
||||
struct msmfb_data buf_info;
|
||||
struct msmfb_img img;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MDP_PP_OPS_READ 0x2
|
||||
#define MDP_PP_OPS_WRITE 0x4
|
||||
struct mdp_qseed_cfg {
|
||||
uint32_t table_num;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t ops;
|
||||
uint32_t len;
|
||||
uint32_t *data;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct mdp_qseed_cfg_data {
|
||||
uint32_t block;
|
||||
struct mdp_qseed_cfg qseed_data;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MDP_OVERLAY_PP_CSC_CFG 0x1
|
||||
#define MDP_OVERLAY_PP_QSEED_CFG 0x2
|
||||
#define MDP_CSC_FLAG_ENABLE 0x1
|
||||
#define MDP_CSC_FLAG_YUV_IN 0x2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MDP_CSC_FLAG_YUV_OUT 0x4
|
||||
struct mdp_csc_cfg {
|
||||
uint32_t flags;
|
||||
uint32_t csc_mv[9];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t csc_pre_bv[3];
|
||||
uint32_t csc_post_bv[3];
|
||||
uint32_t csc_pre_lv[6];
|
||||
uint32_t csc_post_lv[6];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct mdp_blit_req {
|
||||
struct mdp_img src;
|
||||
struct mdp_img dst;
|
||||
struct mdp_csc_cfg_data {
|
||||
uint32_t block;
|
||||
struct mdp_csc_cfg csc_data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct mdp_overlay_pp_params {
|
||||
uint32_t config_ops;
|
||||
struct mdp_csc_cfg csc_cfg;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct mdp_qseed_cfg qseed_cfg[2];
|
||||
};
|
||||
struct mdp_overlay {
|
||||
struct msmfb_img src;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct mdp_rect src_rect;
|
||||
struct mdp_rect dst_rect;
|
||||
uint32_t z_order;
|
||||
uint32_t is_fg;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t alpha;
|
||||
uint32_t transp_mask;
|
||||
uint32_t flags;
|
||||
uint32_t id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t user_data[8];
|
||||
struct mdp_overlay_pp_params overlay_pp_cfg;
|
||||
};
|
||||
struct msmfb_overlay_3d {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t is_3d;
|
||||
uint32_t width;
|
||||
uint32_t height;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msmfb_overlay_blt {
|
||||
uint32_t enable;
|
||||
uint32_t offset;
|
||||
uint32_t width;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t height;
|
||||
uint32_t bpp;
|
||||
};
|
||||
struct mdp_histogram {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t frame_cnt;
|
||||
uint32_t bin_cnt;
|
||||
uint32_t *r;
|
||||
uint32_t *g;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t *b;
|
||||
};
|
||||
enum {
|
||||
MDP_BLOCK_RESERVED = 0,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MDP_BLOCK_OVERLAY_0,
|
||||
MDP_BLOCK_OVERLAY_1,
|
||||
MDP_BLOCK_VG_1,
|
||||
MDP_BLOCK_VG_2,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MDP_BLOCK_RGB_1,
|
||||
MDP_BLOCK_RGB_2,
|
||||
MDP_BLOCK_DMA_P,
|
||||
MDP_BLOCK_DMA_S,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MDP_BLOCK_DMA_E,
|
||||
MDP_BLOCK_OVERLAY_2,
|
||||
MDP_BLOCK_MAX,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct mdp_histogram_start_req {
|
||||
uint32_t block;
|
||||
uint8_t frame_cnt;
|
||||
uint8_t bit_mask;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t num_bins;
|
||||
};
|
||||
struct mdp_histogram_data {
|
||||
uint32_t block;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t bin_cnt;
|
||||
uint32_t *c0;
|
||||
uint32_t *c1;
|
||||
uint32_t *c2;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t *extra_info;
|
||||
};
|
||||
struct mdp_pcc_coeff {
|
||||
uint32_t c, r, g, b, rr, gg, bb, rg, gb, rb, rgb_0, rgb_1;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct mdp_pcc_cfg_data {
|
||||
uint32_t block;
|
||||
uint32_t ops;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct mdp_pcc_coeff r, g, b;
|
||||
};
|
||||
enum {
|
||||
mdp_lut_igc,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
mdp_lut_pgc,
|
||||
mdp_lut_hist,
|
||||
mdp_lut_max,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct mdp_igc_lut_data {
|
||||
uint32_t block;
|
||||
uint32_t len, ops;
|
||||
uint32_t *c0_c1_data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t *c2_data;
|
||||
};
|
||||
struct mdp_ar_gc_lut_data {
|
||||
uint32_t x_start;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t slope;
|
||||
uint32_t offset;
|
||||
};
|
||||
struct mdp_pgc_lut_data {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t block;
|
||||
uint32_t flags;
|
||||
uint8_t num_r_stages;
|
||||
uint8_t num_g_stages;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t num_b_stages;
|
||||
struct mdp_ar_gc_lut_data *r_data;
|
||||
struct mdp_ar_gc_lut_data *g_data;
|
||||
struct mdp_ar_gc_lut_data *b_data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct mdp_hist_lut_data {
|
||||
uint32_t block;
|
||||
uint32_t ops;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t len;
|
||||
uint32_t *data;
|
||||
};
|
||||
struct mdp_lut_cfg_data {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t lut_type;
|
||||
union {
|
||||
struct mdp_igc_lut_data igc_lut_data;
|
||||
struct mdp_pgc_lut_data pgc_lut_data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct mdp_hist_lut_data hist_lut_data;
|
||||
} data;
|
||||
};
|
||||
struct mdp_bl_scale_data {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t min_lvl;
|
||||
uint32_t scale;
|
||||
};
|
||||
enum {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
mdp_op_pcc_cfg,
|
||||
mdp_op_csc_cfg,
|
||||
mdp_op_lut_cfg,
|
||||
mdp_op_qseed_cfg,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
mdp_bl_scale_cfg,
|
||||
mdp_op_max,
|
||||
};
|
||||
struct msmfb_mdp_pp {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t op;
|
||||
union {
|
||||
struct mdp_pcc_cfg_data pcc_cfg_data;
|
||||
struct mdp_csc_cfg_data csc_cfg_data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct mdp_lut_cfg_data lut_cfg_data;
|
||||
struct mdp_qseed_cfg_data qseed_cfg_data;
|
||||
struct mdp_bl_scale_data bl_scale_data;
|
||||
} data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define MDP_MAX_FENCE_FD 10
|
||||
#define MDP_BUF_SYNC_FLAG_WAIT 1
|
||||
struct mdp_buf_sync {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t flags;
|
||||
};
|
||||
struct mdp_blit_req_list {
|
||||
uint32_t count;
|
||||
uint32_t acq_fen_fd_cnt;
|
||||
int *acq_fen_fd;
|
||||
int *rel_fen_fd;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct mdp_buf_fence {
|
||||
uint32_t flags;
|
||||
uint32_t acq_fen_fd_cnt;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int acq_fen_fd[MDP_MAX_FENCE_FD];
|
||||
int rel_fen_fd[MDP_MAX_FENCE_FD];
|
||||
};
|
||||
struct mdp_display_commit {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t flags;
|
||||
uint32_t wait_for_finish;
|
||||
struct fb_var_screeninfo var;
|
||||
struct mdp_buf_fence buf_fence;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct mdp_page_protection {
|
||||
uint32_t page_protection;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct mdp_mixer_info {
|
||||
int pndx;
|
||||
int pnum;
|
||||
int ptype;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int mixer_num;
|
||||
int z_order;
|
||||
};
|
||||
#define MAX_PIPE_PER_MIXER 4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msmfb_mixer_info_req {
|
||||
int mixer_num;
|
||||
int cnt;
|
||||
struct mdp_mixer_info info[MAX_PIPE_PER_MIXER];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum {
|
||||
DISPLAY_SUBSYSTEM_ID,
|
||||
ROTATOR_SUBSYSTEM_ID,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct mdp_blit_req req[];
|
||||
};
|
||||
#endif
|
||||
|
||||
|
54
libc/kernel/common/linux/msm_rmnet.h
Normal file
54
libc/kernel/common/linux/msm_rmnet.h
Normal file
@@ -0,0 +1,54 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _MSM_RMNET_H_
|
||||
#define _MSM_RMNET_H_
|
||||
#define RMNET_MODE_NONE (0x00)
|
||||
#define RMNET_MODE_LLP_ETH (0x01)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define RMNET_MODE_LLP_IP (0x02)
|
||||
#define RMNET_MODE_QOS (0x04)
|
||||
#define RMNET_MODE_MASK (RMNET_MODE_LLP_ETH | RMNET_MODE_LLP_IP | RMNET_MODE_QOS)
|
||||
#define RMNET_IS_MODE_QOS(mode) ((mode & RMNET_MODE_QOS) == RMNET_MODE_QOS)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define RMNET_IS_MODE_IP(mode) ((mode & RMNET_MODE_LLP_IP) == RMNET_MODE_LLP_IP)
|
||||
enum rmnet_ioctl_cmds_e {
|
||||
RMNET_IOCTL_SET_LLP_ETHERNET = 0x000089F1,
|
||||
RMNET_IOCTL_SET_LLP_IP = 0x000089F2,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RMNET_IOCTL_GET_LLP = 0x000089F3,
|
||||
RMNET_IOCTL_SET_QOS_ENABLE = 0x000089F4,
|
||||
RMNET_IOCTL_SET_QOS_DISABLE = 0x000089F5,
|
||||
RMNET_IOCTL_GET_QOS = 0x000089F6,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RMNET_IOCTL_GET_OPMODE = 0x000089F7,
|
||||
RMNET_IOCTL_OPEN = 0x000089F8,
|
||||
RMNET_IOCTL_CLOSE = 0x000089F9,
|
||||
RMNET_IOCTL_MAX
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define QMI_QOS_HDR_S __attribute((__packed__)) qmi_qos_hdr_s
|
||||
struct QMI_QOS_HDR_S {
|
||||
unsigned char version;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned char flags;
|
||||
unsigned long flow_id;
|
||||
};
|
||||
#endif
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
|
76
libc/kernel/common/linux/msm_rotator.h
Normal file
76
libc/kernel/common/linux/msm_rotator.h
Normal file
@@ -0,0 +1,76 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __MSM_ROTATOR_H__
|
||||
#define __MSM_ROTATOR_H__
|
||||
#include <linux/types.h>
|
||||
#include <linux/msm_mdp.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_ROTATOR_IOCTL_MAGIC 'R'
|
||||
#define MSM_ROTATOR_IOCTL_START _IOWR(MSM_ROTATOR_IOCTL_MAGIC, 1, struct msm_rotator_img_info)
|
||||
#define MSM_ROTATOR_IOCTL_ROTATE _IOW(MSM_ROTATOR_IOCTL_MAGIC, 2, struct msm_rotator_data_info)
|
||||
#define MSM_ROTATOR_IOCTL_FINISH _IOW(MSM_ROTATOR_IOCTL_MAGIC, 3, int)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ROTATOR_VERSION_01 0xA5B4C301
|
||||
enum rotator_clk_type {
|
||||
ROTATOR_CORE_CLK,
|
||||
ROTATOR_PCLK,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ROTATOR_IMEM_CLK
|
||||
};
|
||||
struct msm_rotator_img_info {
|
||||
unsigned int session_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msmfb_img src;
|
||||
struct msmfb_img dst;
|
||||
struct mdp_rect src_rect;
|
||||
unsigned int dst_x;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int dst_y;
|
||||
unsigned char rotations;
|
||||
int enable;
|
||||
unsigned int downscale_ratio;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int secure;
|
||||
};
|
||||
struct msm_rotator_data_info {
|
||||
int session_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msmfb_data src;
|
||||
struct msmfb_data dst;
|
||||
unsigned int version_key;
|
||||
struct msmfb_data src_chroma;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msmfb_data dst_chroma;
|
||||
};
|
||||
struct msm_rot_clocks {
|
||||
const char *clk_name;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum rotator_clk_type clk_type;
|
||||
unsigned int clk_rate;
|
||||
};
|
||||
struct msm_rotator_platform_data {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int number_of_clocks;
|
||||
unsigned int hardware_version_number;
|
||||
struct msm_rot_clocks *rotator_clks;
|
||||
char rot_iommu_split_domain;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#endif
|
||||
|
@@ -39,92 +39,112 @@
|
||||
#define VDEC_S_ENOTSUPP (VDEC_S_BASE + 11)
|
||||
#define VDEC_S_ENOTIMPL (VDEC_S_BASE + 12)
|
||||
#define VDEC_S_BUSY (VDEC_S_BASE + 13)
|
||||
#define VDEC_INTF_VER 1
|
||||
#define VDEC_S_INPUT_BITSTREAM_ERR (VDEC_S_BASE + 14)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_INTF_VER 1
|
||||
#define VDEC_MSG_BASE 0x0000000
|
||||
#define VDEC_MSG_INVALID (VDEC_MSG_BASE + 0)
|
||||
#define VDEC_MSG_RESP_INPUT_BUFFER_DONE (VDEC_MSG_BASE + 1)
|
||||
#define VDEC_MSG_RESP_OUTPUT_BUFFER_DONE (VDEC_MSG_BASE + 2)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_MSG_RESP_OUTPUT_BUFFER_DONE (VDEC_MSG_BASE + 2)
|
||||
#define VDEC_MSG_RESP_INPUT_FLUSHED (VDEC_MSG_BASE + 3)
|
||||
#define VDEC_MSG_RESP_OUTPUT_FLUSHED (VDEC_MSG_BASE + 4)
|
||||
#define VDEC_MSG_RESP_FLUSH_INPUT_DONE (VDEC_MSG_BASE + 5)
|
||||
#define VDEC_MSG_RESP_FLUSH_OUTPUT_DONE (VDEC_MSG_BASE + 6)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_MSG_RESP_FLUSH_OUTPUT_DONE (VDEC_MSG_BASE + 6)
|
||||
#define VDEC_MSG_RESP_START_DONE (VDEC_MSG_BASE + 7)
|
||||
#define VDEC_MSG_RESP_STOP_DONE (VDEC_MSG_BASE + 8)
|
||||
#define VDEC_MSG_RESP_PAUSE_DONE (VDEC_MSG_BASE + 9)
|
||||
#define VDEC_MSG_RESP_RESUME_DONE (VDEC_MSG_BASE + 10)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_MSG_RESP_RESUME_DONE (VDEC_MSG_BASE + 10)
|
||||
#define VDEC_MSG_RESP_RESOURCE_LOADED (VDEC_MSG_BASE + 11)
|
||||
#define VDEC_EVT_RESOURCES_LOST (VDEC_MSG_BASE + 12)
|
||||
#define VDEC_MSG_EVT_CONFIG_CHANGED (VDEC_MSG_BASE + 13)
|
||||
#define VDEC_MSG_EVT_HW_ERROR (VDEC_MSG_BASE + 14)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_MSG_EVT_HW_ERROR (VDEC_MSG_BASE + 14)
|
||||
#define VDEC_MSG_EVT_INFO_CONFIG_CHANGED (VDEC_MSG_BASE + 15)
|
||||
#define VDEC_MSG_EVT_INFO_FIELD_DROPPED (VDEC_MSG_BASE + 16)
|
||||
#define VDEC_BUFFERFLAG_EOS 0x00000001
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_BUFFERFLAG_DECODEONLY 0x00000004
|
||||
#define VDEC_BUFFERFLAG_DATACORRUPT 0x00000008
|
||||
#define VDEC_BUFFERFLAG_ENDOFFRAME 0x00000010
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_BUFFERFLAG_SYNCFRAME 0x00000020
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_BUFFERFLAG_EXTRADATA 0x00000040
|
||||
#define VDEC_BUFFERFLAG_CODECCONFIG 0x00000080
|
||||
#define VDEC_EXTRADATA_QP 0x00000001
|
||||
#define VDEC_EXTRADATA_NONE 0x001
|
||||
#define VDEC_EXTRADATA_QP 0x004
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_EXTRADATA_MB_ERROR_MAP 0x008
|
||||
#define VDEC_EXTRADATA_SEI 0x010
|
||||
#define VDEC_EXTRADATA_VUI 0x020
|
||||
#define VDEC_EXTRADATA_VC1 0x040
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_EXTRADATA_SEI 0x00000002
|
||||
#define VDEC_EXTRADATA_VUI 0x00000004
|
||||
#define VDEC_EXTRADATA_MB_ERROR_MAP 0x00000008
|
||||
#define VDEC_CMDBASE 0x800
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_CMD_SET_INTF_VERSION (VDEC_CMDBASE)
|
||||
#define VDEC_IOCTL_MAGIC 'v'
|
||||
struct vdec_ioctl_msg {
|
||||
void *inputparam;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
void *outputparam;
|
||||
void __user *in;
|
||||
void __user *out;
|
||||
};
|
||||
#define VDEC_IOCTL_GET_PROFILE_LEVEL_SUPPORTED _IOWR(VDEC_IOCTL_MAGIC, 0, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_GET_INTERLACE_FORMAT _IOR(VDEC_IOCTL_MAGIC, 1, struct vdec_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_IOCTL_GET_INTERLACE_FORMAT _IOR(VDEC_IOCTL_MAGIC, 1, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_GET_CURRENT_PROFILE_LEVEL _IOWR(VDEC_IOCTL_MAGIC, 2, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_SET_OUTPUT_FORMAT _IOWR(VDEC_IOCTL_MAGIC, 3, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_GET_OUTPUT_FORMAT _IOWR(VDEC_IOCTL_MAGIC, 4, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_SET_CODEC _IOW(VDEC_IOCTL_MAGIC, 5, struct vdec_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_IOCTL_SET_CODEC _IOW(VDEC_IOCTL_MAGIC, 5, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_GET_CODEC _IOR(VDEC_IOCTL_MAGIC, 6, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_SET_PICRES _IOW(VDEC_IOCTL_MAGIC, 7, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_GET_PICRES _IOR(VDEC_IOCTL_MAGIC, 8, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_SET_EXTRADATA _IOW(VDEC_IOCTL_MAGIC, 9, struct vdec_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_IOCTL_SET_EXTRADATA _IOW(VDEC_IOCTL_MAGIC, 9, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_GET_EXTRADATA _IOR(VDEC_IOCTL_MAGIC, 10, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_SET_SEQUENCE_HEADER _IOW(VDEC_IOCTL_MAGIC, 11, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_SET_BUFFER_REQ _IOW(VDEC_IOCTL_MAGIC, 12, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_GET_BUFFER_REQ _IOR(VDEC_IOCTL_MAGIC, 13, struct vdec_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_IOCTL_GET_BUFFER_REQ _IOR(VDEC_IOCTL_MAGIC, 13, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_ALLOCATE_BUFFER _IOWR(VDEC_IOCTL_MAGIC, 14, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_FREE_BUFFER _IOW(VDEC_IOCTL_MAGIC, 15, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_SET_BUFFER _IOW(VDEC_IOCTL_MAGIC, 16, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_FILL_OUTPUT_BUFFER _IOW(VDEC_IOCTL_MAGIC, 17, struct vdec_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_IOCTL_FILL_OUTPUT_BUFFER _IOW(VDEC_IOCTL_MAGIC, 17, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_DECODE_FRAME _IOW(VDEC_IOCTL_MAGIC, 18, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_LOAD_RESOURCES _IO(VDEC_IOCTL_MAGIC, 19)
|
||||
#define VDEC_IOCTL_CMD_START _IO(VDEC_IOCTL_MAGIC, 20)
|
||||
#define VDEC_IOCTL_CMD_STOP _IO(VDEC_IOCTL_MAGIC, 21)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_IOCTL_CMD_STOP _IO(VDEC_IOCTL_MAGIC, 21)
|
||||
#define VDEC_IOCTL_CMD_PAUSE _IO(VDEC_IOCTL_MAGIC, 22)
|
||||
#define VDEC_IOCTL_CMD_RESUME _IO(VDEC_IOCTL_MAGIC, 23)
|
||||
#define VDEC_IOCTL_CMD_FLUSH _IOW(VDEC_IOCTL_MAGIC, 24, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_GET_NEXT_MSG _IOR(VDEC_IOCTL_MAGIC, 25, struct vdec_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_IOCTL_GET_NEXT_MSG _IOR(VDEC_IOCTL_MAGIC, 25, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_STOP_NEXT_MSG _IO(VDEC_IOCTL_MAGIC, 26)
|
||||
#define VDEC_IOCTL_GET_NUMBER_INSTANCES _IOR(VDEC_IOCTL_MAGIC, 27, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_SET_PICTURE_ORDER _IOW(VDEC_IOCTL_MAGIC, 28, struct vdec_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_IOCTL_SET_FRAME_RATE _IOW(VDEC_IOCTL_MAGIC, 29, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_SET_H264_MV_BUFFER _IOW(VDEC_IOCTL_MAGIC, 30, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_FREE_H264_MV_BUFFER _IOW(VDEC_IOCTL_MAGIC, 31, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_GET_MV_BUFFER_SIZE _IOR(VDEC_IOCTL_MAGIC, 32, struct vdec_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_IOCTL_SET_IDR_ONLY_DECODING _IO(VDEC_IOCTL_MAGIC, 33)
|
||||
#define VDEC_IOCTL_SET_CONT_ON_RECONFIG _IO(VDEC_IOCTL_MAGIC, 34)
|
||||
#define VDEC_IOCTL_SET_DISABLE_DMX _IOW(VDEC_IOCTL_MAGIC, 35, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_GET_DISABLE_DMX _IOR(VDEC_IOCTL_MAGIC, 36, struct vdec_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_IOCTL_GET_DISABLE_DMX_SUPPORT _IOR(VDEC_IOCTL_MAGIC, 37, struct vdec_ioctl_msg)
|
||||
enum vdec_picture {
|
||||
PICTURE_TYPE_I,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
PICTURE_TYPE_P,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
PICTURE_TYPE_B,
|
||||
PICTURE_TYPE_BI,
|
||||
PICTURE_TYPE_SKIP,
|
||||
PICTURE_TYPE_IDR,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
PICTURE_TYPE_UNKNOWN
|
||||
};
|
||||
@@ -139,19 +159,19 @@ struct vdec_allocatorproperty {
|
||||
uint32_t mincount;
|
||||
uint32_t maxcount;
|
||||
uint32_t actualcount;
|
||||
uint32_t buffer_size;
|
||||
size_t buffer_size;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t alignment;
|
||||
uint32_t buf_poolid;
|
||||
};
|
||||
struct vdec_bufferpayload {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t *bufferaddr;
|
||||
uint32_t buffer_len;
|
||||
void __user *bufferaddr;
|
||||
size_t buffer_len;
|
||||
int pmem_fd;
|
||||
uint32_t offset;
|
||||
size_t offset;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t mmaped_size;
|
||||
size_t mmaped_size;
|
||||
};
|
||||
struct vdec_setbuffer_cmd {
|
||||
enum vdec_buffer buffer_type;
|
||||
@@ -413,6 +433,11 @@ enum vdec_output_fromat {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_YUV_FORMAT_TILE_4x2 = 0x2
|
||||
};
|
||||
enum vdec_output_order {
|
||||
VDEC_ORDER_DISPLAY = 0x1,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_ORDER_DECODE = 0x2
|
||||
};
|
||||
struct vdec_picsize {
|
||||
uint32_t frame_width;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
@@ -422,62 +447,94 @@ struct vdec_picsize {
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct vdec_seqheader {
|
||||
uint8_t *ptr_seqheader;
|
||||
uint32_t seq_header_len;
|
||||
void __user *ptr_seqheader;
|
||||
size_t seq_header_len;
|
||||
int pmem_fd;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t pmem_offset;
|
||||
size_t pmem_offset;
|
||||
};
|
||||
struct vdec_mberror {
|
||||
uint8_t *ptr_errormap;
|
||||
void __user *ptr_errormap;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t err_mapsize;
|
||||
size_t err_mapsize;
|
||||
};
|
||||
struct vdec_input_frameinfo {
|
||||
uint8_t *bufferaddr;
|
||||
void __user *bufferaddr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t offset;
|
||||
uint32_t datalen;
|
||||
size_t offset;
|
||||
size_t datalen;
|
||||
uint32_t flags;
|
||||
int64_t timestamp;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
void *client_data;
|
||||
int pmem_fd;
|
||||
uint32_t pmem_offset;
|
||||
size_t pmem_offset;
|
||||
void __user *desc_addr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t desc_size;
|
||||
};
|
||||
struct vdec_framesize {
|
||||
uint32_t left;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t top;
|
||||
uint32_t right;
|
||||
uint32_t bottom;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct vdec_framesize {
|
||||
uint32_t n_left;
|
||||
uint32_t n_top;
|
||||
uint32_t n_right;
|
||||
struct vdec_aspectratioinfo {
|
||||
uint32_t aspect_ratio;
|
||||
uint32_t par_width;
|
||||
uint32_t par_height;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t n_bottom;
|
||||
};
|
||||
struct vdec_output_frameinfo {
|
||||
uint8_t *phy_addr;
|
||||
void __user *bufferaddr;
|
||||
size_t offset;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t *bufferaddr;
|
||||
uint32_t offset;
|
||||
uint32_t len;
|
||||
size_t len;
|
||||
uint32_t flags;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int64_t time_stamp;
|
||||
enum vdec_picture pic_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
void *client_data;
|
||||
void *input_frame_clientdata;
|
||||
struct vdec_framesize framesize;
|
||||
enum vdec_interlaced_format interlaced_format;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct vdec_aspectratioinfo aspect_ratio_info;
|
||||
};
|
||||
union vdec_msgdata {
|
||||
struct vdec_output_frameinfo output_frame;
|
||||
void *input_frame_clientdata;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
void *input_frame_clientdata;
|
||||
};
|
||||
struct vdec_msginfo {
|
||||
uint32_t status_code;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t msgcode;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
union vdec_msgdata msgdata;
|
||||
uint32_t msgdatasize;
|
||||
size_t msgdatasize;
|
||||
};
|
||||
#endif
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct vdec_framerate {
|
||||
unsigned long fps_denominator;
|
||||
unsigned long fps_numerator;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct vdec_h264_mv{
|
||||
size_t size;
|
||||
int count;
|
||||
int pmem_fd;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int offset;
|
||||
};
|
||||
struct vdec_mv_buff_size{
|
||||
int width;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int height;
|
||||
int size;
|
||||
int alignment;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
|
||||
|
@@ -68,178 +68,198 @@
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_BUFFLAG_EXTRADATA 0x00000040
|
||||
#define VEN_BUFFLAG_CODECCONFIG 0x00000080
|
||||
#define VEN_EXTRADATA_NONE 0x001
|
||||
#define VEN_EXTRADATA_QCOMFILLER 0x002
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_EXTRADATA_SLICEINFO 0x100
|
||||
#define VEN_FRAME_TYPE_I 1
|
||||
#define VEN_FRAME_TYPE_P 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_FRAME_TYPE_B 3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_CODEC_MPEG4 1
|
||||
#define VEN_CODEC_H264 2
|
||||
#define VEN_CODEC_H263 3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_PROFILE_MPEG4_SP 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_PROFILE_MPEG4_ASP 2
|
||||
#define VEN_PROFILE_H264_BASELINE 3
|
||||
#define VEN_PROFILE_H264_MAIN 4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_PROFILE_H264_HIGH 5
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_PROFILE_H263_BASELINE 6
|
||||
#define VEN_LEVEL_MPEG4_0 0x1
|
||||
#define VEN_LEVEL_MPEG4_1 0x2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_LEVEL_MPEG4_2 0x3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_LEVEL_MPEG4_3 0x4
|
||||
#define VEN_LEVEL_MPEG4_4 0x5
|
||||
#define VEN_LEVEL_MPEG4_5 0x6
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_LEVEL_MPEG4_3b 0x7
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_LEVEL_MPEG4_6 0x8
|
||||
#define VEN_LEVEL_H264_1 0x9
|
||||
#define VEN_LEVEL_H264_1b 0xA
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_LEVEL_H264_1p1 0xB
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_LEVEL_H264_1p2 0xC
|
||||
#define VEN_LEVEL_H264_1p3 0xD
|
||||
#define VEN_LEVEL_H264_2 0xE
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_LEVEL_H264_2p1 0xF
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_LEVEL_H264_2p2 0x10
|
||||
#define VEN_LEVEL_H264_3 0x11
|
||||
#define VEN_LEVEL_H264_3p1 0x12
|
||||
#define VEN_LEVEL_H264_3p2 0x13
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_LEVEL_H263_10 0x13
|
||||
#define VEN_LEVEL_H263_20 0x14
|
||||
#define VEN_LEVEL_H263_30 0x15
|
||||
#define VEN_LEVEL_H263_40 0x16
|
||||
#define VEN_LEVEL_H264_4 0x14
|
||||
#define VEN_LEVEL_H263_10 0x15
|
||||
#define VEN_LEVEL_H263_20 0x16
|
||||
#define VEN_LEVEL_H263_30 0x17
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_LEVEL_H263_45 0x17
|
||||
#define VEN_LEVEL_H263_50 0x18
|
||||
#define VEN_LEVEL_H263_60 0x19
|
||||
#define VEN_LEVEL_H263_70 0x1A
|
||||
#define VEN_LEVEL_H263_40 0x18
|
||||
#define VEN_LEVEL_H263_45 0x19
|
||||
#define VEN_LEVEL_H263_50 0x1A
|
||||
#define VEN_LEVEL_H263_60 0x1B
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_LEVEL_H263_70 0x1C
|
||||
#define VEN_ENTROPY_MODEL_CAVLC 1
|
||||
#define VEN_ENTROPY_MODEL_CABAC 2
|
||||
#define VEN_CABAC_MODEL_0 1
|
||||
#define VEN_CABAC_MODEL_1 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_CABAC_MODEL_1 2
|
||||
#define VEN_CABAC_MODEL_2 3
|
||||
#define VEN_DB_DISABLE 1
|
||||
#define VEN_DB_ALL_BLKG_BNDRY 2
|
||||
#define VEN_DB_SKIP_SLICE_BNDRY 3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_DB_SKIP_SLICE_BNDRY 3
|
||||
#define VEN_MSLICE_OFF 1
|
||||
#define VEN_MSLICE_CNT_MB 2
|
||||
#define VEN_MSLICE_CNT_BYTE 3
|
||||
#define VEN_MSLICE_GOB 4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_MSLICE_GOB 4
|
||||
#define VEN_RC_OFF 1
|
||||
#define VEN_RC_VBR_VFR 2
|
||||
#define VEN_RC_VBR_CFR 3
|
||||
#define VEN_RC_CBR_VFR 4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_RC_CBR_VFR 4
|
||||
#define VEN_RC_CBR_CFR 5
|
||||
#define VEN_FLUSH_INPUT 1
|
||||
#define VEN_FLUSH_OUTPUT 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_FLUSH_ALL 3
|
||||
#define VEN_INPUTFMT_NV12 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_INPUTFMT_NV21 2
|
||||
#define VEN_INPUTFMT_NV12_16M2KA 3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_ROTATION_0 1
|
||||
#define VEN_ROTATION_90 2
|
||||
#define VEN_ROTATION_180 3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_ROTATION_270 4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_TIMEOUT_INFINITE 0xffffffff
|
||||
#define VEN_IR_OFF 1
|
||||
#define VEN_IR_CYCLIC 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IR_RANDOM 3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTLBASE_NENC 0x800
|
||||
#define VEN_IOCTLBASE_ENC 0x850
|
||||
struct venc_ioctl_msg{
|
||||
void __user *in;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
void *inputparam;
|
||||
void *outputparam;
|
||||
void __user *out;
|
||||
};
|
||||
#define VEN_IOCTL_SET_INTF_VERSION _IOW(VEN_IOCTLBASE_NENC, 0, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_CMD_READ_NEXT_MSG _IOWR(VEN_IOCTLBASE_NENC, 1, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_CMD_STOP_READ_MSG _IO(VEN_IOCTLBASE_NENC, 2)
|
||||
#define VEN_IOCTL_SET_INPUT_BUFFER_REQ _IOW(VEN_IOCTLBASE_NENC, 3, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_INPUT_BUFFER_REQ _IOR(VEN_IOCTLBASE_NENC, 4, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_CMD_ALLOC_INPUT_BUFFER _IOW(VEN_IOCTLBASE_NENC, 5, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_SET_INPUT_BUFFER _IOW(VEN_IOCTLBASE_NENC, 6, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_CMD_FREE_INPUT_BUFFER _IOW(VEN_IOCTLBASE_NENC, 7, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_OUTPUT_BUFFER_REQ _IOW(VEN_IOCTLBASE_NENC, 8, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_GET_OUTPUT_BUFFER_REQ _IOR(VEN_IOCTLBASE_NENC, 9, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_CMD_ALLOC_OUTPUT_BUFFER _IOW(VEN_IOCTLBASE_NENC, 10, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_OUTPUT_BUFFER _IOW(VEN_IOCTLBASE_NENC, 11, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_CMD_FREE_OUTPUT_BUFFER _IOW(VEN_IOCTLBASE_NENC, 12, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_CMD_START _IO(VEN_IOCTLBASE_NENC, 13)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_CMD_ENCODE_FRAME _IOW(VEN_IOCTLBASE_NENC, 14, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_CMD_FILL_OUTPUT_BUFFER _IOW(VEN_IOCTLBASE_NENC, 15, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_CMD_FLUSH _IOW(VEN_IOCTLBASE_NENC, 16, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_CMD_PAUSE _IO(VEN_IOCTLBASE_NENC, 17)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_CMD_RESUME _IO(VEN_IOCTLBASE_NENC, 18)
|
||||
#define VEN_IOCTL_CMD_STOP _IO(VEN_IOCTLBASE_NENC, 19)
|
||||
#define VEN_IOCTL_SET_BASE_CFG _IOW(VEN_IOCTLBASE_ENC, 1, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_RECON_BUFFER _IOW(VEN_IOCTLBASE_NENC, 20, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_FREE_RECON_BUFFER _IOW(VEN_IOCTLBASE_NENC, 21, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_GET_RECON_BUFFER_SIZE _IOW(VEN_IOCTLBASE_NENC, 22, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_BASE_CFG _IOW(VEN_IOCTLBASE_ENC, 1, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_BASE_CFG _IOR(VEN_IOCTLBASE_ENC, 2, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_LIVE_MODE _IOW(VEN_IOCTLBASE_ENC, 3, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_GET_LIVE_MODE _IOR(VEN_IOCTLBASE_ENC, 4, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_CODEC_PROFILE _IOW(VEN_IOCTLBASE_ENC, 5, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_GET_CODEC_PROFILE _IOR(VEN_IOCTLBASE_ENC, 6, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_PROFILE_LEVEL _IOW(VEN_IOCTLBASE_ENC, 7, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_GET_PROFILE_LEVEL _IOR(VEN_IOCTLBASE_ENC, 8, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_SHORT_HDR _IOW(VEN_IOCTLBASE_ENC, 9, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_GET_SHORT_HDR _IOR(VEN_IOCTLBASE_ENC, 10, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_SESSION_QP _IOW(VEN_IOCTLBASE_ENC, 11, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_GET_SESSION_QP _IOR(VEN_IOCTLBASE_ENC, 12, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_INTRA_PERIOD _IOW(VEN_IOCTLBASE_ENC, 13, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_GET_INTRA_PERIOD _IOR(VEN_IOCTLBASE_ENC, 14, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_CMD_REQUEST_IFRAME _IO(VEN_IOCTLBASE_ENC, 15)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_GET_CAPABILITY _IOR(VEN_IOCTLBASE_ENC, 16, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_SEQUENCE_HDR _IOR(VEN_IOCTLBASE_ENC, 17, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_SET_ENTROPY_CFG _IOW(VEN_IOCTLBASE_ENC, 18, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_ENTROPY_CFG _IOR(VEN_IOCTLBASE_ENC, 19, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_SET_DEBLOCKING_CFG _IOW(VEN_IOCTLBASE_ENC, 20, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_DEBLOCKING_CFG _IOR(VEN_IOCTLBASE_ENC, 21, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_SET_INTRA_REFRESH _IOW(VEN_IOCTLBASE_ENC, 22, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_INTRA_REFRESH _IOR(VEN_IOCTLBASE_ENC, 23, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_SET_MULTI_SLICE_CFG _IOW(VEN_IOCTLBASE_ENC, 24, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_MULTI_SLICE_CFG _IOR(VEN_IOCTLBASE_ENC, 25, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_SET_RATE_CTRL_CFG _IOW(VEN_IOCTLBASE_ENC, 26, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_RATE_CTRL_CFG _IOR(VEN_IOCTLBASE_ENC, 27, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_SET_VOP_TIMING_CFG _IOW(VEN_IOCTLBASE_ENC, 28, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_VOP_TIMING_CFG _IOR(VEN_IOCTLBASE_ENC, 29, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_SET_FRAME_RATE _IOW(VEN_IOCTLBASE_ENC, 30, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_FRAME_RATE _IOR(VEN_IOCTLBASE_ENC, 31, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_SET_TARGET_BITRATE _IOW(VEN_IOCTLBASE_ENC, 32, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_TARGET_BITRATE _IOR(VEN_IOCTLBASE_ENC, 33, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_SET_ROTATION _IOW(VEN_IOCTLBASE_ENC, 34, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_ROTATION _IOR(VEN_IOCTLBASE_ENC, 35, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_SET_HEC _IOW(VEN_IOCTLBASE_ENC, 36, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_HEC _IOR(VEN_IOCTLBASE_ENC, 37, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_SET_DATA_PARTITION _IOW(VEN_IOCTLBASE_ENC, 38, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_DATA_PARTITION _IOR(VEN_IOCTLBASE_ENC, 39, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_SET_RVLC _IOW(VEN_IOCTLBASE_ENC, 40, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_RVLC _IOR(VEN_IOCTLBASE_ENC, 41, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_SET_AC_PREDICTION _IOW(VEN_IOCTLBASE_ENC, 42, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_AC_PREDICTION _IOR(VEN_IOCTLBASE_ENC, 43, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_SET_QP_RANGE _IOW(VEN_IOCTLBASE_ENC, 44, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_QP_RANGE _IOR(VEN_IOCTLBASE_ENC, 45, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_NUMBER_INSTANCES _IOR(VEN_IOCTLBASE_ENC, 46, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_METABUFFER_MODE _IOW(VEN_IOCTLBASE_ENC, 47, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_SET_EXTRADATA _IOW(VEN_IOCTLBASE_ENC, 48, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_EXTRADATA _IOR(VEN_IOCTLBASE_ENC, 49, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_SLICE_DELIVERY_MODE _IO(VEN_IOCTLBASE_ENC, 50)
|
||||
#define VEN_IOCTL_SET_SPS_PPS_FOR_IDR _IOW(VEN_IOCTLBASE_ENC, 51, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct venc_switch{
|
||||
unsigned char status;
|
||||
@@ -258,7 +278,7 @@ struct venc_allocatorproperty{
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct venc_bufferpayload{
|
||||
unsigned char *pbuffer;
|
||||
unsigned long nsize;
|
||||
size_t sz;
|
||||
int fd;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int offset;
|
||||
@@ -268,7 +288,7 @@ struct venc_bufferpayload{
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct venc_buffer{
|
||||
unsigned char *ptrbuffer;
|
||||
unsigned long size;
|
||||
unsigned long sz;
|
||||
unsigned long len;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long offset;
|
||||
@@ -311,83 +331,100 @@ struct venc_qprange{
|
||||
struct venc_intraperiod{
|
||||
unsigned long num_pframes;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long num_bframes;
|
||||
};
|
||||
struct venc_seqheader{
|
||||
unsigned char *hdrbufptr;
|
||||
unsigned long bufsize;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long bufsize;
|
||||
unsigned long hdrlen;
|
||||
};
|
||||
struct venc_capability{
|
||||
unsigned long codec_types;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long codec_types;
|
||||
unsigned long maxframe_width;
|
||||
unsigned long maxframe_height;
|
||||
unsigned long maxtarget_bitrate;
|
||||
unsigned long maxframe_rate;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long maxframe_rate;
|
||||
unsigned long input_formats;
|
||||
unsigned char dvs;
|
||||
};
|
||||
struct venc_entropycfg{
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct venc_entropycfg{
|
||||
unsigned longentropysel;
|
||||
unsigned long cabacmodel;
|
||||
};
|
||||
struct venc_dbcfg{
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct venc_dbcfg{
|
||||
unsigned long db_mode;
|
||||
unsigned long slicealpha_offset;
|
||||
unsigned long slicebeta_offset;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct venc_intrarefresh{
|
||||
unsigned long irmode;
|
||||
unsigned long mbcount;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct venc_multiclicecfg{
|
||||
unsigned long mslice_mode;
|
||||
unsigned long mslice_size;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct venc_bufferflush{
|
||||
unsigned long flush_mode;
|
||||
};
|
||||
struct venc_ratectrlcfg{
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct venc_ratectrlcfg{
|
||||
unsigned long rcmode;
|
||||
};
|
||||
struct venc_voptimingcfg{
|
||||
unsigned long voptime_resolution;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long voptime_resolution;
|
||||
};
|
||||
struct venc_framerate{
|
||||
unsigned long fps_denominator;
|
||||
unsigned long fps_numerator;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long fps_numerator;
|
||||
};
|
||||
struct venc_targetbitrate{
|
||||
unsigned long target_bitrate;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct venc_rotation{
|
||||
unsigned long rotation;
|
||||
};
|
||||
struct venc_timeout{
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct venc_timeout{
|
||||
unsigned long millisec;
|
||||
};
|
||||
struct venc_headerextension{
|
||||
unsigned long header_extension;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long header_extension;
|
||||
};
|
||||
struct venc_msg{
|
||||
unsigned long statuscode;
|
||||
unsigned long msgcode;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long msgcode;
|
||||
struct venc_buffer buf;
|
||||
unsigned long msgdata_size;
|
||||
};
|
||||
#endif
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct venc_recon_addr{
|
||||
unsigned char *pbuffer;
|
||||
unsigned long buffer_size;
|
||||
unsigned long pmem_fd;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long offset;
|
||||
};
|
||||
struct venc_recon_buff_size{
|
||||
int width;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int height;
|
||||
int size;
|
||||
int alignment;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
|
||||
|
@@ -44,7 +44,7 @@ struct sync_fence_info_data {
|
||||
__u8 pt_info[0];
|
||||
};
|
||||
#define SYNC_IOC_MAGIC '>'
|
||||
#define SYNC_IOC_WAIT _IOW(SYNC_IOC_MAGIC, 0, __u32)
|
||||
#define SYNC_IOC_WAIT _IOW(SYNC_IOC_MAGIC, 0, __s32)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SYNC_IOC_MERGE _IOWR(SYNC_IOC_MAGIC, 1, struct sync_merge_data)
|
||||
#define SYNC_IOC_FENCE_INFO _IOWR(SYNC_IOC_MAGIC, 2, struct sync_fence_info_data)
|
||||
|
@@ -34,7 +34,7 @@ struct __sysctl_args {
|
||||
size_t __user *oldlenp;
|
||||
void __user *newval;
|
||||
size_t newlen;
|
||||
unsigned long __linux_unused[4];
|
||||
unsigned long __unused[4];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum
|
||||
|
108
libc/kernel/common/linux/uhid.h
Normal file
108
libc/kernel/common/linux/uhid.h
Normal file
@@ -0,0 +1,108 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __UHID_H_
|
||||
#define __UHID_H_
|
||||
#include <linux/input.h>
|
||||
#include <linux/types.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum uhid_event_type {
|
||||
UHID_CREATE,
|
||||
UHID_DESTROY,
|
||||
UHID_START,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
UHID_STOP,
|
||||
UHID_OPEN,
|
||||
UHID_CLOSE,
|
||||
UHID_OUTPUT,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
UHID_OUTPUT_EV,
|
||||
UHID_INPUT,
|
||||
UHID_FEATURE,
|
||||
UHID_FEATURE_ANSWER,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct uhid_create_req {
|
||||
__u8 name[128];
|
||||
__u8 phys[64];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u8 uniq[64];
|
||||
__u8 __user *rd_data;
|
||||
__u16 rd_size;
|
||||
__u16 bus;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 vendor;
|
||||
__u32 product;
|
||||
__u32 version;
|
||||
__u32 country;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
} __attribute__((__packed__));
|
||||
#define UHID_DATA_MAX 4096
|
||||
enum uhid_report_type {
|
||||
UHID_FEATURE_REPORT,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
UHID_OUTPUT_REPORT,
|
||||
UHID_INPUT_REPORT,
|
||||
};
|
||||
struct uhid_input_req {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u8 data[UHID_DATA_MAX];
|
||||
__u16 size;
|
||||
} __attribute__((__packed__));
|
||||
struct uhid_output_req {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u8 data[UHID_DATA_MAX];
|
||||
__u16 size;
|
||||
__u8 rtype;
|
||||
} __attribute__((__packed__));
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct uhid_output_ev_req {
|
||||
__u16 type;
|
||||
__u16 code;
|
||||
__s32 value;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
} __attribute__((__packed__));
|
||||
struct uhid_feature_req {
|
||||
__u32 id;
|
||||
__u8 rnum;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u8 rtype;
|
||||
} __attribute__((__packed__));
|
||||
struct uhid_feature_answer_req {
|
||||
__u32 id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u16 err;
|
||||
__u16 size;
|
||||
__u8 data[UHID_DATA_MAX];
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct uhid_event {
|
||||
__u32 type;
|
||||
union {
|
||||
struct uhid_create_req create;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct uhid_input_req input;
|
||||
struct uhid_output_req output;
|
||||
struct uhid_output_ev_req output_ev;
|
||||
struct uhid_feature_req feature;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct uhid_feature_answer_req feature_answer;
|
||||
} u;
|
||||
} __attribute__((__packed__));
|
||||
#endif
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
99
libc/kernel/common/linux/v4l2-mediabus.h
Normal file
99
libc/kernel/common/linux/v4l2-mediabus.h
Normal file
@@ -0,0 +1,99 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __LINUX_V4L2_MEDIABUS_H
|
||||
#define __LINUX_V4L2_MEDIABUS_H
|
||||
#include <linux/types.h>
|
||||
#include <linux/videodev2.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum v4l2_mbus_pixelcode {
|
||||
V4L2_MBUS_FMT_FIXED = 0x0001,
|
||||
V4L2_MBUS_FMT_RGB444_2X8_PADHI_BE = 0x1001,
|
||||
V4L2_MBUS_FMT_RGB444_2X8_PADHI_LE = 0x1002,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
V4L2_MBUS_FMT_RGB555_2X8_PADHI_BE = 0x1003,
|
||||
V4L2_MBUS_FMT_RGB555_2X8_PADHI_LE = 0x1004,
|
||||
V4L2_MBUS_FMT_BGR565_2X8_BE = 0x1005,
|
||||
V4L2_MBUS_FMT_BGR565_2X8_LE = 0x1006,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
V4L2_MBUS_FMT_RGB565_2X8_BE = 0x1007,
|
||||
V4L2_MBUS_FMT_RGB565_2X8_LE = 0x1008,
|
||||
V4L2_MBUS_FMT_Y8_1X8 = 0x2001,
|
||||
V4L2_MBUS_FMT_UYVY8_1_5X8 = 0x2002,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
V4L2_MBUS_FMT_VYUY8_1_5X8 = 0x2003,
|
||||
V4L2_MBUS_FMT_YUYV8_1_5X8 = 0x2004,
|
||||
V4L2_MBUS_FMT_YVYU8_1_5X8 = 0x2005,
|
||||
V4L2_MBUS_FMT_UYVY8_2X8 = 0x2006,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
V4L2_MBUS_FMT_VYUY8_2X8 = 0x2007,
|
||||
V4L2_MBUS_FMT_YUYV8_2X8 = 0x2008,
|
||||
V4L2_MBUS_FMT_YVYU8_2X8 = 0x2009,
|
||||
V4L2_MBUS_FMT_Y10_1X10 = 0x200a,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
V4L2_MBUS_FMT_YUYV10_2X10 = 0x200b,
|
||||
V4L2_MBUS_FMT_YVYU10_2X10 = 0x200c,
|
||||
V4L2_MBUS_FMT_Y12_1X12 = 0x2013,
|
||||
V4L2_MBUS_FMT_UYVY8_1X16 = 0x200f,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
V4L2_MBUS_FMT_VYUY8_1X16 = 0x2010,
|
||||
V4L2_MBUS_FMT_YUYV8_1X16 = 0x2011,
|
||||
V4L2_MBUS_FMT_YVYU8_1X16 = 0x2012,
|
||||
V4L2_MBUS_FMT_YUYV10_1X20 = 0x200d,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
V4L2_MBUS_FMT_YVYU10_1X20 = 0x200e,
|
||||
V4L2_MBUS_FMT_SBGGR8_1X8 = 0x3001,
|
||||
V4L2_MBUS_FMT_SGBRG8_1X8 = 0x3013,
|
||||
V4L2_MBUS_FMT_SGRBG8_1X8 = 0x3002,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
V4L2_MBUS_FMT_SRGGB8_1X8 = 0x3014,
|
||||
V4L2_MBUS_FMT_SBGGR10_DPCM8_1X8 = 0x300b,
|
||||
V4L2_MBUS_FMT_SGBRG10_DPCM8_1X8 = 0x300c,
|
||||
V4L2_MBUS_FMT_SGRBG10_DPCM8_1X8 = 0x3009,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
V4L2_MBUS_FMT_SRGGB10_DPCM8_1X8 = 0x300d,
|
||||
V4L2_MBUS_FMT_SBGGR10_2X8_PADHI_BE = 0x3003,
|
||||
V4L2_MBUS_FMT_SBGGR10_2X8_PADHI_LE = 0x3004,
|
||||
V4L2_MBUS_FMT_SBGGR10_2X8_PADLO_BE = 0x3005,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
V4L2_MBUS_FMT_SBGGR10_2X8_PADLO_LE = 0x3006,
|
||||
V4L2_MBUS_FMT_SBGGR10_1X10 = 0x3007,
|
||||
V4L2_MBUS_FMT_SGBRG10_1X10 = 0x300e,
|
||||
V4L2_MBUS_FMT_SGRBG10_1X10 = 0x300a,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
V4L2_MBUS_FMT_SRGGB10_1X10 = 0x300f,
|
||||
V4L2_MBUS_FMT_SBGGR12_1X12 = 0x3008,
|
||||
V4L2_MBUS_FMT_SGBRG12_1X12 = 0x3010,
|
||||
V4L2_MBUS_FMT_SGRBG12_1X12 = 0x3011,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
V4L2_MBUS_FMT_SRGGB12_1X12 = 0x3012,
|
||||
V4L2_MBUS_FMT_JPEG_1X8 = 0x4001,
|
||||
};
|
||||
struct v4l2_mbus_framefmt {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 width;
|
||||
__u32 height;
|
||||
__u32 code;
|
||||
__u32 field;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 colorspace;
|
||||
__u32 reserved[7];
|
||||
};
|
||||
#endif
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
100
libc/kernel/common/media/msm_gemini.h
Normal file
100
libc/kernel/common/media/msm_gemini.h
Normal file
@@ -0,0 +1,100 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __LINUX_MSM_GEMINI_H
|
||||
#define __LINUX_MSM_GEMINI_H
|
||||
#include <linux/types.h>
|
||||
#include <linux/ioctl.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_GMN_IOCTL_MAGIC 'g'
|
||||
#define MSM_GMN_IOCTL_GET_HW_VERSION _IOW(MSM_GMN_IOCTL_MAGIC, 1, struct msm_gemini_hw_cmd *)
|
||||
#define MSM_GMN_IOCTL_RESET _IOW(MSM_GMN_IOCTL_MAGIC, 2, struct msm_gemini_ctrl_cmd *)
|
||||
#define MSM_GMN_IOCTL_STOP _IOW(MSM_GMN_IOCTL_MAGIC, 3, struct msm_gemini_hw_cmds *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_GMN_IOCTL_START _IOW(MSM_GMN_IOCTL_MAGIC, 4, struct msm_gemini_hw_cmds *)
|
||||
#define MSM_GMN_IOCTL_INPUT_BUF_ENQUEUE _IOW(MSM_GMN_IOCTL_MAGIC, 5, struct msm_gemini_buf *)
|
||||
#define MSM_GMN_IOCTL_INPUT_GET _IOW(MSM_GMN_IOCTL_MAGIC, 6, struct msm_gemini_buf *)
|
||||
#define MSM_GMN_IOCTL_INPUT_GET_UNBLOCK _IOW(MSM_GMN_IOCTL_MAGIC, 7, int)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_GMN_IOCTL_OUTPUT_BUF_ENQUEUE _IOW(MSM_GMN_IOCTL_MAGIC, 8, struct msm_gemini_buf *)
|
||||
#define MSM_GMN_IOCTL_OUTPUT_GET _IOW(MSM_GMN_IOCTL_MAGIC, 9, struct msm_gemini_buf *)
|
||||
#define MSM_GMN_IOCTL_OUTPUT_GET_UNBLOCK _IOW(MSM_GMN_IOCTL_MAGIC, 10, int)
|
||||
#define MSM_GMN_IOCTL_EVT_GET _IOW(MSM_GMN_IOCTL_MAGIC, 11, struct msm_gemini_ctrl_cmd *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_GMN_IOCTL_EVT_GET_UNBLOCK _IOW(MSM_GMN_IOCTL_MAGIC, 12, int)
|
||||
#define MSM_GMN_IOCTL_HW_CMD _IOW(MSM_GMN_IOCTL_MAGIC, 13, struct msm_gemini_hw_cmd *)
|
||||
#define MSM_GMN_IOCTL_HW_CMDS _IOW(MSM_GMN_IOCTL_MAGIC, 14, struct msm_gemini_hw_cmds *)
|
||||
#define MSM_GMN_IOCTL_TEST_DUMP_REGION _IOW(MSM_GMN_IOCTL_MAGIC, 15, unsigned long)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_GEMINI_MODE_REALTIME_ENCODE 0
|
||||
#define MSM_GEMINI_MODE_OFFLINE_ENCODE 1
|
||||
#define MSM_GEMINI_MODE_REALTIME_ROTATION 2
|
||||
#define MSM_GEMINI_MODE_OFFLINE_ROTATION 3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_gemini_ctrl_cmd {
|
||||
uint32_t type;
|
||||
uint32_t len;
|
||||
void *value;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define MSM_GEMINI_EVT_RESET 0
|
||||
#define MSM_GEMINI_EVT_FRAMEDONE 1
|
||||
#define MSM_GEMINI_EVT_ERR 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_gemini_buf {
|
||||
uint32_t type;
|
||||
int fd;
|
||||
void *vaddr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t y_off;
|
||||
uint32_t y_len;
|
||||
uint32_t framedone_len;
|
||||
uint32_t cbcr_off;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t cbcr_len;
|
||||
uint32_t num_of_mcu_rows;
|
||||
uint32_t offset;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_GEMINI_HW_CMD_TYPE_READ 0
|
||||
#define MSM_GEMINI_HW_CMD_TYPE_WRITE 1
|
||||
#define MSM_GEMINI_HW_CMD_TYPE_WRITE_OR 2
|
||||
#define MSM_GEMINI_HW_CMD_TYPE_UWAIT 3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_GEMINI_HW_CMD_TYPE_MWAIT 4
|
||||
#define MSM_GEMINI_HW_CMD_TYPE_MDELAY 5
|
||||
#define MSM_GEMINI_HW_CMD_TYPE_UDELAY 6
|
||||
struct msm_gemini_hw_cmd {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t type:4;
|
||||
uint32_t n:12;
|
||||
uint32_t offset:16;
|
||||
uint32_t mask;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
union {
|
||||
uint32_t data;
|
||||
uint32_t *pdata;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_gemini_hw_cmds {
|
||||
uint32_t m;
|
||||
struct msm_gemini_hw_cmd hw_cmd[1];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#endif
|
62
libc/kernel/common/media/msm_gestures.h
Normal file
62
libc/kernel/common/media/msm_gestures.h
Normal file
@@ -0,0 +1,62 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __LINUX_MSM_GESTURES_H
|
||||
#define __LINUX_MSM_GESTURES_H
|
||||
#include <linux/types.h>
|
||||
#include <linux/ioctl.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#include <media/msm_camera.h>
|
||||
#define MSM_GES_IOCTL_CTRL_COMMAND _IOW('V', BASE_VIDIOC_PRIVATE + 20, struct v4l2_control)
|
||||
#define VIDIOC_MSM_GESTURE_EVT _IOWR('V', BASE_VIDIOC_PRIVATE + 21, struct v4l2_event)
|
||||
#define MSM_GES_GET_EVT_PAYLOAD _IOW('V', BASE_VIDIOC_PRIVATE + 22, struct msm_ges_evt)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VIDIOC_MSM_GESTURE_CAM_EVT _IOWR('V', BASE_VIDIOC_PRIVATE + 23, int)
|
||||
#define MSM_GES_RESP_V4L2 MSM_CAM_RESP_MAX
|
||||
#define MSM_GES_RESP_MAX (MSM_GES_RESP_V4L2 + 1)
|
||||
#define MSM_SVR_RESP_MAX MSM_GES_RESP_MAX
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_V4L2_GES_BASE 100
|
||||
#define MSM_V4L2_GES_OPEN (MSM_V4L2_GES_BASE + 0)
|
||||
#define MSM_V4L2_GES_CLOSE (MSM_V4L2_GES_BASE + 1)
|
||||
#define MSM_V4L2_GES_CAM_OPEN (MSM_V4L2_GES_BASE + 2)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_V4L2_GES_CAM_CLOSE (MSM_V4L2_GES_BASE + 3)
|
||||
#define MSM_GES_APP_EVT_MIN (V4L2_EVENT_PRIVATE_START + 0x14)
|
||||
#define MSM_GES_APP_NOTIFY_EVENT (MSM_GES_APP_EVT_MIN + 0)
|
||||
#define MSM_GES_APP_NOTIFY_ERROR_EVENT (MSM_GES_APP_EVT_MIN + 1)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_GES_APP_EVT_MAX (MSM_GES_APP_EVT_MIN + 2)
|
||||
#define MSM_GESTURE_CID_CTRL_CMD V4L2_CID_BRIGHTNESS
|
||||
#define MAX_GES_EVENTS 25
|
||||
struct msm_ges_ctrl_cmd {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int type;
|
||||
void *value;
|
||||
int len;
|
||||
int fd;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t cookie;
|
||||
};
|
||||
struct msm_ges_evt {
|
||||
void *evt_data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int evt_len;
|
||||
};
|
||||
#endif
|
||||
|
430
libc/kernel/common/media/msm_isp.h
Normal file
430
libc/kernel/common/media/msm_isp.h
Normal file
@@ -0,0 +1,430 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __MSM_ISP_H__
|
||||
#define __MSM_ISP_H__
|
||||
#define BIT(nr) (1UL << (nr))
|
||||
#define MSG_ID_RESET_ACK 0
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_START_ACK 1
|
||||
#define MSG_ID_STOP_ACK 2
|
||||
#define MSG_ID_UPDATE_ACK 3
|
||||
#define MSG_ID_OUTPUT_P 4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_OUTPUT_T 5
|
||||
#define MSG_ID_OUTPUT_S 6
|
||||
#define MSG_ID_OUTPUT_V 7
|
||||
#define MSG_ID_SNAPSHOT_DONE 8
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_STATS_AEC 9
|
||||
#define MSG_ID_STATS_AF 10
|
||||
#define MSG_ID_STATS_AWB 11
|
||||
#define MSG_ID_STATS_RS 12
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_STATS_CS 13
|
||||
#define MSG_ID_STATS_IHIST 14
|
||||
#define MSG_ID_STATS_SKIN 15
|
||||
#define MSG_ID_EPOCH1 16
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_EPOCH2 17
|
||||
#define MSG_ID_SYNC_TIMER0_DONE 18
|
||||
#define MSG_ID_SYNC_TIMER1_DONE 19
|
||||
#define MSG_ID_SYNC_TIMER2_DONE 20
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_ASYNC_TIMER0_DONE 21
|
||||
#define MSG_ID_ASYNC_TIMER1_DONE 22
|
||||
#define MSG_ID_ASYNC_TIMER2_DONE 23
|
||||
#define MSG_ID_ASYNC_TIMER3_DONE 24
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_AE_OVERFLOW 25
|
||||
#define MSG_ID_AF_OVERFLOW 26
|
||||
#define MSG_ID_AWB_OVERFLOW 27
|
||||
#define MSG_ID_RS_OVERFLOW 28
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_CS_OVERFLOW 29
|
||||
#define MSG_ID_IHIST_OVERFLOW 30
|
||||
#define MSG_ID_SKIN_OVERFLOW 31
|
||||
#define MSG_ID_AXI_ERROR 32
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_CAMIF_OVERFLOW 33
|
||||
#define MSG_ID_VIOLATION 34
|
||||
#define MSG_ID_CAMIF_ERROR 35
|
||||
#define MSG_ID_BUS_OVERFLOW 36
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_SOF_ACK 37
|
||||
#define MSG_ID_STOP_REC_ACK 38
|
||||
#define MSG_ID_STATS_AWB_AEC 39
|
||||
#define MSG_ID_OUTPUT_PRIMARY 40
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_OUTPUT_SECONDARY 41
|
||||
#define MSG_ID_STATS_COMPOSITE 42
|
||||
#define MSG_ID_OUTPUT_TERTIARY1 43
|
||||
#define MSG_ID_STOP_LS_ACK 44
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_OUTPUT_TERTIARY2 45
|
||||
#define MSG_ID_STATS_BG 46
|
||||
#define MSG_ID_STATS_BF 47
|
||||
#define MSG_ID_STATS_BHIST 48
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_RDI0_UPDATE_ACK 49
|
||||
#define MSG_ID_RDI1_UPDATE_ACK 50
|
||||
#define MSG_ID_RDI2_UPDATE_ACK 51
|
||||
#define VFE_CMD_DUMMY_0 0
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_SET_CLK 1
|
||||
#define VFE_CMD_RESET 2
|
||||
#define VFE_CMD_START 3
|
||||
#define VFE_CMD_TEST_GEN_START 4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_OPERATION_CFG 5
|
||||
#define VFE_CMD_AXI_OUT_CFG 6
|
||||
#define VFE_CMD_CAMIF_CFG 7
|
||||
#define VFE_CMD_AXI_INPUT_CFG 8
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_BLACK_LEVEL_CFG 9
|
||||
#define VFE_CMD_MESH_ROLL_OFF_CFG 10
|
||||
#define VFE_CMD_DEMUX_CFG 11
|
||||
#define VFE_CMD_FOV_CFG 12
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_MAIN_SCALER_CFG 13
|
||||
#define VFE_CMD_WB_CFG 14
|
||||
#define VFE_CMD_COLOR_COR_CFG 15
|
||||
#define VFE_CMD_RGB_G_CFG 16
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_LA_CFG 17
|
||||
#define VFE_CMD_CHROMA_EN_CFG 18
|
||||
#define VFE_CMD_CHROMA_SUP_CFG 19
|
||||
#define VFE_CMD_MCE_CFG 20
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_SK_ENHAN_CFG 21
|
||||
#define VFE_CMD_ASF_CFG 22
|
||||
#define VFE_CMD_S2Y_CFG 23
|
||||
#define VFE_CMD_S2CbCr_CFG 24
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_CHROMA_SUBS_CFG 25
|
||||
#define VFE_CMD_OUT_CLAMP_CFG 26
|
||||
#define VFE_CMD_FRAME_SKIP_CFG 27
|
||||
#define VFE_CMD_DUMMY_1 28
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_DUMMY_2 29
|
||||
#define VFE_CMD_DUMMY_3 30
|
||||
#define VFE_CMD_UPDATE 31
|
||||
#define VFE_CMD_BL_LVL_UPDATE 32
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_DEMUX_UPDATE 33
|
||||
#define VFE_CMD_FOV_UPDATE 34
|
||||
#define VFE_CMD_MAIN_SCALER_UPDATE 35
|
||||
#define VFE_CMD_WB_UPDATE 36
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_COLOR_COR_UPDATE 37
|
||||
#define VFE_CMD_RGB_G_UPDATE 38
|
||||
#define VFE_CMD_LA_UPDATE 39
|
||||
#define VFE_CMD_CHROMA_EN_UPDATE 40
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_CHROMA_SUP_UPDATE 41
|
||||
#define VFE_CMD_MCE_UPDATE 42
|
||||
#define VFE_CMD_SK_ENHAN_UPDATE 43
|
||||
#define VFE_CMD_S2CbCr_UPDATE 44
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_S2Y_UPDATE 45
|
||||
#define VFE_CMD_ASF_UPDATE 46
|
||||
#define VFE_CMD_FRAME_SKIP_UPDATE 47
|
||||
#define VFE_CMD_CAMIF_FRAME_UPDATE 48
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_STATS_AF_UPDATE 49
|
||||
#define VFE_CMD_STATS_AE_UPDATE 50
|
||||
#define VFE_CMD_STATS_AWB_UPDATE 51
|
||||
#define VFE_CMD_STATS_RS_UPDATE 52
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_STATS_CS_UPDATE 53
|
||||
#define VFE_CMD_STATS_SKIN_UPDATE 54
|
||||
#define VFE_CMD_STATS_IHIST_UPDATE 55
|
||||
#define VFE_CMD_DUMMY_4 56
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_EPOCH1_ACK 57
|
||||
#define VFE_CMD_EPOCH2_ACK 58
|
||||
#define VFE_CMD_START_RECORDING 59
|
||||
#define VFE_CMD_STOP_RECORDING 60
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_DUMMY_5 61
|
||||
#define VFE_CMD_DUMMY_6 62
|
||||
#define VFE_CMD_CAPTURE 63
|
||||
#define VFE_CMD_DUMMY_7 64
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_STOP 65
|
||||
#define VFE_CMD_GET_HW_VERSION 66
|
||||
#define VFE_CMD_GET_FRAME_SKIP_COUNTS 67
|
||||
#define VFE_CMD_OUTPUT1_BUFFER_ENQ 68
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_OUTPUT2_BUFFER_ENQ 69
|
||||
#define VFE_CMD_OUTPUT3_BUFFER_ENQ 70
|
||||
#define VFE_CMD_JPEG_OUT_BUF_ENQ 71
|
||||
#define VFE_CMD_RAW_OUT_BUF_ENQ 72
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_RAW_IN_BUF_ENQ 73
|
||||
#define VFE_CMD_STATS_AF_ENQ 74
|
||||
#define VFE_CMD_STATS_AE_ENQ 75
|
||||
#define VFE_CMD_STATS_AWB_ENQ 76
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_STATS_RS_ENQ 77
|
||||
#define VFE_CMD_STATS_CS_ENQ 78
|
||||
#define VFE_CMD_STATS_SKIN_ENQ 79
|
||||
#define VFE_CMD_STATS_IHIST_ENQ 80
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_DUMMY_8 81
|
||||
#define VFE_CMD_JPEG_ENC_CFG 82
|
||||
#define VFE_CMD_DUMMY_9 83
|
||||
#define VFE_CMD_STATS_AF_START 84
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_STATS_AF_STOP 85
|
||||
#define VFE_CMD_STATS_AE_START 86
|
||||
#define VFE_CMD_STATS_AE_STOP 87
|
||||
#define VFE_CMD_STATS_AWB_START 88
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_STATS_AWB_STOP 89
|
||||
#define VFE_CMD_STATS_RS_START 90
|
||||
#define VFE_CMD_STATS_RS_STOP 91
|
||||
#define VFE_CMD_STATS_CS_START 92
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_STATS_CS_STOP 93
|
||||
#define VFE_CMD_STATS_SKIN_START 94
|
||||
#define VFE_CMD_STATS_SKIN_STOP 95
|
||||
#define VFE_CMD_STATS_IHIST_START 96
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_STATS_IHIST_STOP 97
|
||||
#define VFE_CMD_DUMMY_10 98
|
||||
#define VFE_CMD_SYNC_TIMER_SETTING 99
|
||||
#define VFE_CMD_ASYNC_TIMER_SETTING 100
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_LIVESHOT 101
|
||||
#define VFE_CMD_LA_SETUP 102
|
||||
#define VFE_CMD_LINEARIZATION_CFG 103
|
||||
#define VFE_CMD_DEMOSAICV3 104
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_DEMOSAICV3_ABCC_CFG 105
|
||||
#define VFE_CMD_DEMOSAICV3_DBCC_CFG 106
|
||||
#define VFE_CMD_DEMOSAICV3_DBPC_CFG 107
|
||||
#define VFE_CMD_DEMOSAICV3_ABF_CFG 108
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_DEMOSAICV3_ABCC_UPDATE 109
|
||||
#define VFE_CMD_DEMOSAICV3_DBCC_UPDATE 110
|
||||
#define VFE_CMD_DEMOSAICV3_DBPC_UPDATE 111
|
||||
#define VFE_CMD_XBAR_CFG 112
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_MODULE_CFG 113
|
||||
#define VFE_CMD_ZSL 114
|
||||
#define VFE_CMD_LINEARIZATION_UPDATE 115
|
||||
#define VFE_CMD_DEMOSAICV3_ABF_UPDATE 116
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_CLF_CFG 117
|
||||
#define VFE_CMD_CLF_LUMA_UPDATE 118
|
||||
#define VFE_CMD_CLF_CHROMA_UPDATE 119
|
||||
#define VFE_CMD_PCA_ROLL_OFF_CFG 120
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_PCA_ROLL_OFF_UPDATE 121
|
||||
#define VFE_CMD_GET_REG_DUMP 122
|
||||
#define VFE_CMD_GET_LINEARIZATON_TABLE 123
|
||||
#define VFE_CMD_GET_MESH_ROLLOFF_TABLE 124
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_GET_PCA_ROLLOFF_TABLE 125
|
||||
#define VFE_CMD_GET_RGB_G_TABLE 126
|
||||
#define VFE_CMD_GET_LA_TABLE 127
|
||||
#define VFE_CMD_DEMOSAICV3_UPDATE 128
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_ACTIVE_REGION_CFG 129
|
||||
#define VFE_CMD_COLOR_PROCESSING_CONFIG 130
|
||||
#define VFE_CMD_STATS_WB_AEC_CONFIG 131
|
||||
#define VFE_CMD_STATS_WB_AEC_UPDATE 132
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_Y_GAMMA_CONFIG 133
|
||||
#define VFE_CMD_SCALE_OUTPUT1_CONFIG 134
|
||||
#define VFE_CMD_SCALE_OUTPUT2_CONFIG 135
|
||||
#define VFE_CMD_CAPTURE_RAW 136
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_STOP_LIVESHOT 137
|
||||
#define VFE_CMD_RECONFIG_VFE 138
|
||||
#define VFE_CMD_STATS_REQBUF 139
|
||||
#define VFE_CMD_STATS_ENQUEUEBUF 140
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_STATS_FLUSH_BUFQ 141
|
||||
#define VFE_CMD_STATS_UNREGBUF 142
|
||||
#define VFE_CMD_STATS_BG_START 143
|
||||
#define VFE_CMD_STATS_BG_STOP 144
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_STATS_BF_START 145
|
||||
#define VFE_CMD_STATS_BF_STOP 146
|
||||
#define VFE_CMD_STATS_BHIST_START 147
|
||||
#define VFE_CMD_STATS_BHIST_STOP 148
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_RESET_2 149
|
||||
#define VFE_CMD_FOV_ENC_CFG 150
|
||||
#define VFE_CMD_FOV_VIEW_CFG 151
|
||||
#define VFE_CMD_FOV_ENC_UPDATE 152
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_FOV_VIEW_UPDATE 153
|
||||
#define VFE_CMD_SCALER_ENC_CFG 154
|
||||
#define VFE_CMD_SCALER_VIEW_CFG 155
|
||||
#define VFE_CMD_SCALER_ENC_UPDATE 156
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_SCALER_VIEW_UPDATE 157
|
||||
#define VFE_CMD_COLORXFORM_ENC_CFG 158
|
||||
#define VFE_CMD_COLORXFORM_VIEW_CFG 159
|
||||
#define VFE_CMD_COLORXFORM_ENC_UPDATE 160
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_COLORXFORM_VIEW_UPDATE 161
|
||||
#define VFE_CMD_TEST_GEN_CFG 162
|
||||
struct msm_isp_cmd {
|
||||
int32_t id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t length;
|
||||
void *value;
|
||||
};
|
||||
#define VPE_CMD_DUMMY_0 0
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VPE_CMD_INIT 1
|
||||
#define VPE_CMD_DEINIT 2
|
||||
#define VPE_CMD_ENABLE 3
|
||||
#define VPE_CMD_DISABLE 4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VPE_CMD_RESET 5
|
||||
#define VPE_CMD_FLUSH 6
|
||||
#define VPE_CMD_OPERATION_MODE_CFG 7
|
||||
#define VPE_CMD_INPUT_PLANE_CFG 8
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VPE_CMD_OUTPUT_PLANE_CFG 9
|
||||
#define VPE_CMD_INPUT_PLANE_UPDATE 10
|
||||
#define VPE_CMD_SCALE_CFG_TYPE 11
|
||||
#define VPE_CMD_ZOOM 13
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VPE_CMD_MAX 14
|
||||
#define MSM_PP_CMD_TYPE_NOT_USED 0
|
||||
#define MSM_PP_CMD_TYPE_VPE 1
|
||||
#define MSM_PP_CMD_TYPE_MCTL 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MCTL_CMD_DUMMY_0 0
|
||||
#define MCTL_CMD_GET_FRAME_BUFFER 1
|
||||
#define MCTL_CMD_PUT_FRAME_BUFFER 2
|
||||
#define MCTL_CMD_DIVERT_FRAME_PP_PATH 3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MCTL_PP_EVENT_NOTUSED 0
|
||||
#define MCTL_PP_EVENT_CMD_ACK 1
|
||||
#define VPE_OPERATION_MODE_CFG_LEN 4
|
||||
#define VPE_INPUT_PLANE_CFG_LEN 24
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VPE_OUTPUT_PLANE_CFG_LEN 20
|
||||
#define VPE_INPUT_PLANE_UPDATE_LEN 12
|
||||
#define VPE_SCALER_CONFIG_LEN 260
|
||||
#define VPE_DIS_OFFSET_CFG_LEN 12
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define CAPTURE_WIDTH 1280
|
||||
#define IMEM_Y_SIZE (CAPTURE_WIDTH*16)
|
||||
#define IMEM_CBCR_SIZE (CAPTURE_WIDTH*8)
|
||||
#define IMEM_Y_PING_OFFSET 0x2E000000
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IMEM_CBCR_PING_OFFSET (IMEM_Y_PING_OFFSET + IMEM_Y_SIZE)
|
||||
#define IMEM_Y_PONG_OFFSET (IMEM_CBCR_PING_OFFSET + IMEM_CBCR_SIZE)
|
||||
#define IMEM_CBCR_PONG_OFFSET (IMEM_Y_PONG_OFFSET + IMEM_Y_SIZE)
|
||||
struct msm_vpe_op_mode_cfg {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t op_mode_cfg[VPE_OPERATION_MODE_CFG_LEN];
|
||||
};
|
||||
struct msm_vpe_input_plane_cfg {
|
||||
uint8_t input_plane_cfg[VPE_INPUT_PLANE_CFG_LEN];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_vpe_output_plane_cfg {
|
||||
uint8_t output_plane_cfg[VPE_OUTPUT_PLANE_CFG_LEN];
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_vpe_input_plane_update_cfg {
|
||||
uint8_t input_plane_update_cfg[VPE_INPUT_PLANE_UPDATE_LEN];
|
||||
};
|
||||
struct msm_vpe_scaler_cfg {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t scaler_cfg[VPE_SCALER_CONFIG_LEN];
|
||||
};
|
||||
struct msm_vpe_flush_frame_buffer {
|
||||
uint32_t src_buf_handle;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t dest_buf_handle;
|
||||
int path;
|
||||
};
|
||||
struct msm_mctl_pp_frame_buffer {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t buf_handle;
|
||||
int path;
|
||||
};
|
||||
struct msm_mctl_pp_divert_pp {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int path;
|
||||
int enable;
|
||||
};
|
||||
struct msm_vpe_clock_rate {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t rate;
|
||||
};
|
||||
struct msm_pp_crop {
|
||||
uint32_t src_x;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t src_y;
|
||||
uint32_t src_w;
|
||||
uint32_t src_h;
|
||||
uint32_t dst_x;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t dst_y;
|
||||
uint32_t dst_w;
|
||||
uint32_t dst_h;
|
||||
uint8_t update_flag;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define MSM_MCTL_PP_VPE_FRAME_ACK (1<<0)
|
||||
#define MSM_MCTL_PP_VPE_FRAME_TO_APP (1<<1)
|
||||
struct msm_mctl_pp_frame_cmd {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t cookie;
|
||||
uint8_t vpe_output_action;
|
||||
uint32_t src_buf_handle;
|
||||
uint32_t dest_buf_handle;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_pp_crop crop;
|
||||
int path;
|
||||
};
|
||||
#define VFE_OUTPUTS_MAIN_AND_PREVIEW BIT(0)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_OUTPUTS_MAIN_AND_VIDEO BIT(1)
|
||||
#define VFE_OUTPUTS_MAIN_AND_THUMB BIT(2)
|
||||
#define VFE_OUTPUTS_THUMB_AND_MAIN BIT(3)
|
||||
#define VFE_OUTPUTS_PREVIEW_AND_VIDEO BIT(4)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_OUTPUTS_VIDEO_AND_PREVIEW BIT(5)
|
||||
#define VFE_OUTPUTS_PREVIEW BIT(6)
|
||||
#define VFE_OUTPUTS_VIDEO BIT(7)
|
||||
#define VFE_OUTPUTS_RAW BIT(8)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_OUTPUTS_JPEG_AND_THUMB BIT(9)
|
||||
#define VFE_OUTPUTS_THUMB_AND_JPEG BIT(10)
|
||||
#define VFE_OUTPUTS_RDI0 BIT(11)
|
||||
#define VFE_OUTPUTS_RDI1 BIT(12)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_frame_info {
|
||||
uint32_t inst_handle;
|
||||
uint32_t path;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
|
106
libc/kernel/common/media/msm_mercury.h
Normal file
106
libc/kernel/common/media/msm_mercury.h
Normal file
@@ -0,0 +1,106 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __LINUX_MSM_MERCURY_H
|
||||
#define __LINUX_MSM_MERCURY_H
|
||||
#include <linux/types.h>
|
||||
#include <linux/ioctl.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_MERCURY_HW_VERSION_REG 0x0004
|
||||
#define OUTPUT_H2V1 0
|
||||
#define OUTPUT_H2V2 1
|
||||
#define OUTPUT_BYTE 6
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_MERCURY_MODE_REALTIME_ENCODE 0
|
||||
#define MSM_MERCURY_MODE_OFFLINE_ENCODE 1
|
||||
#define MSM_MERCURY_MODE_REALTIME_ROTATION 2
|
||||
#define MSM_MERCURY_MODE_OFFLINE_ROTATION 3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_MERCURY_EVT_RESET 1
|
||||
#define MSM_MERCURY_EVT_FRAMEDONE 2
|
||||
#define MSM_MERCURY_EVT_ERR 3
|
||||
#define MSM_MERCURY_EVT_UNBLOCK 4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_MERCURY_HW_CMD_TYPE_READ 0
|
||||
#define MSM_MERCURY_HW_CMD_TYPE_WRITE 1
|
||||
#define MSM_MERCURY_HW_CMD_TYPE_WRITE_OR 2
|
||||
#define MSM_MERCURY_HW_CMD_TYPE_UWAIT 3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_MERCURY_HW_CMD_TYPE_MWAIT 4
|
||||
#define MSM_MERCURY_HW_CMD_TYPE_MDELAY 5
|
||||
#define MSM_MERCURY_HW_CMD_TYPE_UDELAY 6
|
||||
#define MSM_MCR_IOCTL_MAGIC 'g'
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_MCR_IOCTL_GET_HW_VERSION _IOW(MSM_MCR_IOCTL_MAGIC, 1, struct msm_mercury_hw_cmd *)
|
||||
#define MSM_MCR_IOCTL_RESET _IOW(MSM_MCR_IOCTL_MAGIC, 2, struct msm_mercury_ctrl_cmd *)
|
||||
#define MSM_MCR_IOCTL_STOP _IOW(MSM_MCR_IOCTL_MAGIC, 3, struct msm_mercury_hw_cmds *)
|
||||
#define MSM_MCR_IOCTL_START _IOW(MSM_MCR_IOCTL_MAGIC, 4, struct msm_mercury_hw_cmds *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_MCR_IOCTL_INPUT_BUF_CFG _IOW(MSM_MCR_IOCTL_MAGIC, 5, struct msm_mercury_buf *)
|
||||
#define MSM_MCR_IOCTL_INPUT_GET _IOW(MSM_MCR_IOCTL_MAGIC, 6, struct msm_mercury_buf *)
|
||||
#define MSM_MCR_IOCTL_INPUT_GET_UNBLOCK _IOW(MSM_MCR_IOCTL_MAGIC, 7, int)
|
||||
#define MSM_MCR_IOCTL_OUTPUT_BUF_CFG _IOW(MSM_MCR_IOCTL_MAGIC, 8, struct msm_mercury_buf *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_MCR_IOCTL_OUTPUT_GET _IOW(MSM_MCR_IOCTL_MAGIC, 9, struct msm_mercury_buf *)
|
||||
#define MSM_MCR_IOCTL_OUTPUT_GET_UNBLOCK _IOW(MSM_MCR_IOCTL_MAGIC, 10, int)
|
||||
#define MSM_MCR_IOCTL_EVT_GET _IOW(MSM_MCR_IOCTL_MAGIC, 11, struct msm_mercury_ctrl_cmd *)
|
||||
#define MSM_MCR_IOCTL_EVT_GET_UNBLOCK _IOW(MSM_MCR_IOCTL_MAGIC, 12, int)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_MCR_IOCTL_HW_CMD _IOW(MSM_MCR_IOCTL_MAGIC, 13, struct msm_mercury_hw_cmd *)
|
||||
#define MSM_MCR_IOCTL_HW_CMDS _IOW(MSM_MCR_IOCTL_MAGIC, 14, struct msm_mercury_hw_cmds *)
|
||||
#define MSM_MCR_IOCTL_TEST_DUMP_REGION _IOW(MSM_MCR_IOCTL_MAGIC, 15, unsigned long)
|
||||
struct msm_mercury_ctrl_cmd {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t type;
|
||||
uint32_t len;
|
||||
void *value;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_mercury_buf {
|
||||
uint32_t type;
|
||||
int fd;
|
||||
void *vaddr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t y_off;
|
||||
uint32_t y_len;
|
||||
uint32_t framedone_len;
|
||||
uint32_t cbcr_off;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t cbcr_len;
|
||||
uint32_t num_of_mcu_rows;
|
||||
uint32_t offset;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_mercury_hw_cmd {
|
||||
uint32_t type:4;
|
||||
uint32_t n:12;
|
||||
uint32_t offset:16;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t mask;
|
||||
union {
|
||||
uint32_t data;
|
||||
uint32_t *pdata;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
};
|
||||
struct msm_mercury_hw_cmds {
|
||||
uint32_t m;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_mercury_hw_cmd hw_cmd[1];
|
||||
};
|
||||
#endif
|
65
libc/kernel/common/media/v4l2-mediabus.h
Normal file
65
libc/kernel/common/media/v4l2-mediabus.h
Normal file
@@ -0,0 +1,65 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef V4L2_MEDIABUS_H
|
||||
#define V4L2_MEDIABUS_H
|
||||
#include <linux/v4l2-mediabus.h>
|
||||
#define V4L2_MBUS_MASTER (1 << 0)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define V4L2_MBUS_SLAVE (1 << 1)
|
||||
#define V4L2_MBUS_HSYNC_ACTIVE_HIGH (1 << 2)
|
||||
#define V4L2_MBUS_HSYNC_ACTIVE_LOW (1 << 3)
|
||||
#define V4L2_MBUS_VSYNC_ACTIVE_HIGH (1 << 4)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define V4L2_MBUS_VSYNC_ACTIVE_LOW (1 << 5)
|
||||
#define V4L2_MBUS_PCLK_SAMPLE_RISING (1 << 6)
|
||||
#define V4L2_MBUS_PCLK_SAMPLE_FALLING (1 << 7)
|
||||
#define V4L2_MBUS_DATA_ACTIVE_HIGH (1 << 8)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define V4L2_MBUS_DATA_ACTIVE_LOW (1 << 9)
|
||||
#define V4L2_MBUS_FIELD_EVEN_HIGH (1 << 10)
|
||||
#define V4L2_MBUS_FIELD_EVEN_LOW (1 << 11)
|
||||
#define V4L2_MBUS_CSI2_1_LANE (1 << 0)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define V4L2_MBUS_CSI2_2_LANE (1 << 1)
|
||||
#define V4L2_MBUS_CSI2_3_LANE (1 << 2)
|
||||
#define V4L2_MBUS_CSI2_4_LANE (1 << 3)
|
||||
#define V4L2_MBUS_CSI2_CHANNEL_0 (1 << 4)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define V4L2_MBUS_CSI2_CHANNEL_1 (1 << 5)
|
||||
#define V4L2_MBUS_CSI2_CHANNEL_2 (1 << 6)
|
||||
#define V4L2_MBUS_CSI2_CHANNEL_3 (1 << 7)
|
||||
#define V4L2_MBUS_CSI2_CONTINUOUS_CLOCK (1 << 8)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define V4L2_MBUS_CSI2_NONCONTINUOUS_CLOCK (1 << 9)
|
||||
#define V4L2_MBUS_CSI2_LANES (V4L2_MBUS_CSI2_1_LANE | V4L2_MBUS_CSI2_2_LANE | V4L2_MBUS_CSI2_3_LANE | V4L2_MBUS_CSI2_4_LANE)
|
||||
#define V4L2_MBUS_CSI2_CHANNELS (V4L2_MBUS_CSI2_CHANNEL_0 | V4L2_MBUS_CSI2_CHANNEL_1 | V4L2_MBUS_CSI2_CHANNEL_2 | V4L2_MBUS_CSI2_CHANNEL_3)
|
||||
enum v4l2_mbus_type {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
V4L2_MBUS_PARALLEL,
|
||||
V4L2_MBUS_BT656,
|
||||
V4L2_MBUS_CSI2,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct v4l2_mbus_config {
|
||||
enum v4l2_mbus_type type;
|
||||
unsigned int flags;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
|
45
libc/kernel/common/sound/tlv.h
Normal file
45
libc/kernel/common/sound/tlv.h
Normal file
@@ -0,0 +1,45 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __SOUND_TLV_H
|
||||
#define __SOUND_TLV_H
|
||||
#define SNDRV_CTL_TLVT_CONTAINER 0
|
||||
#define SNDRV_CTL_TLVT_DB_SCALE 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SNDRV_CTL_TLVT_DB_LINEAR 2
|
||||
#define SNDRV_CTL_TLVT_DB_RANGE 3
|
||||
#define SNDRV_CTL_TLVT_DB_MINMAX 4
|
||||
#define SNDRV_CTL_TLVT_DB_MINMAX_MUTE 5
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define TLV_DB_SCALE_MASK 0xffff
|
||||
#define TLV_DB_SCALE_MUTE 0x10000
|
||||
#define TLV_DB_SCALE_ITEM(min, step, mute) SNDRV_CTL_TLVT_DB_SCALE, 2 * sizeof(unsigned int), (min), ((step) & TLV_DB_SCALE_MASK) | ((mute) ? TLV_DB_SCALE_MUTE : 0)
|
||||
#define DECLARE_TLV_DB_SCALE(name, min, step, mute) unsigned int name[] = { TLV_DB_SCALE_ITEM(min, step, mute) }
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define TLV_DB_MINMAX_ITEM(min_dB, max_dB) SNDRV_CTL_TLVT_DB_MINMAX, 2 * sizeof(unsigned int), (min_dB), (max_dB)
|
||||
#define TLV_DB_MINMAX_MUTE_ITEM(min_dB, max_dB) SNDRV_CTL_TLVT_DB_MINMAX_MUTE, 2 * sizeof(unsigned int), (min_dB), (max_dB)
|
||||
#define DECLARE_TLV_DB_MINMAX(name, min_dB, max_dB) unsigned int name[] = { TLV_DB_MINMAX_ITEM(min_dB, max_dB) }
|
||||
#define DECLARE_TLV_DB_MINMAX_MUTE(name, min_dB, max_dB) unsigned int name[] = { TLV_DB_MINMAX_MUTE_ITEM(min_dB, max_dB) }
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define TLV_DB_LINEAR_ITEM(min_dB, max_dB) SNDRV_CTL_TLVT_DB_LINEAR, 2 * sizeof(unsigned int), (min_dB), (max_dB)
|
||||
#define DECLARE_TLV_DB_LINEAR(name, min_dB, max_dB) unsigned int name[] = { TLV_DB_LINEAR_ITEM(min_dB, max_dB) }
|
||||
#define TLV_DB_RANGE_HEAD(num) SNDRV_CTL_TLVT_DB_RANGE, 6 * (num) * sizeof(unsigned int)
|
||||
#define TLV_DB_GAIN_MUTE -9999999
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
|
@@ -51,7 +51,6 @@ kernel_default_arch_macros = {
|
||||
# Replace tokens in the output according to this mapping
|
||||
kernel_token_replacements = {
|
||||
"asm": "__asm__",
|
||||
"__unused": "__linux_unused", # The kernel usage of __unused conflicts with the macro defined in sys/cdefs.h
|
||||
}
|
||||
|
||||
# this is the set of known static inline functions that we want to keep
|
||||
|
@@ -1,40 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2012 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#ifndef SCOPED_PTHREAD_MUTEX_LOCKER_H
|
||||
#define SCOPED_PTHREAD_MUTEX_LOCKER_H
|
||||
|
||||
#include <pthread.h>
|
||||
|
||||
class ScopedPthreadMutexLocker {
|
||||
public:
|
||||
explicit ScopedPthreadMutexLocker(pthread_mutex_t* mu) : mu_(mu) {
|
||||
pthread_mutex_lock(mu_);
|
||||
}
|
||||
|
||||
~ScopedPthreadMutexLocker() {
|
||||
pthread_mutex_unlock(mu_);
|
||||
}
|
||||
|
||||
private:
|
||||
pthread_mutex_t* mu_;
|
||||
|
||||
// Disallow copy and assignment.
|
||||
ScopedPthreadMutexLocker(const ScopedPthreadMutexLocker&);
|
||||
void operator=(const ScopedPthreadMutexLocker&);
|
||||
};
|
||||
|
||||
#endif // SCOPED_PTHREAD_MUTEX_LOCKER_H
|
@@ -49,12 +49,7 @@ struct strftime_locale {
|
||||
const char * date_fmt;
|
||||
};
|
||||
|
||||
/*
|
||||
* Note: you should consider these extensions deprecated and use managed code or icu4c instead.
|
||||
*/
|
||||
extern size_t strftime_tz(char* s, size_t max, const char* format, const struct tm* tm, const struct strftime_locale* lc);
|
||||
extern time_t mktime_tz(struct tm* const tmp, char const* tz);
|
||||
extern void localtime_tz(const time_t* const timep, struct tm* tmp, const char* tz);
|
||||
extern size_t strftime_tz(char *s, size_t max, const char *format, const struct tm *tm, const struct strftime_locale* lc);
|
||||
|
||||
#endif /* _BIONIC_STRFTIME_TZ_DECLARED */
|
||||
|
||||
|
@@ -52,7 +52,7 @@ __BEGIN_DECLS
|
||||
* thread-specific segment descriptor...
|
||||
*/
|
||||
|
||||
/* Well-known TLS slots. */
|
||||
/* Well known TLS slots */
|
||||
#define TLS_SLOT_SELF 0
|
||||
#define TLS_SLOT_THREAD_ID 1
|
||||
#define TLS_SLOT_ERRNO 2
|
||||
@@ -60,16 +60,23 @@ __BEGIN_DECLS
|
||||
#define TLS_SLOT_OPENGL_API 3
|
||||
#define TLS_SLOT_OPENGL 4
|
||||
|
||||
#define TLS_SLOT_DLERROR 5
|
||||
|
||||
#define TLS_SLOT_MAX_WELL_KNOWN TLS_SLOT_DLERROR
|
||||
|
||||
/* This slot is only used to pass information from the dynamic linker to
|
||||
/* this slot is only used to pass information from the dynamic linker to
|
||||
* libc.so when the C library is loaded in to memory. The C runtime init
|
||||
* function will then clear it. Since its use is extremely temporary,
|
||||
* we reuse an existing location.
|
||||
*/
|
||||
#define TLS_SLOT_BIONIC_PREINIT TLS_SLOT_OPENGL_API
|
||||
#define TLS_SLOT_BIONIC_PREINIT (TLS_SLOT_ERRNO+1)
|
||||
|
||||
/* small technical note: it is not possible to call pthread_setspecific
|
||||
* on keys that are <= TLS_SLOT_MAX_WELL_KNOWN, which is why it is set to
|
||||
* TLS_SLOT_ERRNO.
|
||||
*
|
||||
* later slots like TLS_SLOT_OPENGL are pre-allocated through the use of
|
||||
* TLS_DEFAULT_ALLOC_MAP. this means that there is no need to use
|
||||
* pthread_key_create() to initialize them. on the other hand, there is
|
||||
* no destructor associated to them (we might need to implement this later)
|
||||
*/
|
||||
#define TLS_SLOT_MAX_WELL_KNOWN TLS_SLOT_ERRNO
|
||||
|
||||
#define TLS_DEFAULT_ALLOC_MAP 0x0000001F
|
||||
|
||||
|
@@ -1,5 +1,3 @@
|
||||
/* $NetBSD: rand48.h,v 1.6 2011/05/18 19:36:36 dsl Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1993 Martin Birgmeier
|
||||
* All rights reserved.
|
||||
@@ -11,17 +9,17 @@
|
||||
* This software is provided ``as is'', and comes with no warranties
|
||||
* of any kind. I shall in no event be liable for anything that happens
|
||||
* to anyone/anything when using this software.
|
||||
*
|
||||
* $OpenBSD: rand48.h,v 1.3 2002/02/16 21:27:24 millert Exp $
|
||||
*/
|
||||
|
||||
#ifndef _RAND48_H_
|
||||
#define _RAND48_H_
|
||||
|
||||
#include <math.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
extern void __dorand48(unsigned short[3]);
|
||||
extern unsigned short __rand48_seed[3];
|
||||
extern unsigned short __rand48_mult[3];
|
||||
extern unsigned short __rand48_add;
|
||||
void __dorand48(unsigned short[3]);
|
||||
|
||||
#define RAND48_SEED_0 (0x330e)
|
||||
#define RAND48_SEED_1 (0xabcd)
|
||||
|
@@ -1,3 +1,4 @@
|
||||
/* $OpenBSD: tmpfile.c,v 1.10 2005/10/10 12:00:52 espie Exp $ */
|
||||
/*-
|
||||
* Copyright (c) 1990, 1993
|
||||
* The Regents of the University of California. All rights reserved.
|
||||
@@ -30,84 +31,51 @@
|
||||
* SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#include <errno.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include <unistd.h>
|
||||
#include <signal.h>
|
||||
#include <errno.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <sys/stat.h>
|
||||
#include <sys/types.h>
|
||||
#include <unistd.h>
|
||||
#include <string.h>
|
||||
#include <paths.h>
|
||||
|
||||
class ScopedSignalBlocker {
|
||||
public:
|
||||
ScopedSignalBlocker() {
|
||||
sigset_t set;
|
||||
sigfillset(&set);
|
||||
sigprocmask(SIG_BLOCK, &set, &old_set_);
|
||||
}
|
||||
FILE *
|
||||
tmpfile(void)
|
||||
{
|
||||
sigset_t set, oset;
|
||||
FILE *fp;
|
||||
int fd, sverrno;
|
||||
#define TRAILER "tmp.XXXXXXXXXX"
|
||||
char buf[sizeof(_PATH_TMP) + sizeof(TRAILER)];
|
||||
|
||||
~ScopedSignalBlocker() {
|
||||
sigprocmask(SIG_SETMASK, &old_set_, NULL);
|
||||
}
|
||||
(void)memcpy(buf, _PATH_TMP, sizeof(_PATH_TMP) - 1);
|
||||
(void)memcpy(buf + sizeof(_PATH_TMP) - 1, TRAILER, sizeof(TRAILER));
|
||||
|
||||
private:
|
||||
sigset_t old_set_;
|
||||
};
|
||||
sigfillset(&set);
|
||||
(void)sigprocmask(SIG_BLOCK, &set, &oset);
|
||||
|
||||
static FILE* __tmpfile_dir(const char* tmp_dir) {
|
||||
char buf[PATH_MAX];
|
||||
int path_length = snprintf(buf, sizeof(buf), "%s/tmp.XXXXXXXXXX", tmp_dir);
|
||||
if (path_length >= static_cast<int>(sizeof(buf))) {
|
||||
return NULL;
|
||||
}
|
||||
fd = mkstemp(buf);
|
||||
if (fd != -1) {
|
||||
mode_t u;
|
||||
|
||||
int fd;
|
||||
{
|
||||
ScopedSignalBlocker ssb;
|
||||
fd = mkstemp(buf);
|
||||
if (fd == -1) {
|
||||
return NULL;
|
||||
}
|
||||
(void)unlink(buf);
|
||||
u = umask(0);
|
||||
(void)umask(u);
|
||||
(void)fchmod(fd, 0666 & ~u);
|
||||
}
|
||||
|
||||
// Unlink the file now so that it's removed when closed.
|
||||
unlink(buf);
|
||||
(void)sigprocmask(SIG_SETMASK, &oset, NULL);
|
||||
|
||||
// Can we still use the file now it's unlinked?
|
||||
// File systems without hard link support won't have the usual Unix semantics.
|
||||
struct stat sb;
|
||||
int rc = fstat(fd, &sb);
|
||||
if (rc == -1) {
|
||||
int old_errno = errno;
|
||||
close(fd);
|
||||
errno = old_errno;
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
if (fd == -1)
|
||||
return (NULL);
|
||||
|
||||
// Turn the file descriptor into a FILE*.
|
||||
FILE* fp = fdopen(fd, "w+");
|
||||
if (fp != NULL) {
|
||||
return fp;
|
||||
}
|
||||
|
||||
// Failure. Clean up. We already unlinked, so we just need to close.
|
||||
int old_errno = errno;
|
||||
close(fd);
|
||||
errno = old_errno;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
FILE* tmpfile() {
|
||||
// TODO: get this app's temporary directory from the framework ("/data/data/app/cache").
|
||||
|
||||
// $EXTERNAL_STORAGE turns out not to be very useful because it doesn't support hard links.
|
||||
// This means we can't do the usual trick of calling unlink before handing the file back.
|
||||
|
||||
FILE* fp = __tmpfile_dir("/data/local/tmp");
|
||||
if (fp == NULL) {
|
||||
// P_tmpdir is "/tmp/", but POSIX explicitly says that tmpdir(3) should try P_tmpdir before
|
||||
// giving up. This is potentially useful for bionic on the host anyway.
|
||||
fp = __tmpfile_dir(P_tmpdir);
|
||||
}
|
||||
return fp;
|
||||
if ((fp = fdopen(fd, "w+")) == NULL) {
|
||||
sverrno = errno;
|
||||
(void)close(fd);
|
||||
errno = sverrno;
|
||||
return (NULL);
|
||||
}
|
||||
return (fp);
|
||||
}
|
@@ -1,5 +1,4 @@
|
||||
/* $NetBSD: _rand48.c,v 1.7 2005/06/12 05:21:27 lukem Exp $ */
|
||||
|
||||
/* $OpenBSD: _rand48.c,v 1.3 2005/08/08 08:05:36 espie Exp $ */
|
||||
/*
|
||||
* Copyright (c) 1993 Martin Birgmeier
|
||||
* All rights reserved.
|
||||
@@ -13,13 +12,6 @@
|
||||
* to anyone/anything when using this software.
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
#if defined(LIBC_SCCS) && !defined(lint)
|
||||
__RCSID("$NetBSD: _rand48.c,v 1.7 2005/06/12 05:21:27 lukem Exp $");
|
||||
#endif /* LIBC_SCCS and not lint */
|
||||
|
||||
#include <assert.h>
|
||||
|
||||
#include "rand48.h"
|
||||
|
||||
unsigned short __rand48_seed[3] = {
|
||||
@@ -40,8 +32,6 @@ __dorand48(unsigned short xseed[3])
|
||||
unsigned long accu;
|
||||
unsigned short temp[2];
|
||||
|
||||
_DIAGASSERT(xseed != NULL);
|
||||
|
||||
accu = (unsigned long) __rand48_mult[0] * (unsigned long) xseed[0] +
|
||||
(unsigned long) __rand48_add;
|
||||
temp[0] = (unsigned short) accu; /* lower 16 bits */
|
@@ -1,5 +1,4 @@
|
||||
/* $NetBSD: jrand48.c,v 1.8 2005/06/12 05:21:28 lukem Exp $ */
|
||||
|
||||
/* $OpenBSD: jrand48.c,v 1.3 2005/08/08 08:05:36 espie Exp $ */
|
||||
/*
|
||||
* Copyright (c) 1993 Martin Birgmeier
|
||||
* All rights reserved.
|
||||
@@ -13,27 +12,11 @@
|
||||
* to anyone/anything when using this software.
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
#if defined(LIBC_SCCS) && !defined(lint)
|
||||
__RCSID("$NetBSD: jrand48.c,v 1.8 2005/06/12 05:21:28 lukem Exp $");
|
||||
#endif /* LIBC_SCCS and not lint */
|
||||
|
||||
#include "namespace.h"
|
||||
|
||||
#include <assert.h>
|
||||
|
||||
#include "rand48.h"
|
||||
|
||||
#ifdef __weak_alias
|
||||
__weak_alias(jrand48,_jrand48)
|
||||
#endif
|
||||
|
||||
long
|
||||
jrand48(unsigned short xseed[3])
|
||||
{
|
||||
|
||||
_DIAGASSERT(xseed != NULL);
|
||||
|
||||
__dorand48(xseed);
|
||||
return ((long) xseed[2] << 16) + (long) xseed[1];
|
||||
}
|
@@ -1,5 +1,4 @@
|
||||
/* $NetBSD: lrand48.c,v 1.8 2005/06/12 05:21:28 lukem Exp $ */
|
||||
|
||||
/* $OpenBSD: lrand48.c,v 1.3 2005/08/08 08:05:36 espie Exp $ */
|
||||
/*
|
||||
* Copyright (c) 1993 Martin Birgmeier
|
||||
* All rights reserved.
|
||||
@@ -13,22 +12,13 @@
|
||||
* to anyone/anything when using this software.
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
#if defined(LIBC_SCCS) && !defined(lint)
|
||||
__RCSID("$NetBSD: lrand48.c,v 1.8 2005/06/12 05:21:28 lukem Exp $");
|
||||
#endif /* LIBC_SCCS and not lint */
|
||||
|
||||
#include "namespace.h"
|
||||
#include "rand48.h"
|
||||
|
||||
#ifdef __weak_alias
|
||||
__weak_alias(lrand48,_lrand48)
|
||||
#endif
|
||||
extern unsigned short __rand48_seed[3];
|
||||
|
||||
long
|
||||
lrand48(void)
|
||||
{
|
||||
__dorand48(__rand48_seed);
|
||||
return (long)((unsigned long) __rand48_seed[2] << 15) +
|
||||
((unsigned long) __rand48_seed[1] >> 1);
|
||||
return ((long) __rand48_seed[2] << 15) + ((long) __rand48_seed[1] >> 1);
|
||||
}
|
@@ -1,5 +1,4 @@
|
||||
/* $NetBSD: mrand48.c,v 1.7 2005/06/12 05:21:28 lukem Exp $ */
|
||||
|
||||
/* $OpenBSD: mrand48.c,v 1.3 2005/08/08 08:05:37 espie Exp $ */
|
||||
/*
|
||||
* Copyright (c) 1993 Martin Birgmeier
|
||||
* All rights reserved.
|
||||
@@ -13,17 +12,9 @@
|
||||
* to anyone/anything when using this software.
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
#if defined(LIBC_SCCS) && !defined(lint)
|
||||
__RCSID("$NetBSD: mrand48.c,v 1.7 2005/06/12 05:21:28 lukem Exp $");
|
||||
#endif /* LIBC_SCCS and not lint */
|
||||
|
||||
#include "namespace.h"
|
||||
#include "rand48.h"
|
||||
|
||||
#ifdef __weak_alias
|
||||
__weak_alias(mrand48,_mrand48)
|
||||
#endif
|
||||
extern unsigned short __rand48_seed[3];
|
||||
|
||||
long
|
||||
mrand48(void)
|
@@ -1,5 +1,4 @@
|
||||
/* $NetBSD: nrand48.c,v 1.9 2005/06/12 05:21:28 lukem Exp $ */
|
||||
|
||||
/* $OpenBSD: nrand48.c,v 1.3 2005/08/08 08:05:37 espie Exp $ */
|
||||
/*
|
||||
* Copyright (c) 1993 Martin Birgmeier
|
||||
* All rights reserved.
|
||||
@@ -13,27 +12,11 @@
|
||||
* to anyone/anything when using this software.
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
#if defined(LIBC_SCCS) && !defined(lint)
|
||||
__RCSID("$NetBSD: nrand48.c,v 1.9 2005/06/12 05:21:28 lukem Exp $");
|
||||
#endif /* LIBC_SCCS and not lint */
|
||||
|
||||
#include "namespace.h"
|
||||
|
||||
#include <assert.h>
|
||||
|
||||
#include "rand48.h"
|
||||
|
||||
#ifdef __weak_alias
|
||||
__weak_alias(nrand48,_nrand48)
|
||||
#endif
|
||||
|
||||
long
|
||||
nrand48(unsigned short xseed[3])
|
||||
{
|
||||
_DIAGASSERT(xseed != NULL);
|
||||
|
||||
__dorand48(xseed);
|
||||
return (long)((unsigned long) xseed[2] << 15) +
|
||||
((unsigned long) xseed[1] >> 1);
|
||||
return ((long) xseed[2] << 15) + ((long) xseed[1] >> 1);
|
||||
}
|
@@ -1,5 +1,4 @@
|
||||
/* $NetBSD: seed48.c,v 1.8 2005/06/12 05:21:28 lukem Exp $ */
|
||||
|
||||
/* $OpenBSD: seed48.c,v 1.3 2005/08/08 08:05:37 espie Exp $ */
|
||||
/*
|
||||
* Copyright (c) 1993 Martin Birgmeier
|
||||
* All rights reserved.
|
||||
@@ -13,28 +12,17 @@
|
||||
* to anyone/anything when using this software.
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
#if defined(LIBC_SCCS) && !defined(lint)
|
||||
__RCSID("$NetBSD: seed48.c,v 1.8 2005/06/12 05:21:28 lukem Exp $");
|
||||
#endif /* LIBC_SCCS and not lint */
|
||||
|
||||
#include "namespace.h"
|
||||
|
||||
#include <assert.h>
|
||||
|
||||
#include "rand48.h"
|
||||
|
||||
#ifdef __weak_alias
|
||||
__weak_alias(seed48,_seed48)
|
||||
#endif
|
||||
extern unsigned short __rand48_seed[3];
|
||||
extern unsigned short __rand48_mult[3];
|
||||
extern unsigned short __rand48_add;
|
||||
|
||||
unsigned short *
|
||||
seed48(unsigned short xseed[3])
|
||||
{
|
||||
static unsigned short sseed[3];
|
||||
|
||||
_DIAGASSERT(xseed != NULL);
|
||||
|
||||
sseed[0] = __rand48_seed[0];
|
||||
sseed[1] = __rand48_seed[1];
|
||||
sseed[2] = __rand48_seed[2];
|
@@ -1,5 +1,4 @@
|
||||
/* $NetBSD: srand48.c,v 1.7 2005/06/12 05:21:28 lukem Exp $ */
|
||||
|
||||
/* $OpenBSD: srand48.c,v 1.3 2005/08/08 08:05:37 espie Exp $ */
|
||||
/*
|
||||
* Copyright (c) 1993 Martin Birgmeier
|
||||
* All rights reserved.
|
||||
@@ -13,24 +12,18 @@
|
||||
* to anyone/anything when using this software.
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
#if defined(LIBC_SCCS) && !defined(lint)
|
||||
__RCSID("$NetBSD: srand48.c,v 1.7 2005/06/12 05:21:28 lukem Exp $");
|
||||
#endif /* LIBC_SCCS and not lint */
|
||||
|
||||
#include "namespace.h"
|
||||
#include "rand48.h"
|
||||
|
||||
#ifdef __weak_alias
|
||||
__weak_alias(srand48,_srand48)
|
||||
#endif
|
||||
extern unsigned short __rand48_seed[3];
|
||||
extern unsigned short __rand48_mult[3];
|
||||
extern unsigned short __rand48_add;
|
||||
|
||||
void
|
||||
srand48(long seed)
|
||||
{
|
||||
__rand48_seed[0] = RAND48_SEED_0;
|
||||
__rand48_seed[1] = (unsigned short) seed;
|
||||
__rand48_seed[2] = (unsigned short) ((unsigned long)seed >> 16);
|
||||
__rand48_seed[2] = (unsigned short) (seed >> 16);
|
||||
__rand48_mult[0] = RAND48_MULT_0;
|
||||
__rand48_mult[1] = RAND48_MULT_1;
|
||||
__rand48_mult[2] = RAND48_MULT_2;
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user