Download zip Select Archive Format
Name Last Update history
File empty ..
File txt README Loading commit data...
File txt am33xx_only.cfg Loading commit data...
File txt am43xx_only.cfg Loading commit data...
File txt audio_display.cfg Loading commit data...
File txt baseport.cfg Loading commit data...
File txt connectivity.cfg Loading commit data...
File txt debug_options.cfg Loading commit data...
File txt defconfig_builder.sh Loading commit data...
File txt defconfig_fragment Loading commit data...
File txt defconfig_map.txt Loading commit data...
File txt dra7_only.cfg Loading commit data...
File txt ipc.cfg Loading commit data...
File txt k2g_only.cfg Loading commit data...
File txt keystone.cfg Loading commit data...
File txt lpae.cfg Loading commit data...
File txt multi_core_defconfig_fragment Loading commit data...
File txt multi_core_system_test_defconfig_fragment Loading commit data...
File txt multi_v7_prune.cfg Loading commit data...
File txt omap5_soc.cfg Loading commit data...
File txt omap_soc.cfg Loading commit data...
File txt system_test.cfg Loading commit data...
File txt system_test_defconfig_fragment Loading commit data...

README

##################################
THIS SCRIPT IS EXPERIMENTAL AND MAY NOT PRODUCE A BOOTABLE KERNEL IMAGE
##################################

##################################
# Introduction
##################################

Using config fragments in the Linux kernel is a supported model in the
Linux kernel main line.  TI has taken advantage of this model to be able
to take a base defconfig and add or remove configuration flags based contained
within a config fragment.  This allows the base defconfig to be left in tact
and helps facilitate and understanding of what config flags can be enabled
or disabled.  The config fragments drastically reduces the number of merge
conflicts when the Linux stable dot release (LTS) is merged back to the
integration point as well as merges for TI domain trees.

But alas this creates another issue as with the config fragments there is no
direct defconfig for customers to build just many, many, many options.

Therefore the defconfig_builder script was derived to take a defconfig map file
and present a command line interface to the customer to to create a standard
defconfig based off the TI integration branches.  The customer is walked through
steps and if successful a defconfig will be created in the arch/arm/configs directory
that can be built.

##################################
# Usage
##################################

There is only one option for this script.  This option defines the working
path to where the Linux kernel resides.

	-w - Location of the TI Linux kernel

Command line Example if building from the working Linux kernel
top level directory:
	ti_config_fragments/defconfig_builder.sh -w .

Command line Example if building from the ti_config_fragments directory:
	defconfig_builder.sh -w ../.

##################################
# Defconfig Map File
##################################

The defconfig map file contains the mapping of the defconfig options and the
assembly instructions for the defconfig to be created.

The file contains keywords and all are *required* to be filled out.

processor: - Defines the processor type if the defconfig is to be processor specific
type: - Defines the type of build.  Like debug build, LSK build or RT build
defconfig: - Defines the base defconfig config to append the config fragments to
config_file: - Defines a file that contains a list of config fragments.  If there is not a list then declare "None" for this field.
extra_configs: - These are individual config fragments that can be appended to the defconfig by themselves or in addition to
        the config_file.

Example:

This is an example of an AM335x entry that will create a defconfig only for AM335x
processors, based on the omap2plus_defconfig.  The defconfig_fragment file adds features 
that have been enabled in the TI integrated kernel.  The extra_configs will add in the
debug options as well as undefine all processors that are not AM335x.

processor: AM33xx type: am335x_debug_only defconfig: omap2plus_defconfig config_file: defconfig_fragment extra_configs: ti_config_fragments/debug_options.cfg ti_config_fragments/am33xx_only.cfg 

##################################
# Defconfig Mapping
##################################

#Processor Specific Defconfig options

