Go to file
California Sullivan 1d36b0c379 linux-yocto/4.8: Update from v4.8.12 to v4.8.17
Also has cache changes aimed towards -tiny improvements.

From linux-yocto-4.8:

9bcb4ea Merge tag 'v4.8.17' into standard/base
bfe90e3 Merge tag 'v4.8.16' into standard/base
a2890822e Merge tag 'v4.8.15' into standard/base
6dcb022 Merge tag 'v4.8.14' into standard/base
b6b578e Merge tag 'v4.8.13' into standard/base
3d8f8d0 Linux 4.8.17
adf363f drm/i915: skip the first 4k of stolen memory on everything >= gen8
000e612 drm/i915: Initialize dev_priv->atomic_cdclk_freq at init time
22aba47 drm/i915: Fix cdclk vs. dev_cdclk mess when not recomputing things
294bb34 drm/i915/dsi: Do not clear DPOUNIT_CLOCK_GATE_DISABLE from vlv_init_display_clock_gating
6a412ff drm/i915/dsi: Fix chv_exec_gpio disabling the GPIOs it is setting
4803ec2 net: mvpp2: fix dma unmapping of TX buffers for fragments
48f26ed sg_write()/bsg_write() is not fit to be called under KERNEL_DS
d787c6b kconfig/nconf: Fix hang when editing symbol with a long prompt
e141d1a target/user: Fix use-after-free of tcmu_cmds if they are expired
29f3d11 libnvdimm, pfn: fix align attribute
3a4e428 powerpc/ps3: Fix system hang with GCC 5 builds
e451d67 powerpc/64e: Convert cmpi to cmpwi in head_64.S
0349fbe SUNRPC: fix refcounting problems with auth_gss messages.
c513ade pNFS: Fix a deadlock between read resends and layoutreturn
abb2903 pNFS: Clear NFS_LAYOUT_RETURN_REQUESTED when invalidating the layout stateid
f061c76 pNFS: Don't clear the layout stateid if a layout return is outstanding
7de1b81 pNFS: On error, do not send LAYOUTGET until the LAYOUTRETURN has completed
8f5ff87 nfs_write_end(): fix handling of short copies
1678ada libceph: verify authorize reply on connect
1f93d1a PCI: Check for PME in targeted sleep state
c75bc2b i40iw: Use correct src address in memcpy to rdma stats counters
7d0a6cf Input: drv260x - fix input device's parent assignment
b784371 v4l: tvp5150: Add missing break in set control handler
4963b19 media: solo6x10: fix lockup by avoiding delayed register write
88bfde2 s5p-mfc: fix failure path of s5p_mfc_alloc_memdev()
c3fe33d mn88473: fix chip id check on probe
84b2f66 mn88472: fix chip id check on probe
15d1d22 IB/cma: Fix a race condition in iboe_addr_get_sgid()
7b3721a IB/rxe: Fix a memory leak in rxe_qp_cleanup()
2a0aa77 IB/multicast: Check ib_find_pkey() return value
37d4adb IPoIB: Avoid reading an uninitialized member variable
f079fc1 IB/mad: Fix an array index check
e661b5d fgraph: Handle a case where a tracer ignores set_graph_notrace
b2758da platform/x86: asus-nb-wmi.c: Add X45U quirk
f61152e ftrace/x86_32: Set ftrace_stub to weak to prevent gcc from using short jumps to it
8569aad vsock/virtio: fix src/dst cid format
576ea9e fsnotify: Fix possible use-after-free in inode iteration on umount
43983ce kvm: nVMX: Allow L1 to intercept software exceptions (#BP and #OF)
9a5cf8c KVM: PPC: Book3S HV: Don't lose hardware R/C bit updates in H_PROTECT
b751eb6 KVM: PPC: Book3S HV: Save/restore XER in checkpointed register state
0773e92 scsi: aacraid: remove wildcard for series 9 controllers
b202064 md/raid5: limit request size according to implementation limits
4709034 sc16is7xx: Drop bogus use of IRQF_ONESHOT
c33e1ab arm64: KVM: pmu: Reset PMSELR_EL0.SEL to a sane value before entering the guest
d3d61bb s390/kexec: use node 0 when re-adding crash kernel memory
9652b62 s390/vmlogrdr: fix IUCV buffer allocation
f356ab0 firmware: fix usermode helper fallback loading
5c98bf8 ARC: mm: arc700: Don't assume 2 colours for aliasing VIPT dcache
cc328ce scsi: avoid a permanent stop of the scsi device's request queue
6d675df scsi: zfcp: fix rport unblock race with LUN recovery
057fe03 scsi: zfcp: do not trace pure benign residual HBA responses at default level
5cebfea scsi: zfcp: fix use-after-"free" in FC ingress path after TMF
de8a06c iscsi-target: Return error if unable to add network portal
9c3928b scsi: megaraid_sas: Do not set MPI2_TYPE_CUDA for JBOD FP path for FW which does not support JBOD sequence map
dbd4e6c scsi: megaraid_sas: For SRIOV enabled firmware, ensure VF driver waits for 30secs before reset
3863ab6 stm class: Fix device leak in open error path
698ac69 vt: fix Scroll Lock LED trigger name
6d8bb56 block: protect iterate_bdevs() against concurrent close
2695afd mei: me: add lewisburg device ids
7be0a5f mei: request async autosuspend at the end of enumeration
dfc3c8a drivers/gpu/drm/ast: Fix infinite loop if read fails
0f95e4a drm/amdgpu: fix init save/restore list in gfx_v8.0
8bfa4f5 drm/gma500: Add compat ioctl
10b598d drm/radeon/si: load the proper firmware on 0x87 oland boards
cdb7aaa drm/radeon: add additional pci revision to dpm workaround
1f884ec drm/radeon: Hide the HW cursor while it's out of bounds
6fb9422 drm/radeon: Also call cursor_move_locked when the cursor size changes
9c6fb7b drm/nouveau/fifo/gf100-: protect channel preempt with subdev mutex
2a7a437 drm/nouveau/i2c/gk110b,gm10x: use the correct implementation
28d1864 drm/nouveau/ttm: wait for bo fence to signal before unmapping vmas
82d9824 drm/nouveau/ltc: protect clearing of comptags with mutex
ce71868 drm/nouveau/bios: require checksum to match for fast acpi shadow method
764e8e8 drm/nouveau/kms: lvds panel strap moved again on maxwell
00e1fb1 drm/nouveau/gr: fallback to legacy paths during firmware lookup
fef5427 drm/amd/amdgpu: enable GUI idle INT after enabling CGCG
bab5208 ACPI / video: Add force_native quirk for HP Pavilion dv6
b7eea51 ACPI / video: Add force_native quirk for Dell XPS 17 L702X
ce81006 staging: comedi: ni_mio_common: fix E series ni_ai_insn_read() data
689d592 staging: comedi: ni_mio_common: fix M Series ni_ai_insn_read() data mask
823c5c9 hv: acquire vmbus_connection.channel_mutex in vmbus_free_channels()
235394e docs: sphinx-extensions: make rstFlatTable work with docutils 0.13
a26a016 thermal: hwmon: Properly report critical temperature in sysfs
def2c87 clk: bcm2835: Avoid overwriting the div info when disabling a pll_div clk
2f885da arm64: tegra: Add VDD_GPU regulator to Jetson TX1
bd12562 gpio: chardev: Return error for seek operations
61d0b71 timekeeping_Force_unsigned_clocksource_to_nanoseconds_conversion
95d2a43 regulator: stw481x-vmmc: fix ages old enable error
52980ce mmc: sdhci: Fix recovery from tuning timeout
0ed0b25 ath9k: Really fix LED polarity for some Mini PCI AR9220 MB92 cards.
d80ff7c ath9k: fix ath9k_hw_gpio_get() to return 0 or 1 on success
42e76c5 cfg80211/mac80211: fix BSS leaks when abandoning assoc attempts
d2546f6 rtl8xxxu: Work around issue with 8192eu and 8723bu devices not reconnecting
2abcc02 perf/x86/intel/cstate: Prevent hotplug callback leak
7b9e1a1 perf/x86: Fix exclusion of BTS and LBR for Goldmont
e24523a rtlwifi: Fix enter/exit power_save
c9fce6b ssb: Fix error routine when fallback SPROM fails
c65ed08 Linux 4.8.16
6458972 driver core: fix race between creating/querying glue dir and its cleanup
f199bdb Revert "netfilter: move nat hlist_head to nf_conn"
99d6d4e Revert "netfilter: nat: convert nat bysrc hash to rhashtable"
7742256 arm64: mark reserved memblock regions explicitly in iomem
587e89b xfs: set AGI buffer type in xlog_recover_clear_agi_bucket
959e363 arm/xen: Use alloc_percpu rather than __alloc_percpu
6fbd3fb xen/gntdev: Use VM_MIXEDMAP instead of VM_IO to avoid NUMA balancing
883f12a tpm xen: Remove bogus tpm_chip_unregister
8419f52 kernel/debug/debug_core.c: more properly delay for secondary CPUs
63b33e0 watchdog: qcom: fix kernel panic due to external abort on non-linefetch
bf902ea watchdog: mei_wdt: request stop on reboot to prevent false positive event
2f826a7 kernel/watchdog: use nmi registers snapshot in hardlockup handler
bbf23f0 CIFS: Fix a possible memory corruption in push locks
9f1f507 CIFS: Fix missing nls unload in smb2_reconnect()
ff04da3 CIFS: Fix a possible memory corruption during reconnect
6cb589c ASoC: intel: Fix crash at suspend/resume without card registration
769c092 dm space map metadata: fix 'struct sm_metadata' leak on failed create
ab10ab0 dm raid: fix discard support regression
454b98d dm rq: fix a race condition in rq_completed()
26011e6 dm crypt: mark key as invalid until properly loaded
bd5fcd1 dm flakey: return -EINVAL on interval bounds error in flakey_ctr()
1ca66d6 dm table: an 'all_blk_mq' table must be loaded for a blk-mq DM device
d948d3b dm table: fix 'all_blk_mq' inconsistency when an empty table is loaded
45f6311 blk-mq: Do not invoke .queue_rq() for a stopped queue
e3742a1 PM / OPP: Pass opp_table to dev_pm_opp_put_regulator()
8b63a92 usb: gadget: composite: always set ep->mult to a sensible value
d4f4b2e mm, page_alloc: keep pcp count and list contents in sync if struct page is corrupted
0927d28 mm/vmscan.c: set correct defer count for shrinker
3e0ef1b nvmet: Fix possible infinite loop triggered on hot namespace removal
6290a3b loop: return proper error from loop_queue_rq()
bf0f020 f2fs: fix overflow due to condition check order
154d83a f2fs: set ->owner for debugfs status file's file_operations
67e5239 Revert "f2fs: use percpu_counter for # of dirty pages in inode"
d06eaf2 ext4: do not perform data journaling when data is encrypted
e33673b ext4: return -ENOMEM instead of success
3664877 ext4: reject inodes with negative size
1bfcffb ext4: add sanity checking to count_overhead()
9689eb9 ext4: fix in-superblock mount options processing
52a9daa ext4: use more strict checks for inodes_per_block on mount
7505584 ext4: fix stack memory corruption with 64k block size
86efd99 ext4: fix mballoc breakage with 64k block size
8022387 crypto: caam - fix AEAD givenc descriptors
ade692b ptrace: Capture the ptracer's creds not PT_PTRACE_CAP
23d179a vfs,mm: fix return value of read() at s_maxbytes
e45692f mm: Add a user_ns owner to mm_struct and fix ptrace permission checks
04804d8 block_dev: don't test bdev->bd_contains when it is not stable
52d6972 fs: exec: apply CLOEXEC before changing dumpable task flags
781e976 exec: Ensure mm->user_ns contains the execed files
fc1d3e5 btrfs: make file clone aware of fatal signals
8c59356 Btrfs: fix incremental send failure caused by balance
02fffa1 Btrfs: don't BUG() during drop snapshot
0f2e022 btrfs: fix a possible umount deadlock
65563ab Btrfs: fix memory leak in do_walk_down
364b85c btrfs: clean the old superblocks before freeing the device
6a6e927 Btrfs: don't leak reloc root nodes on error
4d3d9b5 Btrfs: return gracefully from balance if fs tree is corrupted
a6522e4 Btrfs: bail out if block group has different mixed flag
d7839ad Btrfs: fix memory leak in reading btree blocks
1a087cd clk: ti: omap36xx: Work around sprz319 advisory 2.1
2b96c4b ALSA: hda: when comparing pin configurations, ignore assoc in addition to seq
dc8144f ALSA: hda - Gate the mic jack on HP Z1 Gen3 AiO
685c4db ALSA: hda - fix headset-mic problem on a Dell laptop
b757fc0 ALSA: hda - ignore the assoc and seq when comparing pin configurations
38c6095 ALSA: hda/ca0132 - Add quirk for Alienware 15 R2 2016
5496ec4 ALSA: hiface: Fix M2Tech hiFace driver sampling rate change
abf549a8 ALSA: usb-audio: Add QuickCam Communicate Deluxe/S7500 to volume_control_quirks
6b0a56e usbip: vudc: fix: Clear already_seen flag also for ep0
a9143e5 USB: UHCI: report non-PME wakeup signalling for Intel hardware
4422a269 usb: gadget: composite: correctly initialize ep->maxpacket
be8f1c4 usb: gadget: f_uac2: fix error handling at afunc_bind
79d5a30 usb: hub: Fix auto-remount of safely removed or ejected USB-3 devices
e3dfbc8 usb: dwc3: gadget: set PCM1 field of isochronous-first TRBs
269edae USB: cdc-acm: add device id for GW Instek AFG-125
741523f USB: serial: kl5kusb105: fix open error path
f34b7e0 USB: serial: option: add dlink dwm-158
e47e81c USB: serial: option: add support for Telit LE922A PIDs 0x1040, 0x1041
3aa3cb94 Btrfs: fix qgroup rescan worker initialization
691ea6c Btrfs: fix emptiness check for dirtied extent buffers at check_leaf()
0695d8b btrfs: store and load values of stripes_min/stripes_max in balance status item
80f7d28 Btrfs: fix relocation incorrectly dropping data references
f1b268d Btrfs: fix tree search logic when replaying directory entry deletes
65553a0 Btrfs: fix deadlock caused by fsync when logging directory entries
361e821 Btrfs: fix BUG_ON in btrfs_mark_buffer_dirty
562de9c btrfs: limit async_work allocation and worker func duration
f080d70 aoe: fix crash in page count manipulation
8bba2e2 Linux 4.8.15
762c9bb crypto: rsa - Add Makefile dependencies to fix parallel builds
014e5a7 hotplug: Make register and unregister notifier API symmetric
3527ad0 batman-adv: Check for alloc errors when preparing TT local data
32ccd76 m68k: Fix ndelay() macro
9fc7a475 ceph: don't set req->r_locked_dir in ceph_d_revalidate
a05f493 ARM: dts: imx7d: fix LCDIF clock assignment
798c825 ARM: dts: orion5x: fix number of sata port for linkstation ls-gl
d271b9b Revert "ACPI: Execute _PTS before system reboot"
3ee9f16 can: peak: fix bad memory access and free sequence
212e0ff can: raw: raw_setsockopt: limit number of can_filter that can be set
bdb5ed2 crypto: marvell - Don't corrupt state of an STD req for re-stepped ahash
bfef274 crypto: mcryptd - Check mcryptd algorithm compatibility
86bea59 crypto: caam - fix pointer size for AArch64 boot loader, AArch32 kernel
666531ca crypto: marvell - Don't copy hash operation twice into the SRAM
04925ba acpi, nfit: fix bus vs dimm confusion in xlat_status
53ed7c2 acpi, nfit: validate ars_status output buffer size
e04e2da acpi, nfit, libnvdimm: fix / harden ars_status output length handling
483ac14 acpi, nfit: fix extended status translations for ACPI DSMs
0525ceb perf/x86: Fix full width counter, counter overflow
eceab1f vhost-vsock: fix orphan connection reset
b0224f3 sched/autogroup: Fix 64-bit kernel nice level adjustment
2a47799 scsi: lpfc: fix oops/BUG in lpfc_sli_ringtxcmpl_put()
ac65fe0 device-dax: fix private mapping restriction, permit read-only
2386c6b locking/rtmutex: Use READ_ONCE() in rt_mutex_owner()
7b2347c locking/rtmutex: Prevent dequeue vs. unlock race
bed4eef zram: restrict add/remove attributes to root only
4fb7569 parisc: Fix TLB related boot crash on SMP machines
b81e5db parisc: Remove unnecessary TLB purges from flush_dcache_page_asm and flush_icache_page_asm
7e8f68a parisc: Purge TLB before setting PTE
6e284445 fuse: fix clearing suid, sgid for chown()
e70d6d2 powerpc/boot: Fix build failure in 32-bit boot wrapper
a82ad49 powerpc/mm: Fix lazy icache flush on pre-POWER5
84b3628 powerpc/eeh: Fix deadlock when PE frozen state can't be cleared
7b8c57c Linux 4.8.14
1670d15 esp6: Fix integrity verification when ESN are used
b3e9d49 esp4: Fix integrity verification when ESN are used
be53394 flowcache: Increase threshold for refusing new allocations
3a116fa Revert: "ip6_tunnel: Update skb->protocol to ETH_P_IPV6 in ip6_tnl_xmit()"
6861828 ipv4: Set skb->protocol properly for local output
e67bd82 ipv6: Set skb->protocol properly for local output
22d94c32 Don't feed anything but regular iovec's to blk_rq_map_user_iov
e4a6c61 constify iov_iter_count() and iter_is_iovec()
907bc31 sparc32: Fix inverted invalid_frame_pointer checks on sigreturns
360e257 sparc64: fix compile warning section mismatch in find_node()
2f02dcb sparc64: Fix find_node warning if numa node cannot be found
ad02ec7 ipv4: Drop suffix update from resize code
0b1c601 ipv4: Drop leaf from suffix pull/push functions
cd8a6c0 ipv4: Fix memory leak in exception case for splitting tries
a878037 ipv4: Restore fib_trie_flush_external function and fix call ordering
5ff5e5c net: ping: check minimum size on ICMP header length
f818e5d net: avoid signed overflows for SO_{SND|RCV}BUFFORCE
bfecf90 geneve: avoid use-after-free of skb->data
4daa2c7 tipc: check minimum bearer MTU
1ff3209 sh_eth: remove unchecked interrupts for RZ/A1
bbf913d net: bcmgenet: Utilize correct struct device for all DMA operations
accb7c9 cdc_ether: Fix handling connection notification
3445754 ip6_offload: check segs for NULL in ipv6_gso_segment.
cef222d packet: fix race condition in packet_set_ring
17941a9 GSO: Reload iph after pskb_may_pull
ff0d787 net/dccp: fix use-after-free in dccp_invalid_packet
023cd33 net: macb: fix the RX queue reset in macb_rx()
25d9b4b netlink: Do not schedule work from sk_destruct
f5dad34 netlink: Call cb->done from a worker thread
360d6a2 net/sched: pedit: make sure that offset is valid
aa23936 net: dsa: fix unbalanced dsa_switch_tree reference counting
9a74792 net, sched: respect rcu grace period on cls destruction
a9437eb net: dsa: bcm_sf2: Ensure we re-negotiate EEE during after link change
ddf0534 udplite: call proper backlog handlers
7b0aa75 ipv6: bump genid when the IFA_F_TENTATIVE flag is clear
58c8cc3 rtnl: fix the loop index update error in rtnl_dump_ifinfo()
84df567 l2tp: fix racy SOCK_ZAPPED flag check in l2tp_ip{,6}_bind()
7f8b251 rtnetlink: fix FDB size computation
c39caa8 af_unix: conditionally use freezable blocking calls in read
bdc5c63 net: sky2: Fix shutdown crash
a75684a ip6_tunnel: disable caching when the traffic class is inherited
1b079d5 net: check dead netns for peernet2id_alloc()
65dfc8b4 net: dsa: b53: Fix VLAN usage and how we treat CPU port
f959eb5 virtio-net: add a missing synchronize_net()
8070f33 gro_cells: mark napi struct as not busy poll candidates
55d64c0 Linux 4.8.13
a4edb1a arm64: suspend: Reconfigure PSTATE after resume from idle
6353400 arm64: mm: Set PSTATE.PAN from the cpu_enable_pan() call
b49b1ae arm64: cpufeature: Schedule enable() calls instead of calling them via IPI
e4e77de batman-adv: Detect missing primaryif during tp_send as error
f106de5 clk: sunxi: Fix M factor computation for APB1
9e2d9e9 perf/x86: Restore TASK_SIZE check on frame pointer
ab34b42 drm/mediatek: fix null pointer dereference
43b5bb2 pwm: Fix device reference leak
6c69476 KVM: use after free in kvm_ioctl_create_device()
ff8b06b arm64: dts: juno: fix cluster sleep state entry latency on all SoC versions
f67b89a drm/radeon: fix check for port PM availability
835bb5c drm/amdgpu: fix check for port PM availability
972d595 drm/radeon: fix power state when port pm is unavailable (v2)
be1b75e drm/amdgpu: fix power state when port pm is unavailable
bd78c07 drm/i915: drop the struct_mutex when wedged or trying to reset
5dd86b6 drm/i915: Don't touch NULL sg on i915_gem_object_get_pages_gtt() error
05abe74 KVM: arm/arm64: vgic: Don't notify EOI for non-SPIs
ca42bd3 mwifiex: printk() overflow with 32-byte SSIDs
de9ba13 PCI: Set Read Completion Boundary to 128 iff Root Port supports it (_HPX)
4f48571 PCI: Export pcie_find_root_port
27dce9b mm: workingset: fix NULL ptr in count_shadow_nodes
60e3368 rcu: Fix soft lockup for rcu_nocb_kthread
b6f9e23 Input: psmouse - disable automatic probing of BYD touchpads
6ca8ab7 Input: change KEY_DATA from 0x275 to 0x277
600bec2 ovl: fix d_real() for stacked fs
5661a69 mm: fix false-positive WARN_ON() in truncate/invalidate for hugetlb
48b6b50a kasan: update kasan_global for gcc 7
db04d35 zram: fix unbalanced idr management at hot removal
0100209 thp: fix corner case of munlock() of PTE-mapped THPs
08fd95d mm, thp: propagation of conditional compilation in khugepaged.c
76e59ec ARC: Don't use "+l" inline asm constraint
b43fb9f ARC: mm: PAE40: Fix crash at munmap
8d1ee7b scsi: libfc: fix seconds_since_last_reset miscalculation
10e2627 scsi: hpsa: use bus '3' for legacy HBA devices
e170c10 libata-scsi: Fixup ata_gen_passthru_sense()

From yocto-kernel-cache:

7b320e0 kver: bump to v4.8.17
0da38d7 netfilter: iptables: enable NAT tables
9ca50a7 intel-quark: Remove support for serial-all
36398f9 features/usb/serial: Add new usb serial feature
c7c50ce soc/x1000: Remove 'default policy' features
f3f2e02 soc/x1000: Remove unnecessary features
485d1e7 soc/x1000: Remove bsp/common-pc/*
594e0eb meta/intel-common: Have intel-quark-tiny use common-drivers-32-essential
ce9dc93 meta/intel-common: Add intel-common-drivers-32-essential feature
676cac5 meta: Add lto-debug feature
938d073 meta: Add lto-disable feature
23f39dc meta: Add lto (Link-Time Optimization) enablement feature
01ac4f6 netfilter: enable connection tracking for IPv6
926c93a net: export two patches from the ff branch.
392d801 rt: rt6 ---> rt7
249fe74 cryptodev: export patch from fast-fwd tree
2b87020 rt: rt5 --> rt6
a48fbfd stable: drop NFS patch now merged

Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
2017-01-17 15:44:50 -08:00
classes rmc: Extend usages of RMC_BOARD_DATA_DIRS to specify board data 2017-01-09 12:53:33 -08:00
common linux-yocto/4.8: Update from v4.8.12 to v4.8.17 2017-01-17 15:44:50 -08:00
conf intel-quark: remove redundant EFI_PROVIDER setting 2017-01-17 10:03:33 -08:00
documentation/rmc rmc: Extend usages of RMC_BOARD_DATA_DIRS to specify board data 2017-01-09 12:53:33 -08:00
meta-tlk tlk: layer.conf: Add proper dependency and priority 2016-03-29 12:11:28 -07:00
scripts/lib/wic/canned-wks galileodisk: Change timeout to 1 second 2016-11-22 15:44:45 -08:00
MAINTAINERS meta-crystalforest: relocate meta-crystalforest layer into meta-isg layer 2015-10-02 08:15:43 -07:00
README README: Provide information for how to live-boot quark with hddimg 2016-11-01 08:23:15 -07:00
README.sources README.sources: New file 2016-04-29 07:15:34 -07:00

meta-intel

This README file contains information on building and booting meta-intel BSP layers. Please see the corresponding sections below for details.

Yocto Project Compatible

The BSPs contained in this layer are compatible with the Yocto Project as per the requirements listed here:

https://www.yoctoproject.org/webform/yocto-project-compatible-registration

Dependencies

This layer depends on:

URI: git://git.openembedded.org/bitbake branch: master

URI: git://git.openembedded.org/openembedded-core layers: meta branch: master

URI: git://git.yoctoproject.org/meta-intel layers: intel branch: master

Table of Contents

I. Overview II. Building and booting meta-intel BSP layers a. Building the intel-common and quark BSP layers b. Booting the intel-common BSP images c. Booting the intel-quark BSP image on a Galileo board III. Technical Miscellany The intel-common kernel package architecture Intel-specific machine features IV. Tested Hardware V. Guidelines for submitting patches

I. Overview

This is the location for Intel-maintained BSPs.

For details on the intel-common and intel-quark BSPs, see the information below.

For all others, please see the README files contained in the individual BSP layers for BSP-specific information.

If you have problems with or questions about a particular BSP, please contact the maintainer listed in the MAINTAINERS file directly (cc:ing the Yocto mailing list puts it in the archive and helps other people who might have the same questions in the future), but please try to do the following first:

If you believe you have encountered a bug, you can open a new bug and enter the details in the Yocto Project Bugzilla (http://bugzilla.yoctoproject.org/). If you're relatively certain that it's a bug against the BSP itself, please use the 'Yocto Project Components: BSPs | meta-intel' category for the bug; otherwise, please submit the bug against the most likely category for the problem - if you're wrong, it's not a big deal and the bug will be recategorized upon triage.

II. Building and booting meta-intel BSP layers

The following sections contain information on building and booting the BSPs contained in the meta-intel layer.

Note that these instructions specifically cover the intel-common and quark BSPs, which may or may not be applicable to other BSPs contained in this layer - if a given BSP contains its own README, that version should be used instead, and these instructions can be ignored.

a. Building the intel-common and quark BSP layers

In order to build an image with BSP support for a given release, you need to download the corresponding BSP tarball from the 'Board Support Package (BSP) Downloads' page of the Yocto Project website (or equivalently, check out the appropriate branch from the meta-intel git repository, see below). For the intel-common and quark BSPs, those tarballs would correspond to the following choices in the BSP downloads section:

  • Intel-core2-32 Intel® Common Core BSP (Intel-core2-32)
  • Intel-core2-32 Intel® Common Core BSP (Intel-quark)
  • Intel-corei7-64 Intel® Common Core BSP (Intel-corei7-64)

The intel-* BSPs, also known as the intel-common BSPs, provide a few carefully selected tune options and generic hardware support to cover the majority of current Intel CPUs and devices. The naming follows the convention of intel--, where TUNE is the gcc cpu-type (used with mtune and march typically) and BITS is either 32 bit or 64 bit.

Having done that, and assuming you extracted the BSP tarball contents at the top-level of your yocto build tree, you can build a BSP image by adding the location of the meta-intel layer to bblayers.conf e.g.:

yocto/meta-intel \

To enable a particular machine, you need to add a MACHINE line naming the BSP to the local.conf file:

MACHINE ?= "xxx"

where 'xxx' is replaced by one of the following BSP names:

  • intel-core2-32

    This BSP is optimized for the Core2 family of CPUs as well as all Atom CPUs prior to the Silvermont core.

  • intel-corei7-64

    This BSP is optimized for Nehalem and later Core and Xeon CPUs as well as Silvermont and later Atom CPUs, such as the Baytrail SoCs.

  • intel-quark

    This BSP is optimized for Quark-based systems.

You should then be able to build an image as such:

$ source oe-init-build-env $ bitbake core-image-sato

At the end of a successful build, you should have a live image that you can boot from a USB flash drive (see instructions on how to do that below, in the section 'Booting the intel-common BSP images').

As an alternative to downloading the BSP tarball, you can also work directly from the meta-intel git repository. For each BSP in the 'meta-intel' repository, there are multiple branches, one corresponding to each major release starting with 'laverne' (0.90), in addition to the latest code which tracks the current master (note that not all BSPs are present in every release). Instead of extracting a BSP tarball at the top level of your yocto build tree, you can equivalently check out the appropriate branch from the meta-intel repository at the same location.

b. Booting the intel-common BSP images

If you downloaded the BSP tarball, you will find bootable images in the /binary directory. If you've built your own image, either from the downloaded BSP layer or from the meta-intel git repository, you'll find the bootable image in the build/tmp/deploy/images/xxx directory, where again 'xxx' refers to the machine name used in the build.

The BSP /binary directory or build contains bootable live images, which can be used to directly boot Yocto off of a USB flash drive.

Under Linux, insert a USB flash drive. Assuming the USB flash drive takes device /dev/sdf, use dd to copy the live image to it. For example:

dd if=core-image-sato-intel-corei7-64.hddimg of=/dev/sdf

sync

eject /dev/sdf

This should give you a bootable USB flash device. Insert the device into a bootable USB socket on the target, and power on. This should result in a system booted to the Sato graphical desktop.

If you want a terminal, use the arrows at the top of the UI to move to different pages of available applications, one of which is named 'Terminal'. Clicking that should give you a root terminal.

If you want to ssh into the system, you can use the root terminal to ifconfig the IP address and use that to ssh in. The root password is empty, so to log in type 'root' for the user name and hit 'Enter' at the Password prompt: and you should be in.

If you find you're getting corrupt images on the USB (it doesn't show the syslinux boot: prompt, or the boot: prompt contains strange characters), try doing this first:

dd if=/dev/zero of=/dev/sdf bs=1M count=512

c. Booting the intel-quark BSP image on a Galileo board

If you downloaded the BSP tarball, you will find bootable images in the /binary directory. If you've built your own image, either from the downloaded BSP layer or from the meta-intel git repository, you'll find the bootable image in the build/tmp/deploy/images/xxx directory, where again 'xxx' refers to the machine name used in the build.

The Galileo board can boot off of either an SD card or USB storage media that has a special disk layout. The 'wic' tool can be used to create directly bootable images for either of the two formats via the following steps.

If you haven't already, you need to build parted-native. (You will get an error message when running the wic script if you haven't.)

$ bitbake parted-native

Use the wic script to create an SD card image:

$ wic list images
   galileodisk-sd        Create an Galileo Gen 1/2 disk image (SD card)
   galileodisk-usb       Create an Galileo Gen 1/2 disk image (USB Storage)
   mkgummidisk           Create an EFI disk image

Assuming you want to boot the 'core-image-minimal' image for SD card media:

 $ wic create galileodisk-sd -e core-image-minimal

If successful, the wic script generates the image and prints its location:

   Info: The new image(s) can be found here:
     /var/tmp/wic/build/galileodisk-sd-201604211444-mmcblk0.direct
   ...

Write the output image to an SD Card

 $ sudo dd if=/path/to/image/galileodisk-sd-*-mmcblk0.direct of=/dev/your_sd_dev

Insert the SD Card into the reference platform and power on.

To create a direct-boot image for USB storage media, simply specify galileodisk-usb instead of galileodisk-sd in the "wic create ..." command, then write the output image to USB storage media and boot it.

Actually, Galileo board can boot off with an image in hddimg format from USB drives too. But only live-boot, no installation, is supported at this point. An image in hddimg format is generated when you build quark BSP. You can follow the procedure in II.b to use dd command to prepare your USB drive, then press F7 key as what board prompts when it boots. Galileo should show a boot option menu for you to choose the UEFI USB boot option for the drive to boot the system. If the board already passes this stage and show a grub boot menu, you can press 'c' key and then type "quit" in grub shell. The board should come back to the UEFI boot menu.

III. Technical Miscellany

The intel-common kernel package architecture

These BSPs use what we call the intel-common Linux kernel package architecture. This includes core2-32-intel-common and corei7-64-intel-common. These kernel packages can also be used by any of the BSPs in meta-intel that choose to include the intel-common-pkgarch.inc file.

To minimize the proliferation of vendor trees, reduce the sources we must support, and consolidate QA efforts, all BSP maintainers are encouraged to make use of the intel-common Linux kernel package architecture.

Intel-specific machine features

The meta-intel layer makes some additional machine features available to BSPs. These machine features can be used in a BSP layer in the same way that machine features are used in other layers based on oe-core, via the MACHINE_FEATURES variable.

Requirements ++++++++++++

The meta-intel-specific machine features are only available to a BSP when the meta-intel layer is included in the build configuration, and the meta-intel.inc file is included in the machine configuration of that BSP.

To make these features available for your machine, you will need to:

  1. include a configuration line such as the below in bblayers.conf BBLAYERS += "/meta-intel"
  2. include the following line in the machine configuration file require conf/machine/include/meta-intel.inc

Once the above requirements are met, the machine features provided by the meta-intel layer will be available for the BSP to use.

Available machine features ++++++++++++++++++++++++++

Currently, the meta-intel layer makes the following set of Intel-specific machine features available:

  • intel-ucode

These machine features can be included by listing them in the MACHINE_FEATURES variable in the machine configuration file. For example:

MACHINE_FEATURES += "intel-ucode"

Machine feature details +++++++++++++++++++++++

  • intel-ucode

    This feature provides support for microcode updates to Intel processors. The intel-ucode feature runs at early boot and uses the microcode data file added by the feature into the BSP's initrd. It also puts the userland microcode-updating tool, iucode_tool, into the target images along with the microcode data file.

    Q. Why might a user want to enable the intel-ucode feature?

    A. Intel releases microcode updates to correct processor behavior as documented in the respective processor specification updates. While the normal approach to getting such microcode updates is via a BIOS upgrade, this can be an administrative hassle and not always possible in the field. The intel-ucode feature enables the microcode update capability present in the Linux kernel. It provides an easy path for upgrading processor microcode without the need to change the BIOS. If the feature is enabled, it is also possible to update the existing target images with a newer microcode update in the future.

    Q. How would a user bundle only target-specific microcode in the target image?

    A. The Intel microcode data file released by Intel contains microcode updates for multiple processors. If the BSP image is meant to run on only a certain subset of processor types, a processor-specific subset of microcode can be bundled into the target image via the UCODE_FILTER_PARAMETERS variable. This works by listing a sequence of iucode-tool parameters in the UCODE_FILTER_PARAMETERS variable, which in this case will select only the specific microcode relevant to the BSP. For more information on the underlying parameters refer to the iucode-tool manual page at http://manned.org/iucode-tool

    To define a set of parameters for microcode-filtering via the
    UCODE_FILTER_PARAMETERS variable, one needs to identify the
    cpuid signatures of all the processors the BSP is meant to run
    on.  One way to determine the cpuid signature for a specific
    processor is to build and run an intel-ucode-feature-enabled
    image on the target hardware, without first assigning any value
    to the UCODE_FILTER_PARAMETERS variable, and then once the
    image is booted, run the "ucode_tool -S" command to have the
    ucode tool scan the system for processor signatures.  These
    signatures can then be used in the UCODE_FILTER_PARAMETERS
    variable in conjunction with -s parameter.  For example, for
    the fri2 BSP, the cpuid can be determined as such:
    
      [root@fri2 ~]# iucode_tool -S
    

    iucode_tool: system has processor(s) with signature 0x00020661

    Given that output, a suitable UCODE_FILTER_PARAMETERS variable
    definition could be specified in the machine configuration as
    such:
    
      UCODE_FILTER_PARAMETERS = "-s 0x00020661"
    

    Q. Are there any reasons a user might want to disable the intel-ucode feature?

    A. The microcode data file and associated tools occupy a small amount of space (a few KB) on the target image. BSPs which are highly sensitive to target image size and which are not experiencing microcode-related issues might consider not enabling this feature.

IV. Tested Hardware

Of the BSPs currently included in meta-intel, the following have passed initial testing with the intel-common BSPs:

intel-corei7-64:

crystalforest-server
crystalforest-gladden
haswell-wc
nuc (Ivy Bridge and Haswell, manual audio config required)
sugarbay

intel-core2-32:

<currently under test>

If you are interested in a BSP not listed here, chances are we are currently working on resolving some configuration issues with it. Please check the bugzilla and check in with us on the meta-intel mailing list.

V. Guidelines for submitting patches

Please submit any patches against meta-intel BSPs to the meta-intel mailing list (meta-intel@yoctoproject.org). Also, if your patches are available via a public git repository, please also include a URL to the repo and branch containing your patches as that makes it easier for maintainers to grab and test your patches.

There are patch submission scripts available that will, among other things, automatically include the repo URL and branch as mentioned. Please see the Yocto Project Development Manual sections entitled 'Using Scripts to Push a Change Upstream and Request a Pull' and 'Using Email to Submit a Patch' for details.

Regardless of how you submit a patch or patchset, the patches should at minimum follow the suggestions outlined in the 'How to Submit a Change' secion in the Yocto Project Development Manual. Specifically, they should:

  • Include a 'Signed-off-by:' line. A commit can't legally be pulled in without this.

  • Provide a single-line, short summary of the change. This short description should be prefixed by the BSP or recipe name, as appropriate, followed by a colon. Capitalize the first character of the summary (following the colon).

  • For the body of the commit message, provide detailed information that describes what you changed, why you made the change, and the approach you used.

  • If the change addresses a specific bug or issue that is associated with a bug-tracking ID, include a reference to that ID in your detailed description in the following format: [YOCTO #].

  • Pay attention to line length - please don't allow any particular line in the commit message to stretch past 72 characters.

  • For any non-trivial patch, provide information about how you tested the patch, and for any non-trivial or non-obvious testing setup, provide details of that setup.

Doing a quick 'git log' in meta-intel will provide you with many examples of good example commits if you have questions about any aspect of the preferred format.

The meta-intel maintainers will do their best to review and/or pull in a patch or patchset within 24 hours of the time it was posted. For larger and/or more involved patches and patchsets, the review process may take longer.

Please see the meta-intel/MAINTAINERS file for the list of maintainers and their specific areas; it's also a good idea to cc: the specific maintainer, if applicable.