Browse Source

- add hd60 and hd61

master
vanhofen 4 years ago
parent
commit
0f92260e43
  1. 4396
      configs/kernel-hd6x.config
  2. 4
      make/bootstrap.mk
  3. 4
      make/crosstool.mk
  4. 30
      make/environment-box.mk
  5. 2
      make/environment-build.mk
  6. 19
      make/environment-linux.mk
  7. 2
      make/image-updates.mk
  8. 27
      make/images.mk
  9. 33
      make/linux-drivers.mk
  10. 30
      make/linux-kernel.mk
  11. 5
      make/ni.mk
  12. 89
      make/target-blobs.mk
  13. 4
      make/target-libs-static.mk
  14. 2
      make/target-libs.mk
  15. 15
      make/target-scripts.mk
  16. 4
      make/target-tools.mk
  17. 2722
      patches/hi3798mv200-support.patch
  18. 47
      patches/kernel/gfutures/4_4_0001-remote.patch
  19. 85
      patches/kernel/gfutures/4_4_0002-log2-give-up-on-gcc-constant-optimizations.patch
  20. 22
      patches/kernel/gfutures/4_4_0003-dont-mark-register-as-const.patch
  21. 11
      patches/kernel/gfutures/4_4_ieee80211-increase-scan-result-expire-time.patch
  22. 11
      skel-root/general/scripts/suspend.init
  23. 2
      skel-root/hd51/etc/mdev.conf
  24. 5
      skel-root/hd6x/etc/exports
  25. 14
      skel-root/hd6x/etc/filesystems
  26. 17
      skel-root/hd6x/etc/group
  27. 1
      skel-root/hd6x/etc/hosts
  28. 5
      skel-root/hd6x/etc/inetd.conf
  29. 98
      skel-root/hd6x/etc/init.d/rcS
  30. 12
      skel-root/hd6x/etc/issue.net
  31. 95
      skel-root/hd6x/etc/mdev.conf
  32. 4
      skel-root/hd6x/etc/network/interfaces
  33. 47
      skel-root/hd6x/etc/nsswitch.conf
  34. 5
      skel-root/hd6x/etc/passwd
  35. 17
      skel-root/hd6x/etc/profile
  36. 1
      skel-root/hd6x/etc/profile.local
  37. 34
      skel-root/hd6x/etc/protocols
  38. 544
      skel-root/hd6x/etc/services
  39. 8
      skel-root/hd6x/lib/mdev/common/mdev-log-only
  40. 10
      skel-root/hd6x/lib/mdev/common/mdev-modprobe
  41. 6
      skel-root/hd6x/lib/mdev/common/mdev-module
  42. 153
      skel-root/hd6x/lib/mdev/fs/mdev-mmcblk
  43. 117
      skel-root/hd6x/lib/mdev/fs/mdev-mount
  44. 19
      skel-root/hd6x/lib/mdev/net/mdev-wlan
  45. 31
      skel-root/hd6x/lib/mdev/usb/coldplug-setenv
  46. 135
      skel-root/hd6x/lib/mdev/usb/mdev-usb
  47. 12
      skel-root/hd6x/lib/pkgconfig/egl.pc
  48. 12
      skel-root/hd6x/lib/pkgconfig/glesv1_cm.pc
  49. 12
      skel-root/hd6x/lib/pkgconfig/glesv2.pc

4396
configs/kernel-hd6x.config

File diff suppressed because it is too large

4
make/bootstrap.mk

@ -46,7 +46,7 @@ target-dir:
mkdir -p $(TARGET_BIN_DIR)
mkdir -p $(TARGET_INCLUDE_DIR)
mkdir -p $(TARGET_LIB_DIR)
ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd51 vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse))
ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd51 hd6x vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse))
mkdir -p $(TARGET_DIR)/boot
endif
mkdir -p $(TARGET_DIR)/dev
@ -111,7 +111,7 @@ ifeq ($(BOXSERIES), hd2)
ln -sf libuClibc-$(UCLIBC_VER).so libpthread.so.0; \
ln -sf libuClibc-$(UCLIBC_VER).so librt.so.0
endif
ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd51 vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse))
ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd51 hd6x vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse))
$(CD) $(TARGET_LIB_DIR); \
ln -sf ld-2.23.so ld-linux.so.3
endif

4
make/crosstool.mk

@ -6,7 +6,7 @@
crosstool: $(CROSS_DIR)
crosstools:
for boxseries in hd1 hd2 hd51 vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse vuduo; do \
for boxseries in hd1 hd2 hd51 hd6x vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse vuduo; do \
echo "make crosstool-ng for $${boxseries}"; \
make BOXSERIES=$${boxseries} crosstool || exit; \
done;
@ -33,7 +33,7 @@ crosstool-restore: $(CROSSTOOL_BACKUP)
# -----------------------------------------------------------------------------
crosstools-renew:
for boxseries in hd1 hd2 hd51 vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse vuduo; do \
for boxseries in hd1 hd2 hd51 hd6x vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse vuduo; do \
make BOXSERIES=$${boxseries} ccache-clean || exit; \
done;
make host-clean

30
make/environment-box.mk

@ -15,13 +15,13 @@
# - Armbox --------------------------------------------------------------------
# BOXTYPE armbox + ------ + ----- + ------- + -------- + ------ + ----- +
# | \ \ \ \ \ \ \
# BOXSERIES hd51 vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse
# | | | | | | | |
# BOXFAMILY bcm7251s bcm7376 bcm7278 bcm7444s bcm72604 bcm7252s
# / | \ | | | | | | |
# BOXMODEL hd51 bre2ze4k h7 vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse
# BOXTYPE armbox ---- + -- + ------ + ----- + ------- + -------- + ------ + ----- +
# / | \ \ \ \ \ \ \
# BOXSERIES hd51 hd6x vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse
# | | | | | | | | |
# BOXFAMILY bcm7251s hi3798m bcm7376 bcm7278 bcm7444s bcm72604 bcm7252s
# / | \ | | | | | | | | |
# BOXMODEL hd51 bre2ze4k h7 hd60 hd61 vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse
# - Mipsbox --------------------------------------------------------------------
@ -49,6 +49,10 @@ ifneq ($(BOXSERIES),)
BOXTYPE = armbox
BOXFAMILY = bcm7251s
BOXMODEL = hd51
else ifeq ($(BOXSERIES), hd6x)
BOXTYPE = armbox
BOXFAMILY = hi3798m
BOXMODEL = hd61
else ifeq ($(BOXSERIES), vusolo4k)
BOXTYPE = armbox
BOXFAMILY = bcm7376
@ -103,6 +107,10 @@ else ifneq ($(BOXFAMILY),)
BOXTYPE = armbox
BOXSERIES = hd51
BOXMODEL = hd51
else ifeq ($(BOXFAMILY), hi3798m)
BOXTYPE = armbox
BOXSERIES = hd6x
BOXMODEL = hd61
else ifeq ($(BOXFAMILY), bcm7376)
BOXTYPE = armbox
BOXSERIES = vusolo4k
@ -149,6 +157,10 @@ else ifneq ($(BOXMODEL),)
BOXTYPE = armbox
BOXSERIES = hd51
BOXFAMILY = bcm7251s
else ifeq ($(BOXMODEL), $(filter $(BOXMODEL), hd60 hd61))
BOXTYPE = armbox
BOXSERIES = hd6x
BOXFAMILY = hi3798m
else ifeq ($(BOXMODEL), $(filter $(BOXMODEL), vusolo4k))
BOXTYPE = armbox
BOXSERIES = vusolo4k
@ -218,6 +230,10 @@ else ifeq ($(BOXMODEL), bre2ze4k)
BOXNAME="WWIO BRE2ZE4K"
else ifeq ($(BOXMODEL), h7)
BOXNAME="Air Digital Zgemma H7S/C"
else ifeq ($(BOXMODEL), hd60)
BOXNAME="AX/Mut@nt HD60"
else ifeq ($(BOXMODEL), hd61)
BOXNAME="AX/Mut@nt HD61"
else ifeq ($(BOXMODEL), vusolo4k)
BOXNAME="VU+ Solo 4K"
else ifeq ($(BOXMODEL), vuduo4k)

2
make/environment-build.mk

@ -113,7 +113,7 @@ else ifeq ($(BOXSERIES), hd2)
endif
CXX11_ABI = -D_GLIBCXX_USE_CXX11_ABI=0
else ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd51 vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse))
else ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd51 hd6x vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse))
DRIVERS-BIN_DIR = $(BOXTYPE)/$(BOXMODEL)
CORTEX-STRINGS_LDFLAG = -lcortex-strings
TARGET = arm-cortex-linux-gnueabihf

19
make/environment-linux.mk

@ -37,6 +37,21 @@ else ifeq ($(BOXMODEL), $(filter $(BOXMODEL), hd51 bre2ze4k h7))
KERNEL_DTB = $(BUILD_TMP)/$(KERNEL_OBJ)/arch/$(BOXARCH)/boot/dts/bcm7445-bcm97445svmb.dtb
KERNEL_CONFIG = $(CONFIGS)/kernel-hd51.config
BOOT_PARTITION = 1
else ifeq ($(BOXMODEL), $(filter $(BOXMODEL), hd60 hd61))
KERNEL_VER = 4.4.35
KERNEL_DATE = 20181228
KERNEL_TMP = linux-$(KERNEL_VER)
KERNEL_SOURCE = linux-$(KERNEL_VER)-$(KERNEL_DATE)-arm.tar.gz
KERNEL_SITE = http://downloads.mutant-digital.net
KERNEL_BRANCH = $(EMPTY)
KERNEL_DTB = $(BUILD_TMP)/$(KERNEL_OBJ)/arch/$(BOXARCH)/boot/dts/hi3798mv200.dtb
KERNEL_CONFIG = $(CONFIGS)/kernel-hd6x.config
BOOT_PARTITION = 4
else ifeq ($(BOXMODEL), vusolo4k)
KERNEL_VER = 3.14.28-1.8
KERNEL_TMP = linux
@ -199,7 +214,7 @@ endif
KERNEL_MAKEOPTS = $(KERNEL_IMAGE) modules
# build also the kernel-dtb for arm-hd51
ifeq ($(BOXMODEL), $(filter $(BOXMODEL), hd51 bre2ze4k h7))
# build also the kernel-dtb for arm-hd51 and arm-hd6x
ifeq ($(BOXMODEL), $(filter $(BOXMODEL), hd51 bre2ze4k h7 hd60 hd61))
KERNEL_MAKEOPTS += $(notdir $(KERNEL_DTB))
endif

2
make/image-updates.mk

@ -3,7 +3,7 @@
#
# -----------------------------------------------------------------------------
BOXSERIES_UPDATE = hd2 hd51 vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse vuduo
BOXSERIES_UPDATE = hd2 hd51 hd6x vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse vuduo
ifneq ($(DEBUG), yes)
BOXSERIES_UPDATE += hd1
endif

27
make/images.mk

@ -61,6 +61,10 @@ ifeq ($(BOXMODEL), $(filter $(BOXMODEL), hd51 bre2ze4k h7))
make flash-image-hd51
make flash-image-hd51-multi
endif
ifeq ($(BOXMODEL), $(filter $(BOXMODEL), hd60 hd61))
make flash-image-hd6x
make flash-image-hd6x-multi
endif
ifeq ($(BOXMODEL), $(filter $(BOXMODEL), vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse))
make flash-image-vuplus
make flash-image-vuplus-multi
@ -125,7 +129,7 @@ flash-image-hd51: | $(IMAGE_DIR)
# -----------------------------------------------------------------------------
# hd51 / bre2ze4k
# hd51, bre2ze4k, h7
HD51_IMAGE_NAME = disk
HD51_BOOT_IMAGE = boot.img
HD51_IMAGE_LINK = $(HD51_IMAGE_NAME).ext4
@ -212,6 +216,27 @@ flash-image-hd51-multi: | $(IMAGE_DIR)
# -----------------------------------------------------------------------------
# hd60, hd61
flash-image-hd6x: IMAGE_DATE=$(shell cat $(ROOTFS)/.version | grep "^version=" | cut -d= -f2 | cut -c 5-)
flash-image-hd6x: | $(IMAGE_DIR)
rm -rf $(IMAGE_BUILD_TMP)
mkdir -p $(IMAGE_BUILD_TMP)/$(IMAGE_SUBDIR)
cp $(KERNEL_ZIMAGE_DTB) $(IMAGE_BUILD_TMP)/$(IMAGE_SUBDIR)/uImage
$(CD) $(ROOTFS); \
tar -cvf $(IMAGE_BUILD_TMP)/$(IMAGE_SUBDIR)/rootfs.tar -C $(ROOTFS) . >/dev/null 2>&1; \
bzip2 $(IMAGE_BUILD_TMP)/$(IMAGE_SUBDIR)/rootfs.tar
# Create minimal image
$(CD) $(IMAGE_BUILD_TMP)/$(IMAGE_SUBDIR); \
tar -czf $(IMAGE_DIR)/$(IMAGE_NAME).tgz uImage rootfs.tar.bz2
echo $(IMAGE_SITE)/$(IMAGE_NAME).tgz $(IMAGE_TYPE)$(IMAGE_VER)$(IMAGE_DATE) `md5sum $(IMAGE_DIR)/$(IMAGE_NAME).tgz | cut -c1-32` $(IMAGE_DESC) $(IMAGE_VERSION) >> $(IMAGE_DIR)/$(IMAGE_MD5FILE)
rm -rf $(IMAGE_BUILD_TMP)
# -----------------------------------------------------------------------------
flash-image-hd6x-multi:
# -----------------------------------------------------------------------------
# armbox vu+
flash-image-vuplus: IMAGE_DATE=$(shell cat $(ROOTFS)/.version | grep "^version=" | cut -d= -f2 | cut -c 5-)
flash-image-vuplus: | $(IMAGE_DIR)

