|
|
(21 intermediate revisions by the same user not shown) |
Line 1: |
Line 1: |
− | [[Category:ECE597]] | + | [[Category:ECE497 |list]] |
| + | {{YoderHead}} |
| | | |
| Here are the listing from the Embedded Linux Primer as done on the Beagle. | | Here are the listing from the Embedded Linux Primer as done on the Beagle. |
| | | |
− | == Chapter 2 ==
| + | * [[ECE497 Listings for Embedded Linux Primer Chapter 2]] |
| + | * [[ECE497 Listings for Embedded Linux Primer Chapter 4]] |
| + | * [[ECE497 Listings for Embedded Linux Primer Chapter 5]] |
| + | * [[ECE497 Listings for Embedded Linux Primer Chapter 6]] |
| + | * [[ECE497 Listings for Embedded Linux Primer Chapter 7]] |
| + | * [[ECE497 Listings for Embedded Linux Primer Chapter 8]] |
| | | |
− | {| | + | {{YoderFoot}} |
− | ! Number
| |
− | ! Page
| |
− | ! Caption
| |
− | ! Listing
| |
− | |-
| |
− | | 2-1
| |
− | | 2-6
| |
− | | Initial Bootloader Serial Output
| |
− | | <pre>
| |
− | Texas Instruments X-Loader 1.4.2 (Feb 19 2009 - 12:01:24)
| |
− | Reading boot sector
| |
− | Loading u-boot.bin from mmc
| |
− | | |
− | | |
− | U-Boot 2009.11-rc1 (Jan 08 2010 - 21:19:52)
| |
− | | |
− | OMAP3530-GP ES3.1, CPU-OPP2 L3-165MHz
| |
− | OMAP3 Beagle board + LPDDR/NAND
| |
− | I2C: ready
| |
− | DRAM: 256 MB
| |
− | NAND: 256 MiB
| |
− | In: serial
| |
− | Out: serial
| |
− | Err: serial
| |
− | Board revision C4
| |
− | Die ID #5444000400000000040365fa1400e007
| |
− | Hit any key to stop autoboot: 0
| |
− | OMAP3 beagleboard.org #
| |
− | </pre>
| |
− | |-
| |
− | | 2-2
| |
− | | 2-7
| |
− | | Loading the Linux Kernel
| |
− | |
| |
− | |-
| |
− | | 2-3
| |
− | | 2-9
| |
− | | Linux Final Boot Messages
| |
− | | <pre>
| |
− | </pre>
| |
− | |-
| |
− | | 2-4
| |
− | | 2-21
| |
− | | Hello World, Embedded Style
| |
− | | <pre>
| |
− | #include <stdio.h>
| |
− | | |
− | int bss_var; /* Uninitialized global variable */
| |
− | | |
− | int data_var = 1; /* Initialized global variable */
| |
− | | |
− | int main(int argc, char **argv)
| |
− | { | |
− | void *stack_var; /* Local variable on the stack */
| |
− |
| |
− | stack_var = (void *)main; /* Don't let the compiler */
| |
− | /* optimize it out */
| |
− | | |
− | printf("Hello, World! Main is executing at %p\n", stack_var);
| |
− | printf("This address (%p) is in our stack frame\n", &stack_var);
| |
− | | |
− | /* bss section contains uninitialized data */
| |
− | printf("This address (%p) is in our bss section\n", &bss_var);
| |
− | | |
− | /* data section contains initializated data */
| |
− | printf("This address (%p) is in our data section\n", &data_var);
| |
− | | |
− | return 0;
| |
− | } | |
− | </pre>
| |
− | |-
| |
− | | 2-5
| |
− | | 2-22
| |
− | | Hello Output for Host Computer
| |
− | | <pre>
| |
− | </pre>
| |
− | |-
| |
− | | 2-5
| |
− | | 2-22
| |
− | | Hello Output for Beagle
| |
− | | <pre>
| |
− | </pre>
| |
− | |}
| |
− | | |
− | == Chapter 4 ==
| |
− | | |
− | {|
| |
− | ! Number
| |
− | ! Page
| |
− | ! Caption
| |
− | ! Listing
| |
− | |-
| |
− | | 4-1
| |
− | | 4-7
| |
− | | Kernel Build Output
| |
− | | <pre>
| |
− | $ export OETREE="${HOME}/oe"
| |
− | $ PATH=${OETREE}/angstrom-dev/staging/i686-linux/usr/bin/:${PATH}
| |
− | $ PATH=${OETREE}/angstrom-dev/cross/armv7a/bin/:${PATH}
| |
− | $ make CROSS_COMPILE=arm-angstrom-linux-gnueabi- uImage
| |
− | CHK include/linux/version.h
| |
− | make[1]: `include/asm-arm/mach-types.h' is up to date.
| |
− | CHK include/linux/utsrelease.h
| |
− | SYMLINK include/asm -> include/asm-arm
| |
− | CALL scripts/checksyscalls.sh
| |
− | CHK include/linux/compile.h
| |
− | CC arch/arm/mach-omap2/io.o
| |
− | CC arch/arm/mach-omap2/devices.o
| |
− | .
| |
− | . <lines of output omitted here>
| |
− | .
| |
− | LD vmlinux
| |
− | SYSMAP System.map
| |
− | SYSMAP .tmp_System.map
| |
− | OBJCOPY arch/arm/boot/Image
| |
− | Kernel: arch/arm/boot/Image is ready
| |
− | GZIP arch/arm/boot/compressed/piggy.gz
| |
− | AS arch/arm/boot/compressed/piggy.o
| |
− | LD arch/arm/boot/compressed/vmlinux
| |
− | OBJCOPY arch/arm/boot/zImage
| |
− | Kernel: arch/arm/boot/zImage is ready
| |
− | UIMAGE arch/arm/boot/uImage
| |
− | Image Name: Linux-2.6.29-omap1
| |
− | Created: Tue Mar 9 12:58:27 2010
| |
− | Image Type: ARM Linux Kernel Image (uncompressed)
| |
− | Data Size: 2991236 Bytes = 2921.13 kB = 2.85 MB
| |
− | Load Address: 0x80008000
| |
− | Entry Point: 0x80008000
| |
− | Image arch/arm/boot/uImage is ready
| |
− | </pre>
| |
− | |-
| |
− | | 4-2
| |
− | | 4-9
| |
− | | Link Stage: vmlinux
| |
− | | <pre>
| |
− | </pre>
| |
− | |-
| |
− | | 4-3
| |
− | | 4-15
| |
− | | Kernel Subdirectory
| |
− | | <pre>
| |
− | $ ls -ls arch/arm/plat-omap/ | grep -v \\.o
| |
− | total 776
| |
− | 8 -rw-r--r-- 1 yoder yoder 7933 Mar 9 12:14 Kconfig
| |
− | 8 -rw-r--r-- 1 yoder yoder 7799 Mar 9 12:14 Kconfig.backup
| |
− | 8 -rw-r--r-- 1 yoder yoder 7799 Mar 8 11:28 Kconfig~
| |
− | 4 -rw-r--r-- 1 yoder yoder 824 Mar 8 11:28 Makefile
| |
− | 4 -rw-r--r-- 1 yoder yoder 2404 Mar 8 11:18 bootreason.c
| |
− | 16 -rw-r--r-- 1 yoder yoder 15334 Mar 8 11:18 clock.c
| |
− | 12 -rw-r--r-- 1 yoder yoder 8210 Mar 8 11:18 common.c
| |
− | 4 -rw-r--r-- 1 yoder yoder 1593 Mar 8 11:18 component-version.c
| |
− | 4 -rw-r--r-- 1 yoder yoder 4053 Mar 8 11:18 cpu-omap.c
| |
− | 4 -rw-r--r-- 1 yoder yoder 1975 Mar 8 11:18 debug-devices.c
| |
− | 8 -rw-r--r-- 1 yoder yoder 7120 Mar 8 11:18 debug-leds.c
| |
− | 12 -rw-r--r-- 1 yoder yoder 9975 Mar 8 11:18 devices.c
| |
− | 60 -rwxr-xr-x 1 yoder yoder 59827 Mar 8 11:26 dma.c
| |
− | 24 -rw-r--r-- 1 yoder yoder 20791 Mar 8 11:18 dmtimer.c
| |
− | 12 -rw-r--r-- 1 yoder yoder 9675 Mar 8 11:25 fb.c
| |
− | 16 -rw-r--r-- 1 yoder yoder 12815 Mar 8 11:18 gpio-switch.c
| |
− | 48 -rw-r--r-- 1 yoder yoder 47671 Mar 8 11:18 gpio.c
| |
− | 8 -rw-r--r-- 1 yoder yoder 5841 Mar 8 11:18 i2c.c
| |
− | 4 drwxr-xr-x 3 yoder yoder 4096 Mar 8 11:18 include
| |
− | 4 -rw-r--r-- 1 yoder yoder 3749 Mar 8 11:18 io.c
| |
− | 20 -rw-r--r-- 1 yoder yoder 19782 Mar 8 11:28 iommu.c
| |
− | 20 -rw-r--r-- 1 yoder yoder 17214 Mar 8 13:42 iommu.ko
| |
− | 4 -rw-r--r-- 1 yoder yoder 1924 Mar 8 13:40 iommu.mod.c
| |
− | 4 -rw-r--r-- 1 yoder yoder 2152 Mar 8 11:28 iopgtable.h
| |
− | 20 -rw-r--r-- 1 yoder yoder 19139 Mar 8 11:28 iovmm.c
| |
− | 16 -rw-r--r-- 1 yoder yoder 14686 Mar 8 13:42 iovmm.ko
| |
− | 4 -rw-r--r-- 1 yoder yoder 1764 Mar 8 13:40 iovmm.mod.c
| |
− | 12 -rw-r--r-- 1 yoder yoder 12069 Mar 8 11:18 mailbox.c
| |
− | 28 -rw-r--r-- 1 yoder yoder 26560 Mar 8 11:18 mcbsp.c
| |
− | 4 -rw-r--r-- 1 yoder yoder 2109 Mar 8 11:18 mux.c
| |
− | 4 -rw-r--r-- 1 yoder yoder 2739 Mar 8 11:18 ocpi.c
| |
− | 12 -rw-r--r-- 1 yoder yoder 10915 Mar 8 11:18 sram.c
| |
− | 20 -rw-r--r-- 1 yoder yoder 18290 Mar 8 11:18 usb.c
| |
− | 16 -rw-r--r-- 1 yoder yoder 13911 Mar 8 11:26 vram.c
| |
− | 8 -rw-r--r-- 1 yoder yoder 6426 Mar 8 11:26 vrfb.c
| |
− | | |
− | </pre>
| |
− | |-
| |
− | | 4-4
| |
− | | 4-17
| |
− | | Snippet from Linux 2.6 .config
| |
− | | <pre>
| |
− | ...
| |
− | #
| |
− | # USB Input Devices
| |
− | #
| |
− | CONFIG_USB_HID=y
| |
− | # CONFIG_HID_PID is not set
| |
− | # CONFIG_USB_HIDDEV is not set
| |
− | | |
− | #
| |
− | # Special HID drivers
| |
− | #
| |
− | CONFIG_HID_COMPAT=y
| |
− | CONFIG_HID_A4TECH=y
| |
− | CONFIG_HID_APPLE=y
| |
− | CONFIG_HID_BELKIN=y
| |
− | CONFIG_HID_CHERRY=y
| |
− | ...
| |
− | </pre>
| |
− | |-
| |
− | | 4-5
| |
− | | 4-21
| |
− | | Linux autoconf.h
| |
− | | <pre>
| |
− | #define CONFIG_USB_SISUSBVGA_MODULE 1
| |
− | #define CONFIG_USB_PHIDGETMOTORCONTROL_MODULE 1
| |
− | #define CONFIG_USB_MUSB_HDRC 1
| |
− | #define CONFIG_USB_LEGOTOWER_MODULE 1
| |
− | #define CONFIG_USB_SERIAL_IR_MODULE 1
| |
− | #define CONFIG_USB_GSPCA_T613_MODULE 1
| |
− | #define CONFIG_USB_SERIAL_TI_MODULE 1
| |
− | #define CONFIG_USB_ETH_RNDIS 1
| |
− | #define CONFIG_USB_SERIAL_MODULE 1
| |
− | #define CONFIG_USB_W9968CF_MODULE 1
| |
− | #define CONFIG_USB_RTL8150 1
| |
− | #define CONFIG_USB_SERIAL_WHITEHEAT_MODULE 1
| |
− | #define CONFIG_USB_GADGET_MUSB_HDRC 1
| |
− | ...
| |
− | </pre>
| |
− | |-
| |
− | | 4-6
| |
− | | 4-22
| |
− | | Makefile Targets
| |
− | | <pre>
| |
− | $ 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
| |
− | | |
− | 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
| |
− | silentoldconfig - Same as oldconfig, but quietly
| |
− | 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 [*]
| |
− | * vmlinux - Build the bare kernel
| |
− | * modules - Build all modules
| |
− | 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
| |
− | 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/yoder/oe/angstrom-dev/work/beagleboard-angstrom-linux-gnueabi/linux-omap-2.6.29-r46/git/usr)
| |
− | | |
− | 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
| |
− | installmandocs - install man pages generated by mandocs
| |
− | mandocs - man pages
| |
− | pdfdocs - PDF
| |
− | psdocs - Postscript
| |
− | xmldocs - XML DocBook
| |
− | | |
− | Architecture specific targets (arm):
| |
− | * zImage - Compressed kernel image (arch/arm/boot/zImage)
| |
− | Image - Uncompressed kernel image (arch/arm/boot/Image)
| |
− | * xipImage - XIP kernel image, if configured (arch/arm/boot/xipImage)
| |
− | uImage - U-Boot wrapped zImage
| |
− | bootpImage - Combined zImage and initial RAM disk
| |
− | (supply initrd image via make variable INITRD=<path>)
| |
− | install - Install uncompressed kernel
| |
− | zinstall - Install compressed kernel
| |
− | Install using (your) ~/bin/installkernel or
| |
− | (distribution) /sbin/installkernel or
| |
− | install to $(INSTALL_PATH) and run lilo
| |
− | | |
− | afeb9260_defconfig - Build for afeb9260
| |
− | am200epdkit_defconfig - Build for am200epdkit
| |
− | ams_delta_defconfig - Build for ams_delta
| |
− | assabet_defconfig - Build for assabet
| |
− | at91cap9adk_defconfig - Build for at91cap9adk
| |
− | at91rm9200dk_defconfig - Build for at91rm9200dk
| |
− | at91rm9200ek_defconfig - Build for at91rm9200ek
| |
− | at91sam9260ek_defconfig - Build for at91sam9260ek
| |
− | at91sam9261ek_defconfig - Build for at91sam9261ek
| |
− | at91sam9263ek_defconfig - Build for at91sam9263ek
| |
− | at91sam9g20ek_defconfig - Build for at91sam9g20ek
| |
− | at91sam9rlek_defconfig - Build for at91sam9rlek
| |
− | ateb9200_defconfig - Build for ateb9200
| |
− | badge4_defconfig - Build for badge4
| |
− | cam60_defconfig - Build for cam60
| |
− | carmeva_defconfig - Build for carmeva
| |
− | cerfcube_defconfig - Build for cerfcube
| |
− | cm_x300_defconfig - Build for cm_x300
| |
− | colibri_defconfig - Build for colibri
| |
− | collie_defconfig - Build for collie
| |
− | corgi_defconfig - Build for corgi
| |
− | csb337_defconfig - Build for csb337
| |
− | csb637_defconfig - Build for csb637
| |
− | dss_omap3_beagle_defconfig - Build for dss_omap3_beagle
| |
− | dss_omap_3430sdp_defconfig - Build for dss_omap_3430sdp
| |
− | dss_overo_defconfig - Build for dss_overo
| |
− | ebsa110_defconfig - Build for ebsa110
| |
− | ecbat91_defconfig - Build for ecbat91
| |
− | edb7211_defconfig - Build for edb7211
| |
− | ep93xx_defconfig - Build for ep93xx
| |
− | eseries_pxa_defconfig - Build for eseries_pxa
| |
− | ezx_defconfig - Build for ezx
| |
− | footbridge_defconfig - Build for footbridge
| |
− | fortunet_defconfig - Build for fortunet
| |
− | h3600_defconfig - Build for h3600
| |
− | h5000_defconfig - Build for h5000
| |
− | h7201_defconfig - Build for h7201
| |
− | h7202_defconfig - Build for h7202
| |
− | hackkit_defconfig - Build for hackkit
| |
− | imx27ads_defconfig - Build for imx27ads
| |
− | integrator_defconfig - Build for integrator
| |
− | iop13xx_defconfig - Build for iop13xx
| |
− | iop32x_defconfig - Build for iop32x
| |
− | iop33x_defconfig - Build for iop33x
| |
− | ixp2000_defconfig - Build for ixp2000
| |
− | ixp23xx_defconfig - Build for ixp23xx
| |
− | ixp4xx_defconfig - Build for ixp4xx
| |
− | jornada720_defconfig - Build for jornada720
| |
− | kafa_defconfig - Build for kafa
| |
− | kb9202_defconfig - Build for kb9202
| |
− | kirkwood_defconfig - Build for kirkwood
| |
− | ks8695_defconfig - Build for ks8695
| |
− | lart_defconfig - Build for lart
| |
− | littleton_defconfig - Build for littleton
| |
− | loki_defconfig - Build for loki
| |
− | lpd270_defconfig - Build for lpd270
| |
− | lpd7a400_defconfig - Build for lpd7a400
| |
− | lpd7a404_defconfig - Build for lpd7a404
| |
− | lubbock_defconfig - Build for lubbock
| |
− | lusl7200_defconfig - Build for lusl7200
| |
− | magician_defconfig - Build for magician
| |
− | mainstone_defconfig - Build for mainstone
| |
− | msm_defconfig - Build for msm
| |
− | mv78xx0_defconfig - Build for mv78xx0
| |
− | mx1ads_defconfig - Build for mx1ads
| |
− | mx31ads_defconfig - Build for mx31ads
| |
− | mx31litekit_defconfig - Build for mx31litekit
| |
− | mx31moboard_defconfig - Build for mx31moboard
| |
− | mx31pdk_defconfig - Build for mx31pdk
| |
− | n770_defconfig - Build for n770
| |
− | n800_defconfig - Build for n800
| |
− | neocore926_defconfig - Build for neocore926
| |
− | neponset_defconfig - Build for neponset
| |
− | netwinder_defconfig - Build for netwinder
| |
− | netx_defconfig - Build for netx
| |
− | ns9xxx_defconfig - Build for ns9xxx
| |
− | omap2_evm_defconfig - Build for omap2_evm
| |
− | omap3_beagle_defconfig - Build for omap3_beagle
| |
− | omap3_evm_defconfig - Build for omap3_evm
| |
− | omap3_pandora_defconfig - Build for omap3_pandora
| |
− | omap_2430sdp_defconfig - Build for omap_2430sdp
| |
− | omap_3430sdp_defconfig - Build for omap_3430sdp
| |
− | omap_apollon_2420_defconfig - Build for omap_apollon_2420
| |
− | omap_generic_1510_defconfig - Build for omap_generic_1510
| |
− | omap_generic_1610_defconfig - Build for omap_generic_1610
| |
− | omap_generic_1710_defconfig - Build for omap_generic_1710
| |
− | omap_generic_2420_defconfig - Build for omap_generic_2420
| |
− | omap_h2_1610_defconfig - Build for omap_h2_1610
| |
− | omap_h3_1710_defconfig - Build for omap_h3_1710
| |
− | omap_h4_2420_defconfig - Build for omap_h4_2420
| |
− | omap_innovator_1510_defconfig - Build for omap_innovator_1510
| |
− | omap_innovator_1610_defconfig - Build for omap_innovator_1610
| |
− | omap_ldp_defconfig - Build for omap_ldp
| |
− | omap_osk_5912_defconfig - Build for omap_osk_5912
| |
− | omap_perseus2_730_defconfig - Build for omap_perseus2_730
| |
− | onearm_defconfig - Build for onearm
| |
− | orion5x_defconfig - Build for orion5x
| |
− | overo_defconfig - Build for overo
| |
− | palmte_defconfig - Build for palmte
| |
− | palmtt_defconfig - Build for palmtt
| |
− | palmz71_defconfig - Build for palmz71
| |
− | palmz72_defconfig - Build for palmz72
| |
− | pcm027_defconfig - Build for pcm027
| |
− | pcm037_defconfig - Build for pcm037
| |
− | pcm038_defconfig - Build for pcm038
| |
− | picotux200_defconfig - Build for picotux200
| |
− | pleb_defconfig - Build for pleb
| |
− | pnx4008_defconfig - Build for pnx4008
| |
− | pxa255-idp_defconfig - Build for pxa255-idp
| |
− | qil-a9260_defconfig - Build for qil-a9260
| |
− | realview-smp_defconfig - Build for realview-smp
| |
− | realview_defconfig - Build for realview
| |
− | rpc_defconfig - Build for rpc
| |
− | rx51_defconfig - Build for rx51
| |
− | s3c2410_defconfig - Build for s3c2410
| |
− | s3c6400_defconfig - Build for s3c6400
| |
− | sam9_l9260_defconfig - Build for sam9_l9260
| |
− | shannon_defconfig - Build for shannon
| |
− | shark_defconfig - Build for shark
| |
− | simpad_defconfig - Build for simpad
| |
− | spitz_defconfig - Build for spitz
| |
− | sx1_defconfig - Build for sx1
| |
− | tct_hammer_defconfig - Build for tct_hammer
| |
− | trizeps4_defconfig - Build for trizeps4
| |
− | usb-a9260_defconfig - Build for usb-a9260
| |
− | usb-a9263_defconfig - Build for usb-a9263
| |
− | versatile_defconfig - Build for versatile
| |
− | viper_defconfig - Build for viper
| |
− | w90p910_defconfig - Build for w90p910
| |
− | xm_x2xx_defconfig - Build for xm_x2xx
| |
− | yl9200_defconfig - Build for yl9200
| |
− | zylonite_defconfig - Build for zylonite
| |
− | | |
− | 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
| |
− | </pre>
| |
− | |-
| |
− | | 4-7
| |
− | | 4-27
| |
− | | Partial Listing of Kconfig for ARM Architecture
| |
− | | <pre>
| |
− | ...
| |
− | </pre>
| |
− | |-
| |
− | | 4-8
| |
− | | 4-30
| |
− | | Snippet from .../arch/arm/Kconfig
| |
− | | <pre>
| |
− | ...
| |
− | source "init/Kconfig"
| |
− | | |
− | source "kernel/Kconfig.freezer"
| |
− | | |
− | menu "System Type"
| |
− | | |
− | choice
| |
− | prompt "ARM system type"
| |
− | default ARCH_VERSATILE
| |
− | | |
− | config ARCH_AAEC2000
| |
− | bool "Agilent AAEC-2000 based"
| |
− | select CPU_ARM920T
| |
− | select ARM_AMBA
| |
− | select HAVE_CLK
| |
− | help
| |
− | This enables support for systems based on the Agilent AAEC-2000
| |
− | | |
− | config ARCH_INTEGRATOR
| |
− | bool "ARM Ltd. Integrator family"
| |
− | ...
| |
− | source "arch/arm/plat-omap/Kconfig"
| |
− | </pre>
| |
− | |-
| |
− | | 4-9
| |
− | | 4-30
| |
− | | Snippet from .../arch/arm/plat-omap/Kconfig
| |
− | | <pre>
| |
− | if ARCH_OMAP
| |
− | | |
− | menu "TI OMAP Implementations"
| |
− | | |
− | config ARCH_OMAP_OTG
| |
− | bool
| |
− | | |
− | choice
| |
− | prompt "OMAP System Type"
| |
− | default ARCH_OMAP1
| |
− | | |
− | config ARCH_OMAP1
| |
− | bool "TI OMAP1"
| |
− | | |
− | config ARCH_OMAP2
| |
− | bool "TI OMAP2"
| |
− | select CPU_V6
| |
− | | |
− | config ARCH_OMAP3
| |
− | bool "TI OMAP3"
| |
− | select CPU_V7
| |
− | | |
− | endchoice
| |
− | ...
| |
− | config OMAP_GPIO_SWITCH
| |
− | bool "GPIO switch support"
| |
− | default n
| |
− | help
| |
− | Say Y, if you want to have support for reporting of GPIO
| |
− | switches (e.g. cover switches) via sysfs. Your bootloader has
| |
− | to provide information about the switches to the kernel via the
| |
− | ATAG_BOARD mechanism if they're not defined by the board config.
| |
− | </pre>
| |
− | |-
| |
− | | 4-10
| |
− | | 4-32
| |
− | | Customized .config File Snippet
| |
− | | <pre>
| |
− | #
| |
− | # OMAP Feature Selections
| |
− | #
| |
− | # CONFIG_OMAP_DEBUG_POWERDOMAIN is not set
| |
− | # CONFIG_OMAP_DEBUG_CLOCKDOMAIN is not set
| |
− | # CONFIG_OMAP_SMARTREFLEX is not set
| |
− | CONFIG_OMAP_RESET_CLOCKS=y
| |
− | CONFIG_OMAP_BOOT_TAG=y
| |
− | CONFIG_OMAP_BOOT_REASON=y
| |
− | # CONFIG_OMAP_COMPONENT_VERSION is not set
| |
− | CONFIG_OMAP_GPIO_SWITCH=y
| |
− | CONFIG_OMAP_GPIO_SWITCH2=y
| |
− | # CONFIG_OMAP_MUX is not set
| |
− | CONFIG_OMAP_MCBSP=y
| |
− | </pre>
| |
− | |-
| |
− | | 4-11
| |
− | | 4-33
| |
− | | Makefile from .../arch/arm/plat-omap/ Kernel Subdirectory
| |
− | | <pre>
| |
− | #
| |
− | # Makefile for the linux kernel.
| |
− | #
| |
− | | |
− | # Common support
| |
− | obj-y := common.o sram.o clock.o devices.o dma.o mux.o gpio.o \
| |
− | usb.o fb.o vram.o vrfb.o io.o
| |
− | obj-m :=
| |
− | obj-n :=
| |
− | obj- :=
| |
− | | |
− | # OCPI interconnect support for 1710, 1610 and 5912
| |
− | obj-$(CONFIG_ARCH_OMAP16XX) += ocpi.o
| |
− | | |
− | obj-$(CONFIG_OMAP_MCBSP) += mcbsp.o
| |
− | obj-$(CONFIG_OMAP_IOMMU) += iommu.o iovmm.o
| |
− | | |
− | obj-$(CONFIG_CPU_FREQ) += cpu-omap.o
| |
− | obj-$(CONFIG_OMAP_DM_TIMER) += dmtimer.o
| |
− | obj-$(CONFIG_OMAP_BOOT_REASON) += bootreason.o
| |
− | obj-$(CONFIG_OMAP_COMPONENT_VERSION) += component-version.o
| |
− | obj-$(CONFIG_OMAP_GPIO_SWITCH) += gpio-switch.o
| |
− | obj-$(CONFIG_OMAP_DEBUG_DEVICES) += debug-devices.o
| |
− | obj-$(CONFIG_OMAP_DEBUG_LEDS) += debug-leds.o
| |
− | i2c-omap-$(CONFIG_I2C_OMAP) := i2c.o
| |
− | obj-y += $(i2c-omap-m) $(i2c-omap-y)
| |
− | | |
− | # OMAP mailbox framework
| |
− | obj-$(CONFIG_OMAP_MBOX_FWK) += mailbox.o
| |
− | </pre>
| |
− | |}
| |
− | | |
− | == Chapter 5 ==
| |
− | {|
| |
− | ! Number
| |
− | ! Page
| |
− | ! Caption
| |
− | ! Listing
| |
− | |-
| |
− | | 5-1
| |
− | | 5-2
| |
− | | Final Kernel Build Sequence: ARM/BeagleBoard
| |
− | | <pre>
| |
− | $ export OETREE="${HOME}/oe"
| |
− | $ PATH=${OETREE}/angstrom-dev/staging/i686-linux/usr/bin/:${PATH}
| |
− | $ PATH=${OETREE}/angstrom-dev/cross/armv7a/bin/:${PATH}
| |
− | $ make CROSS_COMPILE=arm-angstrom-linux-gnueabi- uImage
| |
− | ... < many build steps omitted for clarity >
| |
− | LD vmlinux
| |
− | SYSMAP System.map
| |
− | SYSMAP .tmp_System.map
| |
− | OBJCOPY arch/arm/boot/Image
| |
− | Kernel: arch/arm/boot/Image is ready
| |
− | GZIP arch/arm/boot/compressed/piggy.gz
| |
− | AS arch/arm/boot/compressed/piggy.o
| |
− | LD arch/arm/boot/compressed/vmlinux
| |
− | OBJCOPY arch/arm/boot/zImage
| |
− | Kernel: arch/arm/boot/zImage is ready
| |
− | UIMAGE arch/arm/boot/uImage
| |
− | Image Name: Linux-2.6.29-omap1
| |
− | Created: Tue Mar 9 12:58:27 2010
| |
− | Image Type: ARM Linux Kernel Image (uncompressed)
| |
− | Data Size: 2991236 Bytes = 2921.13 kB = 2.85 MB
| |
− | Load Address: 0x80008000
| |
− | Entry Point: 0x80008000
| |
− | Image arch/arm/boot/uImage is ready
| |
− | </pre>
| |
− | |-
| |
− | | 5-2
| |
− | | 5-5
| |
− | | Assembly File .../arch/arm/boot/compressed/piggy.S
| |
− | | <pre>
| |
− | .section .piggydata,#alloc
| |
− | .globl input_data
| |
− | input_data:
| |
− | .incbin "arch/arm/boot/compressed/piggy.gz"
| |
− | .globl input_data_end
| |
− | input_data_end:
| |
− | </pre>
| |
− | |-
| |
− | | 5-1
| |
− | | 5-2
| |
− | | Final Kernel Build Sequence: ARM/BeagleBoard
| |
− | | <pre>
| |
− | | |
− | </pre>
| |
− | |}
| |