mirror of
				https://github.com/DigitalDevices/dddvb.git
				synced 2025-03-01 10:35:23 +00:00 
			
		
		
		
	Merge branch 'internal'
This commit is contained in:
		| @@ -283,11 +283,17 @@ static int __devinit ddb_probe(struct pci_dev *pdev, | ||||
|  | ||||
| 	pci_set_master(pdev); | ||||
|  | ||||
| #if (KERNEL_VERSION(5, 18, 0) <= LINUX_VERSION_CODE) | ||||
| 	if (dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(64))) | ||||
| 		if (dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32))) | ||||
| #else | ||||
| 	if (!pci_set_dma_mask(pdev, DMA_BIT_MASK(64))) { | ||||
| 		pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(64)); | ||||
| 	} else if (!pci_set_dma_mask(pdev, DMA_BIT_MASK(32))) { | ||||
| 		pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32)); | ||||
| 	} else return -ENODEV; | ||||
| 	} else | ||||
| #endif | ||||
| 		return -ENODEV; | ||||
|  | ||||
| 	dev = vzalloc(sizeof(*dev)); | ||||
| 	if (!dev) | ||||
| @@ -333,7 +339,7 @@ static int __devinit ddb_probe(struct pci_dev *pdev, | ||||
| 		u32 min = dev->link[0].info->hw_min; | ||||
|  | ||||
| 		dev_err(dev->dev, "Update firmware to at least version %u.%u to ensure full functionality!\n", | ||||
| 			 (min & 0xff0000) >> 16, min & 0xffff); | ||||
| 			(min & 0xff0000) >> 16, min & 0xffff); | ||||
| 	} | ||||
|  | ||||
| 	if (dev->link[0].info->ns_num) { | ||||
| @@ -344,14 +350,14 @@ static int __devinit ddb_probe(struct pci_dev *pdev, | ||||
| 	if (dev->link[0].info->type != DDB_MOD) | ||||
| 		ddbwritel(dev, 0, DMA_BASE_WRITE); | ||||
|  | ||||
| 	if (dev->link[0].info->type == DDB_MOD | ||||
| 	    && dev->link[0].info->version <= 1) { | ||||
| 	if (dev->link[0].info->type == DDB_MOD && | ||||
| 	    dev->link[0].info->version <= 1) { | ||||
| 		if (ddbreadl(dev, 0x1c) == 4) | ||||
| 			dev->link[0].info = | ||||
| 				get_ddb_info(0xdd01, 0x0201, 0xdd01, 0x0004); | ||||
| 	} | ||||
| 	if (dev->link[0].info->type == DDB_MOD | ||||
| 	    && dev->link[0].info->version == 2) { | ||||
| 	if (dev->link[0].info->type == DDB_MOD && | ||||
| 	    dev->link[0].info->version == 2) { | ||||
| 		u32 lic = ddbreadl(dev, 0x1c) & 7; | ||||
|  | ||||
| 		if (dev->link[0].ids.revision == 1) | ||||
| @@ -452,7 +458,6 @@ static const struct pci_device_id ddb_id_table[] __devinitconst = { | ||||
| }; | ||||
| MODULE_DEVICE_TABLE(pci, ddb_id_table); | ||||
|  | ||||
|  | ||||
| static pci_ers_result_t ddb_pci_slot_reset(struct pci_dev *dev) | ||||
| { | ||||
| 	pr_info("pci_slot_reset\n"); | ||||
| @@ -492,7 +497,6 @@ static const struct pci_error_handlers ddb_error = { | ||||
| 	.resume = ddb_pci_resume, | ||||
| }; | ||||
|  | ||||
|  | ||||
| static struct pci_driver ddb_pci_driver = { | ||||
| 	.name        = "ddbridge", | ||||
| 	.id_table    = ddb_id_table, | ||||
|   | ||||
| @@ -1787,7 +1787,8 @@ int ddbridge_mod_do_ioctl(struct file *file, unsigned int cmd, void *parg) | ||||
| 		(struct dtv_properties __user *) parg; | ||||
| 	int i, ret = 0; | ||||
|  | ||||
| 	if (dev->link[0].info->version >= 16 && cmd != FE_SET_PROPERTY) | ||||
| 	if (dev->link[0].info->version >= 16 && | ||||
| 	    (cmd != FE_SET_PROPERTY && cmd != IOCTL_DDB_MCI_CMD)) | ||||
| 		return -EINVAL; | ||||
| 	mutex_lock(&dev->ioctl_mutex); | ||||
| 	switch (cmd) { | ||||
|   | ||||
| @@ -479,6 +479,9 @@ static int dvb_dmxdev_ts_callback(const u8 *buffer1, size_t buffer1_len, | ||||
| 				       u32 *buffer_flags) | ||||
| { | ||||
| 	struct dmxdev_filter *dmxdevfilter = feed->priv; | ||||
| #ifdef CONFIG_DVB_MMAP | ||||
| 	struct dvb_vb2_ctx *ctx; | ||||
| #endif | ||||
| 	struct dvb_ringbuffer *buffer; | ||||
| 	int ret; | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user