User:Jiangq

= Listings =

Chapter 4
{| ! Number ! Page ! Caption ! Listing qiang@qiang-laptop:~/Desktop/linux-2.6$ ls -ls arch/arm/plat-omap/ | grep -v \\.o total 432 12 -rw-r--r-- 1 qiang qiang 11124 2010-03-23 20:06 clock.c 12 -rw-r--r-- 1 qiang qiang 8521 2010-03-23 20:06 common.c 4 -rw-r--r-- 1 qiang qiang  4033 2010-03-23 20:06 cpu-omap.c 4 -rw-r--r-- 1 qiang qiang  2192 2010-03-23 20:06 debug-devices.c 8 -rw-r--r-- 1 qiang qiang  7170 2010-03-23 20:06 debug-leds.c 12 -rw-r--r-- 1 qiang qiang 10890 2010-03-23 20:06 devices.c 56 -rw-r--r-- 1 qiang qiang 52586 2010-03-23 20:06 dma.c 24 -rw-r--r-- 1 qiang qiang 22660 2010-03-23 20:06 dmtimer.c 12 -rw-r--r-- 1 qiang qiang 10055 2010-03-23 20:06 fb.c 64 -rw-r--r-- 1 qiang qiang 61308 2010-03-23 20:06 gpio.c 8 -rw-r--r-- 1 qiang qiang  5058 2010-03-23 20:06 i2c.c 4 drwxr-xr-x 3 qiang qiang  4096 2010-03-23 20:06 include 8 -rw-r--r-- 1 qiang qiang 6265 2010-03-23 20:06 io.c 24 -rw-r--r-- 1 qiang qiang 20765 2010-03-23 20:06 iommu.c 12 -rw-r--r-- 1 qiang qiang  9117 2010-03-23 20:06 iommu-debug.c 4 -rw-r--r-- 1 qiang qiang  2745 2010-03-23 20:06 iopgtable.h 20 -rw-r--r-- 1 qiang qiang 19320 2010-03-23 20:06 iovmm.c 8 -rw-r--r-- 1 qiang qiang  4819 2010-03-23 20:06 Kconfig 12 -rw-r--r-- 1 qiang qiang 8522 2010-03-23 20:06 mailbox.c 4 -rw-r--r-- 1 qiang qiang   882 2010-03-23 20:06 Makefile 44 -rw-r--r-- 1 qiang qiang 43730 2010-03-23 20:06 mcbsp.c 4 -rw-r--r-- 1 qiang qiang 2263 2010-03-23 20:06 mux.c 4 -rw-r--r-- 1 qiang qiang  2739 2010-03-23 20:06 ocpi.c 24 -rw-r--r-- 1 qiang qiang 21397 2010-03-23 20:06 omap_device.c 8 -rw-r--r-- 1 qiang qiang  7069 2010-03-23 20:06 omap-pm-noop.c 16 -rw-r--r-- 1 qiang qiang 12878 2010-03-23 20:06 sram.c 20 -rw-r--r-- 1 qiang qiang 18770 2010-03-23 20:06 usb.c
 * 4-3
 * 4-15
 * Kernel Subdirectory
 * qiang@qiang-laptop:~/Desktop/linux-2.6$ cat 4_3
 * qiang@qiang-laptop:~/Desktop/linux-2.6$ cat 4_3

qiang@qiang-laptop:~/Desktop/linux-2.6$ cat 4_4 CONFIG_X86_32=y CONFIG_X86=y CONFIG_OUTPUT_FORMAT="elf32-i386" CONFIG_ARCH_DEFCONFIG="arch/x86/configs/i386_defconfig" CONFIG_GENERIC_TIME=y CONFIG_GENERIC_CMOS_UPDATE=y CONFIG_CLOCKSOURCE_WATCHDOG=y CONFIG_GENERIC_CLOCKEVENTS=y CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y CONFIG_LOCKDEP_SUPPORT=y CONFIG_STACKTRACE_SUPPORT=y CONFIG_HAVE_LATENCYTOP_SUPPORT=y CONFIG_MMU=y
 * 4-4
 * 4-17
 * Snippet from Linux 2.6.config
 * Snippet from Linux 2.6.config
 * 1) CONFIG_64BIT is not set
 * 1) CONFIG_64BIT is not set
 * 1) CONFIG_X86_64 is not set

qiang@qiang-laptop:~/Desktop/linux-2.6$ cat 4_6 qiang@qiang-laptop:~/Desktop/linux-2.6$ make help Cleaning targets: clean		 - Remove most generated files but keep the config and enough build support to build external modules mrproper	 - Remove all generated files + config + various backup files distclean	 - mrproper + remove editor backup and patch files
 * 4-6
 * 4-22
 * Makefile Targets
 * Makefile Targets

Configuration targets: config	 - Update current config utilising a line-oriented program menuconfig	 - Update current config utilising a menu based program xconfig	 - Update current config utilising a QT based front-end gconfig	 - Update current config utilising a GTK based front-end oldconfig	 - Update current config utilising a provided .config as base localmodconfig - Update current config disabling modules not loaded localyesconfig - Update current config converting local mods to core silentoldconfig - Same as oldconfig, but quietly, additionally update deps randconfig	 - New config with random answer to all options defconfig	 - New config with default answer to all options allmodconfig	 - New config selecting modules when possible allyesconfig	 - New config where all options are accepted with yes allnoconfig	 - New config where all options are answered with no

