File 0002-more-fixes-for-recent-kernes.patch of Package proatm-kmp

From 0285c2a71bdca36c16d631e68e1b8122ed095ecb Mon Sep 17 00:00:00 2001
From: Martin Hauke <mardnh@gmx.de>
Date: Fri, 18 Nov 2022 10:45:11 +0100
Subject: [PATCH 2/2] more fixes for recent kernes

see
https://lore.kernel.org/lkml/20220106222804.GA330366@bhelgaas/t/
---
 proatm.c | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)

diff --git a/proatm.c b/proatm.c
index 6dabfa7..0909d3c 100755
--- a/proatm.c
+++ b/proatm.c
@@ -173,7 +173,7 @@
 #define UNMAP_SKB(skb) \
                 do { \
                         pci_unmap_single(card->pcidev, PROATM_SKB((skb))->paddr, \
-                                        skb_end_ptr((skb)) - (skb)->data, PCI_DMA_FROMDEVICE); \
+                                        skb_end_ptr((skb)) - (skb)->data, DMA_FROM_DEVICE); \
                                         PROATM_SKB((skb))->paddr = 0; \
                 } while(0)
 
@@ -354,7 +354,7 @@ static int __devinit proatm_init_one(struct pci_dev *pcidev,
 static void free_free_skb(proatm_dev *card, struct sk_buff *skb) {
         if (PROATM_SKB(skb)->paddr)
                 pci_unmap_single(card->pcidev, PROATM_SKB(skb)->paddr,
-                                skb_end_ptr(skb) - skb->data, PCI_DMA_FROMDEVICE);
+                                skb_end_ptr(skb) - skb->data, DMA_FROM_DEVICE);
         dev_kfree_skb_any(skb);
 }
 
@@ -1342,7 +1342,7 @@ static int push_rxbuf(proatm_dev *card, struct sk_buff *skb) {
         if (paddr == 0 ) {
                 /* this is a new skb */
                 paddr = pci_map_single(card->pcidev, skb->data,
-                                skb_end_ptr(skb) - skb->data, PCI_DMA_FROMDEVICE);
+                                skb_end_ptr(skb) - skb->data, DMA_FROM_DEVICE);
                 if (paddr == 0) {
                         printk("proatm%d: pci_map error.\n", card->index);
                         goto free_skb;
@@ -1655,8 +1655,8 @@ static void process_rcq(proatm_dev *card)
         if (card->raw_hnd[0] == 0 || card->rcbuf == NULL)
                 return;
 
-        pci_dma_sync_single_for_cpu(card->pcidev, PROATM_SKB(skb)->paddr,
-                                                        skb_end_ptr(skb) - skb->data, PCI_DMA_FROMDEVICE);
+        dma_sync_single_for_device(&card->pcidev->dev, PROATM_SKB(skb)->paddr,
+                                                        skb_end_ptr(skb) - skb->data, DMA_FROM_DEVICE);
 
         tail_pa = le32_to_cpu(card->raw_hnd[0]) + PROATM_RCQE_SIZE;
 
@@ -1693,8 +1693,8 @@ static void process_rcq(proatm_dev *card)
                         card->raw_ch = (proatm_rcqe*)(skb->data);
                         card->raw_ch_pa = PROATM_SKB(skb)->paddr;
 
-                        pci_dma_sync_single_for_cpu(card->pcidev, PROATM_SKB(skb)->paddr,
-                                        skb_end_ptr(skb) - skb->data, PCI_DMA_FROMDEVICE);
+                        dma_sync_single_for_device(&card->pcidev->dev, PROATM_SKB(skb)->paddr,
+                                        skb_end_ptr(skb) - skb->data, DMA_FROM_DEVICE);
                 } else {
                         if ((u8*) card->raw_ch
                                         >= (skb->data + PROATM_B1BUFSIZE - PROATM_RCQE_SIZE)) {
@@ -2695,7 +2695,7 @@ static int push_on_scq(proatm_dev *card, scq_info *scq) {
 
                 /* Map skb for DMA. Get and remember skb data DMA address */
                 PROATM_SKB(skb)->paddr = pci_map_single(
-                                card->pcidev, skb->data, skb->len, PCI_DMA_TODEVICE);
+                                card->pcidev, skb->data, skb->len, DMA_TO_DEVICE);
 
                 if (skb->nfmark == 0xAB) {
                         /* We do not care AAL type here */
@@ -2881,7 +2881,7 @@ static void drain_scq(proatm_dev *card, scq_info *scq, vc_map *vc, u32 tsrtag) {
                         vcc = ATM_SKB(skb)->vcc;
 
                         pci_unmap_single(card->pcidev, PROATM_SKB(skb)->paddr, skb->len,
-                                        PCI_DMA_TODEVICE);
+                                        DMA_TO_DEVICE);
 
                         if (vcc == NULL) {
                                 printk("proatm%d: null vcc into sk_buff.\n", card->index);
@@ -2958,8 +2958,8 @@ static void dequeue_rx(proatm_dev *card, proatm_rsqe *rsqe) {
         if (card->fb_dequeue_count < MAX_B1 * 3)
                 card->fb_dequeue_count++;
 
-        pci_dma_sync_single_for_cpu(card->pcidev, PROATM_SKB(skb)->paddr,
-                        skb_end_ptr(skb) - skb->data, PCI_DMA_FROMDEVICE);
+        dma_sync_single_for_device(&card->pcidev->dev, PROATM_SKB(skb)->paddr,
+                        skb_end_ptr(skb) - skb->data, DMA_FROM_DEVICE);
         vpi = proatm_rsqe_vpi(rsqe);
         vci = proatm_rsqe_vci(rsqe);
         if (vpi == 0 && vci == 0) {
@@ -3184,8 +3184,8 @@ static void dequeue_rx(proatm_dev *card, proatm_rsqe *rsqe) {
 static void recycle_rxbuf(proatm_dev *card, struct sk_buff *skb) {
         PRINTK("proatm%d: recycle_rxbuf()\n", card->index);
 
-        pci_dma_sync_single_for_device(card->pcidev, PROATM_SKB(skb)->paddr,
-                        skb_end_ptr(skb) - skb->data, PCI_DMA_FROMDEVICE);
+        dma_sync_single_for_device(&card->pcidev->dev, PROATM_SKB(skb)->paddr,
+                        skb_end_ptr(skb) - skb->data, DMA_FROM_DEVICE);
         push_rxbuf(card, skb);
 
 }
-- 
2.38.1

openSUSE Build Service is sponsored by