33
make/linux-drivers.mk

@ -17,3 +17,36 @@ rtl8192eu: kernel-$(BOXTYPE) | $(TARGET_DIR)
make depmod
$(REMOVE)/$(RTL8192EU_SOURCE)
$(TOUCH)
# -----------------------------------------------------------------------------
HD6x-MALI-DRIVERS_VER = DX910-SW-99002-r7p0-00rel0
HD6x-MALI-DRIVERS_TMP = $(HD6x-MALI-DRIVERS_VER)
HD6x-MALI-DRIVERS_SOURCE = $(HD6x-MALI-DRIVERS_VER).tgz
HD6x-MALI-DRIVERS_SITE = https://developer.arm.com/-/media/Files/downloads/mali-drivers/kernel/mali-utgard-gpu
$(ARCHIVE)/$(HD6x-MALI-DRIVERS_SOURCE):
$(DOWNLOAD) $(HD6x-MALI-DRIVERS_SITE)/$(HD6x-MALI-DRIVERS_SOURCE)
HD6x-MALI-DRIVERS_PATCH = hi3798mv200-support.patch
HD6x-MALI-DRIVERS_MAKEVARS = \
M=$(BUILD_TMP)/$(HD6x-MALI-DRIVERS_TMP)/driver/src/devicedrv/mali \
EXTRA_CFLAGS="-DCONFIG_MALI_DVFS=y -DCONFIG_GPU_AVS_ENABLE=y" \
CONFIG_MALI_SHARED_INTERRUPTS=y \
CONFIG_MALI400=m \
CONFIG_MALI450=y \
CONFIG_MALI_DVFS=y \
CONFIG_GPU_AVS_ENABLE=y
hd6x-mali-drivers: kernel-$(BOXTYPE) hd6x-libgles-headers $(ARCHIVE)/$(HD6x-MALI-DRIVERS_SOURCE) | $(TARGET_DIR)
$(START_BUILD)
$(REMOVE)/$(HD6x-MALI-DRIVERS_TMP)
$(UNTAR)/$(HD6x-MALI-DRIVERS_SOURCE)
$(CHDIR)/$(HD6x-MALI-DRIVERS_TMP); \
$(call apply_patches, $(HD6x-MALI-DRIVERS_PATCH)); \
$(MAKE) -C $(BUILD_TMP)/$(KERNEL_OBJ) $(KERNEL_MAKEVARS) $(HD6x-MALI-DRIVERS_MAKEVARS); \
$(MAKE) -C $(BUILD_TMP)/$(KERNEL_OBJ) $(KERNEL_MAKEVARS) $(HD6x-MALI-DRIVERS_MAKEVARS) INSTALL_MOD_PATH=$(TARGET_DIR) modules_install
make depmod
$(REMOVE)/$(HD6x-MALI-DRIVERS_TMP)
$(TOUCH)

30
make/linux-kernel.mk

@ -20,6 +20,13 @@ GFUTURES_4_10_PATCH = \
gfutures/4_10_reserve_dvb_adapter_0.patch \
gfutures/4_10_t230c2.patch
# arm hd60/hd61
GFUTURES_4_4_PATCH = \
gfutures/4_4_0001-remote.patch \
gfutures/4_4_0002-log2-give-up-on-gcc-constant-optimizations.patch \
gfutures/4_4_0003-dont-mark-register-as-const.patch \
gfutures/4_4_ieee80211-increase-scan-result-expire-time.patch
# arm vuduo
VUPLUS_3_9_PATCH = \
vuplus/3_9_0001-rt2800usb-add-support-for-rt55xx.patch \
@ -141,6 +148,12 @@ BRE2ZE4K_PATCH = \
H7_PATCH = \
$(GFUTURES_4_10_PATCH)
HD60_PATCH = \
$(GFUTURES_4_4_PATCH)
HD61_PATCH = \
$(GFUTURES_4_4_PATCH)
VUSOLO4K_PATCH = \
$(VUPLUS_3_14_PATCH) \
vuplus/3_14_linux_rpmb_not_alloc.patch \
@ -197,7 +210,7 @@ kernel.do_prepare:
$(MKDIR)/$(KERNEL_OBJ)
$(MKDIR)/$(KERNEL_MODULES)
$(INSTALL_DATA) $(KERNEL_CONFIG) $(BUILD_TMP)/$(KERNEL_OBJ)/.config
ifeq ($(BOXMODEL), $(filter $(BOXMODEL), hd51 bre2ze4k h7))
ifeq ($(BOXMODEL), $(filter $(BOXMODEL), hd51 bre2ze4k h7 hd60 hd61))
$(INSTALL_DATA) $(PATCHES)/initramfs-subdirboot.cpio.gz $(BUILD_TMP)/$(KERNEL_OBJ)
endif
$(TOUCH)
@ -255,11 +268,11 @@ endif
$(TOUCH)
kernel-armbox: kernel.do_compile | $(IMAGE_DIR)
ifneq ($(KERNEL_DTB), $(EMPTY))
$(INSTALL_DATA) $(KERNEL_ZIMAGE_DTB) $(IMAGE_DIR)/kernel-$(BOXTYPE_SC)-$(BOXMODEL).bin
else
$(INSTALL_DATA) $(KERNEL_ZIMAGE) $(IMAGE_DIR)/kernel-$(BOXTYPE_SC)-$(BOXMODEL).bin
endif
#ifneq ($(KERNEL_DTB), $(EMPTY))
# $(INSTALL_DATA) $(KERNEL_ZIMAGE_DTB) $(IMAGE_DIR)/kernel-$(BOXTYPE_SC)-$(BOXMODEL).bin
#else
# $(INSTALL_DATA) $(KERNEL_ZIMAGE) $(IMAGE_DIR)/kernel-$(BOXTYPE_SC)-$(BOXMODEL).bin
#endif
$(TOUCH)
kernel-mipsbox: kernel.do_compile | $(IMAGE_DIR)
@ -308,8 +321,11 @@ kernel-modules-armbox: kernel-armbox
$(INSTALL_DATA) $(KERNEL_MODULES_DIR)/modules.builtin $(TARGET_MODULES_DIR)
$(INSTALL_DATA) $(KERNEL_MODULES_DIR)/modules.order $(TARGET_MODULES_DIR)
make depmod
ifeq ($(BOXSERIES), hd51)
ifeq ($(BOXSERIES), hd51 hd6x)
make rtl8192eu
endif
ifeq ($(BOXSERIES), hd6x)
make hd6x-mali-drivers
endif
$(TOUCH)

5
make/ni.mk

@ -9,6 +9,7 @@ ifneq ($(DEBUG), yes)
endif
BOXMODEL_IMAGE += apollo kronos kronos_v2
BOXMODEL_IMAGE += hd51 bre2ze4k h7
BOXMODEL_IMAGE += hd60 hd61
BOXMODEL_IMAGE += vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse
#BOXMODEL_IMAGE += vuduo
@ -58,7 +59,7 @@ ni-image:
$(MAKE) mtd-utils
$(MAKE) wget
$(MAKE) streamripper
ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd2 hd51 vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse vuduo))
ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd2 hd51 hd6x vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse vuduo))
$(MAKE) less
$(MAKE) parted
$(MAKE) openvpn
@ -70,7 +71,7 @@ ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd2 hd51 vusolo4k vuduo4k vuduo4kse v
$(MAKE) minicom
$(MAKE) mc
endif
ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd51 vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse vuduo))
ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd51 hd6x vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse vuduo))
$(MAKE) gptfdisk
$(MAKE) rsync
$(MAKE) ofgwrite

89
make/target-blobs.mk

