Loading drivers/char/adsprpc.c +12 −0 Original line number Diff line number Diff line Loading @@ -2481,8 +2481,20 @@ static int fastrpc_munmap_on_dsp_rh(struct fastrpc_file *fl, uint64_t phys, VERIFY(err, 0 == (err = fastrpc_internal_invoke(fl, FASTRPC_MODE_PARALLEL, 1, &ioctl))); if (err == AEE_EUNSUPPORTED) { remote_arg_t ra[1]; pr_warn("ADSPRPC:Failed to get security key with updated remote call, falling back to older method"); ra[0].buf.pv = (void *)&routargs; ra[0].buf.len = sizeof(routargs); ioctl.inv.sc = REMOTE_SCALARS_MAKE(7, 0, 1); ioctl.inv.pra = ra; VERIFY(err, 0 == (err = fastrpc_internal_invoke(fl, FASTRPC_MODE_PARALLEL, 1, &ioctl))); } if (err) goto bail; desc.args[0] = TZ_PIL_AUTH_QDSP6_PROC; desc.args[1] = phys; desc.args[2] = size; Loading drivers/char/adsprpc_shared.h +4 −1 Original line number Diff line number Diff line /* * Copyright (c) 2012-2018, The Linux Foundation. All rights reserved. * Copyright (c) 2012-2019, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and Loading Loading @@ -125,6 +125,9 @@ do {\ } while (0) #endif /* Fall back to older APIS in case API is not supported */ #define AEE_EUNSUPPORTED 20 #define remote_arg64_t union remote_arg64 struct remote_buf64 { Loading Loading
drivers/char/adsprpc.c +12 −0 Original line number Diff line number Diff line Loading @@ -2481,8 +2481,20 @@ static int fastrpc_munmap_on_dsp_rh(struct fastrpc_file *fl, uint64_t phys, VERIFY(err, 0 == (err = fastrpc_internal_invoke(fl, FASTRPC_MODE_PARALLEL, 1, &ioctl))); if (err == AEE_EUNSUPPORTED) { remote_arg_t ra[1]; pr_warn("ADSPRPC:Failed to get security key with updated remote call, falling back to older method"); ra[0].buf.pv = (void *)&routargs; ra[0].buf.len = sizeof(routargs); ioctl.inv.sc = REMOTE_SCALARS_MAKE(7, 0, 1); ioctl.inv.pra = ra; VERIFY(err, 0 == (err = fastrpc_internal_invoke(fl, FASTRPC_MODE_PARALLEL, 1, &ioctl))); } if (err) goto bail; desc.args[0] = TZ_PIL_AUTH_QDSP6_PROC; desc.args[1] = phys; desc.args[2] = size; Loading
drivers/char/adsprpc_shared.h +4 −1 Original line number Diff line number Diff line /* * Copyright (c) 2012-2018, The Linux Foundation. All rights reserved. * Copyright (c) 2012-2019, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and Loading Loading @@ -125,6 +125,9 @@ do {\ } while (0) #endif /* Fall back to older APIS in case API is not supported */ #define AEE_EUNSUPPORTED 20 #define remote_arg64_t union remote_arg64 struct remote_buf64 { Loading