Date: Tuesday, May 24, 2022 @ 21:16:30 Author: heftig Revision: 1210259
6.30.223.271-30: Add a patch for Linux 5.18 Added: broadcom-wl-dkms/trunk/013-linux518.patch Modified: broadcom-wl-dkms/trunk/PKGBUILD broadcom-wl-dkms/trunk/dkms.conf.in --------------------+ 013-linux518.patch | 71 +++++++++++++++++++++++++++++++++++++++++++++++++++ PKGBUILD | 6 ++-- dkms.conf.in | 1 3 files changed, 76 insertions(+), 2 deletions(-) Added: 013-linux518.patch =================================================================== --- 013-linux518.patch (rev 0) +++ 013-linux518.patch 2022-05-24 21:16:30 UTC (rev 1210259) @@ -0,0 +1,71 @@ +diff -u -r a/src/shared/linux_osl.c b/src/shared/linux_osl.c +--- a/src/shared/linux_osl.c 2022-05-24 20:51:15.662604980 +0000 ++++ b/src/shared/linux_osl.c 2022-05-24 21:13:38.264472425 +0000 +@@ -599,6 +599,8 @@ + va = kmalloc(size, GFP_ATOMIC | __GFP_ZERO); + if (va) + *pap = (ulong)__virt_to_phys(va); ++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(5, 18, 0) ++ va = dma_alloc_coherent(&((struct pci_dev *)osh->pdev)->dev, size, (dma_addr_t*)pap, GFP_ATOMIC); + #else + va = pci_alloc_consistent(osh->pdev, size, (dma_addr_t*)pap); + #endif +@@ -612,6 +614,8 @@ + + #ifdef __ARM_ARCH_7A__ + kfree(va); ++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(5, 18, 0) ++ dma_free_coherent(&((struct pci_dev *)osh->pdev)->dev, size, va, (dma_addr_t)pa); + #else + pci_free_consistent(osh->pdev, size, va, (dma_addr_t)pa); + #endif +@@ -623,7 +627,11 @@ + int dir; + + ASSERT((osh && (osh->magic == OS_HANDLE_MAGIC))); ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 18, 0) ++ dir = (direction == DMA_TX)? DMA_TO_DEVICE: DMA_FROM_DEVICE; ++#else + dir = (direction == DMA_TX)? PCI_DMA_TODEVICE: PCI_DMA_FROMDEVICE; ++#endif + + #if defined(__ARM_ARCH_7A__) && defined(BCMDMASGLISTOSL) + if (dmah != NULL) { +@@ -641,7 +649,11 @@ + ASSERT(totsegs + nsegs <= MAX_DMA_SEGS); + sg->page_link = 0; + sg_set_buf(sg, PKTDATA(osh, skb), PKTLEN(osh, skb)); ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 18, 0) ++ dma_map_single(&((struct pci_dev *)osh->pdev)->dev, PKTDATA(osh, skb), PKTLEN(osh, skb), dir); ++#else + pci_map_single(osh->pdev, PKTDATA(osh, skb), PKTLEN(osh, skb), dir); ++#endif + } + totsegs += nsegs; + totlen += PKTLEN(osh, skb); +@@ -656,7 +668,11 @@ + } + #endif + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 18, 0) ++ return (dma_map_single(&((struct pci_dev *)osh->pdev)->dev, va, size, dir)); ++#else + return (pci_map_single(osh->pdev, va, size, dir)); ++#endif + } + + void BCMFASTPATH +@@ -665,8 +681,13 @@ + int dir; + + ASSERT((osh && (osh->magic == OS_HANDLE_MAGIC))); ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 18, 0) ++ dir = (direction == DMA_TX)? DMA_TO_DEVICE: DMA_FROM_DEVICE; ++ dma_unmap_single(&((struct pci_dev *)osh->pdev)->dev, (uint32)pa, size, dir); ++#else + dir = (direction == DMA_TX)? PCI_DMA_TODEVICE: PCI_DMA_FROMDEVICE; + pci_unmap_single(osh->pdev, (uint32)pa, size, dir); ++#endif + } + + #if defined(BCMDBG_ASSERT) Modified: PKGBUILD =================================================================== --- PKGBUILD 2022-05-24 21:10:22 UTC (rev 1210258) +++ PKGBUILD 2022-05-24 21:16:30 UTC (rev 1210259) @@ -6,7 +6,7 @@ pkgname=broadcom-wl-dkms pkgver=6.30.223.271 -pkgrel=29 +pkgrel=30 pkgdesc='Broadcom 802.11 Linux STA wireless driver' arch=(x86_64) url='https://www.broadcom.com/support/download-search/?pf=Wireless+LAN+Infrastructure' @@ -28,9 +28,10 @@ '010-linux56.patch' '011-linux59.patch' '012-linux517.patch' + '013-linux518.patch' "https://docs.broadcom.com/docs-and-downloads/docs/linux_sta/hybrid-v35_64-nodebug-pcoem-${pkgver//./_}.tar.gz") b2sums=('7c4eaa825a37358509a08e5105665eeabc9f097945b6fa163cd5722b00638da5889f5466bd2c5f1b01172f2d0c9fb195f6e18329f2880adb2774406684cbc4c0' - '662adcf24effdeedb8a9108759ae7710466563ebede29c0e769078db3084fc03d74557e705ec13454faef74ad665d1a9a8f9c50c1e1512f525e06ca7b4268063' + '9c271945a30069d01cefa24c7dae84f359dd2f181699464b34ab884e279fdf5c2d2673a0b2ebdee50df92f76d22da68c77bfd22d003becfd1879b4fd2d10c412' '038150b9a50025dbd3c81d09755956216b83c0b54db29dc4bfbc3b46bd67cf4640ad643d69ba7f8d486f52cedeb00929b97e02152e72404e6126a05855f97d6f' 'bbc80e1ac01683ccc2d940212347fc11c74bdc252d492ca79a292015ac25df6a153ac97cb6c0f0a8d51c1c33d5dc0de4fdd61b1958499b946dc817d29646b72f' 'ecf3eb75f8eb3331b0a36b39851536de43cffd3b303db9e9f4fe6fe55d463c3343aba17a99668448427764a719e15e3e862d6a3dc0bc61cb68da9934fb427c6f' @@ -43,6 +44,7 @@ '21f7fc163ffcf6857f3a21a8519a42600fd6b3658d14b32191ef1142c817c10c8dc691a3bc39228927ac29d7b7ac5c3a62eb786853046bacb9cc74efb51b6cb0' 'c1f522f6554a7bfe0f7b789b042ada14316ecc87bc196c83bec95f684152f323a4c31f60ff26843e36338b8c7949bf36719a5c8afa439ff71f7c74dae4c755b6' '978f7ce1e86bcfb8800faaa3b8b40c52e13bfbf13e5b439efe602aa7787c8e230d808519ae43afbe028275cdf01d7ed3cecbeea3e276cd1bd133037ae948f21c' + 'e5ae3570dc2f27105c50e6dec807c1f4f1a2824995e0951e7ff405114d519e4f33992d8d2ea2c2d4fc3f9271d57f89bfb5b6b5c79af2c89492209a86ad673456' 'e9d01c1a1a63c07f720e3ee53ee3ef634ab12694135300cb0ce47ade0e9e0084967a0b6df64d983e8184240eb3defb128f650bddb7727e901d50315307f3398a') prepare() { Modified: dkms.conf.in =================================================================== --- dkms.conf.in 2022-05-24 21:10:22 UTC (rev 1210258) +++ dkms.conf.in 2022-05-24 21:16:30 UTC (rev 1210259) @@ -13,4 +13,5 @@ PATCH[8]="010-linux56.patch" PATCH[9]="011-linux59.patch" PATCH[10]="012-linux517.patch" +PATCH[11]="013-linux518.patch" AUTOINSTALL="yes"