@ -8,8 +8,11 @@
blobs: $(BLOBS_DEPS)
$(MAKE) firmware
$(MAKE) $(BOXMODEL)-drivers
ifeq ($(BOXMODEL), $(filter $(BOXMODEL), hd51 bre2ze4k h7 vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse))
ifeq ($(BOXMODEL), $(filter $(BOXMODEL), hd51 bre2ze4k h7 hd60 hd61 vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse))
$(MAKE) $(BOXMODEL)-libgles
ifeq ($(BOXMODEL), $(filter $(BOXMODEL), hd60 hd61))
$(MAKE) $(BOXMODEL)-libs
endif
endif
ifeq ($(BOXMODEL), $(filter $(BOXMODEL), vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse))
$(MAKE) vuplus-platform-util
@ -52,6 +55,14 @@ H7-DRIVERS_VER = 20191123
H7-DRIVERS_SOURCE = h7-drivers-$(KERNEL_VER)-$(H7-DRIVERS_VER).zip
H7-DRIVERS_SITE = http://source.mynonpublic.com/zgemma
HD60-DRIVERS_VER = 20190319
HD60-DRIVERS_SOURCE = hd60-drivers-$(KERNEL_VER)-$(HD60-DRIVERS_VER).zip
HD60-DRIVERS_SITE = http://downloads.mutant-digital.net/hd60
HD61-DRIVERS_VER = 20190711
HD61-DRIVERS_SOURCE = hd61-drivers-$(KERNEL_VER)-$(HD61-DRIVERS_VER).zip
HD61-DRIVERS_SITE = http://downloads.mutant-digital.net/hd61
VUSOLO4K-DRIVERS_VER = 20190424
VUSOLO4K-DRIVERS_SOURCE = vuplus-dvb-proxy-vusolo4k-3.14.28-$(VUSOLO4K-DRIVERS_VER).r0.tar.gz
VUSOLO4K-DRIVERS_SITE = http://archive.vuplus.com/download/build_support/vuplus
@ -139,6 +150,15 @@ h7-drivers: $(ARCHIVE)/$(BOXMODEL-DRIVERS_SOURCE) | $(TARGET_DIR)
make depmod
$(TOUCH)
hd60-drivers \
hd61-drivers: $(ARCHIVE)/$(BOXMODEL-DRIVERS_SOURCE) | $(TARGET_DIR)
mkdir -p $(TARGET_MODULES_DIR)/extra
unzip -o $(ARCHIVE)/$(BOXMODEL-DRIVERS_SOURCE) -d $(TARGET_MODULES_DIR)/extra
rm -f $(TARGET_MODULES_DIR)/extra/hi_play.ko
mv $(TARGET_MODULES_DIR)/extra/turnoff_power $(TARGET_DIR)/bin
make depmod
$(TOUCH)
vusolo4k-drivers \
vuduo4k-drivers \
vuduo4kse-drivers \
@ -170,6 +190,19 @@ H7-LIBGLES_TMP = $(EMPTY)
H7-LIBGLES_SOURCE = h7-v3ddriver-$(H7-LIBGLES_VER).zip
H7-LIBGLES_SITE = http://source.mynonpublic.com/zgemma
HD60-LIBGLES_VER = 20181201
HD60-LIBGLES_TMP = $(EMPTY)
HD60-LIBGLES_SOURCE = hd60-mali-$(HD60-LIBGLES_VER).zip
HD60-LIBGLES_SITE = http://downloads.mutant-digital.net/hd60
HD61-LIBGLES_VER = 20181201
HD61-LIBGLES_TMP = $(EMPTY)
HD61-LIBGLES_SOURCE = hd61-mali-$(HD61-LIBGLES_VER).zip
HD61-LIBGLES_SITE = http://downloads.mutant-digital.net/hd61
HD6x-LIBGLES-HEADERS_SOURCE = libgles-mali-utgard-headers.zip
HD6x-LIBGLES-HEADERS_SITE = https://github.com/HD-Digital/meta-gfutures/raw/release-6.2/recipes-bsp/mali/files
VUSOLO4K-LIBGLES_VER = $(VUSOLO4K-DRIVERS_VER)
VUSOLO4K-LIBGLES_TMP = libgles-vusolo4k
VUSOLO4K-LIBGLES_SOURCE = libgles-vusolo4k-17.1-$(VUSOLO4K-LIBGLES_VER).r0.tar.gz
@ -225,6 +258,25 @@ h7-libgles: $(ARCHIVE)/$(BOXMODEL-LIBGLES_SOURCE) | $(TARGET_DIR)
ln -sf libv3ddriver.so $(TARGET_LIB_DIR)/libGLESv2.so
$(TOUCH)
$(ARCHIVE)/$(HD6x-LIBGLES-HEADERS_SOURCE):
$(DOWNLOAD) $(HD6x-LIBGLES-HEADERS_SITE)/$(HD6x-LIBGLES-HEADERS_SOURCE)
hd6x-libgles-headers: $(ARCHIVE)/$(HD6x-LIBGLES-HEADERS_SOURCE) | $(TARGET_DIR)
unzip -o $(ARCHIVE)/$(HD6x-LIBGLES-HEADERS_SOURCE) -d $(TARGET_INCLUDE_DIR)
$(TOUCH)
hd60-libgles \
hd61-libgles: $(ARCHIVE)/$(BOXMODEL-LIBGLES_SOURCE) | $(TARGET_DIR)
unzip -o $(ARCHIVE)/$(BOXMODEL-LIBGLES_SOURCE) -d $(TARGET_LIB_DIR)
$(CD) $(TARGET_LIB_DIR); \
ln -sf libMali.so libmali.so; \
ln -sf libMali.so libEGL.so.1.4; ln -sf libEGL.so.1.4 libEGL.so.1; ln -sf libEGL.so.1 libEGL.so; \
ln -sf libMali.so libGLESv1_CM.so.1.1; ln -sf libGLESv1_CM.so.1.1 libGLESv1_CM.so.1; ln -sf libGLESv1_CM.so.1 libGLESv1_CM.so; \
ln -sf libMali.so libGLESv2.so.2.0; ln -sf libGLESv2.so.2.0 libGLESv2.so.2; ln -sf libGLESv2.so.2 libGLESv2.so; \
ln -sf libMali.so libgbm.so
$(REWRITE_PKGCONF_PC)
$(TOUCH)
vusolo4k-libgles \
vuduo4k-libgles \
vuduo4kse-libgles \
@ -244,6 +296,41 @@ vuplus-libgles: $(ARCHIVE)/$(BOXMODEL-LIBGLES_SOURCE) | $(TARGET_DIR)
# -----------------------------------------------------------------------------
HD60-LIBS_VER = 20200622
HD60-LIBS_TMP = hiplay
HD60-LIBS_SOURCE = hd60-libs-$(HD60-LIBS_VER).zip
HD60-LIBS_SITE = http://downloads.mutant-digital.net/hd60
HD61-LIBS_VER = 20200622
HD61-LIBS_TMP = hiplay
HD61-LIBS_SOURCE = hd61-libs-$(HD61-LIBS_VER).zip
HD61-LIBS_SITE = http://downloads.mutant-digital.net/hd61
# -----------------------------------------------------------------------------
BOXMODEL-LIBS_VER = $($(call UPPERCASE,$(BOXMODEL))-LIBS_VER)
BOXMODEL-LIBS_TMP = $($(call UPPERCASE,$(BOXMODEL))-LIBS_TMP)
BOXMODEL-LIBS_SOURCE = $($(call UPPERCASE,$(BOXMODEL))-LIBS_SOURCE)
BOXMODEL-LIBS_SITE = $($(call UPPERCASE,$(BOXMODEL))-LIBS_SITE)
ifneq ($(BOXMODEL-LIBS_SOURCE),$(EMPTY))
$(ARCHIVE)/$(BOXMODEL-LIBS_SOURCE):
$(DOWNLOAD) $(BOXMODEL-LIBS_SITE)/$(BOXMODEL-LIBS_SOURCE)
endif
hd60-libs \
hd61-libs: $(ARCHIVE)/$(BOXMODEL-LIBS_SOURCE) | $(TARGET_DIR)
$(REMOVE)/$(BOXMODEL-LIBS_TMP)
unzip -o $(ARCHIVE)/$(BOXMODEL-LIBS_SOURCE) -d $(BUILD_TMP)/$(BOXMODEL-LIBS_TMP)
mkdir -p $(TARGET_LIB_DIR)/hisilicon
$(INSTALL_EXEC) $(BUILD_TMP)/$(BOXMODEL-LIBS_TMP)/hisilicon/* $(TARGET_LIB_DIR)/hisilicon
$(INSTALL_EXEC) $(BUILD_TMP)/$(BOXMODEL-LIBS_TMP)/ffmpeg/* $(TARGET_LIB_DIR)/hisilicon
ln -sf /lib/ld-linux-armhf.so.3 $(TARGET_LIB_DIR)/hisilicon/ld-linux.so
$(REMOVE)/$(BOXMODEL-LIBS_TMP)
$(TOUCH)
# -----------------------------------------------------------------------------
VUSOLO4K-PLATFORM-UTIL_VER = $(VUSOLO4K-DRIVERS_VER)
VUSOLO4K-PLATFORM-UTIL_TMP = platform-util-vusolo4k
VUSOLO4K-PLATFORM-UTIL_SOURCE = platform-util-vusolo4k-17.1-$(VUSOLO4K-PLATFORM-UTIL_VER).r0.tar.gz

4
make/target-libs-static.mk

@ -4,7 +4,7 @@
# -----------------------------------------------------------------------------
LIBS-STATIC =
ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd2 hd51 vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse))
ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd2 hd51 hd6x vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse))
LIBS-STATIC += cortex-strings
endif
@ -20,7 +20,7 @@ CORTEX-STRINGS_SITE = http://git.linaro.org/git-ro/toolchain/cortex-strings.gi
$(ARCHIVE)/$(CORTEX-STRINGS_SOURCE):
$(GET-GIT-ARCHIVE) $(CORTEX-STRINGS_SITE) $(CORTEX-STRINGS_VER) $(@F) $(ARCHIVE)
CORTEX-STRINGS_CONF = $(if $(filter $(BOXSERIES), hd51 vusolo4k vuduo4k vuultimo4k vuzero4k vuuno4k vuuno4kse),--with-neon,--without-neon)
CORTEX-STRINGS_CONF = $(if $(filter $(BOXSERIES), hd51 hd6x vusolo4k vuduo4k vuultimo4k vuzero4k vuuno4k vuuno4kse),--with-neon,--without-neon)
cortex-strings: $(STATIC_LIB_DIR)/libcortex-strings.la
$(STATIC_LIB_DIR)/libcortex-strings.la: $(ARCHIVE)/$(CORTEX-STRINGS_SOURCE) | $(STATIC_DIR)

2
make/target-libs.mk

@ -208,7 +208,7 @@ LIBPNG_PATCH = libpng-Disable-pngfix-and-png-fix-itxt.patch
LIBPNG_DEPS = zlib
LIBPNG_CONF = $(if $(filter $(BOXSERIES), hd51 vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse),--enable-arm-neon,--disable-arm-neon)
LIBPNG_CONF = $(if $(filter $(BOXSERIES), hd51 hd6x vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse),--enable-arm-neon,--disable-arm-neon)
libpng: $(LIBPNG_DEPS) $(ARCHIVE)/$(LIBPNG_SOURCE) | $(TARGET_DIR)
$(REMOVE)/$(LIBPNG_TMP)

15
make/target-scripts.mk

@ -25,6 +25,7 @@ init-scripts: \
$(TARGET_DIR)/etc/init.d/swap \
$(TARGET_DIR)/etc/init.d/sys_update.sh \
$(TARGET_DIR)/etc/init.d/syslogd \
$(TARGET_DIR)/etc/init.d/suspend \
$(TARGET_DIR)/etc/init.d/user-initscripts
$(TARGET_DIR)/etc/init.d/globals:
@ -79,23 +80,23 @@ $(TARGET_DIR)/etc/init.d/networking:
$(UPDATE-RC.D) $(@F) stop 98 0 6 .
$(TARGET_DIR)/etc/init.d/partitions-by-name:
ifeq ($(BOXMODEL), $(filter $(BOXMODEL), hd51 bre2ze4k h7))
ifeq ($(BOXMODEL), $(filter $(BOXMODEL), hd51 bre2ze4k h7 hd60 hd61))
$(INSTALL_EXEC) -D $(TARGET_FILES)/scripts/partitions-by-name.init $(@)
endif
$(TARGET_DIR)/etc/init.d/proc:
ifeq ($(BOXMODEL), $(filter $(BOXMODEL), hd51 bre2ze4k h7 vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse vuduo))
ifeq ($(BOXMODEL), $(filter $(BOXMODEL), hd51 bre2ze4k h7 hd60 hd61 vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse vuduo))
$(INSTALL_EXEC) -D $(TARGET_FILES)/scripts/proc.init $(@)
$(UPDATE-RC.D) $(@F) start 90 S .
endif
$(TARGET_DIR)/etc/init.d/resizerootfs:
ifeq ($(BOXMODEL), $(filter $(BOXMODEL), hd51 bre2ze4k h7))
ifeq ($(BOXMODEL), $(filter $(BOXMODEL), hd51 bre2ze4k h7 hd60 hd61))
$(INSTALL_EXEC) -D $(TARGET_FILES)/scripts/resizerootfs.init $(@)
endif
$(TARGET_DIR)/etc/init.d/swap:
ifeq ($(BOXMODEL), $(filter $(BOXMODEL), hd51 bre2ze4k h7 vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse vuduo))
ifeq ($(BOXMODEL), $(filter $(BOXMODEL), hd51 bre2ze4k h7 hd60 hd61 vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse vuduo))
$(INSTALL_EXEC) -D $(TARGET_FILES)/scripts/swap.init $(@)
$(UPDATE-RC.D) $(@F) stop 98 0 6 .
endif
@ -107,6 +108,12 @@ $(TARGET_DIR)/etc/init.d/syslogd:
$(INSTALL_EXEC) -D $(TARGET_FILES)/scripts/syslogd.init $(@)
$(UPDATE-RC.D) $(@F) stop 98 0 6 .
$(TARGET_DIR)/etc/init.d/suspend:
ifeq ($(BOXMODEL), $(filter $(BOXMODEL), hd60 hd61))
$(INSTALL_EXEC) -D $(TARGET_FILES)/scripts/suspend.init $(@)
$(UPDATE-RC.D) $(@F) start 89 0 .
endif
$(TARGET_DIR)/etc/init.d/user-initscripts:
$(INSTALL_EXEC) -D $(TARGET_FILES)/scripts/user-initscripts.init $(@)
$(UPDATE-RC.D) $(@F) defaults 98 01

4
make/target-tools.mk

@ -45,7 +45,7 @@ define BUSYBOX_INSTALL_CONFIG
$(call KCONFIG_SET_OPT,CONFIG_PREFIX,"$(TARGET_DIR)",$(BUSYBOX_BUILD_CONFIG))
endef
ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd2 hd51 vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse vuduo))
ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd2 hd51 hd6x vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse vuduo))
define BUSYBOX_SET_BLKDISCARD
$(call KCONFIG_ENABLE_OPT,CONFIG_BLKDISCARD,$(BUSYBOX_BUILD_CONFIG))
@ -56,7 +56,7 @@ ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd2 hd51 vusolo4k vuduo4k vuduo4kse v
$(call KCONFIG_ENABLE_OPT,CONFIG_FEATURE_IFUPDOWN_IPV6,$(BUSYBOX_BUILD_CONFIG))
endef
ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd51 vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse vuduo))
ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd51 hd6x vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse vuduo))
define BUSYBOX_SET_SWAP
$(call KCONFIG_ENABLE_OPT,CONFIG_SWAPON,$(BUSYBOX_BUILD_CONFIG))

2722
patches/hi3798mv200-support.patch

File diff suppressed because it is too large

47
patches/kernel/gfutures/4_4_0001-remote.patch

@ -0,0 +1,47 @@
---
drivers/hisilicon/ir/Kconfig | 29 -----------------------------
1 file changed, 29 deletions(-)
diff --git a/drivers/hisilicon/ir/Kconfig b/drivers/hisilicon/ir/Kconfig
index 57e1fe52..45976f03 100644
--- a/drivers/hisilicon/ir/Kconfig
+++ b/drivers/hisilicon/ir/Kconfig
@@ -12,35 +12,6 @@ config HISI_IR
---help---
Say Y here if you want to use hisilicon remote control.
-if RC_DECODERS
-config IR_NEC_2HDR_40BIT_DECODER
- tristate "Enable IR raw decoder for the NEC 2 head 40bit protocol"
- depends on RC_CORE
- select BITREVERSE
- default y
- ---help---
- Enable this option if you have IR with NEC protocol, and
- if the IR is decoded in software
-
-config IR_NEC_FULL_40BIT_DECODER
- tristate "Enable IR raw decoder for the NEC full 40bit protocol"
- depends on RC_CORE
- select BITREVERSE
- default y
- ---help---
- Enable this option if you have IR with NEC protocol, and
- if the IR is decoded in software
-
-config IR_NEC_FULL_48BIT_DECODER
- tristate "Enable IR raw decoder for the NEC full 48bit protocol"
- depends on RC_CORE
- select BITREVERSE
- default y
- ---help---
- Enable this option if you have IR with NEC protocol, and
- if the IR is decoded in software
-
-endif #RC_DECODERS
if HISI_IR
menu "Hisilicon IR key map driver"
--
2.17.1

85
patches/kernel/gfutures/4_4_0002-log2-give-up-on-gcc-constant-optimizations.patch

@ -0,0 +1,85 @@
From 05a1328f10d503e2b3156226cef36b0d0c4df7b2 Mon Sep 17 00:00:00 2001
From: Nicker <nickersk@gmail.com>
Date: Mon, 23 Jul 2018 14:53:12 +0200
Subject: [PATCH 2/2] log2 give up on gcc constant optimizations
diff --git a/include/linux/log2.h b/include/linux/log2.h
index fd7ff3d9..f38fae23 100644
--- a/include/linux/log2.h
+++ b/include/linux/log2.h
@@ -15,12 +15,6 @@
#include <linux/types.h>
#include <linux/bitops.h>
-/*
- * deal with unrepresentable constant logarithms
- */
-extern __attribute__((const, noreturn))
-int ____ilog2_NaN(void);
-
/*
* non-constant log of base 2 calculators
* - the arch may override these in asm/bitops.h if they can be implemented
@@ -85,7 +79,7 @@ unsigned long __rounddown_pow_of_two(unsigned long n)
#define ilog2(n) \
( \
__builtin_constant_p(n) ? ( \
- (n) < 1 ? ____ilog2_NaN() : \
+ (n) < 2 ? 0 : \
(n) & (1ULL << 63) ? 63 : \
(n) & (1ULL << 62) ? 62 : \
(n) & (1ULL << 61) ? 61 : \
@@ -148,10 +142,7 @@ unsigned long __rounddown_pow_of_two(unsigned long n)
(n) & (1ULL << 4) ? 4 : \
(n) & (1ULL << 3) ? 3 : \
(n) & (1ULL << 2) ? 2 : \
- (n) & (1ULL << 1) ? 1 : \
- (n) & (1ULL << 0) ? 0 : \
- ____ilog2_NaN() \
- ) : \
+ 1 ) : \
(sizeof(n) <= 4) ? \
__ilog2_u32(n) : \
__ilog2_u64(n) \
diff --git a/tools/include/linux/log2.h b/tools/include/linux/log2.h
index 41446668..d5677d39 100644
--- a/tools/include/linux/log2.h
+++ b/tools/include/linux/log2.h
@@ -12,12 +12,6 @@
#ifndef _TOOLS_LINUX_LOG2_H
#define _TOOLS_LINUX_LOG2_H
-/*
- * deal with unrepresentable constant logarithms
- */
-extern __attribute__((const, noreturn))
-int ____ilog2_NaN(void);
-
/*
* non-constant log of base 2 calculators
* - the arch may override these in asm/bitops.h if they can be implemented
@@ -78,7 +72,7 @@ unsigned long __rounddown_pow_of_two(unsigned long n)
#define ilog2(n) \
( \
__builtin_constant_p(n) ? ( \
- (n) < 1 ? ____ilog2_NaN() : \
+ (n) < 2 ? 0 : \
(n) & (1ULL << 63) ? 63 : \
(n) & (1ULL << 62) ? 62 : \
(n) & (1ULL << 61) ? 61 : \
@@ -141,10 +135,7 @@ unsigned long __rounddown_pow_of_two(unsigned long n)
(n) & (1ULL << 4) ? 4 : \
(n) & (1ULL << 3) ? 3 : \
(n) & (1ULL << 2) ? 2 : \
- (n) & (1ULL << 1) ? 1 : \
- (n) & (1ULL << 0) ? 0 : \
- ____ilog2_NaN() \
- ) : \
+ 1 ) : \
(sizeof(n) <= 4) ? \
__ilog2_u32(n) : \
__ilog2_u64(n) \
--
2.17.1

22
patches/kernel/gfutures/4_4_0003-dont-mark-register-as-const.patch

@ -0,0 +1,22 @@
From 94991ba321b4b112656998e586b46107afaa50d6 Mon Sep 17 00:00:00 2001
From: Nicker <nickersk@gmail.com>
Date: Mon, 23 Jul 2018 15:25:12 +0200
Subject: [PATCH 3/3] dont mark register as const
diff --git a/arch/arm/include/asm/uaccess.h b/arch/arm/include/asm/uaccess.h
index 7fb59199..7665bd2f 100644
--- a/arch/arm/include/asm/uaccess.h
+++ b/arch/arm/include/asm/uaccess.h
@@ -251,7 +251,7 @@ extern int __put_user_8(void *, unsigned long long);
({ \
unsigned long __limit = current_thread_info()->addr_limit - 1; \
const typeof(*(p)) __user *__tmp_p = (p); \
- register const typeof(*(p)) __r2 asm("r2") = (x); \
+ register typeof(*(p)) __r2 asm("r2") = (x); \
register const typeof(*(p)) __user *__p asm("r0") = __tmp_p; \
register unsigned long __l asm("r1") = __limit; \
register int __e asm("r0"); \
--
2.17.1

11
patches/kernel/gfutures/4_4_ieee80211-increase-scan-result-expire-time.patch

@ -0,0 +1,11 @@
--- a/net/wireless/scan.c
+++ b/net/wireless/scan.c
@@ -56,7 +56,7 @@
* also linked into the probe response struct.
*/
-#define IEEE80211_SCAN_RESULT_EXPIRE (7 * HZ)
+#define IEEE80211_SCAN_RESULT_EXPIRE (30 * HZ)
static void bss_free(struct cfg80211_internal_bss *bss)
{

11
skel-root/general/scripts/suspend.init

@ -0,0 +1,11 @@
#!/bin/sh
runlevel=runlevel | cut -d' ' -f2
if [ "$runlevel" != "0" ] ; then
exit 0
fi
mount -t sysfs sys /sys
/bin/turnoff_power

2
skel-root/hd51/etc/mdev.conf

@ -76,7 +76,7 @@ fp0 root:root 0660 =dbox/fp0
# Disc devices
sr[0-9] root:root 0664 */lib/mdev/fs/mdev-mount
# Memory cards / eMMC-Partitions
mmcblk0p1 root:root 0664 @mount -t vfat /dev/$MDEV /boot 2>&1 >/dev/null
mmcblk0p%(BOOT_PARTITION) root:root 0664 @mount -t vfat /dev/$MDEV /boot 2>&1 >/dev/null
mmcblk[0-9]p[0-9] root:root 0664 */lib/mdev/fs/mdev-mmcblk
# WLAN devices

5
skel-root/hd6x/etc/exports

@ -0,0 +1,5 @@
# /etc/exports: the access control list for filesystems which may be exported to NFS clients.
#
# Example for client mount: "mount -t nfs -o nolock,soft 192.168.0.6:/media/sda1/movies /tmp/movies"
#
/media/sda1/movies 192.168.0.0/16(rw,no_root_squash,no_subtree_check)

14
skel-root/hd6x/etc/filesystems

@ -0,0 +1,14 @@
ext4
ext3
ext2
nodev proc
nodev devpts
ntfs
ntfs-3g
fuseblk
vfat
exfat
exfat_fuse
udf
iso9660
*

17
skel-root/hd6x/etc/group

@ -0,0 +1,17 @@
root:x:0:
daemon:x:1:
bin:x:2:
sys:x:3:
adm:x:4:
tty:x:5:
disk:x:6:
wheel:x:10:root
utmp:x:43:
staff:x:50:
haldaemon:x:68:
dbus:x:81:
netdev:x:82:
users:x:100:
default:x:1000:
nobody:x:65533:nobody
nogroup:x:65534:nogroup

1
skel-root/hd6x/etc/hosts

@ -0,0 +1 @@
127.0.0.1 localhost

5
skel-root/hd6x/etc/inetd.conf

@ -0,0 +1,5 @@
# /etc/inetd.conf: Internet superserver configuration database
#
# <service_name> <sock_type> <proto> <flags> <user> <server_path> <args>
#
telnet stream tcp nowait root /sbin/telnetd /sbin/telnetd

98
skel-root/hd6x/etc/init.d/rcS

@ -0,0 +1,98 @@
#!/bin/sh
runlevel=S
prevlevel=N
umask 022
export runlevel prevlevel
# source defaults
. /etc/default/rcS
. /etc/profile
. /etc/init.d/functions
. /etc/init.d/globals
SHOWINFO "start"
mount -t proc proc /proc
# init system
SHOWINFO "creating and mounting system directories ..."
mount -t devtmpfs devtmpfs /dev
mount -t sysfs sys /sys
mount -t tmpfs tmp /tmp
mount -t tmpfs media /media
mount -t tmpfs srv /srv
mount -t tmpfs mnt /mnt
for dir in autofs epg logos logos/events movies music pictures plugins; do
mkdir -p /mnt/${dir}
done
mkdir -p /dev/pts
mount -t devpts devpts /dev/pts
mkdir -p /dev/shm/usb
service partitions-by-name start
service resizerootfs start
# for nfsd
mkdir -p /var/lib/nfs
mount -t tmpfs nfs /var/lib/nfs
# for samba
mkdir -p /var/samba
mount -t tmpfs samba /var/samba
# for wget
mkdir -p /var/run/wget
# for wireless drivers
mkdir -p /var/run/wpa_supplicant
# set level of messages printed to console
dmesg -n 1
# set dummy date
date -s "%(YEAR)-01-01 00:00"
# automatic restore
if [ -e /var/backup_flash.tar.gz ]; then
/bin/restore_flash.sh
fi
# update system
if [ -x /etc/init.d/sys_update.sh ]; then
/etc/init.d/sys_update.sh
fi
# set hostname
service hostname start
# logging as much as possible
service syslogd start
# load modules / create nodes
load_module extra/%(BOXMODEL)_1.ko
load_module extra/%(BOXMODEL)_2.ko
load_module extra/%(BOXMODEL)_3.ko
load_module extra/%(BOXMODEL)_4.ko
# show bootlogo
showiframe.sh bootlogo.m2v
# mdev coldplug for node permissions
service mdev start
# fire up network/wlan
service networking start
service ntpdate start
# say hi to everyone
echo "Booting... NI" > /dev/dbox/oled0
# trap CTRL-C only in this shell so we can interrupt subprocesses
trap ":" INT QUIT TSTP
# call all parts in order
exec /etc/init.d/rc S
SHOWINFO "done"

12
skel-root/hd6x/etc/issue.net

@ -0,0 +1,12 @@
### ### ###
### ## ##
#### ## ##
## ## ## ##
## #### ##
## ### ##
## ## ## http://www.neutrino-images.de
#
Kernel: %r %v @%m
Date: %d, %t

95
skel-root/hd6x/etc/mdev.conf

@ -0,0 +1,95 @@
# /etc/mdev.conf
# Syntax:
# [-]devicename_regex user:group mode [=path]|[>path]|[!] [@|$|*cmd args...]
# [-]$ENVVAR=regex user:group mode [=path]|[>path]|[!] [@|$|*cmd args...]
# [-]@maj,min[-min2] user:group mode [=path]|[>path]|[!] [@|$|*cmd args...]
#
# [-]: do not stop on this match, continue reading mdev.conf
# =: move, >: move and create a symlink
# !: do not create device node
# @|$|*: run cmd if $ACTION=remove, @cmd if $ACTION=add, *cmd in all cases
# Support module loading on hotplug
#$MODALIAS=.* root:root 0660 @/bin/busybox modprobe "$MODALIAS"
null root:root 0666
zero root:root 0666
full root:root 0666
random root:root 0666
urandom root:root 0444
cpu_dma_latency root:root 0660
initctl root:root 0600
ircomm[0-9].* root:root 0660
kmem root:root 0640
kmsg root:root 0660
log root:root 0666
loop[0-9].* root:root 0640
mem root:root 0640
network_latency root:root 0660
network_throughput root:root 0660
port root:root 0640
ptmx root:root 0666
ram[0-9].* root:root 0640
vcs.* root:root 0660
rtc0 root:root 0666 =misc/rtc
tun[0-9]* root:root 0640 =net/
pcm.* root:root 0660 =snd/
control.* root:root 0660 =snd/
timer root:root 0660 =snd/
i2c-([0-9]) root:root 0660 >i2c/%1
# Console device
console root:root 0600
# TTY devices
tty root:root 0666
tty.* root:root 0620
# DVB devices
dvb([0-9])\.(.*)([0-9]) root:root 0660 >dvb/adapter%1/%2%3
# Input layer
event.* root:root 0640 =input/
mice root:root 0640 =input/
mouse.* root:root 0640 =input/
fb([0-2]) root:root 0660 >fb/%1
lcd0 root:root 0660 =dbox/lcd0
oled0 root:root 0660 =dbox/oled0
dboxlcd root:root 0660 =dbox/lcd0
pvr root:root 0660 =misc/pvr
vtuner([0-9]) root:root 0660 =misc/
fp0 root:root 0660 =dbox/fp0
# USB devices
#usbdev.* root:root 0660 */lib/mdev/usb/mdev-usb
[0-3]-.*:1.0 root:root 0660 */lib/mdev/usb/mdev-usb
# Mass-storage devices
[hs]d[a-z][0-9]? root:root 0664 */lib/mdev/fs/mdev-mount
# Disc devices
sr[0-9] root:root 0664 */lib/mdev/fs/mdev-mount
# Memory cards / eMMC-Partitions
mmcblk0p%(BOOT_PARTITION) root:root 0664 @mount -t vfat /dev/$MDEV /boot 2>&1 >/dev/null
mmcblk[0-9]p[0-9] root:root 0664 */lib/mdev/fs/mdev-mmcblk
# WLAN devices
ra[0-9]* root:root 0644 */lib/mdev/net/mdev-wlan
rausb[0-9]* root:root 0644 */lib/mdev/net/mdev-wlan
wlan[0-9]* root:root 0644 */lib/mdev/net/mdev-wlan
# Block devices: group -> disk
mtdblock([0-9]) root:root 0660 >mtdblock/%1
# Double up flash characters devices
mtd([0-9]) root:root 0660 >mtd/%1
mtd([0-9])+ro root:root 0600
# Log all other devices. Right now useful only for debuging.
.* root:root 0600 */lib/mdev/common/mdev-log-only

4
skel-root/hd6x/etc/network/interfaces

@ -0,0 +1,4 @@
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp

47
skel-root/hd6x/etc/nsswitch.conf

@ -0,0 +1,47 @@
# /etc/nsswitch.conf
#
# An example Name Service Switch config file. This file should be
# sorted with the most-used services at the beginning.
#
# The entry '[NOTFOUND=return]' means that the search for an
# entry should stop if the search in the previous entry turned
# up nothing. Note that if the search failed due to some other reason
# (like no NIS server responding) then the search continues with the
# next entry.
#
# Legal entries are:
#
# nisplus or nis+ Use NIS+ (NIS version 3)
# nis or yp Use NIS (NIS version 2), also called YP
# dns Use DNS (Domain Name Service)
# files Use the local files
# db Use the local database (.db) files
# compat Use NIS on compat mode
# hesiod Use Hesiod for user lookups
# [NOTFOUND=return] Stop searching if not found so far
#
# To use db, put the "db" in front of "files" for entries you want to be
# looked up first in the databases
#
# Example:
#passwd: db files nisplus nis
passwd: files
shadow: files
group: files
hosts: files dns
ethers: files
netmasks: files
networks: files
protocols: files
rpc: files
services: files
# Example - obey only what nisplus tells us...
#services: nisplus [NOTFOUND=return] files
#bootparams: nisplus [NOTFOUND=return] files
#netgroup: nisplus
#publickey: nisplus
#automount: files nisplus
#aliases: files nisplus

5
skel-root/hd6x/etc/passwd

@ -0,0 +1,5 @@
root:gbAdujXVMYE.6:0:0::/root:/bin/sh
sshd:*:65531:65534::/:/bin/false
ftp:*:65532:65534::/:/bin/false
ftpguest:acFuqMq23IVqc:65533:65534::/media:/bin/false
nobody:*:65534:65534::/:/bin/false

17
skel-root/hd6x/etc/profile

@ -0,0 +1,17 @@
# /etc/profile: system-wide profile file for the shell
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/var/bin
TERM=linux
PS1='[\h] \w \$ '
alias l='ls -al'
alias ll='ls -l'
alias dir='ls -lA'
alias ..='cd ..'
alias mc='mc -a'
alias sc='setconsole'
alias sr='setconsole -r'
# Add your own modifications to /etc/profile.local!
test -e /etc/profile.local && . /etc/profile.local

1
skel-root/hd6x/etc/profile.local

@ -0,0 +1 @@
# /etc/profile.local: your profile modifications for the shell

34
skel-root/hd6x/etc/protocols

@ -0,0 +1,34 @@
# /etc/protocols: This file describes the various protocols that are
# available from the TCP/IP subsystem. It should be
# consulted instead of using the numbers in the ARPA
# include files, or, worse, just guessing them.
# Internet (IP) protocols
#
ip 0 IP # internet protocol v4
icmp 1 ICMP # internet control message protocol
igmp 2 IGMP # internet group multicast protocol
ggp 3 GGP # gateway-gateway protocol
tcp 6 TCP # transmission control protocol
egp 8 EGP # exterior gateway protocol
pup 12 PUP # PARC universal packet protocol
udp 17 UDP # user datagram protocol
hmp 20 HMP # host monitoring protocol
idp 22 IDP # WhatsThis?
rdp 27 RDP # "reliable datagram" protocol
iso-tp4 29 ISO-TP4 # ISO Transport Protocol Class 4
# Internet (IPv6) extension headers
#
hopopt 0 HOPOPT # Hop-by-hop optons for IPv6
ipv6 41 IPv6 # IPv6
ipv6-route 43 IPv6-Route # Routing Header for IPv6
ipv6-frag 44 IPv6-Frag # Fragment Header for IPv6
ipv6-crypt 50 IPv6-Crypt # Encryption Header for IPv6
ipv6-auth 51 IPv6-Auth # Authentication Header for IPv6
icmpv6 58 IPv6-ICMP ICMPV6 ipv6-icmp icmp6 # ICMP for IPv6
ipv6-nonxt 59 IPv6-NoNxt # No Next Header for IPv6
ipv6-opts 60 IPv6-Opts # Destination Options for IPv6
iso-ip 80 ISO-IP # ISO Internet Protocol
encap 98 ENCAP # RFC1241 encapsulation
raw 255 RAW # RAW IP interface

544
skel-root/hd6x/etc/services

@ -0,0 +1,544 @@
# Network services, Internet style
#
# Note that it is presently the policy of IANA to assign a single well-known
# port number for both TCP and UDP; hence, officially ports have two entries
# even if the protocol doesn't support UDP operations.
#
# Updated from http://www.iana.org/assignments/port-numbers and other
# sources like http://www.freebsd.org/cgi/cvsweb.cgi/src/etc/services .
# New ports will be added on request if they have been officially assigned
# by IANA and used in the real-world or are needed by a debian package.
# If you need a huge list of used numbers please install the nmap package.
tcpmux 1/tcp # TCP port service multiplexer
echo 7/tcp
echo 7/udp
discard 9/tcp sink null
discard 9/udp sink null
systat 11/tcp users
daytime 13/tcp
daytime 13/udp
netstat 15/tcp
qotd 17/tcp quote
msp 18/tcp # message send protocol
msp 18/udp
chargen 19/tcp ttytst source
chargen 19/udp ttytst source
ftp-data 20/tcp
ftp 21/tcp
fsp 21/udp fspd
ssh 22/tcp # SSH Remote Login Protocol
ssh 22/udp
telnet 23/tcp
smtp 25/tcp mail
time 37/tcp timserver
time 37/udp timserver
rlp 39/udp resource # resource location
nameserver 42/tcp name # IEN 116
whois 43/tcp nicname
tacacs 49/tcp # Login Host Protocol (TACACS)
tacacs 49/udp
re-mail-ck 50/tcp # Remote Mail Checking Protocol
re-mail-ck 50/udp
domain 53/tcp nameserver # name-domain server
domain 53/udp nameserver
mtp 57/tcp # deprecated
tacacs-ds 65/tcp # TACACS-Database Service
tacacs-ds 65/udp
bootps 67/tcp # BOOTP server
bootps 67/udp
bootpc 68/tcp # BOOTP client
bootpc 68/udp
tftp 69/udp
gopher 70/tcp # Internet Gopher
gopher 70/udp
rje 77/tcp netrjs
finger 79/tcp
www 80/tcp http # WorldWideWeb HTTP
www 80/udp # HyperText Transfer Protocol
link 87/tcp ttylink
kerberos 88/tcp kerberos5 krb5 kerberos-sec # Kerberos v5
kerberos 88/udp kerberos5 krb5 kerberos-sec # Kerberos v5
supdup 95/tcp
hostnames 101/tcp hostname # usually from sri-nic
iso-tsap 102/tcp tsap # part of ISODE
acr-nema 104/tcp dicom # Digital Imag. & Comm. 300
acr-nema 104/udp dicom # Digital Imag. & Comm. 300
csnet-ns 105/tcp cso-ns # also used by CSO name server
csnet-ns 105/udp cso-ns
rtelnet 107/tcp # Remote Telnet
rtelnet 107/udp
pop2 109/tcp postoffice pop-2 # POP version 2
pop2 109/udp pop-2
pop3 110/tcp pop-3 # POP version 3
pop3 110/udp pop-3
sunrpc 111/tcp portmapper # RPC 4.0 portmapper
sunrpc 111/udp portmapper
auth 113/tcp authentication tap ident
sftp 115/tcp
uucp-path 117/tcp
nntp 119/tcp readnews untp # USENET News Transfer Protocol
ntp 123/tcp
ntp 123/udp # Network Time Protocol
pwdgen 129/tcp # PWDGEN service
pwdgen 129/udp # PWDGEN service
loc-srv 135/tcp epmap # Location Service
loc-srv 135/udp epmap
netbios-ns 137/tcp # NETBIOS Name Service
netbios-ns 137/udp
netbios-dgm 138/tcp # NETBIOS Datagram Service
netbios-dgm 138/udp
netbios-ssn 139/tcp # NETBIOS session service
netbios-ssn 139/udp
imap2 143/tcp imap # Interim Mail Access P 2 and 4
imap2 143/udp imap
snmp 161/tcp # Simple Net Mgmt Protocol
snmp 161/udp # Simple Net Mgmt Protocol
snmp-trap 162/tcp snmptrap # Traps for SNMP
snmp-trap 162/udp snmptrap # Traps for SNMP
cmip-man 163/tcp # ISO mgmt over IP (CMOT)
cmip-man 163/udp
cmip-agent 164/tcp
cmip-agent 164/udp
mailq 174/tcp # Mailer transport queue for Zmailer
mailq 174/udp # Mailer transport queue for Zmailer
xdmcp 177/tcp # X Display Mgr. Control Proto
xdmcp 177/udp
nextstep 178/tcp NeXTStep NextStep # NeXTStep window
nextstep 178/udp NeXTStep NextStep # server
bgp 179/tcp # Border Gateway Protocol
bgp 179/udp
prospero 191/tcp # Cliff Neuman's Prospero
prospero 191/udp
irc 194/tcp # Internet Relay Chat
irc 194/udp
smux 199/tcp # SNMP Unix Multiplexer
smux 199/udp
at-rtmp 201/tcp # AppleTalk routing
at-rtmp 201/udp
at-nbp 202/tcp # AppleTalk name binding
at-nbp 202/udp
at-echo 204/tcp # AppleTalk echo
at-echo 204/udp
at-zis 206/tcp # AppleTalk zone information
at-zis 206/udp
qmtp 209/tcp # Quick Mail Transfer Protocol
qmtp 209/udp # Quick Mail Transfer Protocol
z3950 210/tcp wais # NISO Z39.50 database
z3950 210/udp wais
ipx 213/tcp # IPX
ipx 213/udp
imap3 220/tcp # Interactive Mail Access
imap3 220/udp # Protocol v3
pawserv 345/tcp # Perf Analysis Workbench
pawserv 345/udp
zserv 346/tcp # Zebra server
zserv 346/udp
fatserv 347/tcp # Fatmen Server
fatserv 347/udp
rpc2portmap 369/tcp
rpc2portmap 369/udp # Coda portmapper
codaauth2 370/tcp
codaauth2 370/udp # Coda authentication server
clearcase 371/tcp Clearcase
clearcase 371/udp Clearcase
ulistserv 372/tcp # UNIX Listserv
ulistserv 372/udp
ldap 389/tcp # Lightweight Directory Access Protocol
ldap 389/udp
imsp 406/tcp # Interactive Mail Support Protocol
imsp 406/udp
https 443/tcp # http protocol over TLS/SSL
https 443/udp
snpp 444/tcp # Simple Network Paging Protocol
snpp 444/udp
microsoft-ds 445/tcp # Microsoft Naked CIFS
microsoft-ds 445/udp
saft 487/tcp # Simple Asynchronous File Transfer
saft 487/udp
isakmp 500/tcp # IPsec - Internet Security Association
isakmp 500/udp # and Key Management Protocol
rtsp 554/tcp # Real Time Stream Control Protocol
rtsp 554/udp # Real Time Stream Control Protocol
nqs 607/tcp # Network Queuing system
nqs 607/udp
npmp-local 610/tcp dqs313_qmaster # npmp-local / DQS
npmp-local 610/udp dqs313_qmaster
npmp-gui 611/tcp dqs313_execd # npmp-gui / DQS
npmp-gui 611/udp dqs313_execd
hmmp-ind 612/tcp dqs313_intercell # HMMP Indication / DQS
hmmp-ind 612/udp dqs313_intercell
ipp 631/tcp # Internet Printing Protocol
ipp 631/udp
#
# UNIX specific services
#
exec 512/tcp
biff 512/udp comsat
login 513/tcp
who 513/udp whod
shell 514/tcp cmd # no passwords used
syslog 514/udp
printer 515/tcp spooler # line printer spooler
talk 517/udp
ntalk 518/udp
route 520/udp router routed # RIP
timed 525/udp timeserver
tempo 526/tcp newdate
courier 530/tcp rpc
conference 531/tcp chat
netnews 532/tcp readnews
netwall 533/udp # for emergency broadcasts
gdomap 538/tcp # GNUstep distributed objects
gdomap 538/udp
uucp 540/tcp uucpd # uucp daemon
klogin 543/tcp # Kerberized `rlogin' (v5)
kshell 544/tcp krcmd # Kerberized `rsh' (v5)
afpovertcp 548/tcp # AFP over TCP
afpovertcp 548/udp
remotefs 556/tcp rfs_server rfs # Brunhoff remote filesystem
nntps 563/tcp snntp # NNTP over SSL
nntps 563/udp snntp
submission 587/tcp # Submission [RFC2476]
submission 587/udp
ldaps 636/tcp # LDAP over SSL
ldaps 636/udp
tinc 655/tcp # tinc control port
tinc 655/udp
silc 706/tcp
silc 706/udp
kerberos-adm 749/tcp # Kerberos `kadmin' (v5)
#
webster 765/tcp # Network dictionary
webster 765/udp
rsync 873/tcp
rsync 873/udp
ftps-data 989/tcp # FTP over SSL (data)
ftps 990/tcp
telnets 992/tcp # Telnet over SSL
telnets 992/udp
imaps 993/tcp # IMAP over SSL
imaps 993/udp
ircs 994/tcp # IRC over SSL
ircs 994/udp
pop3s 995/tcp # POP-3 over SSL
pop3s 995/udp
#
# From ``Assigned Numbers'':
#
#> The Registered Ports are not controlled by the IANA and on most systems
#> can be used by ordinary user processes or programs executed by ordinary
#> users.
#
#> Ports are used in the TCP [45,106] to name the ends of logical
#> connections which carry long term conversations. For the purpose of
#> providing services to unknown callers, a service contact port is
#> defined. This list specifies the port used by the server process as its
#> contact port. While the IANA can not control uses of these ports it
#> does register or list uses of these ports as a convienence to the
#> community.
#
socks 1080/tcp # socks proxy server
socks 1080/udp
proofd 1093/tcp
proofd 1093/udp
rootd 1094/tcp
rootd 1094/udp
openvpn 1194/tcp
openvpn 1194/udp
rmiregistry 1099/tcp # Java RMI Registry
rmiregistry 1099/udp
kazaa 1214/tcp
kazaa 1214/udp
nessus 1241/tcp # Nessus vulnerability
nessus 1241/udp # assessment scanner
lotusnote 1352/tcp lotusnotes # Lotus Note
lotusnote 1352/udp lotusnotes
ms-sql-s 1433/tcp # Microsoft SQL Server
ms-sql-s 1433/udp
ms-sql-m 1434/tcp # Microsoft SQL Monitor
ms-sql-m 1434/udp
ingreslock 1524/tcp
ingreslock 1524/udp
prospero-np 1525/tcp # Prospero non-privileged
prospero-np 1525/udp
datametrics 1645/tcp old-radius
datametrics 1645/udp old-radius
sa-msg-port 1646/tcp old-radacct
sa-msg-port 1646/udp old-radacct
kermit 1649/tcp
kermit 1649/udp
l2f 1701/tcp l2tp
l2f 1701/udp l2tp
radius 1812/tcp
radius 1812/udp
radius-acct 1813/tcp radacct # Radius Accounting
radius-acct 1813/udp radacct
unix-status 1957/tcp # remstats unix-status server
log-server 1958/tcp # remstats log server
remoteping 1959/tcp # remstats remoteping server
nfsd 2049/tcp nfs # NFS server daemon
nfsd 2049/udp nfs # NFS server daemon
rtcm-sc104 2101/tcp # RTCM SC-104 IANA 1/29/99
rtcm-sc104 2101/udp
cvspserver 2401/tcp # CVS client/server operations
cvspserver 2401/udp
venus 2430/tcp # codacon port
venus 2430/udp # Venus callback/wbc interface
venus-se 2431/tcp # tcp side effects
venus-se 2431/udp # udp sftp side effect
codasrv 2432/tcp # not used
codasrv 2432/udp # server port
codasrv-se 2433/tcp # tcp side effects
codasrv-se 2433/udp # udp sftp side effect
mon 2583/tcp # MON
mon 2583/udp
dict 2628/tcp # Dictionary server
dict 2628/udp
gpsd 2947/tcp
gpsd 2947/udp
gds_db 3050/tcp # InterBase server
gds_db 3050/udp
icpv2 3130/tcp icp # Internet Cache Protocol
icpv2 3130/udp icp
mysql 3306/tcp
mysql 3306/udp
nut 3493/tcp # Network UPS Tools
nut 3493/udp
distcc 3632/tcp # distributed compiler
distcc 3632/udp
daap 3689/tcp # Digital Audio Access Protocol
daap 3689/udp
svn 3690/tcp subversion # Subversion protocol
svn 3690/udp subversion
iax 4569/tcp # Inter-Asterisk eXchange
iax 4569/udp
radmin-port 4899/tcp # RAdmin Port
radmin-port 4899/udp
rfe 5002/udp # Radio Free Ethernet
rfe 5002/tcp
sip 5060/tcp # Session Initiation Protocol
sip 5060/udp
sip-tls 5061/tcp
sip-tls 5061/udp
xmpp-client 5222/tcp jabber-client # Jabber Client Connection
xmpp-client 5222/udp jabber-client
xmpp-server 5269/tcp jabber-server # Jabber Server Connection
xmpp-server 5269/udp jabber-server
cfengine 5308/tcp
cfengine 5308/udp
postgresql 5432/tcp postgres # PostgreSQL Database
postgresql 5432/udp postgres
x11 6000/tcp x11-0 # X Window System
x11 6000/udp x11-0
x11-1 6001/tcp
x11-1 6001/udp
x11-2 6002/tcp
x11-2 6002/udp
x11-3 6003/tcp
x11-3 6003/udp
x11-4 6004/tcp
x11-4 6004/udp
x11-5 6005/tcp
x11-5 6005/udp
x11-6 6006/tcp
x11-6 6006/udp
x11-7 6007/tcp
x11-7 6007/udp
gnutella-svc 6346/tcp # gnutella
gnutella-svc 6346/udp
gnutella-rtr 6347/tcp # gnutella
gnutella-rtr 6347/udp
afs3-fileserver 7000/tcp bbs # file server itself
afs3-fileserver 7000/udp bbs
afs3-callback 7001/tcp # callbacks to cache managers
afs3-callback 7001/udp
afs3-prserver 7002/tcp # users & groups database
afs3-prserver 7002/udp
afs3-vlserver 7003/tcp # volume location database
afs3-vlserver 7003/udp
afs3-kaserver 7004/tcp # AFS/Kerberos authentication
afs3-kaserver 7004/udp
afs3-volser 7005/tcp # volume managment server
afs3-volser 7005/udp
afs3-errors 7006/tcp # error interpretation service
afs3-errors 7006/udp
afs3-bos 7007/tcp # basic overseer process
afs3-bos 7007/udp
afs3-update 7008/tcp # server-to-server updater
afs3-update 7008/udp
afs3-rmtsys 7009/tcp # remote cache manager service
afs3-rmtsys 7009/udp
font-service 7100/tcp xfs # X Font Service
font-service 7100/udp xfs
bacula-dir 9101/tcp # Bacula Director
bacula-dir 9101/udp
bacula-fd 9102/tcp # Bacula File Daemon
bacula-fd 9102/udp
bacula-sd 9103/tcp # Bacula Storage Daemon
bacula-sd 9103/udp
amanda 10080/tcp # amanda backup services
amanda 10080/udp
hkp 11371/tcp # OpenPGP HTTP Keyserver
hkp 11371/udp # OpenPGP HTTP Keyserver
bprd 13720/tcp # VERITAS NetBackup
bprd 13720/udp
bpdbm 13721/tcp # VERITAS NetBackup
bpdbm 13721/udp
bpjava-msvc 13722/tcp # BP Java MSVC Protocol
bpjava-msvc 13722/udp
vnetd 13724/tcp # Veritas Network Utility
vnetd 13724/udp
bpcd 13782/tcp # VERITAS NetBackup
bpcd 13782/udp
vopied 13783/tcp # VERITAS NetBackup
vopied 13783/udp
wnn6 22273/tcp # wnn6
wnn6 22273/udp
#
# Datagram Delivery Protocol services
#
rtmp 1/ddp # Routing Table Maintenance Protocol
nbp 2/ddp # Name Binding Protocol
echo 4/ddp # AppleTalk Echo Protocol
zip 6/ddp # Zone Information Protocol
#=========================================================================
# The remaining port numbers are not as allocated by IANA.
#=========================================================================
# Kerberos (Project Athena/MIT) services
# Note that these are for Kerberos v4, and are unofficial. Sites running
# v4 should uncomment these and comment out the v5 entries above.
#
kerberos4 750/udp kerberos-iv kdc # Kerberos (server)
kerberos4 750/tcp kerberos-iv kdc
kerberos_master 751/udp # Kerberos authentication
kerberos_master 751/tcp
passwd_server 752/udp # Kerberos passwd server
krb_prop 754/tcp krb5_prop hprop # Kerberos slave propagation
krbupdate 760/tcp kreg # Kerberos registration
kpasswd 761/tcp kpwd # Kerberos "passwd"
swat 901/tcp # swat
kpop 1109/tcp # Pop with Kerberos
knetd 2053/tcp # Kerberos de-multiplexor
zephyr-srv 2102/udp # Zephyr server
zephyr-clt 2103/udp # Zephyr serv-hm connection
zephyr-hm 2104/udp # Zephyr hostmanager
eklogin 2105/tcp # Kerberos encrypted rlogin
# Hmmm. Are we using Kv4 or Kv5 now? Worrying.
# The following is probably Kerberos v5 --- ajt@debian.org (11/02/2000)
kx 2111/tcp # X over Kerberos
iprop 2121/tcp # incremental propagation
#
# Unofficial but necessary (for NetBSD) services
#
supfilesrv 871/tcp # SUP server
supfiledbg 1127/tcp # SUP debugging
#
# Services added for the Debian GNU/Linux distribution
#
linuxconf 98/tcp # LinuxConf
poppassd 106/tcp # Eudora
poppassd 106/udp
ssmtp 465/tcp smtps # SMTP over SSL
moira_db 775/tcp # Moira database
moira_update 777/tcp # Moira update protocol
moira_ureg 779/udp # Moira user registration
spamd 783/tcp # spamassassin daemon
omirr 808/tcp omirrd # online mirror
omirr 808/udp omirrd
customs 1001/tcp # pmake customs server
customs 1001/udp
skkserv 1178/tcp # skk jisho server port
predict 1210/udp # predict -- satellite tracking
rmtcfg 1236/tcp # Gracilis Packeten remote config server
wipld 1300/tcp # Wipl network monitor
xtel 1313/tcp # french minitel
xtelw 1314/tcp # french minitel
support 1529/tcp # GNATS
sieve 2000/tcp # Sieve mail filter daemon
cfinger 2003/tcp # GNU Finger
ndtp 2010/tcp # Network dictionary transfer protocol
frox 2121/tcp # frox: caching ftp proxy
ninstall 2150/tcp # ninstall service
ninstall 2150/udp
zebrasrv 2600/tcp # zebra service
zebra 2601/tcp # zebra vty
ripd 2602/tcp # ripd vty (zebra)
ripngd 2603/tcp # ripngd vty (zebra)
ospfd 2604/tcp # ospfd vty (zebra)
bgpd 2605/tcp # bgpd vty (zebra)
ospf6d 2606/tcp # ospf6d vty (zebra)
ospfapi 2607/tcp # OSPF-API
isisd 2608/tcp # ISISd vty (zebra)
afbackup 2988/tcp # Afbackup system
afbackup 2988/udp
afmbackup 2989/tcp # Afmbackup system
afmbackup 2989/udp
xtell 4224/tcp # xtell server
fax 4557/tcp # FAX transmission service (old)
hylafax 4559/tcp # HylaFAX client-server protocol (new)
distmp3 4600/tcp # distmp3host daemon
munin 4949/tcp lrrd # Munin
enbd-cstatd 5051/tcp # ENBD client statd
enbd-sstatd 5052/tcp # ENBD server statd
pcrd 5151/tcp # PCR-1000 Daemon
noclog 5354/tcp # noclogd with TCP (nocol)
noclog 5354/udp # noclogd with UDP (nocol)
hostmon 5355/tcp # hostmon uses TCP (nocol)
hostmon 5355/udp # hostmon uses UDP (nocol)
rplay 5555/udp # RPlay audio service
rplay 5555/tcp
rptp 5556/udp # Remote Play Transfer Protocol
rptp 5556/tcp
nsca 5667/tcp # Nagios Agent - NSCA
mrtd 5674/tcp # MRT Routing Daemon
bgpsim 5675/tcp # MRT Routing Simulator
canna 5680/tcp # cannaserver
sane-port 6566/tcp sane saned # SANE network scanner daemon
ircd 6667/tcp # Internet Relay Chat
zope-ftp 8021/tcp # zope management by ftp
webcache 8080/tcp # WWW caching service
tproxy 8081/tcp # Transparent Proxy
omniorb 8088/tcp # OmniORB
omniorb 8088/udp
clc-build-daemon 8990/tcp # Common lisp build daemon
xinetd 9098/tcp
mandelspawn 9359/udp mandelbrot # network mandelbrot
zope 9673/tcp # zope server
kamanda 10081/tcp # amanda backup services (Kerberos)
kamanda 10081/udp
amandaidx 10082/tcp # amanda backup services
amidxtape 10083/tcp # amanda backup services
smsqp 11201/tcp # Alamin SMS gateway
smsqp 11201/udp
xpilot 15345/tcp # XPilot Contact Port
xpilot 15345/udp
sgi-cmsd 17001/udp # Cluster membership services daemon
sgi-crsd 17002/udp
sgi-gcd 17003/udp # SGI Group membership daemon
sgi-cad 17004/tcp # Cluster Admin daemon
isdnlog 20011/tcp # isdn logging system
isdnlog 20011/udp
vboxd 20012/tcp # voice box system
vboxd 20012/udp
binkp 24554/tcp # binkp fidonet protocol
asp 27374/tcp # Address Search Protocol
asp 27374/udp
dircproxy 57000/tcp # Detachable IRC Proxy
tfido 60177/tcp # fidonet EMSI over telnet
fido 60179/tcp # fidonet EMSI over TCP
# Local services
streamsec 31335/tcp
streamavpes 31336/tcp
streamps 31337/tcp
streampes 31338/tcp
streamts 31339/tcp
udpstreampes 31340/tcp
udpstreampes 31341/udp
streamtsfile 31342/tcp
streames 31343/tcp

8
skel-root/hd6x/lib/mdev/common/mdev-log-only

@ -0,0 +1,8 @@
#!/bin/sh
# log only when requested
[ $# -eq 0 ] && exit 0
. /etc/init.d/globals
env | egrep -v '^(HOME|PATH|PWD|CONFIG_.*)=') | LOGDEBUG

10
skel-root/hd6x/lib/mdev/common/mdev-modprobe

@ -0,0 +1,10 @@
#!/bin/sh
[ "$ACTION" = remove ] && action='-r -a'
. /etc/init.d/globals
for module in "$@"; do
modprobe $action $module &&
LOGINFO "${ACTION:-scan} module $module succeed"
done

6
skel-root/hd6x/lib/mdev/common/mdev-module

@ -0,0 +1,6 @@
#!/bin/sh
. /etc/init.d/globals
LOGINFO "${ACTION:-scan} module chain $@"
/lib/mdev/common/mdev-modprobe "$@"

153
skel-root/hd6x/lib/mdev/fs/mdev-mmcblk

@ -0,0 +1,153 @@
#!/bin/sh
. /etc/init.d/globals
MOUNTBASE=/mnt
MOUNTPOINT="$MOUNTBASE/$MDEV"
ROOTDEV=$(readlink /dev/root)
BLOCKS="/sys/block/mmcblk0/mmcblk0p*/uevent"
KERNELDEV=""
K_PARTNAME=""
ROOTFSDEV=""
R_PARTNAME=""
ROOTSUBDIR=""
SUBDIRBOOT=0
# to use partition names in non-subdirboot layout, set it to 1
USE_PARTNAMES=0
# check partition names
DEVNAME=""
PARTNAME=""
for i in $BLOCKS; do
if [ "$i" != "$BLOCKS" ]; then
DEVNAME=$(cat $i | grep DEVNAME | cut -d '=' -f 2)
if [ "$DEVNAME" == "$MDEV" ]; then
PARTNAME=$(cat $i | grep PARTNAME | cut -d '=' -f 2)
if [ -n "$(echo $PARTNAME | grep 'kernel')" ]; then
KERNELDEV=$DEVNAME
K_PARTNAME=$PARTNAME
break
elif [ -n "$(echo $PARTNAME | grep 'rootfs')" ]; then
ROOTFSDEV=$DEVNAME
R_PARTNAME=$PARTNAME
if [ -n "$(echo $PARTNAME | grep 'linuxrootfs')" ]; then
R_PARTNAME="linuxrootfs1"
SUBDIRBOOT=1
fi
break
elif [ -n "$(echo $PARTNAME | grep 'userdata')" ]; then
ROOTFSDEV=$DEVNAME
R_PARTNAME=$PARTNAME
SUBDIRBOOT=1
break
fi
fi
fi
done
if [ "$SUBDIRBOOT" == "1" -o "$USE_PARTNAMES" == "1" ]; then
MOUNTPOINT="$MOUNTBASE/$R_PARTNAME"
elif [ "$PARTNAME" == "storage" ]; then
MOUNTPOINT="$MOUNTBASE/$PARTNAME"
fi
# do not add or remove root device again...
[ "$ROOTDEV" = "$MDEV" -a "$R_PARTNAME" != "userdata" ] && exit 0
if [ -e /tmp/.nomdevmount ]; then
LOGINFO "no action on $MDEV -- /tmp/.nomdevmount exists"
exit 0
fi
case "$ACTION" in
add)
# do not mount kernel partitions
if [ "$KERNELDEV" == "$MDEV" ]; then
LOGINFO "[$ACTION] /dev/$MDEV is a kernel partition [$K_PARTNAME] - not mounting."
exit 0
fi
if [ "$PARTNAME" == "swap" ]; then
mkswap /dev/$MDEV
swapon /dev/$MDEV
exit 0
fi
if [ "$SUBDIRBOOT" == "1" ]; then
if grep -q $MOUNTPOINT /proc/mounts; then
LOGINFO "/dev/$MDEV already mounted [$R_PARTNAME] - not mounting again"
exit 0
fi
mkdir -p /tmp/$MDEV
mount -t auto /dev/$MDEV /tmp/$MDEV 2>&1 >/dev/null
RET=$?
[ $RET != 0 ] && LOGWARN "mount /dev/$MDEV to /tmp/$MDEV failed with $RET" && rmdir /tmp/$MDEV
if [ "$R_PARTNAME" == "linuxrootfs1" ]; then
LOGINFO "mounting /dev/$MDEV [$R_PARTNAME] to $MOUNTPOINT"
mkdir -p $MOUNTPOINT
mount --bind /tmp/$MDEV/linuxrootfs1 $MOUNTPOINT
elif [ "$R_PARTNAME" == "userdata" ]; then
# parse cmdline for rootsubdir
for param in $(cat /proc/cmdline); do
if [ -n "$(echo $param | grep rootsubdir)" ]; then
ROOTSUBDIR=$(echo $param | cut -d '=' -f 2)
break
fi
done
for i in /tmp/$MDEV/*; do
if [ -n "$(echo $i | grep linuxrootfs)" ]; then
if [ "$ROOTSUBDIR" == "$(basename $i)" ]; then
LOGINFO "/dev/$MDEV rootsubdir [$ROOTSUBDIR] is already mounted as root"
continue
fi
MOUNTPOINT="$MOUNTBASE/$(basename $i)"
if grep -q $MOUNTPOINT /proc/mounts; then
LOGINFO "/dev/$MDEV already mounted [$(basename $i)] - not mounting again"
else
LOGINFO "mounting /dev/$MDEV [$(basename $i)] to $MOUNTPOINT"
mkdir -p $MOUNTPOINT
mount --bind /tmp/$MDEV/$(basename $i) $MOUNTPOINT
fi
fi
done
fi
umount -lf /tmp/$MDEV
RET=$?
if [ $RET = 0 ]; then
rmdir /tmp/$MDEV
else
LOGWARN "umount /tmp/$MDEV failed with $RET"
fi
else
if grep -q "/dev/$MDEV" /proc/mounts; then
LOGINFO "/dev/$MDEV already mounted - not mounting again"
exit 0
fi
LOGINFO "[$ACTION] mounting /dev/$MDEV to $MOUNTPOINT"
# remove old mountpoint symlinks we might have for this device
rm -f $MOUNTPOINT
mkdir -p $MOUNTPOINT
mount -t auto /dev/$MDEV $MOUNTPOINT 2>&1 >/dev/null
RET=$?
if [ $RET != 0 ]; then
LOGWARN "mount /dev/$MDEV $MOUNTPOINT failed with $RET"
LOGWARN " $OUT1"
rmdir $MOUNTPOINT
fi
fi
;;
# I think never comes a 'remove' from mdev, because never the mmcblock will be removed
# It can be used for manually ( or per script ) umounting
remove)
LOGINFO "[$ACTION] unmounting $MOUNTBASE/$MDEV"
grep -q "$MOUNTBASE/$MDEV " /proc/mounts || exit 0 # not mounted...
umount -lf $MOUNTBASE/$MDEV
RET=$?
if [ $RET = 0 ]; then
rmdir $MOUNTBASE/$MDEV
else
LOGWARN "umount $MOUNTBASE/$MDEV failed with $RET"
fi
;;
esac

117
skel-root/hd6x/lib/mdev/fs/mdev-mount

@ -0,0 +1,117 @@
#!/bin/sh
# based on script from http://gitorious.org/neutrino-hd/buildsystem-cs
. /etc/init.d/globals
MOUNTBASE=/media
MOUNTPOINT="$MOUNTBASE/$MDEV"
ROOTDEV=$(readlink /dev/root)
# do not add or remove root device again...
[ "$ROOTDEV" = "$MDEV" ] && exit 0
if [ -e /tmp/.nomdevmount ]; then
LOGINFO "no action on $MDEV -- /tmp/.nomdevmount exists"
exit 0
fi
create_symlinks() {
DEVBASE=${MDEV:0:3} # first 3 characters
PARTNUM=${MDEV:3} # characters 4-
if [ -e /sys/block/$DEVBASE/device/model ]; then # don't read if blockdevice not present
read MODEL < /sys/block/$DEVBASE/device/model
fi
MODEL=${MODEL// /_} # replace ' ' with '_'
OLDPWD=$PWD
cd $MOUNTBASE
if which blkid > /dev/null; then
BLKID=$(blkid -c /dev/null /dev/$MDEV)
eval ${BLKID#*:}
fi
if [ -n "$LABEL" ]; then
LABEL=${LABEL// /_} # replace ' ' with '_'
rm -f "$LABEL"
ln -s $MDEV "$LABEL"
fi
if [ -n "$UUID" ]; then
LINK="${TYPE}${TYPE:+-}${UUID}"
rm -f "${LINK}"
ln -s $MDEV "${LINK}"
fi
if [ -n "$MODEL" ]; then
LINK="${MODEL}${PARTNUM:+-}${PARTNUM}"
rm -f "${LINK}"
ln -s $MDEV "${LINK}"
fi
cd $OLDPWD
}
remove_symlinks() {
OLDPWD=$PWD
cd $MOUNTBASE
for i in *; do
[ -L "$i" ] || continue
TARGET=$(readlink "$i")
if [ "$TARGET" = "$MDEV" ]; then
rm "$i"
fi
done
cd $OLDPWD
}
case "$ACTION" in
add)
if [ ${#MDEV} = 3 ]; then # sda, sdb, sdc => whole drive
PARTS=$(sed -n "/ ${MDEV}[0-9]$/{s/ *[0-9]* *[0-9]* * [0-9]* //;p}" /proc/partitions)
if [ -n "$PARTS" ]; then
LOGINFO "drive has partitions $PARTS, not trying to mount $MDEV"
exit 0
fi
fi
if grep -q "/dev/$MDEV" /proc/mounts; then
LOGINFO "/dev/$MDEV already mounted - not mounting again"
exit 0
fi
LOGINFO "[$ACTION] mounting /dev/$MDEV to $MOUNTPOINT"
# remove old mountpoint symlinks we might have for this device
rm -f $MOUNTPOINT
mkdir -p $MOUNTPOINT
for i in 1 2 3 4 5 6 7 8 9; do # retry 9 times for slow devices
# LOGINFO "mounting /dev/$MDEV to $MOUNTPOINT try $i"
OUT1=$(mount -t auto /dev/$MDEV $MOUNTPOINT 2>&1 >/dev/null)
RET1=$?
[ $RET1 = 0 ] && break
sleep 1
done
if [ $RET1 = 0 ]; then
create_symlinks
echo 1 > /proc/stb/lcd/symbol_hdd
else
LOGWARN "mount /dev/$MDEV $MOUNTPOINT failed with $RET1"
LOGWARN " $OUT1"
rmdir $MOUNTPOINT
fi
if [ -x /bin/mdev_helper ]; then
/bin/mdev_helper
fi
;;
remove)
LOGINFO "[$ACTION] unmounting $MOUNTBASE/$MDEV"
grep -q "^/dev/$MDEV " /proc/mounts || exit 0 # not mounted...
umount -lf $MOUNTBASE/$MDEV
RET=$?
if [ $RET = 0 ]; then
rmdir $MOUNTPOINT
remove_symlinks
if ! grep -q "[hs]d[a-z][0-9]" /proc/mounts; then
echo 0 > /proc/stb/lcd/symbol_hdd
fi
else
LOGWARN "umount $MOUNTBASE/$MDEV failed with $RET"
fi
if [ -x /bin/mdev_helper ]; then
/bin/mdev_helper
fi
;;
esac

19
skel-root/hd6x/lib/mdev/net/mdev-wlan

@ -0,0 +1,19 @@
#!/bin/sh
. /etc/init.d/globals
case "$ACTION" in
add|"")
if [ -s /etc/wpa_supplicant.conf ]; then
LOGINFO "trying to bring $MDEV up"
ifup $MDEV
else
LOGWARN "/etc/wpa_supplicant.conf missing or empty, not trying to bring $MDEV up"
fi
;;
remove)
LOGINFO "trying to bring $MDEV down"
ifdown $MDEV
;;
esac

31
skel-root/hd6x/lib/mdev/usb/coldplug-setenv

@ -0,0 +1,31 @@
#!/bin/false
for path in $(find /sys/devices -name "$MDEV" 2>/dev/null); do
DEVPATH=${path#/sys}
done
MODALIAS=$(cat /sys${DEVPATH}/modalias 2>/dev/null)
parse_interface () {
printf '%d/%d/%d' $(sed 's/.*dp[0-F]\{2\}//;s/[iscp]\+/ 0x/g')
}
parse_type () {
printf '%d/%d/%d' $(sed 's/.*d[0-9]\{4\}//;s/ic.*//;s/[dscp]\+/ 0x/g')
}
parse_product () {
sed 's!^usb:\(.*\)dc.*!\1!;s![vpd]!/!g;s!/0\{1,3\}!/!g;s!^/!!;y!ABCDEF!abcdef!'
}
TYPE=$(echo $MODALIAS | parse_type)
PRODUCT=$(echo $MODALIAS | parse_product)
INTERFACE=$(echo $MODALIAS | parse_interface)
for var in DEVPATH MODALIAS TYPE PRODUCT INTERFACE; do
if [ -z "$(eval "echo \$${var}")" ]; then
LOGERROR "Could not set uevent environment variable $var"
exit 1
fi
done
unset path var
unset -f parse_type parse_interface parse_product

