From: Fancy Fang Date: Wed, 18 Dec 2013 05:38:23 +0000 (+0800) Subject: ENGR00292562 PXP: move the definitions used only by PXP device to a new header file X-Git-Tag: KARO-TX6-2014-07-10~100 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=1fcca7bf53462d8d843b1f824ec6d152def7fd44;p=karo-tx-linux.git ENGR00292562 PXP: move the definitions used only by PXP device to a new header file Some definitions used only by PXP device driver should not stay in pxp_dma.h which is shared by PXP, EPDC and V4L2. So the patch creates a new header file pxp_device.h to hold these definitions. Signed-off-by: Fancy Fang --- diff --git a/drivers/dma/pxp/pxp_device.c b/drivers/dma/pxp/pxp_device.c index 2c28294dc42a..12f8890469ce 100644 --- a/drivers/dma/pxp/pxp_device.c +++ b/drivers/dma/pxp/pxp_device.c @@ -27,7 +27,7 @@ #include #include #include -#include +#include #include #include @@ -38,11 +38,6 @@ static DEFINE_SPINLOCK(pxp_chan_lock); static LIST_HEAD(head); static LIST_HEAD(list); -struct pxp_chan_handle { - int chan_id; - int hist_status; -}; - /* To track the allocated memory buffer */ struct memalloc_record { struct list_head list; diff --git a/include/linux/pxp_device.h b/include/linux/pxp_device.h new file mode 100644 index 000000000000..34d36bd48413 --- /dev/null +++ b/include/linux/pxp_device.h @@ -0,0 +1,24 @@ +/* + * Copyright (C) 2013 Freescale Semiconductor, Inc. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + */ +#ifndef _PXP_DEVICE +#define _PXP_DEVICE + +#include + +#endif diff --git a/include/uapi/linux/Kbuild b/include/uapi/linux/Kbuild index 7410c3f99876..3d2682936d06 100644 --- a/include/uapi/linux/Kbuild +++ b/include/uapi/linux/Kbuild @@ -322,6 +322,7 @@ header-y += psci.h header-y += ptp_clock.h header-y += ptrace.h header-y += pxp_dma.h +header-y += pxp_device.h header-y += qnx4_fs.h header-y += qnxtypes.h header-y += quota.h diff --git a/include/uapi/linux/pxp_device.h b/include/uapi/linux/pxp_device.h new file mode 100644 index 000000000000..4af108decfcf --- /dev/null +++ b/include/uapi/linux/pxp_device.h @@ -0,0 +1,46 @@ +/* + * Copyright (C) 2013 Freescale Semiconductor, Inc. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + */ +#ifndef _UAPI_PXP_DEVICE +#define _UAPI_PXP_DEVICE + +#include + +struct pxp_chan_handle { + int chan_id; + int hist_status; +}; + +struct pxp_mem_desc { + unsigned int size; + dma_addr_t phys_addr; + unsigned int cpu_addr; /* cpu address to free the dma mem */ + unsigned int virt_uaddr; /* virtual user space address */ +}; + +#define PXP_IOC_MAGIC 'P' + +#define PXP_IOC_GET_CHAN _IOR(PXP_IOC_MAGIC, 0, struct pxp_mem_desc) +#define PXP_IOC_PUT_CHAN _IOW(PXP_IOC_MAGIC, 1, struct pxp_mem_desc) +#define PXP_IOC_CONFIG_CHAN _IOW(PXP_IOC_MAGIC, 2, struct pxp_mem_desc) +#define PXP_IOC_START_CHAN _IOW(PXP_IOC_MAGIC, 3, struct pxp_mem_desc) +#define PXP_IOC_GET_PHYMEM _IOWR(PXP_IOC_MAGIC, 4, struct pxp_mem_desc) +#define PXP_IOC_PUT_PHYMEM _IOW(PXP_IOC_MAGIC, 5, struct pxp_mem_desc) +#define PXP_IOC_WAIT4CMPLT _IOWR(PXP_IOC_MAGIC, 6, struct pxp_mem_desc) + +#endif diff --git a/include/uapi/linux/pxp_dma.h b/include/uapi/linux/pxp_dma.h index efe6f637ea90..d1f7a89ecd15 100644 --- a/include/uapi/linux/pxp_dma.h +++ b/include/uapi/linux/pxp_dma.h @@ -89,16 +89,6 @@ typedef unsigned char bool; #define NR_PXP_VIRT_CHANNEL 16 -#define PXP_IOC_MAGIC 'P' - -#define PXP_IOC_GET_CHAN _IOR(PXP_IOC_MAGIC, 0, struct pxp_mem_desc) -#define PXP_IOC_PUT_CHAN _IOW(PXP_IOC_MAGIC, 1, struct pxp_mem_desc) -#define PXP_IOC_CONFIG_CHAN _IOW(PXP_IOC_MAGIC, 2, struct pxp_mem_desc) -#define PXP_IOC_START_CHAN _IOW(PXP_IOC_MAGIC, 3, struct pxp_mem_desc) -#define PXP_IOC_GET_PHYMEM _IOWR(PXP_IOC_MAGIC, 4, struct pxp_mem_desc) -#define PXP_IOC_PUT_PHYMEM _IOW(PXP_IOC_MAGIC, 5, struct pxp_mem_desc) -#define PXP_IOC_WAIT4CMPLT _IOWR(PXP_IOC_MAGIC, 6, struct pxp_mem_desc) - /* Order significant! */ enum pxp_channel_status { PXP_CHANNEL_FREE, @@ -179,11 +169,5 @@ struct pxp_config_data { int chan_id; }; -struct pxp_mem_desc { - unsigned int size; - dma_addr_t phys_addr; - unsigned int cpu_addr; /* cpu address to free the dma mem */ - unsigned int virt_uaddr; /* virtual user space address */ -}; #endif