diff options
| author | Nathan Rossi <nathan.rossi@xilinx.com> | 2013-06-26 15:52:27 +1000 |
|---|---|---|
| committer | Nathan Rossi <nathan.rossi@xilinx.com> | 2013-06-26 17:48:06 +1000 |
| commit | 2e81ce70fdaca875a665f12690155db35c5de887 (patch) | |
| tree | d360db63bd9d68ff2775e3141b5d4631736be957 | |
| parent | bd5773b10e482e551427b64fee902ca38846e5af (diff) | |
| download | meta-xilinx-2e81ce70fdaca875a665f12690155db35c5de887.tar.gz | |
Rearranged location of board configuration files
* Moved qemu* device tree and kernel config to conf/machine/boards/qemu/
* Moved common dtsi and kernel config to conf/machine/boards/common/
* Added 'MACHINE_DEVICETREE' and 'MACHINE_KCONFIG' variables for linux-xlnx
to allow machine configs to specify the exact device tree and config to
use when building the kernel.
Signed-off-by: Nathan Rossi <nathan.rossi@xilinx.com>
| -rw-r--r-- | conf/layer.conf | 2 | ||||
| -rw-r--r-- | conf/machine/boards/common/nortc.cfg | 78 | ||||
| -rw-r--r-- | conf/machine/boards/common/xilinx_zynq_defconfig_3.6.cfg (renamed from recipes-kernel/linux/linux-xlnx/xilinx_zynq_defconfig_3.6.cfg) | 0 | ||||
| -rw-r--r-- | conf/machine/boards/common/xilinx_zynq_defconfig_3.8.cfg (renamed from recipes-kernel/linux/linux-xlnx/xilinx_zynq_defconfig_3.8.cfg) | 0 | ||||
| -rw-r--r-- | conf/machine/boards/common/zynq-7-base.dtsi (renamed from recipes-kernel/linux/linux-xlnx/zynq-7-base.dtsi) | 0 | ||||
| -rw-r--r-- | conf/machine/boards/qemu/qemumicroblaze.cfg (renamed from recipes-kernel/linux/linux-xlnx/qemumicroblaze.cfg) | 0 | ||||
| -rw-r--r-- | conf/machine/boards/qemu/qemumicroblaze.dts (renamed from recipes-kernel/linux/linux-xlnx/qemumicroblaze.dts) | 0 | ||||
| -rw-r--r-- | conf/machine/boards/qemu/qemuzynq.cfg (renamed from recipes-kernel/linux/linux-xlnx/qemuzynq.cfg) | 0 | ||||
| -rw-r--r-- | conf/machine/boards/qemu/qemuzynq.dts (renamed from recipes-kernel/linux/linux-xlnx/qemuzynq.dts) | 0 | ||||
| -rw-r--r-- | conf/machine/qemumicroblaze.conf | 3 | ||||
| -rw-r--r-- | conf/machine/qemuzynq.conf | 3 | ||||
| -rw-r--r-- | recipes-kernel/linux/linux-xlnx.inc | 57 |
12 files changed, 124 insertions, 19 deletions
diff --git a/conf/layer.conf b/conf/layer.conf index 193230c0..ba976bad 100644 --- a/conf/layer.conf +++ b/conf/layer.conf | |||
| @@ -9,3 +9,5 @@ BBFILE_COLLECTIONS += "xilinx" | |||
| 9 | BBFILE_PATTERN_xilinx := "^${LAYERDIR}/" | 9 | BBFILE_PATTERN_xilinx := "^${LAYERDIR}/" |
| 10 | BBFILE_PRIORITY_xilinx = "8" | 10 | BBFILE_PRIORITY_xilinx = "8" |
| 11 | 11 | ||
| 12 | XILINX_LAYERDIR := "${LAYERDIR}" | ||
| 13 | XILINX_BOARDDIR := "${XILINX_LAYERDIR}/conf/machine/boards" | ||
diff --git a/conf/machine/boards/common/nortc.cfg b/conf/machine/boards/common/nortc.cfg new file mode 100644 index 00000000..b67c7a43 --- /dev/null +++ b/conf/machine/boards/common/nortc.cfg | |||
| @@ -0,0 +1,78 @@ | |||
| 1 | # Disable the RTC | ||
| 2 | |||
| 3 | # CONFIG_RTC_LIB is not set | ||
| 4 | # CONFIG_RTC_CLASS is not set | ||
| 5 | # CONFIG_RTC_HCTOSYS is not set | ||
| 6 | # CONFIG_RTC_HCTOSYS_DEVICE is not set | ||
| 7 | # CONFIG_RTC_DEBUG is not set | ||
| 8 | |||
| 9 | # | ||
| 10 | # RTC interfaces | ||
| 11 | # | ||
| 12 | # CONFIG_RTC_INTF_SYSFS is not set | ||
| 13 | # CONFIG_RTC_INTF_PROC is not set | ||
| 14 | # CONFIG_RTC_INTF_DEV is not set | ||
| 15 | # CONFIG_RTC_INTF_DEV_UIE_EMUL is not set | ||
| 16 | # CONFIG_RTC_DRV_TEST is not set | ||
| 17 | |||
| 18 | # | ||
| 19 | # I2C RTC drivers | ||
| 20 | # | ||
| 21 | # CONFIG_RTC_DRV_DS1307 is not set | ||
| 22 | # CONFIG_RTC_DRV_DS1374 is not set | ||
| 23 | # CONFIG_RTC_DRV_DS1672 is not set | ||
| 24 | # CONFIG_RTC_DRV_DS3232 is not set | ||
| 25 | # CONFIG_RTC_DRV_MAX6900 is not set | ||
| 26 | # CONFIG_RTC_DRV_RS5C372 is not set | ||
| 27 | # CONFIG_RTC_DRV_ISL1208 is not set | ||
| 28 | # CONFIG_RTC_DRV_ISL12022 is not set | ||
| 29 | # CONFIG_RTC_DRV_X1205 is not set | ||
| 30 | # CONFIG_RTC_DRV_PCF8523 is not set | ||
| 31 | # CONFIG_RTC_DRV_PCF8563 is not set | ||
| 32 | # CONFIG_RTC_DRV_PCF8583 is not set | ||
| 33 | # CONFIG_RTC_DRV_M41T80 is not set | ||
| 34 | # CONFIG_RTC_DRV_BQ32K is not set | ||
| 35 | # CONFIG_RTC_DRV_S35390A is not set | ||
| 36 | # CONFIG_RTC_DRV_FM3130 is not set | ||
| 37 | # CONFIG_RTC_DRV_RX8581 is not set | ||
| 38 | # CONFIG_RTC_DRV_RX8025 is not set | ||
| 39 | # CONFIG_RTC_DRV_EM3027 is not set | ||
| 40 | # CONFIG_RTC_DRV_RV3029C2 is not set | ||
| 41 | |||
| 42 | # | ||
| 43 | # SPI RTC drivers | ||
| 44 | # | ||
| 45 | # CONFIG_RTC_DRV_M41T93 is not set | ||
| 46 | # CONFIG_RTC_DRV_M41T94 is not set | ||
| 47 | # CONFIG_RTC_DRV_DS1305 is not set | ||
| 48 | # CONFIG_RTC_DRV_DS1390 is not set | ||
| 49 | # CONFIG_RTC_DRV_MAX6902 is not set | ||
| 50 | # CONFIG_RTC_DRV_R9701 is not set | ||
| 51 | # CONFIG_RTC_DRV_RS5C348 is not set | ||
| 52 | # CONFIG_RTC_DRV_DS3234 is not set | ||
| 53 | # CONFIG_RTC_DRV_PCF2123 is not set | ||
| 54 | |||
| 55 | # | ||
| 56 | # Platform RTC drivers | ||
| 57 | # | ||
| 58 | # CONFIG_RTC_DRV_CMOS is not set | ||
| 59 | # CONFIG_RTC_DRV_DS1286 is not set | ||
| 60 | # CONFIG_RTC_DRV_DS1511 is not set | ||
| 61 | # CONFIG_RTC_DRV_DS1553 is not set | ||
| 62 | # CONFIG_RTC_DRV_DS1742 is not set | ||
| 63 | # CONFIG_RTC_DRV_STK17TA8 is not set | ||
| 64 | # CONFIG_RTC_DRV_M48T86 is not set | ||
| 65 | # CONFIG_RTC_DRV_M48T35 is not set | ||
| 66 | # CONFIG_RTC_DRV_M48T59 is not set | ||
| 67 | # CONFIG_RTC_DRV_MSM6242 is not set | ||
| 68 | # CONFIG_RTC_DRV_BQ4802 is not set | ||
| 69 | # CONFIG_RTC_DRV_RP5C01 is not set | ||
| 70 | # CONFIG_RTC_DRV_V3020 is not set | ||
| 71 | # CONFIG_RTC_DRV_DS2404 is not set | ||
| 72 | |||
| 73 | # | ||
| 74 | # on-CPU RTC drivers | ||
| 75 | # | ||
| 76 | # CONFIG_RTC_DRV_PL030 is not set | ||
| 77 | # CONFIG_RTC_DRV_PL031 is not set | ||
| 78 | # CONFIG_RTC_DRV_SNVS is not set | ||
diff --git a/recipes-kernel/linux/linux-xlnx/xilinx_zynq_defconfig_3.6.cfg b/conf/machine/boards/common/xilinx_zynq_defconfig_3.6.cfg index 9c11cdb1..9c11cdb1 100644 --- a/recipes-kernel/linux/linux-xlnx/xilinx_zynq_defconfig_3.6.cfg +++ b/conf/machine/boards/common/xilinx_zynq_defconfig_3.6.cfg | |||
diff --git a/recipes-kernel/linux/linux-xlnx/xilinx_zynq_defconfig_3.8.cfg b/conf/machine/boards/common/xilinx_zynq_defconfig_3.8.cfg index 997532dc..997532dc 100644 --- a/recipes-kernel/linux/linux-xlnx/xilinx_zynq_defconfig_3.8.cfg +++ b/conf/machine/boards/common/xilinx_zynq_defconfig_3.8.cfg | |||
diff --git a/recipes-kernel/linux/linux-xlnx/zynq-7-base.dtsi b/conf/machine/boards/common/zynq-7-base.dtsi index 7cac4da7..7cac4da7 100644 --- a/recipes-kernel/linux/linux-xlnx/zynq-7-base.dtsi +++ b/conf/machine/boards/common/zynq-7-base.dtsi | |||
diff --git a/recipes-kernel/linux/linux-xlnx/qemumicroblaze.cfg b/conf/machine/boards/qemu/qemumicroblaze.cfg index e70c4a73..e70c4a73 100644 --- a/recipes-kernel/linux/linux-xlnx/qemumicroblaze.cfg +++ b/conf/machine/boards/qemu/qemumicroblaze.cfg | |||
diff --git a/recipes-kernel/linux/linux-xlnx/qemumicroblaze.dts b/conf/machine/boards/qemu/qemumicroblaze.dts index 4a6e5a6c..4a6e5a6c 100644 --- a/recipes-kernel/linux/linux-xlnx/qemumicroblaze.dts +++ b/conf/machine/boards/qemu/qemumicroblaze.dts | |||
diff --git a/recipes-kernel/linux/linux-xlnx/qemuzynq.cfg b/conf/machine/boards/qemu/qemuzynq.cfg index 1eadc199..1eadc199 100644 --- a/recipes-kernel/linux/linux-xlnx/qemuzynq.cfg +++ b/conf/machine/boards/qemu/qemuzynq.cfg | |||
diff --git a/recipes-kernel/linux/linux-xlnx/qemuzynq.dts b/conf/machine/boards/qemu/qemuzynq.dts index b66bcf81..b66bcf81 100644 --- a/recipes-kernel/linux/linux-xlnx/qemuzynq.dts +++ b/conf/machine/boards/qemu/qemuzynq.dts | |||
diff --git a/conf/machine/qemumicroblaze.conf b/conf/machine/qemumicroblaze.conf index e84dd9ae..1b3a55a0 100644 --- a/conf/machine/qemumicroblaze.conf +++ b/conf/machine/qemumicroblaze.conf | |||
| @@ -8,3 +8,6 @@ require conf/machine/include/tune-microblaze.inc | |||
| 8 | TUNE_FEATURES_tune-microblaze += "v8.30 little-endian barrel-shift pattern-compare divide-hard multiply-high fpu-hard" | 8 | TUNE_FEATURES_tune-microblaze += "v8.30 little-endian barrel-shift pattern-compare divide-hard multiply-high fpu-hard" |
| 9 | 9 | ||
| 10 | SERIAL_CONSOLE = "115200 ttyS0" | 10 | SERIAL_CONSOLE = "115200 ttyS0" |
| 11 | |||
| 12 | MACHINE_DEVICETREE := "${XILINX_BOARDDIR}/qemu/qemumicroblaze.dts" | ||
| 13 | MACHINE_KCONFIG := "${XILINX_BOARDDIR}/qemu/qemumicroblaze.cfg" | ||
diff --git a/conf/machine/qemuzynq.conf b/conf/machine/qemuzynq.conf index dce1527d..56936a67 100644 --- a/conf/machine/qemuzynq.conf +++ b/conf/machine/qemuzynq.conf | |||
| @@ -7,3 +7,6 @@ MACHINE_FEATURES := "" | |||
| 7 | require conf/machine/include/tune-zynq.inc | 7 | require conf/machine/include/tune-zynq.inc |
| 8 | 8 | ||
| 9 | SERIAL_CONSOLE = "115200 ttyPS0" | 9 | SERIAL_CONSOLE = "115200 ttyPS0" |
| 10 | |||
| 11 | MACHINE_DEVICETREE := "${XILINX_BOARDDIR}/qemu/qemuzynq.dts" | ||
| 12 | MACHINE_KCONFIG := "${XILINX_BOARDDIR}/qemu/qemuzynq.cfg" | ||
diff --git a/recipes-kernel/linux/linux-xlnx.inc b/recipes-kernel/linux/linux-xlnx.inc index 12ca7cde..0b834b63 100644 --- a/recipes-kernel/linux/linux-xlnx.inc +++ b/recipes-kernel/linux/linux-xlnx.inc | |||
| @@ -8,28 +8,47 @@ require recipes-kernel/linux/linux-yocto.inc | |||
| 8 | # MicroBlaze is a uImage target, but its not called 'uImage' | 8 | # MicroBlaze is a uImage target, but its not called 'uImage' |
| 9 | DEPENDS_append_microblaze += "u-boot-mkimage-native" | 9 | DEPENDS_append_microblaze += "u-boot-mkimage-native" |
| 10 | 10 | ||
| 11 | FILESEXTRAPATHS_prepend := "${THISDIR}/linux-xlnx:${THISDIR}/files:" | 11 | FILESEXTRAPATHS_prepend := "${THISDIR}/files:" |
| 12 | FILESEXTRAPATHS_prepend := "${THISDIR}/linux-xlnx:" | ||
| 12 | SRC_URI = "git://github.com/Xilinx/linux-xlnx;protocol=git;nocheckout=1" | 13 | SRC_URI = "git://github.com/Xilinx/linux-xlnx;protocol=git;nocheckout=1" |
| 13 | 14 | ||
| 14 | PR = "r1" | 15 | PR = "r1" |
| 15 | PV = "${LINUX_VERSION}${LINUX_VERSION_EXTENSION}+git${SRCPV}" | 16 | PV = "${LINUX_VERSION}${LINUX_VERSION_EXTENSION}+git${SRCREV}" |
| 16 | 17 | ||
| 17 | # Device Tree Sources | 18 | # Device Tree and Kernel Configuration |
| 18 | SRC_URI_append_zynq += " \ | 19 | |
| 19 | file://zynq-7-base.dtsi \ | 20 | # Common Device Tree Includes |
| 20 | " | 21 | # (put them in ${WORKDIR} to avoid using dtc with include paths) |
| 21 | 22 | FILESEXTRAPATHS_append := "${XILINX_LAYERDIR}/conf/machine/boards/common:" | |
| 22 | # QEMU MicroBlaze Machine Configurations | 23 | SRC_URI_append += "file://zynq-7-base.dtsi" |
| 23 | SRC_URI_append_qemumicroblaze += " \ | ||
| 24 | file://qemumicroblaze.cfg \ | ||
| 25 | file://qemumicroblaze.dts \ | ||
| 26 | " | ||
| 27 | KERNEL_DEVICETREE_qemumicroblaze = "${WORKDIR}/qemumicroblaze.dts" | ||
| 28 | SRC_URI_append_qemuzynq += " \ | ||
| 29 | file://qemuzynq.cfg \ | ||
| 30 | file://qemuzynq.dts \ | ||
| 31 | " | ||
| 32 | KERNEL_DEVICETREE_qemuzynq = "${WORKDIR}/qemuzynq.dts" | ||
| 33 | 24 | ||
| 34 | # Override COMPATIBLE_MACHINE to include your machine in a bbappend file. | 25 | # Override COMPATIBLE_MACHINE to include your machine in a bbappend file. |
| 35 | COMPATIBLE_MACHINE = "qemumicroblaze|qemuzynq" | 26 | COMPATIBLE_MACHINE = "qemumicroblaze|qemuzynq" |
| 27 | |||
| 28 | # Scan all files in MACHINE_DEVICETREE and MACHINE_KCONFIG and populate SRC_URI, | ||
| 29 | # FILESEXTRAPATHS and KERNEL_DEVICETREE. | ||
| 30 | python __anonymous () { | ||
| 31 | workdir = d.getVar("WORKDIR", True) | ||
| 32 | machine_devicetree = d.getVar("MACHINE_DEVICETREE", True) or '' | ||
| 33 | machine_kconfigs = d.getVar("MACHINE_KCONFIG", True) or '' | ||
| 34 | extrapaths = set() | ||
| 35 | sources = set() | ||
| 36 | if machine_devicetree: | ||
| 37 | files=set() | ||
| 38 | for path in machine_devicetree.split(): | ||
| 39 | sources.add("file://" + os.path.basename(path)) | ||
| 40 | extrapaths.add(os.path.dirname(path)) | ||
| 41 | if os.path.splitext(os.path.basename(path))[1] == '.dts': | ||
| 42 | files.add(os.path.join(workdir, os.path.basename(path))) | ||
| 43 | d.setVar("KERNEL_DEVICETREE", ' '.join(files)) | ||
| 44 | if machine_kconfigs: | ||
| 45 | for path in machine_kconfigs.split(): | ||
| 46 | files.add(os.path.join(workdir, os.path.basename(path))) | ||
| 47 | sources.add("file://" + os.path.basename(path)) | ||
| 48 | extrapaths.add(os.path.dirname(path)) | ||
| 49 | |||
| 50 | if len(extrapaths) != 0: | ||
| 51 | d.setVar("FILESEXTRAPATHS_append", ":".join(extrapaths) + ":") | ||
| 52 | if len(sources) != 0: | ||
| 53 | d.setVar("SRC_URI_append", " %s " % " ".join(sources)) | ||
| 54 | } | ||