135
skel-root/hd6x/lib/mdev/usb/mdev-usb

@ -0,0 +1,135 @@
#!/bin/sh
. /etc/init.d/globals
# setup environment for coldplug events
[ -z "$ACTION" ] && . /lib/mdev/usb/coldplug-setenv
# get proper product and manufacturer description (only works for ACTION=add)
[ -z "$DEVPATH" ] && LOGERROR 'uevent environment variable DEVPATH is unset' && exit 1
if [ -d /sys${DEVPATH} ]; then
cd /sys${DEVPATH}/..
for f in product manufacturer id[PV]*; do
[ -r $f ] && eval "$f='$(cat $f)'"
done
cd $MDEV
fi
# get $idVendor and $idProduct from $MODALIAS if necessary
idVendor=${idVendor:-${MODALIAS:5:4}}
idProduct=${idProduct:-${MODALIAS:10:4}}
# set $idVendor and $idProduct lower case and w/o leading zeros
idVendor=$(echo ${idVendor} | sed 's/^[0]*//' | tr [:upper:] [:lower:])
idProduct=$(echo ${idProduct} | sed 's/^[0]*//' | tr [:upper:] [:lower:])
channel=${MDEV%:1.0}
LOGINFO "${ACTION} $channel ${manufacturer:-$idVendor} ${product:-$idProduct}"
# for debug
#LOGINFO "ACTION=${ACTION}"
#LOGINFO "MDEV=${MDEV}"
#LOGINFO "DEVPATH=${DEVPATH}"
#LOGINFO "INTERFACE=${INTERFACE}"
#LOGINFO "MODALIAS=${MODALIAS}"
#LOGINFO "PRODUCT=${product} idProduct=${idProduct}"
#LOGINFO "MANUFACTURER=${manufacturer} idVendor=${idVendor}"
# ignore controllers and hubs
cat /sys/bus/usb/devices/*/bDeviceClass | grep -q -v '02\|09'
RET=$?
case "$ACTION" in
add)
if [ $RET = 0 ]; then
echo 1 > /proc/stb/lcd/symbol_usb
fi
;;
remove)
if [ $RET = 1 ]; then
echo 0 > /proc/stb/lcd/symbol_usb
fi
;;
esac
# http://en.wikipedia.org/wiki/Universal_Serial_Bus#Device_classes
# http://www.usb.org/developers/defined_class
[ 0 -eq "${TYPE%%/*}" ] && TYPE=$INTERFACE
LOGINFO "type ${TYPE}"
case $TYPE in
1/*/*)
LOGINFO "$channel USB Audio Interface"
;;
2/*/*)
LOGINFO "$channel Communications and CDC Control"
;;
3/*/*)
LOGINFO "$channel HID (Human Interface Device)"
# precheck vendor id for unsupported DPF in bootloader mode
if [ "$idVendor" == "1908" ]; then
service extdisplay ${ACTION} ${MDEV} ${idVendor} ${idProduct}
fi
;;
5/*/*)
LOGINFO "$channel Physical Interface"
;;
6/*/*)
LOGINFO "$channel Image Interface"
;;
7/*/*)
LOGINFO "$channel Printer Interface"
;;
8/*/*)
LOGINFO "$channel Mass Storage Interface"
# precheck vendor id for supported SPFs
if [ "$idVendor" == "4e8" ]; then
service extdisplay ${ACTION} ${MDEV} ${idVendor} ${idProduct}
fi
;;
9/*/*)
LOGINFO "$channel HUB Device"
;;
10/*/*)
LOGINFO "$channel CDC Data Interface"
;;
11/*/*)
LOGINFO "$channel Smart Card Interface"
;;
13/*/*)
LOGINFO "$channel Content Security Interface"
;;
14/*/*)
LOGINFO "$channel Video Interface"
;;
15/*/*)
LOGINFO "$channel Personal Healthcare Interface"
;;
16/*/*)
LOGINFO "$channel usb Audio/Video Devices Interface"
;;
17/*/*)
LOGINFO "$channel Billboard Device Class"
;;
220/*/*)
LOGINFO "$channel Diagnostic Device"
;;
224/*/*)
LOGINFO "$channel Wireless Controller Interface"
;;
239/*/*)
LOGINFO "$channel Miscellaneous"
;;
254/*/*)
LOGINFO "$channel Application Specific"
;;
255/*/*)
LOGINFO "$channel Vendor Specific"
# pre-check vendor id for supported DPFs and SPFs
if [ "$idVendor" = "1908" -o "$idVendor" == "4e8" ]; then
service extdisplay ${ACTION} ${MDEV} ${idVendor} ${idProduct}
fi
;;
*)
LOGINFO "FALLBACK: $channel device $MODALIAS"
;;
esac
/lib/mdev/common/mdev-modprobe $MODALIAS

12
skel-root/hd6x/lib/pkgconfig/egl.pc

@ -0,0 +1,12 @@
prefix=/usr
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include
Name: egl
Description: Mesa EGL library
Requires.private:
Version: 8.0.0
Libs: -L${libdir} -lEGL
Libs.private: -lm -lpthread -ldl
Cflags: -I${includedir}/EGL

12
skel-root/hd6x/lib/pkgconfig/glesv1_cm.pc

@ -0,0 +1,12 @@
prefix=/usr
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include
Name: glesv1_cm
Description: Mesa OpenGL ES 1.0 CM library
Requires.private:
Version: 8.0.0
Libs: -L${libdir} -lGLESv1_CM
Libs.private: -lm -lpthread -ldl
Cflags: -I${includedir}/GLES

12
skel-root/hd6x/lib/pkgconfig/glesv2.pc

@ -0,0 +1,12 @@
prefix=/usr
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include
Name: glesv2
Description: Mesa OpenGL ES 2.0 library
Requires.private:
Version: 8.0.0
Libs: -L${libdir} -lGLESv2
Libs.private: -lm -lpthread -ldl
Cflags: -I${includedir}/GLES2
Loading…
Cancel
Save