From f33c9ad6df21aa02f3baf29a3b26a5844152f127 Mon Sep 17 00:00:00 2001 From: ghaddab <ghaddab@eurecom.fr> Date: Fri, 13 Dec 2013 10:49:59 +0000 Subject: [PATCH] git-svn-id: http://svn.eurecom.fr/openair4G/trunk@4706 818b1a75-f10b-46b9-bf7c-635c3b92a50f --- targets/ARCH/EXMIMO/DRIVER/eurecom/fileops.c | 17 +++++++++++++++-- .../ARCH/EXMIMO/DRIVER/eurecom/module_main.c | 10 ++++++---- 2 files changed, 21 insertions(+), 6 deletions(-) diff --git a/targets/ARCH/EXMIMO/DRIVER/eurecom/fileops.c b/targets/ARCH/EXMIMO/DRIVER/eurecom/fileops.c index de031cddaef..fc7e4e3d637 100755 --- a/targets/ARCH/EXMIMO/DRIVER/eurecom/fileops.c +++ b/targets/ARCH/EXMIMO/DRIVER/eurecom/fileops.c @@ -72,7 +72,10 @@ int openair_device_mmap(struct file *filp, struct vm_area_struct *vma) size); */ vma->vm_pgoff = 0; - vma->vm_flags |= VM_RESERVED; + + // not supported by 64 bit kernels + //vma->vm_flags |= VM_RESERVED; + vma->vm_flags |= VM_IO; if ( is_card_num_invalid(card) ) return -EINVAL; @@ -176,7 +179,17 @@ int openair_device_ioctl(struct inode *inode,struct file *filp, unsigned int cmd exmimo_send_pccmd((int)arg, EXMIMO_STOP); break; - + + case openair_STOP_WITHOUT_RESET: + + printk("[openair][IOCTL] openair_STOP_WITHOUT_RESET(card%d)\n", (int)arg); + if ( is_card_num_invalid((int)arg) ) + return -EINVAL; + + exmimo_send_pccmd((int)arg, EXMIMO_STOP_WITHOUT_RESET); + + break; + case openair_GET_FRAME: get_frame_cnt=0; diff --git a/targets/ARCH/EXMIMO/DRIVER/eurecom/module_main.c b/targets/ARCH/EXMIMO/DRIVER/eurecom/module_main.c index ba468b063c6..5658d8cb6a3 100755 --- a/targets/ARCH/EXMIMO/DRIVER/eurecom/module_main.c +++ b/targets/ARCH/EXMIMO/DRIVER/eurecom/module_main.c @@ -63,8 +63,9 @@ static int __init openair_init_module( void ) if( pdev[card] ) { - printk("[openair][INIT_MODULE][INFO]: openair card (ExpressMIMO) %d found, bus 0x%x, primary 0x%x, secondary 0x%x\n",card, - pdev[card]->bus->number, pdev[card]->bus->primary,pdev[card]->bus->secondary); + // This print does not work for 64 bit kernels + // printk("[openair][INIT_MODULE][INFO]: openair card (ExpressMIMO) %d found, bus 0x%x, primary 0x%x, secondary 0x%x\n",card, + // pdev[card]->bus->number, pdev[card]->bus->primary,pdev[card]->bus->secondary); pci_read_config_word(pdev[card], PCI_SUBSYSTEM_ID, &subid); pci_read_config_word(pdev[card], PCI_SUBSYSTEM_VENDOR_ID, &vendor); @@ -98,8 +99,9 @@ static int __init openair_init_module( void ) pdev[card] = pci_get_device(vid,did, pdev[card-1]); if(pdev[card]) { - printk("[openair][INIT_MODULE][INFO]: openair card %d found, bus 0x%x, primary 0x%x, secondary 0x%x\n",card, - pdev[card]->bus->number,pdev[card]->bus->primary,pdev[card]->bus->secondary); + // This print does not work for 64 bit kernels + // printk("[openair][INIT_MODULE][INFO]: openair card %d found, bus 0x%x, primary 0x%x, secondary 0x%x\n",card, + // pdev[card]->bus->number,pdev[card]->bus->primary,pdev[card]->bus->secondary); pci_read_config_word(pdev[card], PCI_SUBSYSTEM_ID, &subid); pci_read_config_word(pdev[card], PCI_SUBSYSTEM_VENDOR_ID, &vendor); -- GitLab