mirror of https://gitee.com/openkylin/linux.git
Staging: meilhaus: remove dependence on kernel version
Cc: David Kiliani <mail@davidkiliani.de> Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
a44522b20d
commit
483f29cc43
|
@ -337,11 +337,7 @@ static void me0600_ext_irq_destructor(struct me_subdevice *subdevice)
|
|||
kfree(instance);
|
||||
}
|
||||
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 19)
|
||||
static irqreturn_t me0600_isr(int irq, void *dev_id)
|
||||
#else
|
||||
static irqreturn_t me0600_isr(int irq, void *dev_id, struct pt_regs *regs)
|
||||
#endif
|
||||
{
|
||||
me0600_ext_irq_subdevice_t *instance;
|
||||
uint32_t status;
|
||||
|
|
|
@ -323,12 +323,7 @@ static int me1400_ext_irq_query_subdevice_caps_args(struct me_subdevice
|
|||
return ME_ERRNO_NOT_SUPPORTED;
|
||||
}
|
||||
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 19)
|
||||
static irqreturn_t me1400_ext_irq_isr(int irq, void *dev_id)
|
||||
#else
|
||||
static irqreturn_t me1400_ext_irq_isr(int irq, void *dev_id,
|
||||
struct pt_regs *regs)
|
||||
#endif
|
||||
{
|
||||
me1400_ext_irq_subdevice_t *instance;
|
||||
uint32_t status;
|
||||
|
|
|
@ -55,11 +55,7 @@
|
|||
|
||||
static void me1600_ao_destructor(struct me_subdevice *subdevice);
|
||||
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)
|
||||
static void me1600_ao_work_control_task(void *subdevice);
|
||||
#else
|
||||
static void me1600_ao_work_control_task(struct work_struct *work);
|
||||
#endif
|
||||
|
||||
static int me1600_ao_io_reset_subdevice(me_subdevice_t * subdevice,
|
||||
struct file *filep, int flags);
|
||||
|
@ -200,13 +196,8 @@ me1600_ao_subdevice_t *me1600_ao_constructor(uint32_t reg_base,
|
|||
subdevice->me1600_workqueue = me1600_wq;
|
||||
|
||||
/* workqueue API changed in kernel 2.6.20 */
|
||||
#if ( LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20) )
|
||||
INIT_WORK(&subdevice->ao_control_task, me1600_ao_work_control_task,
|
||||
(void *)subdevice);
|
||||
#else
|
||||
INIT_DELAYED_WORK(&subdevice->ao_control_task,
|
||||
me1600_ao_work_control_task);
|
||||
#endif
|
||||
return subdevice;
|
||||
}
|
||||
|
||||
|
@ -962,22 +953,14 @@ static int me1600_ao_query_range_info(me_subdevice_t * subdevice,
|
|||
return ME_ERRNO_SUCCESS;
|
||||
}
|
||||
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)
|
||||
static void me1600_ao_work_control_task(void *subdevice)
|
||||
#else
|
||||
static void me1600_ao_work_control_task(struct work_struct *work)
|
||||
#endif
|
||||
{
|
||||
me1600_ao_subdevice_t *instance;
|
||||
int reschedule = 1;
|
||||
int signaling = 0;
|
||||
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)
|
||||
instance = (me1600_ao_subdevice_t *) subdevice;
|
||||
#else
|
||||
instance =
|
||||
container_of((void *)work, me1600_ao_subdevice_t, ao_control_task);
|
||||
#endif
|
||||
|
||||
PINFO("<%s: %ld> executed. idx=%d\n", __func__, jiffies,
|
||||
instance->ao_idx);
|
||||
|
|
|
@ -98,11 +98,7 @@ typedef struct me1600_ao_subdevice {
|
|||
wait_queue_head_t wait_queue; /**< Wait queue to put on tasks waiting for data to arrive. */
|
||||
me1600_ao_timeout_t timeout; /**< The timeout for start in blocking and non-blocking mode. */
|
||||
struct workqueue_struct *me1600_workqueue;
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)
|
||||
struct work_struct ao_control_task;
|
||||
#else
|
||||
struct delayed_work ao_control_task;
|
||||
#endif
|
||||
|
||||
volatile int ao_control_task_flag; /**< Flag controling reexecuting of control task */
|
||||
} me1600_ao_subdevice_t;
|
||||
|
|
|
@ -125,11 +125,7 @@ static int me4600_ai_query_subdevice_caps(me_subdevice_t * subdevice,
|
|||
static int me4600_ai_query_subdevice_caps_args(struct me_subdevice *subdevice,
|
||||
int cap, int *args, int count);
|
||||
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 19)
|
||||
static irqreturn_t me4600_ai_isr(int irq, void *dev_id);
|
||||
#else
|
||||
static irqreturn_t me4600_ai_isr(int irq, void *dev_id, struct pt_regs *regs);
|
||||
#endif
|
||||
|
||||
static int ai_mux_toggler(me4600_ai_subdevice_t * subdevice);
|
||||
|
||||
|
@ -177,11 +173,7 @@ void inline ai_limited_ISM(me4600_ai_subdevice_t * instance,
|
|||
/** Set ISM to next stage for limited mode */
|
||||
void inline ai_data_acquisition_logic(me4600_ai_subdevice_t * instance);
|
||||
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)
|
||||
static void me4600_ai_work_control_task(void *subdevice);
|
||||
#else
|
||||
static void me4600_ai_work_control_task(struct work_struct *work);
|
||||
#endif
|
||||
|
||||
/* Definitions
|
||||
*/
|
||||
|
@ -360,13 +352,8 @@ me4600_ai_subdevice_t *me4600_ai_constructor(uint32_t reg_base,
|
|||
subdevice->me4600_workqueue = me4600_wq;
|
||||
|
||||
/* workqueue API changed in kernel 2.6.20 */
|
||||
#if ( LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20) )
|
||||
INIT_WORK(&subdevice->ai_control_task, me4600_ai_work_control_task,
|
||||
(void *)subdevice);
|
||||
#else
|
||||
INIT_DELAYED_WORK(&subdevice->ai_control_task,
|
||||
me4600_ai_work_control_task);
|
||||
#endif
|
||||
|
||||
return subdevice;
|
||||
}
|
||||
|
@ -2603,11 +2590,7 @@ void ai_infinite_isr(me4600_ai_subdevice_t * instance,
|
|||
}
|
||||
}
|
||||
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 19)
|
||||
static irqreturn_t me4600_ai_isr(int irq, void *dev_id)
|
||||
#else
|
||||
static irqreturn_t me4600_ai_isr(int irq, void *dev_id, struct pt_regs *regs)
|
||||
#endif
|
||||
{ /// @note This is time critical function!
|
||||
uint32_t irq_status;
|
||||
uint32_t ctrl_status;
|
||||
|
@ -3310,11 +3293,7 @@ static int inline ai_read_data_pooling(me4600_ai_subdevice_t * instance)
|
|||
return (!status) ? copied : -ME_ERRNO_RING_BUFFER_OVERFLOW;
|
||||
}
|
||||
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)
|
||||
static void me4600_ai_work_control_task(void *subdevice)
|
||||
#else
|
||||
static void me4600_ai_work_control_task(struct work_struct *work)
|
||||
#endif
|
||||
{
|
||||
me4600_ai_subdevice_t *instance;
|
||||
uint32_t status;
|
||||
|
@ -3323,12 +3302,8 @@ static void me4600_ai_work_control_task(struct work_struct *work)
|
|||
int reschedule = 0;
|
||||
int signaling = 0;
|
||||
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)
|
||||
instance = (me4600_ai_subdevice_t *) subdevice;
|
||||
#else
|
||||
instance =
|
||||
container_of((void *)work, me4600_ai_subdevice_t, ai_control_task);
|
||||
#endif
|
||||
PINFO("<%s: %ld> executed.\n", __func__, jiffies);
|
||||
|
||||
status = inl(instance->status_reg);
|
||||
|
|
|
@ -139,11 +139,7 @@ typedef struct me4600_ai_subdevice {
|
|||
wait_queue_head_t wait_queue; /**< Wait queue to put on tasks waiting for data to arrive. */
|
||||
|
||||
struct workqueue_struct *me4600_workqueue;
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)
|
||||
struct work_struct ai_control_task;
|
||||
#else
|
||||
struct delayed_work ai_control_task;
|
||||
#endif
|
||||
|
||||
volatile int ai_control_task_flag; /**< Flag controling reexecuting of control task */
|
||||
|
||||
|
|
|
@ -175,11 +175,7 @@ static int me4600_ao_io_stream_write(me_subdevice_t * subdevice,
|
|||
|
||||
/** Interrupt handler. Copy from buffer to FIFO.
|
||||
*/
|
||||
static irqreturn_t me4600_ao_isr(int irq, void *dev_id
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 19)
|
||||
, struct pt_regs *regs
|
||||
#endif
|
||||
);
|
||||
static irqreturn_t me4600_ao_isr(int irq, void *dev_id);
|
||||
/** Copy data from circular buffer to fifo (fast) in wraparound mode.
|
||||
*/
|
||||
int inline ao_write_data_wraparound(me4600_ao_subdevice_t * instance, int count,
|
||||
|
@ -206,13 +202,7 @@ int inline ao_stop_immediately(me4600_ao_subdevice_t * instance);
|
|||
|
||||
/** Task for asynchronical state verifying.
|
||||
*/
|
||||
static void me4600_ao_work_control_task(
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)
|
||||
void *subdevice
|
||||
#else
|
||||
struct work_struct *work
|
||||
#endif
|
||||
);
|
||||
static void me4600_ao_work_control_task(struct work_struct *work);
|
||||
/* Functions
|
||||
*/
|
||||
|
||||
|
@ -2272,11 +2262,7 @@ static int me4600_ao_io_stream_write(me_subdevice_t * subdevice,
|
|||
|
||||
return err;
|
||||
}
|
||||
static irqreturn_t me4600_ao_isr(int irq, void *dev_id
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 19)
|
||||
, struct pt_regs *regs
|
||||
#endif
|
||||
)
|
||||
static irqreturn_t me4600_ao_isr(int irq, void *dev_id)
|
||||
{
|
||||
me4600_ao_subdevice_t *instance = dev_id;
|
||||
uint32_t irq_status;
|
||||
|
@ -2689,13 +2675,8 @@ me4600_ao_subdevice_t *me4600_ao_constructor(uint32_t reg_base,
|
|||
subdevice->me4600_workqueue = me4600_wq;
|
||||
|
||||
/* workqueue API changed in kernel 2.6.20 */
|
||||
#if ( LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20) )
|
||||
INIT_WORK(&subdevice->ao_control_task, me4600_ao_work_control_task,
|
||||
(void *)subdevice);
|
||||
#else
|
||||
INIT_DELAYED_WORK(&subdevice->ao_control_task,
|
||||
me4600_ao_work_control_task);
|
||||
#endif
|
||||
|
||||
if (subdevice->fifo) { // Set speed for single operations.
|
||||
outl(ME4600_AO_MIN_CHAN_TICKS - 1, subdevice->timer_reg);
|
||||
|
@ -2987,13 +2968,7 @@ int inline ao_get_data_from_user(me4600_ao_subdevice_t * instance, int count,
|
|||
/** @brief Checking actual hardware and logical state.
|
||||
* @param instance The subdevice instance (pointer).
|
||||
*/
|
||||
static void me4600_ao_work_control_task(
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)
|
||||
void *subdevice
|
||||
#else
|
||||
struct work_struct *work
|
||||
#endif
|
||||
)
|
||||
static void me4600_ao_work_control_task(struct work_struct *work)
|
||||
{
|
||||
me4600_ao_subdevice_t *instance;
|
||||
unsigned long cpu_flags = 0;
|
||||
|
@ -3003,12 +2978,8 @@ static void me4600_ao_work_control_task(
|
|||
int reschedule = 0;
|
||||
int signaling = 0;
|
||||
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)
|
||||
instance = (me4600_ao_subdevice_t *) subdevice;
|
||||
#else
|
||||
instance =
|
||||
container_of((void *)work, me4600_ao_subdevice_t, ao_control_task);
|
||||
#endif
|
||||
PINFO("<%s: %ld> executed. idx=%d\n", __func__, jiffies,
|
||||
instance->ao_idx);
|
||||
|
||||
|
@ -5439,11 +5410,7 @@ static int me4600_ao_io_stream_write(me_subdevice_t * subdevice,
|
|||
return err;
|
||||
}
|
||||
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 19)
|
||||
static irqreturn_t me4600_ao_isr(int irq, void *dev_id)
|
||||
#else
|
||||
static irqreturn_t me4600_ao_isr(int irq, void *dev_id, struct pt_regs *regs)
|
||||
#endif
|
||||
{
|
||||
unsigned long tmp;
|
||||
int value;
|
||||
|
|
|
@ -225,11 +225,7 @@ typedef struct me4600_ao_subdevice {
|
|||
wait_queue_head_t wait_queue; /**< Wait queue to put on tasks waiting for data to arrive. */
|
||||
|
||||
struct workqueue_struct *me4600_workqueue;
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)
|
||||
struct work_struct ao_control_task;
|
||||
#else
|
||||
struct delayed_work ao_control_task;
|
||||
#endif
|
||||
|
||||
volatile int ao_control_task_flag; /**< Flag controling reexecuting of control task */
|
||||
|
||||
|
|
|
@ -335,12 +335,7 @@ static int me4600_ext_irq_query_subdevice_caps(me_subdevice_t * subdevice,
|
|||
return ME_ERRNO_SUCCESS;
|
||||
}
|
||||
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 19)
|
||||
static irqreturn_t me4600_ext_irq_isr(int irq, void *dev_id)
|
||||
#else
|
||||
static irqreturn_t me4600_ext_irq_isr(int irq, void *dev_id,
|
||||
struct pt_regs *regs)
|
||||
#endif
|
||||
{
|
||||
me4600_ext_irq_subdevice_t *instance;
|
||||
uint32_t ctrl;
|
||||
|
|
|
@ -151,11 +151,7 @@ static int me6000_ao_io_stream_write(me_subdevice_t * subdevice,
|
|||
int *values, int *count, int flags);
|
||||
|
||||
/** Interrupt handler. Copy from buffer to FIFO. */
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 19)
|
||||
static irqreturn_t me6000_ao_isr(int irq, void *dev_id);
|
||||
#else
|
||||
static irqreturn_t me6000_ao_isr(int irq, void *dev_id, struct pt_regs *regs);
|
||||
#endif
|
||||
|
||||
/** Copy data from circular buffer to fifo (fast) in wraparound mode. */
|
||||
int inline ao_write_data_wraparound(me6000_ao_subdevice_t * instance, int count,
|
||||
|
@ -177,11 +173,7 @@ int inline ao_get_data_from_user(me6000_ao_subdevice_t * instance, int count,
|
|||
int inline ao_stop_immediately(me6000_ao_subdevice_t * instance);
|
||||
|
||||
/** Function for checking timeout in non-blocking mode. */
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)
|
||||
static void me6000_ao_work_control_task(void *subdevice);
|
||||
#else
|
||||
static void me6000_ao_work_control_task(struct work_struct *work);
|
||||
#endif
|
||||
|
||||
/* Functions
|
||||
*/
|
||||
|
@ -2324,11 +2316,7 @@ static int me6000_ao_io_stream_write(me_subdevice_t * subdevice,
|
|||
return err;
|
||||
}
|
||||
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 19)
|
||||
static irqreturn_t me6000_ao_isr(int irq, void *dev_id)
|
||||
#else
|
||||
static irqreturn_t me6000_ao_isr(int irq, void *dev_id, struct pt_regs *regs)
|
||||
#endif
|
||||
{
|
||||
me6000_ao_subdevice_t *instance = dev_id;
|
||||
uint32_t irq_status;
|
||||
|
@ -2797,13 +2785,8 @@ me6000_ao_subdevice_t *me6000_ao_constructor(uint32_t reg_base,
|
|||
subdevice->me6000_workqueue = me6000_wq;
|
||||
|
||||
/* workqueue API changed in kernel 2.6.20 */
|
||||
#if ( LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20) )
|
||||
INIT_WORK(&subdevice->ao_control_task, me6000_ao_work_control_task,
|
||||
(void *)subdevice);
|
||||
#else
|
||||
INIT_DELAYED_WORK(&subdevice->ao_control_task,
|
||||
me6000_ao_work_control_task);
|
||||
#endif
|
||||
|
||||
if (subdevice->fifo) { //Set speed
|
||||
outl(ME6000_AO_MIN_CHAN_TICKS - 1, subdevice->timer_reg);
|
||||
|
@ -3110,13 +3093,7 @@ int inline ao_get_data_from_user(me6000_ao_subdevice_t * instance, int count,
|
|||
return copied;
|
||||
}
|
||||
|
||||
static void me6000_ao_work_control_task(
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)
|
||||
void *subdevice
|
||||
#else
|
||||
struct work_struct *work
|
||||
#endif
|
||||
)
|
||||
static void me6000_ao_work_control_task(struct work_struct *work)
|
||||
{
|
||||
me6000_ao_subdevice_t *instance;
|
||||
unsigned long cpu_flags = 0;
|
||||
|
@ -3127,12 +3104,8 @@ static void me6000_ao_work_control_task(
|
|||
int signaling = 0;
|
||||
uint32_t single_mask;
|
||||
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)
|
||||
instance = (me6000_ao_subdevice_t *) subdevice;
|
||||
#else
|
||||
instance =
|
||||
container_of((void *)work, me6000_ao_subdevice_t, ao_control_task);
|
||||
#endif
|
||||
PINFO("<%s: %ld> executed. idx=%d\n", __func__, jiffies,
|
||||
instance->ao_idx);
|
||||
|
||||
|
|
|
@ -160,11 +160,7 @@ typedef struct me6000_ao_subdevice {
|
|||
wait_queue_head_t wait_queue; /**< Wait queue to put on tasks waiting for data to arrive. */
|
||||
|
||||
struct workqueue_struct *me6000_workqueue;
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)
|
||||
struct work_struct ao_control_task;
|
||||
#else
|
||||
struct delayed_work ao_control_task;
|
||||
#endif
|
||||
|
||||
volatile int ao_control_task_flag; /**< Flag controling reexecuting of control task */
|
||||
|
||||
|
|
|
@ -503,11 +503,7 @@ static void me8100_di_destructor(struct me_subdevice *subdevice)
|
|||
kfree(instance);
|
||||
}
|
||||
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 19)
|
||||
static irqreturn_t me8100_isr(int irq, void *dev_id)
|
||||
#else
|
||||
static irqreturn_t me8100_isr(int irq, void *dev_id, struct pt_regs *regs)
|
||||
#endif
|
||||
{
|
||||
me8100_di_subdevice_t *instance;
|
||||
uint32_t icsr;
|
||||
|
|
|
@ -81,16 +81,8 @@ static int me8200_di_query_subdevice_type(me_subdevice_t * subdevice,
|
|||
int *type, int *subtype);
|
||||
static int me8200_di_query_subdevice_caps(me_subdevice_t * subdevice,
|
||||
int *caps);
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 19)
|
||||
static irqreturn_t me8200_isr(int irq, void *dev_id);
|
||||
#else
|
||||
static irqreturn_t me8200_isr(int irq, void *dev_id, struct pt_regs *regs);
|
||||
#endif
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 19)
|
||||
static irqreturn_t me8200_isr_EX(int irq, void *dev_id);
|
||||
#else
|
||||
static irqreturn_t me8200_isr_EX(int irq, void *dev_id, struct pt_regs *regs);
|
||||
#endif
|
||||
static void me8200_di_check_version(me8200_di_subdevice_t * instance,
|
||||
unsigned long addr);
|
||||
|
||||
|
@ -546,11 +538,7 @@ static int me8200_di_query_subdevice_caps(me_subdevice_t * subdevice, int *caps)
|
|||
return ME_ERRNO_SUCCESS;
|
||||
}
|
||||
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 19)
|
||||
static irqreturn_t me8200_isr(int irq, void *dev_id)
|
||||
#else
|
||||
static irqreturn_t me8200_isr(int irq, void *dev_id, struct pt_regs *regs)
|
||||
#endif
|
||||
{
|
||||
me8200_di_subdevice_t *instance;
|
||||
uint8_t ctrl;
|
||||
|
@ -629,11 +617,7 @@ static irqreturn_t me8200_isr(int irq, void *dev_id, struct pt_regs *regs)
|
|||
return IRQ_HANDLED;
|
||||
}
|
||||
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 19)
|
||||
static irqreturn_t me8200_isr_EX(int irq, void *dev_id)
|
||||
#else
|
||||
static irqreturn_t me8200_isr_EX(int irq, void *dev_id, struct pt_regs *regs)
|
||||
#endif
|
||||
{
|
||||
me8200_di_subdevice_t *instance;
|
||||
uint8_t irq_status = 0;
|
||||
|
|
|
@ -452,11 +452,7 @@ static void me8200_do_destructor(struct me_subdevice *subdevice)
|
|||
kfree(instance);
|
||||
}
|
||||
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 19)
|
||||
static irqreturn_t me8200_do_isr(int irq, void *dev_id)
|
||||
#else
|
||||
static irqreturn_t me8200_do_isr(int irq, void *dev_id, struct pt_regs *regs)
|
||||
#endif
|
||||
{
|
||||
me8200_do_subdevice_t *instance;
|
||||
uint16_t ctrl;
|
||||
|
|
Loading…
Reference in New Issue