History

powerpc/configs: Replace pseries_le_defconfig with a Makefile target using merge_config

Rather than continuing to maintain a copy of pseries_defconfig with CONFIG_CPU_LITTLE_ENDIAN enabled, use the generic merge_config script and use an le.config to enable little endian on top of pseries_defconfig without the need for a duplicated _defconfig file. This method will require less maintenance in the future and will ensure that both 'defconfigs' are always in sync. It is worth noting that the seemingly more simple approach of: pseries_le_defconfig: pseries_defconfig $(Q)$(MAKE) le.config Will not work when building using O=builddir. The obvious fix to that: pseries_le_defconfig: $(Q)$(MAKE) -f $(srctree)/Makefile pseries_defconfig le.config Also does not work. This is because if we have for example: config FOO depends on CPU_BIG_ENDIAN select BAR Then BAR will be enabled by the first call to kconfig (via pseries_defconfig), and then will remain enabled after we merge le.config, even though FOO will have been turned off. The solution is to ensure to only invoke the kconfig logic once, after we have merged all the config fragments. This ensures nothing is select'ed on that should then be disabled by the later merged configs. This is done through the explicit call to make olddefconfig

Cyril Bur committed 11 years ago

Commit ea4d1a81 parent a1c97df3 files · +16 −319Browse files

Unified · Split

3 files
  1. arch/powerpc/Makefile +15 −0
  2. arch/powerpc/configs/le.config +1 −0
  3. arch/powerpc/configs/pseries_le_defconfig +0 −319
