Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 60e3bc14 authored by Skylar Chang's avatar Skylar Chang
Browse files

msm: ipa: add ioctl to get ipa hw version



Add ioctl for user space to get ipa hw version

Change-Id: Iba207623126f641324fbcf174bddd46552f489de
Signed-off-by: default avatarSkylar Chang <chiaweic@codeaurora.org>
parent 9fffca4f
Loading
Loading
Loading
Loading
+14 −0
Original line number Diff line number Diff line
@@ -1037,6 +1037,20 @@ static long ipa_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
		}
		break;

	case IPA_IOC_GET_HW_VERSION:
		pyld_sz = sizeof(enum ipa_hw_type);
		param = kzalloc(pyld_sz, GFP_KERNEL);
		if (!param) {
			retval = -ENOMEM;
			break;
		}
		memcpy(param, &ipa_ctx->ipa_hw_type, pyld_sz);
		if (copy_to_user((u8 *)arg, param, pyld_sz)) {
			retval = -EFAULT;
			break;
		}
		break;

	default:        /* redundant, as cmd was checked against MAXNR */
		ipa_dec_client_disable_clks();
		return -ENOTTY;
+14 −0
Original line number Diff line number Diff line
@@ -1088,6 +1088,20 @@ static long ipa3_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
		}
		break;

	case IPA_IOC_GET_HW_VERSION:
		pyld_sz = sizeof(enum ipa_hw_type);
		param = kzalloc(pyld_sz, GFP_KERNEL);
		if (!param) {
			retval = -ENOMEM;
			break;
		}
		memcpy(param, &ipa3_ctx->ipa_hw_type, pyld_sz);
		if (copy_to_user((u8 *)arg, param, pyld_sz)) {
			retval = -EFAULT;
			break;
		}
		break;

	default:        /* redundant, as cmd was checked against MAXNR */
		ipa3_dec_client_disable_clks();
		return -ENOTTY;
+6 −1
Original line number Diff line number Diff line
@@ -67,7 +67,8 @@
#define IPA_IOCTL_MDFY_RT_RULE 42
#define IPA_IOCTL_ADD_RT_RULE_AFTER 43
#define IPA_IOCTL_ADD_FLT_RULE_AFTER 44
#define IPA_IOCTL_MAX 45
#define IPA_IOCTL_GET_HW_VERSION 45
#define IPA_IOCTL_MAX 46

/**
 * max size of the header to be inserted
@@ -1553,6 +1554,10 @@ enum ipacm_client_enum {
				IPA_IOCTL_DEL_HDR_PROC_CTX, \
				struct ipa_ioc_del_hdr_proc_ctx *)

#define IPA_IOC_GET_HW_VERSION _IOWR(IPA_IOC_MAGIC, \
				IPA_IOCTL_GET_HW_VERSION, \
				enum ipa_hw_type *)

/*
 * unique magic number of the Tethering bridge ioctls
 */