cregit-Linux how code gets into the kernel

Release 4.11 arch/mips/pci/pci.c

Directory: arch/mips/pci
/*
 * This program is free software; you can redistribute  it and/or modify it
 * under  the terms of  the GNU General  Public License as published by the
 * Free Software Foundation;  either version 2 of the  License, or (at your
 * option) any later version.
 *
 * Copyright (C) 2003, 04, 11 Ralf Baechle (ralf@linux-mips.org)
 * Copyright (C) 2011 Wind River Systems,
 *   written by Ralf Baechle (ralf@linux-mips.org)
 */
#include <linux/bug.h>
#include <linux/kernel.h>
#include <linux/mm.h>
#include <linux/bootmem.h>
#include <linux/export.h>
#include <linux/init.h>
#include <linux/types.h>
#include <linux/pci.h>
#include <linux/of_address.h>

#include <asm/cpu-info.h>


unsigned long PCIBIOS_MIN_IO;

EXPORT_SYMBOL(PCIBIOS_MIN_IO);


unsigned long PCIBIOS_MIN_MEM;

EXPORT_SYMBOL(PCIBIOS_MIN_MEM);


static int __init pcibios_set_cache_line_size(void) { struct cpuinfo_mips *c = &current_cpu_data; unsigned int lsize; /* * Set PCI cacheline size to that of the highest level in the * cache hierarchy. */ lsize = c->dcache.linesz; lsize = c->scache.linesz ? : lsize; lsize = c->tcache.linesz ? : lsize; BUG_ON(!lsize); pci_dfl_cache_line_size = lsize >> 2; pr_debug("PCI: pci_cache_line_size set to %d bytes\n", lsize); return 0; }

Contributors

PersonTokensPropCommitsCommitProp
Paul Burton5472.97%133.33%
Andrew Morton1621.62%133.33%
Ralf Bächle45.41%133.33%
Total74100.00%3100.00%

arch_initcall(pcibios_set_cache_line_size);
void pci_resource_to_user(const struct pci_dev *dev, int bar, const struct resource *rsrc, resource_size_t *start, resource_size_t *end) { phys_addr_t size = resource_size(rsrc); *start = fixup_bigphys_addr(rsrc->start, size); *end = rsrc->start + size; }

Contributors

PersonTokensPropCommitsCommitProp
Björn Helgaas57100.00%1100.00%
Total57100.00%1100.00%


int pci_mmap_page_range(struct pci_dev *dev, struct vm_area_struct *vma, enum pci_mmap_state mmap_state, int write_combine) { unsigned long prot; /* * I/O space can be accessed via normal processor loads and stores on * this platform but for now we elect not to do this and portable * drivers should not do this anyway. */ if (mmap_state == pci_mmap_io) return -EINVAL; /* * Ignore write-combine; for now only return uncached mappings. */ prot = pgprot_val(vma->vm_page_prot); prot = (prot & ~_CACHE_MASK) | _CACHE_UNCACHED; vma->vm_page_prot = __pgprot(prot); return remap_pfn_range(vma, vma->vm_start, vma->vm_pgoff, vma->vm_end - vma->vm_start, vma->vm_page_prot); }

Contributors

PersonTokensPropCommitsCommitProp
Ralf Bächle93100.00%1100.00%
Total93100.00%1100.00%


Overall Contributors

PersonTokensPropCommitsCommitProp
Ralf Bächle12243.88%550.00%
Paul Burton6322.66%110.00%
Björn Helgaas5720.50%110.00%
Andrew Morton3010.79%110.00%
John Crispin31.08%110.00%
Paul Gortmaker31.08%110.00%
Total278100.00%10100.00%
Directory: arch/mips/pci
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.
Created with cregit.