]> rtime.felk.cvut.cz Git - sojka/nv-tegra/linux-3.10.git/commitdiff
security: tlk: enable logging only if secure firmware supports it
authorVarun Wadekar <vwadekar@nvidia.com>
Wed, 9 Apr 2014 05:34:10 +0000 (11:04 +0530)
committerKevin Kranzusch <kevink@nvidia.com>
Wed, 3 Sep 2014 01:14:26 +0000 (18:14 -0700)
We send an SMC to the secure firmware to see if it supports logging.
If it returns failure, then we disable it from the kernel too.

Change-Id: Icc59fc221f6f59d1806815333f3e71a35a45ea90
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Reviewed-on: http://git-master/r/393217
(cherry picked from commit ae19265e71df6e7aacd157b7d012c8833ee7e060)
Reviewed-on: http://git-master/r/488995
Reviewed-by: Hyung Taek Ryoo <hryoo@nvidia.com>
Tested-by: Hyung Taek Ryoo <hryoo@nvidia.com>
Reviewed-by: Kevin Kranzusch <kevink@nvidia.com>
security/tlk_driver/ote_log.c

index 9a70077dbe7b90f7f63512ceab23c29b8aab081b..0e8f6b290f30e89c5e7805149595e13b345929c7 100644 (file)
@@ -186,9 +186,11 @@ static int __init ote_logger_init(void)
 
        smc_args[0] = TE_SMC_INIT_LOGGER;
        smc_args[1] = (uintptr_t)cb;
-       tlk_generic_smc(smc_args[0], smc_args[1], 0);
 
-       ote_logging_enabled = 1;
+       /* enable logging only if secure firmware supports it */
+       if (!tlk_generic_smc(smc_args[0], smc_args[1], 0))
+               ote_logging_enabled = 1;
+
        ote_print_logs();
 #else
        smc_args[0] = TE_SMC_INIT_LOGGER;