These defconfig options enable the Linux kernel for the targer processor only.  Other processor platforms
are disabled.  The base for each of these defconfigs is the omap2plus_defconfig contained
in the arch/arm/configs directory of the kernel.

	TI Base Integrated Kernel:
		am335x_only - Adds the configs from the files contained in the defconfig_fragment file.
		am335x_debug_only - Adds the configs from the files contained in the defconfig_fragment file and adds in the debug options from the debug_options.cfg
		am43x_only - Adds the configs from the files contained in the defconfig_fragment file.
		am43x_debug_only - Adds the configs from the files contained in the defconfig_fragment file and adds in the debug options from the debug_options.cfg
		dra7xx_only - Adds the configs from the files contained in the defconfig_fragment file.
		dra7xx_debug_only - Adds the configs from the files contained in the defconfig_fragment file and adds in the debug options from the debug_options.cfg

	Linaro Stable Kernel builds: (These configurations are only available on the TI LSK branch.)
		am335x_lsk_only - Adds the configs from the files contained in the defconfig_fragment file and adds in the linaro options from the linaro/configs directory
		am335x_lsk_debug_only - Adds the configs from the files contained in the defconfig_fragment file and adds in the debug options from the debug_options.cfg as
		       well as the linaro options from the linaro/configs directory
		am43x_lsk_only - Adds the configs from the files contained in the defconfig_fragment file and adds in the linaro options from the linaro/configs directory
		am43x_lsk_debug_only - Adds the configs from the files contained in the defconfig_fragment file and adds in the debug options from the debug_options.cfg as
		       well as the linaro options from the linaro/configs directory
		dra7xx_lsk_only - Adds the configs from the files contained in the defconfig_fragment file and adds in the linaro options from the linaro/configs directory
		dra7xx_lsk_debug_only - Adds the configs from the files contained in the defconfig_fragment file and adds in the debug options from the debug_options.cfg as
		       well as the linaro options from the linaro/configs directory

	TI Based Real Time Kernel: (These configurations are only available on the TI RT branch.)
		am335x_rt_only - Adds the configs from the files contained in the rt_defconfig_fragment file.
		am335x_rt_debug_only - Adds the configs from the files contained in the rt_defconfig_fragment file and adds in the debug options from the debug_options.cfg.
		am43x_rt_only - Adds the configs from the files contained in the rt_defconfig_fragment file.
		am43x_rt_debug_only - Adds the configs from the files contained in the rt_defconfig_fragment file and adds in the debug options from the debug_options.cfg.
		dra7xx_rt_only - Adds the configs from the files contained in the rt_defconfig_fragment file.
		dra7xx_rt_debug_only - Adds the configs from the files contained in the rt_defconfig_fragment file and adds in the debug options from the debug_options.cfg.

#OMAP2+ Defconfig Options

These defconfig options use the omap2plus_defconfig in the arch/arm/configs directory as the base defconfig.
These options do not disable any processor's or platforms but add additional features that

	TI Base Integrated Kernel:
		omap2plus_debug - Takes the omap2plus_defconfig and only adds the debug options from the debug_options.cfg.
		ti_omap2plus - Adds the configs from the files contained in the defconfig_fragment file.
		ti_omap2plus_debug - Adds the configs from the files contained in the defconfig_fragment file and adds in the debug options from the debug_options.cfg

	Linaro Stable Kernel builds: (These configurations are only available on the TI LSK branch.)
		ti_lsk_omap2plus - Adds the configs from the files contained in the defconfig_fragment file and adds in the linaro options from the linaro/configs directory.
		ti_lsk_omap2plus_debug - Adds the configs from the files contained in the defconfig_fragment file and adds in the debug options from the debug_options.cfg as
		       well as the linaro options from the linaro/configs directory

	TI Based Real Time Kernel: (These configurations are only available on the TI RT branch.)
		ti_rt_omap2plus - Adds the configs from the files contained in the rt_defconfig_fragment file.
		ti_rt_omap2plus_debug - Adds the configs from the files contained in the rt_defconfig_fragment file and adds in the debug options from the debug_options.cfg.

#Keystone Defconfig Options

These defconfig options use the keystone_defconfig in the arch/arm/configs directory as the base defconfig.
These options do not disable any processor's or platforms but add additional features that

	TI Base Integrated Kernel:
		base_keystone_debug - Takes the keystone_defconfig and only adds the debug options from the debug_options.cfg.
		ti_keystone defconfig - Adds the configs from the files contained in the multi_core_defconfig_fragment file.
		ti_keystone_debug - Adds the configs from the files contained in the multi_core_defconfig_fragment file and
                       adds in the debug options from the debug_options.cfg.

	Linaro Stable Kernel builds: (These configurations are only available on the TI LSK branch.)
		ti_lsk_keystone  - Adds the configs from the files contained in the multi_core_defconfig_fragment file and adds in the
                       linaro options from the linaro/configs directory
		ti_lsk_keystone_debug_only - Adds the configs from the files contained in the multi_core_defconfig_fragment file and adds in the
                       debug options from the debug_options.cfg as well as the linaro options from the linaro/configs directory

	TI Based Real Time Kernel: (These configurations are only available on the TI RT branch.)
		ti_rt_keystone - Adds the configs from the files contained in the rt_defconfig_fragment file.
		ti_rt_keystone_debug  - Adds the configs from the files contained in the rt_defconfig_fragment file and adds in the debug options from the debug_options.cfg.