arch/powerpc/Makefile+15−0
@@ -269,6 +269,21 @@ bootwrapper_install: · 268 unmodified lines
269269 %.dtb: scripts
270270 $(Q)$(MAKE) ARCH=ppc64 $(build)=$(boot) $(patsubst %,$(boot)/%,$@)
271271
272+# Used to create 'merged defconfigs'
273+# To use it $(call) it with the first argument as the base defconfig
274+# and the second argument as a space separated list of .config files to merge,
275+# without the .config suffix.
276+define merge_into_defconfig
277+ $(Q)$(CONFIG_SHELL) $(srctree)/scripts/kconfig/merge_config.sh \
278+ -m -O $(objtree) $(srctree)/arch/$(ARCH)/configs/$(1) \
279+ $(foreach config,$(2),$(srctree)/arch/$(ARCH)/configs/$(config).config)
280+ +$(Q)$(MAKE) -f $(srctree)/Makefile olddefconfig
281+endef
282+
283+PHONY += pseries_le_defconfig
284+pseries_le_defconfig:
285+ $(call merge_into_defconfig,pseries_defconfig,le)
286+
272287 define archhelp
273288 @echo '* zImage - Build default images selected by kernel config'
274289 @echo ' zImage.* - Compressed kernel image (arch/$(ARCH)/boot/zImage.*)'
arch/powerpc/configs/le.config+1−0
@@ -0,0 +1 @@
1+CONFIG_CPU_LITTLE_ENDIAN=y
arch/powerpc/configs/pseries_le_defconfig+0−319
@@ -1,319 +0,0 @@
1−CONFIG_PPC64=y
2−CONFIG_SMP=y
3−CONFIG_NR_CPUS=2048
4−CONFIG_CPU_LITTLE_ENDIAN=y
5−CONFIG_SYSVIPC=y
6−CONFIG_POSIX_MQUEUE=y
7−CONFIG_FHANDLE=y
8−CONFIG_AUDIT=y
9−CONFIG_AUDITSYSCALL=y
10−CONFIG_IRQ_DOMAIN_DEBUG=y
11−CONFIG_NO_HZ=y
12−CONFIG_HIGH_RES_TIMERS=y
13−CONFIG_TASKSTATS=y
14−CONFIG_TASK_DELAY_ACCT=y
15−CONFIG_TASK_XACCT=y
16−CONFIG_TASK_IO_ACCOUNTING=y
17−CONFIG_IKCONFIG=y
18−CONFIG_IKCONFIG_PROC=y
19−CONFIG_NUMA_BALANCING=y
20−CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y
21−CONFIG_CGROUPS=y
22−CONFIG_CGROUP_FREEZER=y
23−CONFIG_CGROUP_DEVICE=y
24−CONFIG_CPUSETS=y
25−CONFIG_CGROUP_CPUACCT=y
26−CONFIG_MEMCG=y
27−CONFIG_MEMCG_SWAP=y
28−CONFIG_CGROUP_PERF=y
29−CONFIG_CGROUP_SCHED=y
30−CONFIG_USER_NS=y
31−CONFIG_BLK_DEV_INITRD=y
32−# CONFIG_COMPAT_BRK is not set
33−CONFIG_PROFILING=y
34−CONFIG_OPROFILE=y
35−CONFIG_KPROBES=y
36−CONFIG_JUMP_LABEL=y
37−CONFIG_MODULES=y
38−CONFIG_MODULE_UNLOAD=y
39−CONFIG_MODVERSIONS=y
40−CONFIG_MODULE_SRCVERSION_ALL=y
41−CONFIG_PARTITION_ADVANCED=y
42−CONFIG_PPC_SPLPAR=y
43−CONFIG_SCANLOG=m
44−CONFIG_PPC_SMLPAR=y
45−CONFIG_DTL=y
46−# CONFIG_PPC_PMAC is not set
47−CONFIG_RTAS_FLASH=m
48−CONFIG_IBMEBUS=y
49−CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
50−CONFIG_HZ_100=y
51−CONFIG_BINFMT_MISC=m
52−CONFIG_PPC_TRANSACTIONAL_MEM=y
53−CONFIG_KEXEC=y
54−CONFIG_IRQ_ALL_CPUS=y
55−CONFIG_MEMORY_HOTPLUG=y
56−CONFIG_MEMORY_HOTREMOVE=y
57−CONFIG_KSM=y
58−CONFIG_TRANSPARENT_HUGEPAGE=y
59−CONFIG_PPC_64K_PAGES=y
60−CONFIG_PPC_SUBPAGE_PROT=y
61−CONFIG_SCHED_SMT=y
62−CONFIG_HOTPLUG_PCI=y
63−CONFIG_HOTPLUG_PCI_RPA=m
64−CONFIG_HOTPLUG_PCI_RPA_DLPAR=m
65−CONFIG_NET=y
66−CONFIG_PACKET=y
67−CONFIG_UNIX=y
68−CONFIG_XFRM_USER=m
69−CONFIG_NET_KEY=m
70−CONFIG_INET=y
71−CONFIG_IP_MULTICAST=y
72−CONFIG_NET_IPIP=y
73−CONFIG_SYN_COOKIES=y
74−CONFIG_INET_AH=m
75−CONFIG_INET_ESP=m
76−CONFIG_INET_IPCOMP=m
77−# CONFIG_IPV6 is not set
78−CONFIG_NETFILTER=y
79−# CONFIG_NETFILTER_ADVANCED is not set
80−CONFIG_BRIDGE=m
81−CONFIG_VLAN_8021Q=m
82−CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
83−CONFIG_DEVTMPFS=y
84−CONFIG_DEVTMPFS_MOUNT=y
85−CONFIG_PARPORT=m
86−CONFIG_PARPORT_PC=m
87−CONFIG_BLK_DEV_FD=m
88−CONFIG_BLK_DEV_LOOP=y
89−CONFIG_BLK_DEV_NBD=m
90−CONFIG_BLK_DEV_RAM=y
91−CONFIG_BLK_DEV_RAM_SIZE=65536
92−CONFIG_VIRTIO_BLK=m
93−CONFIG_IDE=y
94−CONFIG_BLK_DEV_IDECD=y
95−CONFIG_BLK_DEV_GENERIC=y
96−CONFIG_BLK_DEV_AMD74XX=y
97−CONFIG_BLK_DEV_SD=y
98−CONFIG_CHR_DEV_ST=y
99−CONFIG_BLK_DEV_SR=y
100−CONFIG_BLK_DEV_SR_VENDOR=y
101−CONFIG_CHR_DEV_SG=y
102−CONFIG_SCSI_CONSTANTS=y
103−CONFIG_SCSI_FC_ATTRS=y
104−CONFIG_SCSI_CXGB3_ISCSI=m
105−CONFIG_SCSI_CXGB4_ISCSI=m
106−CONFIG_SCSI_BNX2_ISCSI=m
107−CONFIG_BE2ISCSI=m
108−CONFIG_SCSI_MPT2SAS=m
109−CONFIG_SCSI_IBMVSCSI=y
110−CONFIG_SCSI_IBMVFC=m
111−CONFIG_SCSI_SYM53C8XX_2=y
112−CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=0
113−CONFIG_SCSI_IPR=y
114−CONFIG_SCSI_QLA_FC=m
115−CONFIG_SCSI_QLA_ISCSI=m
116−CONFIG_SCSI_LPFC=m
117−CONFIG_SCSI_VIRTIO=m
118−CONFIG_SCSI_DH=m
119−CONFIG_SCSI_DH_RDAC=m
120−CONFIG_SCSI_DH_ALUA=m
121−CONFIG_ATA=y
122−CONFIG_SATA_AHCI=y
123−# CONFIG_ATA_SFF is not set
124−CONFIG_MD=y
125−CONFIG_BLK_DEV_MD=y
126−CONFIG_MD_LINEAR=y
127−CONFIG_MD_RAID0=y
128−CONFIG_MD_RAID1=y
129−CONFIG_MD_RAID10=m
130−CONFIG_MD_RAID456=m
131−CONFIG_MD_MULTIPATH=m
132−CONFIG_MD_FAULTY=m
133−CONFIG_BLK_DEV_DM=y
134−CONFIG_DM_CRYPT=m
135−CONFIG_DM_SNAPSHOT=m
136−CONFIG_DM_THIN_PROVISIONING=m
137−CONFIG_DM_MIRROR=m
138−CONFIG_DM_ZERO=m
139−CONFIG_DM_MULTIPATH=m
140−CONFIG_DM_MULTIPATH_QL=m
141−CONFIG_DM_MULTIPATH_ST=m
142−CONFIG_DM_UEVENT=y
143−CONFIG_BONDING=m
144−CONFIG_DUMMY=m
145−CONFIG_MACVLAN=m
146−CONFIG_MACVTAP=m
147−CONFIG_VXLAN=m
148−CONFIG_NETCONSOLE=y
149−CONFIG_TUN=m
150−CONFIG_VETH=m
151−CONFIG_VIRTIO_NET=m
152−CONFIG_VHOST_NET=m
153−CONFIG_VORTEX=y
154−CONFIG_ACENIC=m
155−CONFIG_ACENIC_OMIT_TIGON_I=y
156−CONFIG_PCNET32=y
157−CONFIG_TIGON3=y
158−CONFIG_CHELSIO_T1=m
159−CONFIG_BE2NET=m
160−CONFIG_S2IO=m
161−CONFIG_IBMVETH=y
162−CONFIG_EHEA=y
163−CONFIG_E100=y
164−CONFIG_E1000=y
165−CONFIG_E1000E=y
166−CONFIG_IXGB=m
167−CONFIG_IXGBE=m
168−CONFIG_MLX4_EN=m
169−CONFIG_MYRI10GE=m
170−CONFIG_QLGE=m
171−CONFIG_NETXEN_NIC=m
172−CONFIG_PPP=m
173−CONFIG_PPP_BSDCOMP=m
174−CONFIG_PPP_DEFLATE=m
175−CONFIG_PPPOE=m
176−CONFIG_PPP_ASYNC=m
177−CONFIG_PPP_SYNC_TTY=m
178−# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
179−CONFIG_INPUT_EVDEV=m
180−CONFIG_INPUT_MISC=y
181−CONFIG_INPUT_PCSPKR=m
182−# CONFIG_SERIO_SERPORT is not set
183−CONFIG_DEVPTS_MULTIPLE_INSTANCES=y
184−CONFIG_SERIAL_8250=y
185−CONFIG_SERIAL_8250_CONSOLE=y
186−CONFIG_SERIAL_ICOM=m
187−CONFIG_SERIAL_JSM=m
188−CONFIG_HVC_CONSOLE=y
189−CONFIG_HVC_RTAS=y
190−CONFIG_HVCS=m
191−CONFIG_VIRTIO_CONSOLE=m
192−CONFIG_IBM_BSR=m
193−CONFIG_GEN_RTC=y
194−CONFIG_RAW_DRIVER=y
195−CONFIG_MAX_RAW_DEVS=1024
196−CONFIG_FB=y
197−CONFIG_FIRMWARE_EDID=y
198−CONFIG_FB_OF=y
199−CONFIG_FB_MATROX=y
200−CONFIG_FB_MATROX_MILLENIUM=y
201−CONFIG_FB_MATROX_MYSTIQUE=y
202−CONFIG_FB_MATROX_G=y
203−CONFIG_FB_RADEON=y
204−CONFIG_FB_IBM_GXT4500=y
205−CONFIG_LCD_PLATFORM=m
206−# CONFIG_VGA_CONSOLE is not set
207−CONFIG_FRAMEBUFFER_CONSOLE=y
208−CONFIG_LOGO=y
209−CONFIG_HID_GYRATION=y
210−CONFIG_HID_PANTHERLORD=y
211−CONFIG_HID_PETALYNX=y
212−CONFIG_HID_SAMSUNG=y
213−CONFIG_HID_SUNPLUS=y
214−CONFIG_USB_HIDDEV=y
215−CONFIG_USB=y
216−CONFIG_USB_MON=m
217−CONFIG_USB_EHCI_HCD=y
218−# CONFIG_USB_EHCI_HCD_PPC_OF is not set
219−CONFIG_USB_OHCI_HCD=y
220−CONFIG_USB_STORAGE=m
221−CONFIG_INFINIBAND=m
222−CONFIG_INFINIBAND_USER_MAD=m
223−CONFIG_INFINIBAND_USER_ACCESS=m
224−CONFIG_INFINIBAND_MTHCA=m
225−CONFIG_INFINIBAND_EHCA=m
226−CONFIG_INFINIBAND_CXGB3=m
227−CONFIG_INFINIBAND_CXGB4=m
228−CONFIG_MLX4_INFINIBAND=m
229−CONFIG_INFINIBAND_IPOIB=m
230−CONFIG_INFINIBAND_IPOIB_CM=y
231−CONFIG_INFINIBAND_SRP=m
232−CONFIG_INFINIBAND_ISER=m
233−CONFIG_VIRTIO_PCI=m
234−CONFIG_VIRTIO_BALLOON=m
235−CONFIG_EXT2_FS=y
236−CONFIG_EXT2_FS_XATTR=y
237−CONFIG_EXT2_FS_POSIX_ACL=y
238−CONFIG_EXT2_FS_SECURITY=y
239−CONFIG_EXT2_FS_XIP=y
240−CONFIG_EXT3_FS=y
241−CONFIG_EXT3_FS_POSIX_ACL=y
242−CONFIG_EXT3_FS_SECURITY=y
243−CONFIG_EXT4_FS=y
244−CONFIG_EXT4_FS_POSIX_ACL=y
245−CONFIG_EXT4_FS_SECURITY=y
246−CONFIG_REISERFS_FS=y
247−CONFIG_REISERFS_FS_XATTR=y
248−CONFIG_REISERFS_FS_POSIX_ACL=y
249−CONFIG_REISERFS_FS_SECURITY=y
250−CONFIG_JFS_FS=m
251−CONFIG_JFS_POSIX_ACL=y
252−CONFIG_JFS_SECURITY=y
253−CONFIG_XFS_FS=m
254−CONFIG_XFS_POSIX_ACL=y
255−CONFIG_BTRFS_FS=m
256−CONFIG_BTRFS_FS_POSIX_ACL=y
257−CONFIG_NILFS2_FS=m
258−CONFIG_AUTOFS4_FS=m
259−CONFIG_FUSE_FS=m
260−CONFIG_OVERLAY_FS=m
261−CONFIG_ISO9660_FS=y
262−CONFIG_UDF_FS=m
263−CONFIG_MSDOS_FS=y
264−CONFIG_VFAT_FS=y
265−CONFIG_PROC_KCORE=y
266−CONFIG_TMPFS=y
267−CONFIG_TMPFS_POSIX_ACL=y
268−CONFIG_HUGETLBFS=y
269−CONFIG_CRAMFS=m
270−CONFIG_SQUASHFS=m
271−CONFIG_SQUASHFS_XATTR=y
272−CONFIG_SQUASHFS_LZO=y
273−CONFIG_SQUASHFS_XZ=y
274−CONFIG_PSTORE=y
275−CONFIG_NFS_FS=y
276−CONFIG_NFS_V3_ACL=y
277−CONFIG_NFS_V4=y
278−CONFIG_NFSD=m
279−CONFIG_NFSD_V3_ACL=y
280−CONFIG_NFSD_V4=y
281−CONFIG_CIFS=m
282−CONFIG_CIFS_XATTR=y
283−CONFIG_CIFS_POSIX=y
284−CONFIG_NLS_DEFAULT="utf8"
285−CONFIG_NLS_CODEPAGE_437=y
286−CONFIG_NLS_ASCII=y
287−CONFIG_NLS_ISO8859_1=y
288−CONFIG_NLS_UTF8=y
289−CONFIG_MAGIC_SYSRQ=y
290−CONFIG_DEBUG_KERNEL=y
291−CONFIG_DEBUG_STACK_USAGE=y
292−CONFIG_DEBUG_STACKOVERFLOW=y
293−CONFIG_LOCKUP_DETECTOR=y
294−CONFIG_LATENCYTOP=y
295−CONFIG_SCHED_TRACER=y
296−CONFIG_BLK_DEV_IO_TRACE=y
297−CONFIG_CODE_PATCHING_SELFTEST=y
298−CONFIG_FTR_FIXUP_SELFTEST=y
299−CONFIG_MSI_BITMAP_SELFTEST=y
300−CONFIG_XMON=y
301−CONFIG_CRYPTO_TEST=m
302−CONFIG_CRYPTO_PCBC=m
303−CONFIG_CRYPTO_HMAC=y
304−CONFIG_CRYPTO_MICHAEL_MIC=m
305−CONFIG_CRYPTO_TGR192=m
306−CONFIG_CRYPTO_WP512=m
307−CONFIG_CRYPTO_ANUBIS=m
308−CONFIG_CRYPTO_BLOWFISH=m
309−CONFIG_CRYPTO_CAST6=m
310−CONFIG_CRYPTO_KHAZAD=m
311−CONFIG_CRYPTO_SALSA20=m
312−CONFIG_CRYPTO_SERPENT=m
313−CONFIG_CRYPTO_TEA=m
314−CONFIG_CRYPTO_TWOFISH=m
315−CONFIG_CRYPTO_LZO=m
316−# CONFIG_CRYPTO_ANSI_CPRNG is not set
317−CONFIG_VIRTUALIZATION=y
318−CONFIG_KVM_BOOK3S_64=m
319−CONFIG_KVM_BOOK3S_64_HV=m

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t