aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-03-29VENDOR: Marvell: abox_edge: Enable SPI controller driverHEADmastermainEthan Xia
1. Enable Marvell SPI controller and MTD m25p80 driver in kernel config 2. Add SPI pin configuration in dts file 3. Support setting the SPI controller clock dynamically 4. Use GPIO to control the #CS signal of SPI BUG: 27844484 Change-Id: I3691f37e869dc43599417ed734ea9b9dd4db2944
2016-03-29VENDOR: Marvell: abox_edge: Add pin configuration for extension boardzhxihu
Add pin[GPIO/SPI/I2C] configuration information for the extension board to support the Peripheral HAL. BUG=27689060 Change-Id: Ifd52812b7cdd89b94e8387935d706c39ffdc44bf
2016-03-24BACKPORT: FROMLIST: mm: ASLR: use get_random_long()dcashman
(cherry picked from commit https://lkml.org/lkml/2016/2/4/833) Replace calls to get_random_int() followed by a cast to (unsigned long) with calls to get_random_long(). Also address shifting bug which, in case of x86 removed entropy mask for mmap_rnd_bits values > 31 bits. Signed-off-by: Daniel Cashman <dcashman@android.com> Signed-off-by: Daniel Cashman <dcashman@google.com> Bug: 27796957 Patchset: ASLR sysctl Change-Id: Ia66447c8e07db36b76789f6a61ea3d14a14707df Signed-off-by: Kees Cook <keescook@google.com>
2016-03-24FROMLIST: drivers: char: random: add get_random_long()dcashman
(cherry picked from commit https://lkml.org/lkml/2016/2/4/831) d07e22597d1d355 ("mm: mmap: add new /proc tunable for mmap_base ASLR") added the ability to choose from a range of values to use for entropy count in generating the random offset to the mmap_base address. The maximum value on this range was set to 32 bits for 64-bit x86 systems, but this value could be increased further, requiring more than the 32 bits of randomness provided by get_random_int(), as is already possible for arm64. Add a new function: get_random_long() which more naturally fits with the mmap usage of get_random_int() but operates exactly the same as get_random_int(). Also, fix the shifting constant in mmap_rnd() to be an unsigned long so that values greater than 31 bits generate an appropriate mask without overflow. This is especially important on x86, as its shift instruction uses a 5-bit mask for the shift operand, which meant that any value for mmap_rnd_bits over 31 acts as a no-op and effectively disables mmap_base randomization. Finally, replace calls to get_random_int() with get_random_long() where appropriate. Signed-off-by: Daniel Cashman <dcashman@android.com> Signed-off-by: Daniel Cashman <dcashman@google.com> Bug: 27796957 Patchset: ASLR sysctl Change-Id: Iaf20b2fb8f15bfccf3db92442fe0fa121282b586 Signed-off-by: Kees Cook <keescook@google.com>
2016-03-24FROMLIST: x86: mm: support ARCH_MMAP_RND_BITS.dcashman
(cherry picked from commit https://lkml.org/lkml/2015/12/21/339) x86: arch_mmap_rnd() uses hard-coded values, 8 for 32-bit and 28 for 64-bit, to generate the random offset for the mmap base address. This value represents a compromise between increased ASLR effectiveness and avoiding address-space fragmentation. Replace it with a Kconfig option, which is sensibly bounded, so that platform developers may choose where to place this compromise. Keep default values as new minimums. Signed-off-by: Daniel Cashman <dcashman@android.com> Signed-off-by: Daniel Cashman <dcashman@google.com> Bug: 27796957 Patchset: ASLR sysctl Change-Id: I65e14a627f2b370566652f569b07e4327d9e42df Signed-off-by: Kees Cook <keescook@google.com>
2016-03-24BACKPORT: FROMLIST: arm64: mm: support ARCH_MMAP_RND_BITS.dcashman
(cherry picked from commit https://lkml.org/lkml/2015/12/21/340) arm64: arch_mmap_rnd() uses STACK_RND_MASK to generate the random offset for the mmap base address. This value represents a compromise between increased ASLR effectiveness and avoiding address-space fragmentation. Replace it with a Kconfig option, which is sensibly bounded, so that platform developers may choose where to place this compromise. Keep default values as new minimums. Signed-off-by: Daniel Cashman <dcashman@android.com> Signed-off-by: Daniel Cashman <dcashman@google.com> Bug: 27796957 Patchset: ASLR sysctl Change-Id: I9192fa3dd0e061066985b48c84d95c88710282db Signed-off-by: Kees Cook <keescook@google.com>
2016-03-24FROMLIST: arm: mm: support ARCH_MMAP_RND_BITS.dcashman
(cherry picked from commit https://lkml.org/lkml/2015/12/21/341) arm: arch_mmap_rnd() uses a hard-code value of 8 to generate the random offset for the mmap base address. This value represents a compromise between increased ASLR effectiveness and avoiding address-space fragmentation. Replace it with a Kconfig option, which is sensibly bounded, so that platform developers may choose where to place this compromise. Keep 8 as the minimum acceptable value. Signed-off-by: Daniel Cashman <dcashman@android.com> Signed-off-by: Daniel Cashman <dcashman@google.com> Bug: 27796957 Patchset: ASLR sysctl Change-Id: I93b29b4abfd3fa6555bd4e21ac4a208b1f30540a Signed-off-by: Kees Cook <keescook@google.com>
2016-03-24FROMLIST: mm: mmap: Add new /proc tunable for mmap_base ASLR.dcashman
(cherry picked from commit https://lkml.org/lkml/2015/12/21/337) ASLR only uses as few as 8 bits to generate the random offset for the mmap base address on 32 bit architectures. This value was chosen to prevent a poorly chosen value from dividing the address space in such a way as to prevent large allocations. This may not be an issue on all platforms. Allow the specification of a minimum number of bits so that platforms desiring greater ASLR protection may determine where to place the trade-off. Signed-off-by: Daniel Cashman <dcashman@android.com> Signed-off-by: Daniel Cashman <dcashman@google.com> Bug: 27796957 Patchset: ASLR sysctl Change-Id: I91c5c5e48f24ce3a0c96697711ead226e6752196 Signed-off-by: Kees Cook <keescook@google.com>
2016-03-04UPSTREAM: ALSA: usb-audio: avoid freeing umidi object twiceKees Cook
The 'umidi' object will be free'd on the error path by snd_usbmidi_free() when tearing down the rawmidi interface. So we shouldn't try to free it in snd_usbmidi_create() after having registered the rawmidi interface. Found by KASAN. Signed-off-by: Andrey Konovalov <andreyknvl@gmail.com> Acked-by: Clemens Ladisch <clemens@ladisch.de> Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de> Bug: 27300729 (cherry picked from commit 07d86ca93db7e5cdf4743564d98292042ec21af7) Signed-off-by: Kees Cook <keescook@google.com> Change-Id: I50e3d5dfe02a7e196c7b4ccf58cd7e37cae010e6
2016-03-03VENDOR: Marvell: abox_edge: Remove the cgitinfo.zhxihu
Remove the git info from the kernel image. The cgitinfo script casue the kernel compilation crash if the path of the kernel is too long. BUG=27455239 Change-Id: Iebf42ec95232b7b9bca9050a73995abf3026b12b
2016-02-25VENDOR: Marvell: To add the ap3426 sensor kernel driverYu Jun
BUG=26894696 Change-Id: I39073164739ade0e0e83979f0baa8d9028b4c940
2016-02-23VENDOR: Marvell: abox_edge: Add support for some usb ethernet adapterszhxihu
1. Enable SMSC75XX usb ethernet adapter. 2. Enable RTL815x usb ethernet adapter. BUG=26986287 Change-Id: I0c689c6e0353180d74c82252e57780e466f14aed
2016-02-03pstore/ram: Strip ramoops header for correct decompressionBen Zhang
pstore compression/decompression was added during 3.12. The ramoops driver prepends a "====timestamp.timestamp-C|D\n" header to the compressed record before handing it over to pstore driver which doesn't know about the header. In pstore_decompress(), the pstore driver reads the first "==" as a zlib header, so the decompression always fails. For example, this causes the driver to write /dev/pstore/dmesg-ramoops-0.enc.z instead of /dev/pstore/dmesg-ramoops-0. This patch makes the ramoops driver remove the header before pstore decompression. Signed-off-by: Ben Zhang <benzh@chromium.org> Acked-by: Kees Cook <keescook@chromium.org> Signed-off-by: Tony Luck <tony.luck@intel.com>
2016-01-21abox_edge: Enable ConfigFS gadget functionsbrillo-m9-releasezhxihu
Add support for ConfigFS gadget functions. BUG=26147310 Change-Id: I8817aad2b0baefb331e469c0e99d4206ea087bdf
2016-01-20Merge "UPSTREAM: KEYS: Fix keyring ref leak in join_session_keyring()" into ↵Kees Cook
pxa-3.14
2016-01-20UPSTREAM: KEYS: Fix keyring ref leak in join_session_keyring()Yevgeny Pats
This fixes CVE-2016-0728. If a thread is asked to join as a session keyring the keyring that's already set as its session, we leak a keyring reference. This can be tested with the following program: #include <stddef.h> #include <stdio.h> #include <sys/types.h> #include <keyutils.h> int main(int argc, const char *argv[]) { int i = 0; key_serial_t serial; serial = keyctl(KEYCTL_JOIN_SESSION_KEYRING, "leaked-keyring"); if (serial < 0) { perror("keyctl"); return -1; } if (keyctl(KEYCTL_SETPERM, serial, KEY_POS_ALL | KEY_USR_ALL) < 0) { perror("keyctl"); return -1; } for (i = 0; i < 100; i++) { serial = keyctl(KEYCTL_JOIN_SESSION_KEYRING, "leaked-keyring"); if (serial < 0) { perror("keyctl"); return -1; } } return 0; } If, after the program has run, there something like the following line in /proc/keys: 3f3d898f I--Q--- 100 perm 3f3f0000 0 0 keyring leaked-keyring: empty with a usage count of 100 * the number of times the program has been run, then the kernel is malfunctioning. If leaked-keyring has zero usages or has been garbage collected, then the problem is fixed. Reported-by: Yevgeny Pats <yevgeny@perception-point.io> Signed-off-by: David Howells <dhowells@redhat.com> Acked-by: Don Zickus <dzickus@redhat.com> Acked-by: Prarit Bhargava <prarit@redhat.com> Acked-by: Jarod Wilson <jarod@redhat.com> Signed-off-by: James Morris <james.l.morris@oracle.com> Bug: 26692844 (cherry picked from commit 23567fd052a9abb6d67fe8e7a9ccdd9800a540f2) Signed-off-by: Kees Cook <keescook@google.com> Change-Id: I80dce82304fcecb633508b4adaf49840547d78b3
2016-01-20abox_edge: Enable CONFIG_MRVL_TZDD for security driver.Mohammed Habibulla
Update marvell security drive update to date. BUG=25833706 Change-Id: I305347e9571401ef59ee94d7bdf21cbfbaf8a5f4
2015-12-21Merge selinux fix to support in-core xattr of debufgsMark Salyzyn
Cherry pick from https://android-review.googlesource.com/#/c/123424/1 pstore: selinux: add security in-core xattr support for pstore and debugfs - add "pstore" and "debugfs" to list of in-core exceptions - change fstype checks to boolean equation - change from strncmp to strcmp for checking Signed-off-by: Mark Salyzyn <salyzyn@android.com> BUG=26258202 Change-Id: I35b41660701fe63a5e8173813ac62b84474ec48f
2015-12-11abox_edge: Add wired headset support in 88pm88x-headset.zhxihu
Add switch classs hook in 88pm88x-headset driver so that the headset information can be read from /sys/class/switch/h2w/. BUG=26071627 Change-Id: Iec7626bfb9cb0a617a38591cd3508366bd1fabc8
2015-12-03Fixed the wifi performance issueYu Jun
1) To pass the wifi calibration data to wifi driver 2) Added the wifi driver error handling for de-association BUG=25731975 Change-Id: I2b72bc92f969b0abf155eb78a0de2de2a21e9528
2015-12-03dts: Fix the SDIO card detection issue for Wi-FiEthan Xia
1. Disable SDIO auto tuning during probe 2. Remove useless GPIOs from dts BUG=25864607 Change-Id: I2d2f80cf094924f8634e2d49de739299daeffdd8
2015-11-25abox_edge: Remove unused modules to optimize booting time.zhxihu
DTS changes: 1. Remove unused settings of front camera. 2. Disable unused sensors. Remove unnecessary debugging information of modules: 1. DVC power down log. 2. sdhci-pxav3 tuning log. 3. Thermal policy log. Test: [ 3.626789] c2 1 (init) init: init first stage started! BUG=25579467 Change-Id: Id7e86f709e5adf2d68aa299ec436c17d95b217fb
2015-11-25usb: Fix the issue of USB keyboard recognition.zhxihu
The USB type A's vbus doesn't connect to otgsc, so there is no need to check its status. BUG=25653524 Change-Id: Ide3fef19c1820c9ff363c647005eab7a003a398f
2015-11-18abox_edge: Rename kernel config file.zhxihu
Rename kernel config file from armadillo_edge_defconfig to abox_edge_defconfig. BUG=25755186 Change-Id: If23af1274075a0fa90450f6645dc2e2c3990feb5
2015-11-17abox_edge: Remove unused modules from default configuration.zhxihu
changes: 1. Remove JOYSTICK and TABLET. 2. Remove BATTERY_88PM80X/88PM88X. 3. Remove BACKLIGHT_LCD_SUPPORT to speed up booting. BUG=25751592 BUG=25579467 Change-Id: Ifbfdcb52df3f186101ed139e67b2e313400cd656
2015-11-17DT: Disable the keypad setting in DT because the device is unused andzhxihu
cause the error KEY_VOLUMEUP events. BUG=25655525 Change-Id: I2e0d0baf5d6bf1e2696b0dbae87c93144b0b6ce3
2015-11-16Fix the building issue of boot image, and add zImage booting support.zhxihu
Changes: 1) zImage entry point switches EL2-aarch64 to EL1-aarch32 instead of kernel entry point. 2) Set ZRELADDR of mach-mmp/Makefile.boot to 8MB. 3) Fix buggy TTBCR setup in arch/arm/boot/compressed/head.S Bits [2:0] and not [1:0] should be set to 0 as TTBCR.N is a 3-bit field and non-0 value would result in truncated TTB space and thus limited virtual space accessible. 4) Kernel defconfig: enable CONFIG_APPENDED_DTB and related settings. 5) Disable stack protector on atags-to-fdt function. The reason is -fstack-protector-strong generates a stack canary code in atags_to_fdt(), which accesses __stack_chk_guard in .bss. This violates the assumption that atags_to_fdt does not access any globals as explicitly stated in comments before the function invocation in head.S. The function is called before GOT relocations are performed, thus __stack_chk_guard is accessed by offset in GOT, not an actual relocated address. That this might work on many platforms that have accessible memory at low addresses (similar to a NULL pointer access),but On iap140 the lowest 8MB of physical address space is not accessible to Non-Security, therefore __stack_chk_guard results in exception. BUG=25393413 BUG=25421621 Change-Id: I72164e43b2dc400ae7db0e3403e5ae78cd6e5a34
2015-11-06Kernel: Added the configuration for leds-gpiozhxihu
BUG=25486837 Change-Id: Ia1345dd932a61c1f658b5293d48ff4cf498009b9
2015-11-05Kenrel: Remove useless configurations of network interface.zhxihu
BUG=25486837 Change-Id: I358f678c0d1fc8974ac7a84c5ef2aab75d60baeb
2015-10-30Added the configuration for armadillo_edge boardJun Yu
Change-Id: I99cb8fae615165d7d61e249421e0c089398b9390
2015-10-30To change the USB configuration for Armadillo edge boardJun Yu
Change-Id: Ibad4efd5da787b2dd05605af5826816c988a3ae2
2015-10-29Modified the kernel dtsi for LED mapping to gpioJun Yu
Change-Id: I6e015357989d4dff97e942ac47ae1a65fdfa0fea
2015-10-26Changed the sd8777 bluetooth driverJun Yu
Changed the sd8777 bluetooth device accessing group to net_bt_stack Change-Id: Id9e7aa5d4838dabfd55f0370e29aa6a0c494ad3e
2015-10-26SELinux: use deletion-safe iterator to free listJeff Vander Stoep
This code is not exercised by policy version 26, but will be upon upgrade to policy version 30. Bug: 18087110 Change-Id: I07c6f34607713294a6a12c43a64d9936f0602200 Signed-off-by: Jeff Vander Stoep <jeffv@google.com>
2015-10-26SELinux: ss: Fix policy write for ioctl operationsJeff Vander Stoep
Security server omits the type field when writing out the contents of the avtab from /sys/fs/selinux/policy. This leads to a corrupt output. No impact on the running kernel or its loaded policy. Impacts CTS neverallow tests. Bug: 20665861 Change-Id: I657e18013dd5a1f40052bc2b02dd8e0afee9bcfb Signed-off-by: Jeff Vander Stoep <jeffv@google.com> (cherry picked from commit 8cdfb356b51e29494ca0b9e4e86727d6f841a52d)
2015-10-26SELinux: per-command whitelisting of ioctlsJeff Vander Stoep
Extend the generic ioctl permission check with support for per-command filtering. Source/target/class sets including the ioctl permission may additionally include a set of commands. Example: allow <source> <target>:<class> { 0x8910-0x8926 0x892A-0x8935 } auditallow <source> <target>:<class> 0x892A When ioctl commands are omitted only the permissions are checked. This feature is intended to provide finer granularity for the ioctl permission which may be too imprecise in some circumstances. For example, the same driver may use ioctls to provide important and benign functionality such as driver version or socket type as well as dangerous capabilities such as debugging features, read/write/execute to physical memory or access to sensitive data. Per-command filtering provides a mechanism to reduce the attack surface of the kernel, and limit applications to the subset of commands required. The format of the policy binary has been modified to include ioctl commands, and the policy version number has been incremented to POLICYDB_VERSION_IOCTL_OPERATIONS=30 to account for the format change. Bug: 18087110 Change-Id: Ibf0e36728f6f3f0d5af56ccdeddee40800af689d Signed-off-by: Jeff Vander Stoep <jeffv@google.com>
2015-10-26security: lsm_audit: add ioctl specific auditingJeff Vander Stoep
Add information about ioctl calls to the LSM audit data. Log the file path and command number. Bug: 18087110 Change-Id: Idbbd106db6226683cb30022d9e8f6f3b8fab7f84 Signed-off-by: Jeff Vander Stoep <jeffv@google.com>
2015-09-27Delete Android.mkRuilin Hao
2015-07-09arm64: dts: helan3_aloe: disable ltr_55x sensorTim Wang
Since we use ltr 558als, so disable ltr_55x. Change-Id: I51912949d74dc542883ff6f0b5cd921da3bb29cd Signed-off-by: Tim Wang <wangtt@marvell.com>
2015-07-08arm: config: add soc camera sp2529 support for pxa1908slPeng Du
Change-Id: I0ebdf9a299e280848d8e8f323ccc9c25d8231277 Signed-off-by: Peng Du <pengdu@marvell.com>
2015-07-08arm64: add support for soc camera sp2529Peng Du
Change-Id: I47983a674bac70e86710dbd0b5a09e34f61dee0b Signed-off-by: Peng Du <pengdu@marvell.com>
2015-07-08arch: arm: add pxa1908-sl dts for pxa1908slPeng Du
Change-Id: I2a5f8c86d3e7207748b32da7216794436fec7ebb Signed-off-by: Peng Du <pengdu@marvell.com>
2015-07-08media: i2c: ecs: add sp2529 driversPeng Du
Change-Id: Id1baab405b0c90051137a8b347e21a1327dcab02 Signed-off-by: Peng Du <pengdu@marvell.com>
2015-07-08media: camera: adjust ov8858 hflip for pxa1908slPeng Du
Change-Id: I9ec2e6e3e20d8fc4586c76c2a7c147eb123c0047 Signed-off-by: Peng Du <pengdu@marvell.com>
2015-07-08arm: configs: pxa1908_defconfig: enable bma2x2yanggao
Enable bma2x2 driver for pxa1908sl Change-Id: Ib51a0c6dfcd11e838639bb46422e8c4437af380c Signed-off-by: yanggao <yanggao@marvell.com>
2015-07-08char: vibrator: add generic vibrator driverAndy Luo
add generic driver to support vibrator controlled by PWM/GPIO/LDO Change-Id: I35177c1fda2679219b461c6bbacf92fd64905c8b Signed-off-by: Andy Luo <yifeiluo@marvell.com>
2015-07-08hwmon: bma2x2: add accelerometer sensor bma2x2 driveryanggao
add 3-Axis accelerometer sensor bma2x2 driver support Change-Id: I65bfa426aeea94725ccdf04311eca645ec4caa99 Signed-off-by: yanggao <yanggao@marvell.com>
2015-07-08input: touchscreen: add driver of mstar touchscreenQiang Liu
Enable mstar touchscreen panel, add Kconfig, Makefile. Change-Id: I803c55da4be10eedb47d4a3df6c9fd1ddb7213c0 Signed-off-by: Qiang Liu <qiangliu@marvell.com> Signed-off-by: yanggao <yanggao@marvell.com>
2015-07-08arm: configs: enable mstar touchscreen panelQiang Liu
Enable mstar touchscreen driver. Change-Id: I8d2259c6f8c6856c926d3455611461b1a7f51abf Signed-off-by: yanggao <yanggao@marvell.com> Signed-off-by: Qiang Liu <qiangliu@marvell.com>
2015-07-08arm: configs: enable config MMP_PANEL_HX8394D on pxa1908slQiang Liu
Enable config HX8394D in default pxa1908 config. Change-Id: I73d9c1b44c81ecdb07b98d54c21013cd7b560f66 Signed-off-by: Qiang Liu <qiangliu@marvell.com>