kernel_optimize_test/scripts
James Hogan 8286ae0330 MIPS: Add CDMM bus support
Add MIPS Common Device Memory Map (CDMM) support in the form of a bus in
the standard Linux device model. Each device attached via CDMM is
discoverable via an 8-bit type identifier and may contain a number of
blocks of memory mapped registers in the CDMM region. IRQs are expected
to be handled separately.

Due to the per-cpu (per-VPE for MT cores) nature of the CDMM devices,
all the driver callbacks take place from workqueues which are run on the
right CPU for the device in question, so that the driver doesn't need to
be as concerned about which CPU it is running on. Callbacks also exist
for when CPUs are taken offline, so that any per-CPU resources used by
the driver can be disabled so they don't get forcefully migrated. CDMM
devices are created as children of the CPU device they are attached to.

Any existing CDMM configuration by the bootloader will be inherited,
however platforms wishing to enable CDMM should implement the weak
mips_cdmm_phys_base() function (see asm/cdmm.h) so that the bus driver
knows where it should put the CDMM region in the physical address space
if the bootloader hasn't already enabled it.

A mips_cdmm_early_probe() function is also provided to allow early boot
or particularly low level code to set up the CDMM region and probe for a
specific device type, for example early console or KGDB IO drivers for
the EJTAG Fast Debug Channel (FDC) CDMM device.

Signed-off-by: James Hogan <james.hogan@imgtec.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/9599/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2015-03-31 12:04:12 +02:00
..
basic
coccinelle Merge branch 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild 2014-12-20 13:33:03 -08:00
dtc
gdb scripts/gdb: add empty package initialization script 2015-02-28 09:57:51 -08:00
genksyms
kconfig kconfig: use va_end to match corresponding va_start 2015-01-27 16:52:43 +01:00
ksymoops
mod MIPS: Add CDMM bus support 2015-03-31 12:04:12 +02:00
package builddeb: Try to determine distribution 2015-01-06 20:42:46 +01:00
rt-tester
selinux
tracing
.gitignore
analyze_suspend.py
asn1_compiler.c X.509: silence asn1 compiler debug output 2015-01-23 12:10:39 +00:00
bloat-o-meter
bootgraph.pl
checkincludes.pl
checkkconfigsymbols.py checkkconfigsymbols.py: improve detection of defects 2014-11-08 20:50:43 -08:00
checkpatch.pl checkpatch: add of_device_id to structs that should be const 2015-02-13 21:21:40 -08:00
checkstack.pl
checksyscalls.sh
checkversion.pl
cleanfile
cleanpatch
coccicheck
config
conmakehash.c
decode_stacktrace.sh
decodecode
depmod.sh
diffconfig vfs,ext2: remove CONFIG_EXT2_FS_XIP and rename CONFIG_FS_XIP to CONFIG_FS_DAX 2015-02-16 17:56:04 -08:00
docproc.c
export_report.pl
extract-ikconfig
extract-vmlinux
gcc-goto.sh
gcc-ld
gcc-version.sh
gcc-x86_32-has-stack-protector.sh
gcc-x86_64-has-stack-protector.sh
gen_initramfs_list.sh
get_maintainer.pl
gfp-translate
headerdep.pl
headers_check.pl
headers_install.sh
headers.sh CRIS: Fix headers_install 2014-12-20 00:01:12 +01:00
kallsyms.c
Kbuild.include kbuild: allow cc-ifversion to have the argument for false condition 2015-01-09 17:25:44 +01:00
kernel-doc scripts/kernel-doc: don't eat struct members with __aligned 2014-12-10 17:41:02 -08:00
ld-version.sh
Lindent
link-vmlinux.sh
Makefile scripts/gdb: add infrastructure 2015-02-17 14:34:53 -08:00
Makefile.asm-generic
Makefile.build ftrace: allow architectures to specify ftrace compile options 2015-01-29 09:19:19 +01:00
Makefile.clean Merge branch 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild 2015-02-19 10:07:08 -08:00
Makefile.dtbinst dts, kbuild: Implement support for dtb vendor subdirs 2014-10-21 18:06:59 +02:00
Makefile.extrawarn
Makefile.fwinst
Makefile.headersinst kbuild: collect shorthands into scripts/Kbuild.include 2014-11-26 14:36:52 +01:00
Makefile.help
Makefile.host
Makefile.kasan kasan: enable instrumentation of global variables 2015-02-13 21:21:42 -08:00
Makefile.lib kasan: add kernel address sanitizer infrastructure 2015-02-13 21:21:40 -08:00
Makefile.modbuiltin
Makefile.modinst
Makefile.modpost
Makefile.modsign
makelst
markup_oops.pl
mkcompile_h
mkmakefile
mksysmap
mkuboot.sh
mkversion
module-common.lds kernel: add support for .init_array.* constructors 2015-02-13 21:21:42 -08:00
namespace.pl
objdiff
patch-kernel
pnmtologo.c
profile2linkerlist.pl
recordmcount.c s390/ftrace,kprobes: allow to patch first instruction 2014-10-27 13:27:27 +01:00
recordmcount.h
recordmcount.pl Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux 2015-02-11 17:42:32 -08:00
setlocalversion
show_delta
sign-file
sortextable.c
sortextable.h
spelling.txt
tags.sh
unifdef.c
ver_linux
xz_wrap.sh