Messages in this thread Patch in this message | | | From | Al Viro <> | Subject | [POC][PATCH 30/83] sparc: get rid of pointless casts | Date | Mon, 21 Dec 2015 23:47:03 +0000 |
| |
From: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> --- arch/sparc/include/asm/dma.h | 2 +- arch/sparc/include/asm/iommu_64.h | 2 +- arch/sparc/kernel/iommu.c | 8 ++++---- arch/sparc/kernel/ioport.c | 8 ++++---- arch/sparc/kernel/irq_64.c | 4 ++-- arch/sparc/kernel/pci_fire.c | 18 ++++++++---------- arch/sparc/kernel/pci_sun4v.c | 24 +++++++++++++----------- arch/sparc/mm/io-unit.c | 9 ++++----- arch/sparc/mm/iommu.c | 10 +++++----- 9 files changed, 42 insertions(+), 43 deletions(-)
diff --git a/arch/sparc/include/asm/dma.h b/arch/sparc/include/asm/dma.h index 3d434ef..9bf9f53 100644 --- a/arch/sparc/include/asm/dma.h +++ b/arch/sparc/include/asm/dma.h @@ -101,7 +101,7 @@ struct sparc32_dma_ops { void (*release_scsi_one)(struct device *, __u32, unsigned long); void (*release_scsi_sgl)(struct device *, struct scatterlist *,int); #ifdef CONFIG_SBUS - int (*map_dma_area)(struct device *, dma_addr_t *, unsigned long, unsigned long, int); + int (*map_dma_area)(struct device *, dma_addr_t *, void *, unsigned long, int); void (*unmap_dma_area)(struct device *, unsigned long, int); #endif }; diff --git a/arch/sparc/include/asm/iommu_64.h b/arch/sparc/include/asm/iommu_64.h index cd0d69f..e781f29 100644 --- a/arch/sparc/include/asm/iommu_64.h +++ b/arch/sparc/include/asm/iommu_64.h @@ -36,7 +36,7 @@ struct iommu { unsigned long iommu_tags; unsigned long iommu_ctxflush; unsigned long write_complete_reg; - unsigned long dummy_page; + void *dummy_page; unsigned long dummy_page_pa; unsigned long ctx_lowest_free; DECLARE_BITMAP(ctx_bitmap, IOMMU_NUM_CTXS); diff --git a/arch/sparc/kernel/iommu.c b/arch/sparc/kernel/iommu.c index 18a40c6..47c2822 100644 --- a/arch/sparc/kernel/iommu.c +++ b/arch/sparc/kernel/iommu.c @@ -124,8 +124,8 @@ int iommu_table_init(struct iommu *iommu, int tsbsize, printk(KERN_ERR "IOMMU: Error, gfp(dummy_page) failed.\n"); goto out_free_map; } - iommu->dummy_page = (unsigned long) page_address(page); - memset((void *)iommu->dummy_page, 0, PAGE_SIZE); + iommu->dummy_page = page_address(page); + memset(iommu->dummy_page, 0, PAGE_SIZE); iommu->dummy_page_pa = (unsigned long) __pa(iommu->dummy_page); /* Now allocate and setup the IOMMU page table itself. */ @@ -143,8 +143,8 @@ int iommu_table_init(struct iommu *iommu, int tsbsize, return 0; out_free_dummy_page: - free_page((void *)iommu->dummy_page); - iommu->dummy_page = 0UL; + free_page(iommu->dummy_page); + iommu->dummy_page = NULL; out_free_map: kfree(iommu->tbl.map); diff --git a/arch/sparc/kernel/ioport.c b/arch/sparc/kernel/ioport.c index 39b406a..3bd3481 100644 --- a/arch/sparc/kernel/ioport.c +++ b/arch/sparc/kernel/ioport.c @@ -264,7 +264,7 @@ static void *sbus_alloc_coherent(struct device *dev, size_t len, { struct platform_device *op = to_platform_device(dev); unsigned long len_total = PAGE_ALIGN(len); - unsigned long va; + void *va; struct resource *res; int order; @@ -278,8 +278,8 @@ static void *sbus_alloc_coherent(struct device *dev, size_t len, } order = get_order(len_total); - va = __get_free_pages(gfp, order); - if (va == 0) + va = (void *)__get_free_pages(gfp, order); + if (!va) goto err_nopages; if ((res = kzalloc(sizeof(struct resource), GFP_KERNEL)) == NULL) @@ -309,7 +309,7 @@ err_noiommu: err_nova: kfree(res); err_nomem: - free_pages((void *)va, order); + free_pages(va, order); err_nopages: return NULL; } diff --git a/arch/sparc/kernel/irq_64.c b/arch/sparc/kernel/irq_64.c index 24847b2..e2d198d 100644 --- a/arch/sparc/kernel/irq_64.c +++ b/arch/sparc/kernel/irq_64.c @@ -1033,11 +1033,11 @@ static void __init alloc_one_queue(unsigned long *pa_ptr, unsigned long qmask) static void __init init_cpu_send_mondo_info(struct trap_per_cpu *tb) { #ifdef CONFIG_SMP - unsigned long page; + void *page; BUILD_BUG_ON((NR_CPUS * sizeof(u16)) > (PAGE_SIZE - 64)); - page = (unsigned long)get_zeroed_page(GFP_KERNEL); + page = get_zeroed_page(GFP_KERNEL); if (!page) { prom_printf("SUN4V: Error, cannot allocate cpu mondo page.\n"); prom_halt(); diff --git a/arch/sparc/kernel/pci_fire.c b/arch/sparc/kernel/pci_fire.c index b8ac1bb..ff44386 100644 --- a/arch/sparc/kernel/pci_fire.c +++ b/arch/sparc/kernel/pci_fire.c @@ -228,17 +228,18 @@ static int pci_fire_msi_teardown(struct pci_pbm_info *pbm, unsigned long msi) static int pci_fire_msiq_alloc(struct pci_pbm_info *pbm) { - unsigned long pages, order, i; + unsigned long order, i; + void *pages; order = get_order(512 * 1024); - pages = __get_free_pages(GFP_KERNEL | __GFP_COMP, order); - if (pages == 0UL) { + pages = (void *)__get_free_pages(GFP_KERNEL | __GFP_COMP, order); + if (!pages) { printk(KERN_ERR "MSI: Cannot allocate MSI queues (o=%lu).\n", order); return -ENOMEM; } - memset((char *)pages, 0, PAGE_SIZE << order); - pbm->msi_queues = (void *) pages; + memset(pages, 0, PAGE_SIZE << order); + pbm->msi_queues = pages; upa_writeq((EVENT_QUEUE_BASE_ADDR_ALL_ONES | __pa(pbm->msi_queues)), @@ -260,12 +261,9 @@ static int pci_fire_msiq_alloc(struct pci_pbm_info *pbm) static void pci_fire_msiq_free(struct pci_pbm_info *pbm) { - unsigned long pages, order; + void *pages = pbm->msi_queues; - order = get_order(512 * 1024); - pages = (unsigned long) pbm->msi_queues; - - free_pages((void *)pages, order); + free_pages(pages, get_order(512 * 1024)); pbm->msi_queues = NULL; } diff --git a/arch/sparc/kernel/pci_sun4v.c b/arch/sparc/kernel/pci_sun4v.c index 3ea1937..9d84e4e 100644 --- a/arch/sparc/kernel/pci_sun4v.c +++ b/arch/sparc/kernel/pci_sun4v.c @@ -746,20 +746,21 @@ static int pci_sun4v_msi_teardown(struct pci_pbm_info *pbm, unsigned long msi) static int pci_sun4v_msiq_alloc(struct pci_pbm_info *pbm) { - unsigned long q_size, alloc_size, pages, order; + unsigned long q_size, alloc_size, order; + void *pages; int i; q_size = pbm->msiq_ent_count * sizeof(struct pci_sun4v_msiq_entry); alloc_size = (pbm->msiq_num * q_size); order = get_order(alloc_size); - pages = __get_free_pages(GFP_KERNEL | __GFP_COMP, order); - if (pages == 0UL) { + pages = (void *)__get_free_pages(GFP_KERNEL | __GFP_COMP, order); + if (!pages) { printk(KERN_ERR "MSI: Cannot allocate MSI queues (o=%lu).\n", order); return -ENOMEM; } - memset((char *)pages, 0, PAGE_SIZE << order); - pbm->msi_queues = (void *) pages; + memset(pages, 0, PAGE_SIZE << order); + pbm->msi_queues = pages; for (i = 0; i < pbm->msiq_num; i++) { unsigned long err, base = __pa(pages + (i * q_size)); @@ -794,13 +795,14 @@ static int pci_sun4v_msiq_alloc(struct pci_pbm_info *pbm) return 0; h_error: - free_pages((void *)pages, order); + free_pages(pages, order); return -EINVAL; } static void pci_sun4v_msiq_free(struct pci_pbm_info *pbm) { - unsigned long q_size, alloc_size, pages, order; + unsigned long q_size, alloc_size, order; + void *pages; int i; for (i = 0; i < pbm->msiq_num; i++) { @@ -813,9 +815,9 @@ static void pci_sun4v_msiq_free(struct pci_pbm_info *pbm) alloc_size = (pbm->msiq_num * q_size); order = get_order(alloc_size); - pages = (unsigned long) pbm->msi_queues; + pages = pbm->msi_queues; - free_pages((void *)pages, order); + free_pages(pages, order); pbm->msi_queues = NULL; } @@ -937,12 +939,12 @@ static int pci_sun4v_probe(struct platform_device *op) err = -ENOMEM; if (!iommu_batch_initialized) { for_each_possible_cpu(i) { - unsigned long page = (unsigned long)get_zeroed_page(GFP_KERNEL); + u64 *page = get_zeroed_page(GFP_KERNEL); if (!page) goto out_err; - per_cpu(iommu_batch, i).pglist = (u64 *) page; + per_cpu(iommu_batch, i).pglist = page; } iommu_batch_initialized = 1; } diff --git a/arch/sparc/mm/io-unit.c b/arch/sparc/mm/io-unit.c index f311bf2..707d5a0 100644 --- a/arch/sparc/mm/io-unit.c +++ b/arch/sparc/mm/io-unit.c @@ -200,10 +200,10 @@ static void iounit_release_scsi_sgl(struct device *dev, struct scatterlist *sg, } #ifdef CONFIG_SBUS -static int iounit_map_dma_area(struct device *dev, dma_addr_t *pba, unsigned long va, unsigned long addr, int len) +static int iounit_map_dma_area(struct device *dev, dma_addr_t *pba, void *va, unsigned long addr, int len) { struct iounit_struct *iounit = dev->archdata.iommu; - unsigned long page, end; + unsigned long end; pgprot_t dvma_prot; iopte_t __iomem *iopte; @@ -212,7 +212,6 @@ static int iounit_map_dma_area(struct device *dev, dma_addr_t *pba, unsigned lon dvma_prot = __pgprot(SRMMU_CACHE | SRMMU_ET_PTE | SRMMU_PRIV); end = PAGE_ALIGN((addr + len)); while(addr < end) { - page = va; { pgd_t *pgdp; pmd_t *pmdp; @@ -223,12 +222,12 @@ static int iounit_map_dma_area(struct device *dev, dma_addr_t *pba, unsigned lon pmdp = pmd_offset(pgdp, addr); ptep = pte_offset_map(pmdp, addr); - set_pte(ptep, mk_pte(virt_to_page(page), dvma_prot)); + set_pte(ptep, mk_pte(virt_to_page(va), dvma_prot)); i = ((addr - IOUNIT_DMA_BASE) >> PAGE_SHIFT); iopte = iounit->page_table + i; - sbus_writel(MKIOPTE(__pa(page)), iopte); + sbus_writel(MKIOPTE(__pa(va)), iopte); } addr += PAGE_SIZE; va += PAGE_SIZE; diff --git a/arch/sparc/mm/iommu.c b/arch/sparc/mm/iommu.c index 491511d..f9d30bd 100644 --- a/arch/sparc/mm/iommu.c +++ b/arch/sparc/mm/iommu.c @@ -321,7 +321,7 @@ static void iommu_release_scsi_sgl(struct device *dev, struct scatterlist *sg, i } #ifdef CONFIG_SBUS -static int iommu_map_dma_area(struct device *dev, dma_addr_t *pba, unsigned long va, +static int iommu_map_dma_area(struct device *dev, dma_addr_t *pba, void *va, unsigned long addr, int len) { struct iommu_struct *iommu = dev->archdata.iommu; @@ -330,7 +330,7 @@ static int iommu_map_dma_area(struct device *dev, dma_addr_t *pba, unsigned long iopte_t *first; int ioptex; - BUG_ON((va & ~PAGE_MASK) != 0); + BUG_ON(((unsigned long)va & ~PAGE_MASK) != 0); BUG_ON((addr & ~PAGE_MASK) != 0); BUG_ON((len & ~PAGE_MASK) != 0); @@ -344,7 +344,7 @@ static int iommu_map_dma_area(struct device *dev, dma_addr_t *pba, unsigned long first = iopte; end = addr + len; while(addr < end) { - page = va; + page = (unsigned long)va; { pgd_t *pgdp; pmd_t *pmdp; @@ -361,10 +361,10 @@ static int iommu_map_dma_area(struct device *dev, dma_addr_t *pba, unsigned long pmdp = pmd_offset(pgdp, addr); ptep = pte_offset_map(pmdp, addr); - set_pte(ptep, mk_pte(virt_to_page(page), dvma_prot)); + set_pte(ptep, mk_pte(virt_to_page(va), dvma_prot)); } iopte_val(*iopte++) = - MKIOPTE(page_to_pfn(virt_to_page(page)), ioperm_noc); + MKIOPTE(page_to_pfn(virt_to_page(va)), ioperm_noc); addr += PAGE_SIZE; va += PAGE_SIZE; } -- 2.1.4
| |