| #!/bin/bash -e |
| |
| . $(dirname $0)/functions |
| |
| curl_am_hikey_optee_vchong_github(){ |
| local patch_id=$1 |
| local patch_url="https://github.com/vchong/linux/commit/${patch_id}.patch" |
| local patch_project="kernel/linaro/hisilicon-4.14" |
| curl_am ${patch_url} ${patch_project} |
| } |
| |
| curl_am_hikey_optee_sdp_github(){ |
| local patch_id=$1 |
| local patch_url="https://github.com/linaro-swg/linux/commit/${patch_id}.patch" |
| local patch_project="kernel/linaro/hisilicon-4.14" |
| curl_am ${patch_url} ${patch_project} |
| } |
| |
| PATCHES=0 |
| if [ -n "$1" ]; then |
| AOSP="$1" |
| else |
| AOSP="`pwd`" |
| fi |
| |
| if ! [ -d "$AOSP" ] && ! [ -d "$AOSP/bionic" ] && [ -d "$AOSP"/build ]; then |
| echo "This script must be run from the AOSP source directory" |
| echo "or with the AOSP source directory as its first parameter." |
| exit 1 |
| fi |
| |
| ################################################## |
| ###### patches to fix RPMB ops on kernel 4.14 #### |
| ################################################## |
| ## hikey*_defconfig: decrease CONFIG_MMC_BLOCK_MINORS |
| ## https://github.com/vchong/linux/commit/8d616e6da87b69bf7f391d39dd9da7b448350048 |
| curl_am_hikey_optee_vchong_github 8d616e6da87b69bf7f391d39dd9da7b448350048 |
| |
| # Below 4 mmc patches are cherry-picked from 4.19 |
| # These are now merged in the 4.14 branch via |
| # d2905c6a0ed0657c98d754823e709b08ca347f54 |
| ## mmc: block: Convert RPMB to a character device |
| ## https://github.com/vchong/linux/commit/284f192ebe782e5eda5a2644d7ee046285e88793 |
| #curl_am_hikey_optee_vchong_github 284f192ebe782e5eda5a2644d7ee046285e88793 |
| |
| ## mmc: block: Fix bug when removing RPMB chardev |
| ## https://github.com/vchong/linux/commit/1a7f1613691f0200101a476f664322d84da9d836 |
| #curl_am_hikey_optee_vchong_github 1a7f1613691f0200101a476f664322d84da9d836 |
| |
| ## mmc: core: Prevent bus reference leak in mmc_blk_init() |
| ## https://github.com/vchong/linux/commit/09d176cb0060ca3201f6ca8ba8cb4110560bcb7a |
| #curl_am_hikey_optee_vchong_github 09d176cb0060ca3201f6ca8ba8cb4110560bcb7a |
| |
| ## mmc: block: propagate correct returned value in mmc_rpmb_ioctl |
| ## https://github.com/vchong/linux/commit/90b83a78d9184eb5cad9abc2910b542641df32dd |
| #curl_am_hikey_optee_vchong_github 90b83a78d9184eb5cad9abc2910b542641df32dd |
| |
| ################################################## |
| ###### OP-TEE patches on kernel 4.14 #### |
| ################################################## |
| ## hikey: Enable OPTEE in defconfig |
| cherrypick kernel/linaro/hisilicon-4.14 05a8316d2e5b45bd15a9646bf948ffa042f94327 |
| |
| ####################################################### |
| ## Patches to enable SDP ##### |
| ## patches from here: https://github.com/linaro-swg/linux/commits/optee |
| ####################################################### |
| ## hikey_defconfig: enable dummy ION memory in kernel config |
| ## http://android-review.linaro.org/18415 |
| apply --linaro --local kernel/linaro/hisilicon-4.14 --remote kernel/hikey-linaro 18415/3 |
| |
| ## hikey960_defconfig: enable dummy ION memory in kernel config |
| ## http://android-review.linaro.org/20638 |
| apply --linaro --local kernel/linaro/hisilicon-4.14 --remote kernel/hikey-linaro 20638/1 |
| |
| ####################################################### |
| ## patches for cherry-pick problem or compiling problem |
| ####################################################### |
| ## [v4.16] tee: flexible shared memory pool creation |
| ## https://github.com/linaro-swg/linux/commit/fabaadfddf7a3ca34769ec1814ea931d5e326ab0 |
| ## http://android-review.linaro.org/18412 |
| curl_am_hikey_optee_sdp_github fabaadfddf7a3ca34769ec1814ea931d5e326ab0 |
| ## [v4.16] tee: add register user memory |
| ## https://github.com/linaro-swg/linux/commit/1ee91892b73e64640c3c65e3a0eeadf0cdc91b38 |
| ## curl_am_hikey_optee_sdp_github 1ee91892b73e64640c3c65e3a0eeadf0cdc91b38 |
| ## http://android-review.linaro.org/18413 |
| apply --linaro --local kernel/linaro/hisilicon-4.14 --remote kernel/hikey-linaro 18413/1 |
| ## [v4.16] tee: use reference counting for tee_context |
| ## https://github.com/linaro-swg/linux/commit/0987f080c0bb427354d8f0c95940d8912ab40707 |
| curl_am_hikey_optee_sdp_github 0987f080c0bb427354d8f0c95940d8912ab40707 |
| ## tee: new ioctl to a register tee_shm from a dmabuf file descriptor |
| ## https://github.com/linaro-swg/linux/commit/28f2ad9c42306663c01a479cd23fa87668c890cb |
| curl_am_hikey_optee_sdp_github 28f2ad9c42306663c01a479cd23fa87668c890cb |
| ## [v4.16] tee: optee: Update protocol definitions |
| ## https://github.com/linaro-swg/linux/commit/229153c92b8fe18a8e12b473a0ff66e317755dfa |
| curl_am_hikey_optee_sdp_github 229153c92b8fe18a8e12b473a0ff66e317755dfa |
| ## [v4.16] tee: optee: store OP-TEE capabilities in private data |
| ## https://github.com/linaro-swg/linux/commit/a2f3da632988d38c1e5355a28336fe1115afb288 |
| curl_am_hikey_optee_sdp_github a2f3da632988d38c1e5355a28336fe1115afb288 |
| |
| ####################################################### |
| ## patches for SDP enabling support |
| ####################################################### |
| ## staging/ion: add Allwinner ION "secure" heap |
| ## https://github.com/linaro-swg/linux/commit/1af7f7907fd43456de448d115711561c3ad5cbbf |
| curl_am_hikey_optee_sdp_github 1af7f7907fd43456de448d115711561c3ad5cbbf |
| ## ion: "unmapped" heap for secure data path |
| ## https://github.com/linaro-swg/linux/commit/ffcd4cc22e27b81f1ebae6f2bf8e29664e723e21 |
| curl_am_hikey_optee_sdp_github ffcd4cc22e27b81f1ebae6f2bf8e29664e723e21 |
| ## staging/ion: condition unmapped heap to supported architectures |
| ## https://github.com/linaro-swg/linux/commit/ee589e6a4688add86cd34cadd23267cbccf3f3c0 |
| curl_am_hikey_optee_sdp_github ee589e6a4688add86cd34cadd23267cbccf3f3c0 |
| ## staging/ion: ARM64 supports ION_UNMAPPED_HEAP |
| ## https://github.com/linaro-swg/linux/commit/16843e5f398a40e085a8cd20770af825b100fb1a |
| curl_am_hikey_optee_sdp_github 16843e5f398a40e085a8cd20770af825b100fb1a |
| ## staging:ion: add a no-map property to ion dmabuf attachment |
| ## https://github.com/linaro-swg/linux/commit/0b488c9833c8fc6b044001ceb0ea5eca65cc5b81 |
| #curl_am_hikey_optee_sdp_github 0b488c9833c8fc6b044001ceb0ea5eca65cc5b81 |
| ## http://android-review.linaro.org/18405 |
| apply --linaro --local kernel/linaro/hisilicon-4.14 --remote kernel/hikey-linaro 18405/2 |
| ## tee: optee: log message if dynamic shm is enabled |
| ## https://github.com/linaro-swg/linux/commit/3ed4ce4c37ef0800b5da18893212e6769e1dbd3e |
| curl_am_hikey_optee_sdp_github 3ed4ce4c37ef0800b5da18893212e6769e1dbd3e |
| ## tee: fix unbalanced context refcount in register shm from fd |
| ## https://github.com/linaro-swg/linux/commit/94c2f2e1cb08073cd688bd51638920b1cc6ad166 |
| curl_am_hikey_optee_sdp_github 94c2f2e1cb08073cd688bd51638920b1cc6ad166 |