cregit-Linux how code gets into the kernel

Release 4.8 arch/sh/mm/uncached.c

Directory: arch/sh/mm
#include <linux/init.h>
#include <linux/module.h>
#include <asm/sizes.h>
#include <asm/page.h>
#include <asm/addrspace.h>

/*
 * This is the offset of the uncached section from its cached alias.
 *
 * Legacy platforms handle trivial transitions between cached and
 * uncached segments by making use of the 1:1 mapping relationship in
 * 512MB lowmem, others via a special uncached mapping.
 *
 * Default value only valid in 29 bit mode, in 32bit mode this will be
 * updated by the early PMB initialization code.
 */

unsigned long cached_to_uncached = SZ_512M;

unsigned long uncached_size = SZ_512M;


unsigned long uncached_start, uncached_end;

EXPORT_SYMBOL(uncached_start);

EXPORT_SYMBOL(uncached_end);


int virt_addr_uncached(unsigned long kaddr) { return (kaddr >= uncached_start) && (kaddr < uncached_end); }

Contributors

PersonTokensPropCommitsCommitProp
paul mundtpaul mundt22100.00%1100.00%
Total22100.00%1100.00%

EXPORT_SYMBOL(virt_addr_uncached);
void __init uncached_init(void) { #if defined(CONFIG_29BIT) || !defined(CONFIG_MMU) uncached_start = P2SEG; #else uncached_start = memory_end; #endif uncached_end = uncached_start + uncached_size; }

Contributors

PersonTokensPropCommitsCommitProp
paul mundtpaul mundt38100.00%3100.00%
Total38100.00%3100.00%


void __init uncached_resize(unsigned long size) { uncached_size = size; uncached_end = uncached_start + uncached_size; }

Contributors

PersonTokensPropCommitsCommitProp
paul mundtpaul mundt20100.00%1100.00%
Total20100.00%1100.00%


Overall Contributors

PersonTokensPropCommitsCommitProp
paul mundtpaul mundt129100.00%5100.00%
Total129100.00%5100.00%
Directory: arch/sh/mm
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.