Other generic targets: all		 - Build all targets marked with [*] modules_install - Install all modules to INSTALL_MOD_PATH (default: /) firmware_install- Install all firmware to INSTALL_FW_PATH (default: $(INSTALL_MOD_PATH)/lib/firmware) dir/           - Build all files in dir and below dir/file.[ois] - Build specified target only dir/file.ko    - Build module including final link modules_prepare - Set up for building external modules tags/TAGS	 - Generate tags file for editors cscope	 - Generate cscope index kernelrelease	 - Output the release version string kernelversion	 - Output the version stored in Makefile headers_install - Install sanitised kernel headers to INSTALL_HDR_PATH (default: /home/qiang/Desktop/linux-2.6/usr)
 * vmlinux	 - Build the bare kernel
 * modules	 - Build all modules

Static analysers checkstack     - Generate a list of stack hogs namespacecheck - Name space analysis on compiled kernel versioncheck   - Sanity check on version.h usage includecheck   - Check for duplicate included header files export_report  - List the usages of all exported symbols headers_check  - Sanity check on exported headers headerdep      - Detect inclusion cycles in headers

Kernel packaging: rpm-pkg        - Build both source and binary RPM kernel packages binrpm-pkg     - Build only the binary kernel package deb-pkg        - Build the kernel as an deb package tar-pkg        - Build the kernel as an uncompressed tarball targz-pkg      - Build the kernel as a gzip compressed tarball tarbz2-pkg     - Build the kernel as a bzip2 compressed tarball

Documentation targets: Linux kernel internal documentation in different formats: htmldocs       - HTML pdfdocs        - PDF psdocs         - Postscript xmldocs        - XML DocBook mandocs        - man pages installmandocs - install man pages generated by mandocs cleandocs      - clean all generated DocBook files

Architecture specific targets (x86): install     - Install kernel using (your) ~/bin/installkernel or                 (distribution) /sbin/installkernel or                  install to $(INSTALL_PATH) and run lilo fdimage     - Create 1.4MB boot floppy image (arch/x86/boot/fdimage) fdimage144  - Create 1.4MB boot floppy image (arch/x86/boot/fdimage) fdimage288  - Create 2.8MB boot floppy image (arch/x86/boot/fdimage) isoimage    - Create a boot CD-ROM image (arch/x86/boot/image.iso) bzdisk/fdimage*/isoimage also accept: FDARGS="..." arguments for the booted kernel FDINITRD=file initrd for the booted kernel
 * bzImage     - Compressed kernel image (arch/x86/boot/bzImage)

i386_defconfig          - Build for i386 x86_64_defconfig        - Build for x86_64

make V=0|1 [targets] 0 => quiet build (default), 1 => verbose build make V=2  [targets] 2 => give reason for rebuild of target make O=dir [targets] Locate all output files in "dir", including .config make C=1  [targets] Check all c source with $CHECK (sparse by default) make C=2  [targets] Force check of all c source with $CHECK

Execute "make" or "make all" to build all targets marked with [*] For further info see the ./README file

CONFIG_ARCH_OMAP=y
 * 4-10
 * 4-32
 * Customized .config File Snippet
 * qiang@qiang-laptop:~/Desktop/linux-2.6$ cat 4_10
 * 1) CONFIG_ARCH_PNX4008 is not set
 * 2) CONFIG_ARCH_PXA is not set
 * 3) CONFIG_ARCH_MSM is not set
 * 4) CONFIG_ARCH_SHMOBILE is not set
 * 5) CONFIG_ARCH_RPC is not set
 * 6) CONFIG_ARCH_SA1100 is not set
 * 7) CONFIG_ARCH_S3C2410 is not set
 * 8) CONFIG_ARCH_S3C64XX is not set
 * 9) CONFIG_ARCH_S5P6440 is not set
 * 10) CONFIG_ARCH_S5P6442 is not set
 * 11) CONFIG_ARCH_S5PC1XX is not set
 * 12) CONFIG_ARCH_S5PV210 is not set
 * 13) CONFIG_ARCH_SHARK is not set
 * 14) CONFIG_ARCH_LH7A40X is not set
 * 15) CONFIG_ARCH_U300 is not set
 * 16) CONFIG_ARCH_U8500 is not set
 * 17) CONFIG_ARCH_NOMADIK is not set
 * 18) CONFIG_ARCH_DAVINCI is not set
 * 1) CONFIG_ARCH_DAVINCI is not set

CONFIG_ARCH_OMAP2PLUS=y
 * 1) TI OMAP Implementations
 * 2) CONFIG_ARCH_OMAP1 is not set
 * 1) CONFIG_ARCH_OMAP1 is not set
 * 1) CONFIG_ARCH_OMAP1 is not set
 * 1) CONFIG_ARCH_OMAP2 is not set
 * 2) CONFIG_ARCH_OMAP3 is not set
 * 3) CONFIG_ARCH_OMAP4 is not set

qiang@qiang-laptop:~/Desktop/linux-2.6$ cat 4_11 qiang@qiang-laptop:~/Desktop/linux-2.6/arch/arm/plat-omap$ head -n 20 Makefile
 * 4-11
 * 4-33
 * Makefile from .../arch/arm/mach-ixp4xx Kernel Subdirectory
 * Makefile from .../arch/arm/mach-ixp4xx Kernel Subdirectory
 * 1) Makefile for the linux kernel.
 * 1) Makefile for the linux kernel.

obj-y := common.o sram.o clock.o devices.o dma.o mux.o gpio.o \ usb.o fb.o io.o obj-m := obj-n := obj- :=
 * 1) Common support

obj-$(CONFIG_ARCH_OMAP16XX) += ocpi.o
 * 1) OCPI interconnect support for 1710, 1610 and 5912

obj-$(CONFIG_ARCH_OMAP2) += omap_device.o obj-$(CONFIG_ARCH_OMAP3) += omap_device.o
 * 1) omap_device support (OMAP2+ only at the moment)

obj-$(CONFIG_OMAP_MCBSP) += mcbsp.o obj-$(CONFIG_OMAP_IOMMU) += iommu.o iovmm.o