image: ensure that /dev/console exist in rootfs images
Linux expects that the /dev/console node is present in
the rootfs image. Create the node in rootfs images, in
order to make std{in,out,err} usable even in early init
process.
Note: tar.gz and cpio.gz images are not handled yet.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 37847
			
			
This commit is contained in:
		
							
								
								
									
										5
									
								
								include/device_table.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								include/device_table.txt
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,5 @@ | |||||||
|  | # minimal device table file for OpenWrt | ||||||
|  |  | ||||||
|  | #<name>		<type>	<mode>	<uid>	<gid>	<major>	<minor>	<start>	<inc>	<count> | ||||||
|  | /dev		d	755	0	0	-	-	-	-	- | ||||||
|  | /dev/console	c	600	0	0	5	1	0	0	- | ||||||
| @@ -17,6 +17,8 @@ KDIR=$(KERNEL_BUILD_DIR) | |||||||
|  |  | ||||||
| IMG_PREFIX:=openwrt-$(BOARD)$(if $(SUBTARGET),-$(SUBTARGET)) | IMG_PREFIX:=openwrt-$(BOARD)$(if $(SUBTARGET),-$(SUBTARGET)) | ||||||
|  |  | ||||||
|  | MKFS_DEVTABLE_OPT := -D $(INCLUDE_DIR)/device_table.txt | ||||||
|  |  | ||||||
| ifneq ($(CONFIG_BIG_ENDIAN),) | ifneq ($(CONFIG_BIG_ENDIAN),) | ||||||
|   JFFS2OPTS     :=  --pad --big-endian --squash-uids -v |   JFFS2OPTS     :=  --pad --big-endian --squash-uids -v | ||||||
| else | else | ||||||
| @@ -42,8 +44,11 @@ ifneq ($(CONFIG_JFFS2_LZMA),y) | |||||||
|   JFFS2OPTS += -x lzma |   JFFS2OPTS += -x lzma | ||||||
| endif | endif | ||||||
|  |  | ||||||
|  | JFFS2OPTS += $(MKFS_DEVTABLE_OPT) | ||||||
|  |  | ||||||
| SQUASHFS_BLOCKSIZE := 256k | SQUASHFS_BLOCKSIZE := 256k | ||||||
| SQUASHFSOPT := -b $(SQUASHFS_BLOCKSIZE) | SQUASHFSOPT := -b $(SQUASHFS_BLOCKSIZE) | ||||||
|  | SQUASHFSOPT += -p '/dev d 755 0 0' -p '/dev/console c 600 0 0 5 1' | ||||||
| SQUASHFSCOMP := gzip | SQUASHFSCOMP := gzip | ||||||
| LZMA_XZ_OPTIONS := -Xpreset 9 -Xe -Xlc 0 -Xlp 2 -Xpb 2 | LZMA_XZ_OPTIONS := -Xpreset 9 -Xe -Xlc 0 -Xlp 2 -Xpb 2 | ||||||
| ifeq ($(CONFIG_SQUASHFS_LZMA),y) | ifeq ($(CONFIG_SQUASHFS_LZMA),y) | ||||||
| @@ -110,7 +115,7 @@ endif | |||||||
| ifneq ($(CONFIG_TARGET_ROOTFS_UBIFS),) | ifneq ($(CONFIG_TARGET_ROOTFS_UBIFS),) | ||||||
|     define Image/mkfs/ubifs |     define Image/mkfs/ubifs | ||||||
| 		$(CP) ./ubinize.cfg $(KDIR) | 		$(CP) ./ubinize.cfg $(KDIR) | ||||||
| 		$(STAGING_DIR_HOST)/bin/mkfs.ubifs $(UBIFS_OPTS) -o $(KDIR)/root.ubifs -d $(TARGET_DIR) | 		$(STAGING_DIR_HOST)/bin/mkfs.ubifs $(UBIFS_OPTS) $(MKFS_DEVTABLE_OPT) -o $(KDIR)/root.ubifs -d $(TARGET_DIR) | ||||||
| 		$(call Image/Build,ubifs) | 		$(call Image/Build,ubifs) | ||||||
| 		(cd $(KDIR); \ | 		(cd $(KDIR); \ | ||||||
| 		$(STAGING_DIR_HOST)/bin/ubinize $(UBINIZE_OPTS) -o $(KDIR)/root.ubi ubinize.cfg) | 		$(STAGING_DIR_HOST)/bin/ubinize $(UBINIZE_OPTS) -o $(KDIR)/root.ubi ubinize.cfg) | ||||||
| @@ -136,7 +141,7 @@ ifneq ($(CONFIG_TARGET_ROOTFS_EXT4FS),) | |||||||
|  |  | ||||||
|   define Image/mkfs/ext4 |   define Image/mkfs/ext4 | ||||||
| # generate an ext2 fs | # generate an ext2 fs | ||||||
| 	$(STAGING_DIR_HOST)/bin/genext2fs -U -b $(E2SIZE) -N $(CONFIG_TARGET_ROOTFS_MAXINODE) -d $(TARGET_DIR)/ $(KDIR)/root.ext4 -m $(CONFIG_TARGET_ROOTFS_RESERVED_PCT) | 	$(STAGING_DIR_HOST)/bin/genext2fs -U -b $(E2SIZE) -N $(CONFIG_TARGET_ROOTFS_MAXINODE) -d $(TARGET_DIR)/ $(KDIR)/root.ext4 -m $(CONFIG_TARGET_ROOTFS_RESERVED_PCT) $(MKFS_DEVTABLE_OPT) | ||||||
| # convert it to ext4 | # convert it to ext4 | ||||||
| 	$(STAGING_DIR_HOST)/bin/tune2fs -O extents,uninit_bg,dir_index $(KDIR)/root.ext4 | 	$(STAGING_DIR_HOST)/bin/tune2fs -O extents,uninit_bg,dir_index $(KDIR)/root.ext4 | ||||||
| # fix it up | # fix it up | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Gabor Juhos
					Gabor Juhos