[oe-commits] org.oe.dreambox add dm8000 support

tmbinc commit oe at amethyst.openembedded.net
Mon Jul 14 06:58:11 UTC 2008


add dm8000 support

Author: tmbinc at openembedded.org
Branch: org.openembedded.dreambox
Revision: 3bf15b642ccda5728a4a42fec49cefe5a7439ab4
ViewMTN: http://monotone.openembedded.org/revision/info/3bf15b642ccda5728a4a42fec49cefe5a7439ab4
Files:
1
packages/base-files/base-files/dm8000
packages/initscripts/initscripts-1.0/dm8000
packages/ipkg/ipkg-collateral/dm8000
packages/linux/linux-dm8000
packages/netbase/netbase/dm8000
packages/sysvinit/sysvinit/dm8000
packages/wpa-supplicant/wpa-supplicant-0.4.7/dm8000
conf/machine/dm8000.conf
packages/base-files/base-files/dm8000/fstab
packages/enigma2/enigma2/revert_tuner_config.patch
packages/initscripts/initscripts-1.0/dm8000/bootup
packages/ipkg/ipkg-collateral/dm8000/dest
packages/linux/linux-dm8000/dm8000_defconfig
packages/linux/linux-dm8000/linux-2.6.12-7400AB-enable-llsc.patch
packages/linux/linux-dm8000/linux-2.6.12-brcm-fix-minipci.patch
packages/linux/linux-dm8000/linux-2.6.12-brcm-mtd-blkdevfs-fix.diff
packages/linux/linux-dm8000/linux-2.6.12-dm8000-nand.patch
packages/linux/linux-dm8000/linux-2.6.12-dream-misc.patch
packages/linux/linux-dm8000/linux-2.6.12-dream-temp.patch
packages/linux/linux-dm8000/linux-2.6.12-fixup-prom-args.patch
packages/linux/linux-dm8000/linux-2.6.12-set-custom-extraversion.patch
packages/linux/linux-dm8000/linuxmips-2.6.12-fix-fadvise.patch
packages/linux/linux-dm8000/linuxmips-2.6.12-fix-futex.patch
packages/linux/linux-dm8000/linuxmips-2.6.12-gcc4-compile-fix.patch
packages/linux/linux-dm8000/linuxmips-2.6.12-gdb-fix.patch
packages/linux/linux-dm8000.bb
packages/netbase/netbase/dm8000/interfaces
packages/sysvinit/sysvinit/dm8000/inittab
packages/wpa-supplicant/wpa-supplicant-0.4.7/dm8000/defconfig
packages/wpa-supplicant/wpa-supplicant-0.4.7/dm8000/madwifi-bsd-fix.diff
packages/dreambox/dreambox-bootlogo.bb
packages/dreambox/dreambox-dvb-modules.bb
packages/dreambox/dreambox-dvbincludes.bb
packages/dreambox/dreambox-secondstage.bb
packages/enigma2/enigma2-plugins.bb
packages/enigma2/enigma2-skins.bb
packages/enigma2/enigma2.bb
packages/images/dreambox-image.bb
packages/tuxbox/tuxbox-libtuxtxt.bb
packages/wpa-supplicant/wpa-supplicant_0.4.7.bb
Diffs:

#
# mt diff -r6ffcf640bf5abbaf1977188078498054ee605cb8 -r3bf15b642ccda5728a4a42fec49cefe5a7439ab4
#
#
#
# add_dir "packages/base-files/base-files/dm8000"
# 
# add_dir "packages/initscripts/initscripts-1.0/dm8000"
# 
# add_dir "packages/ipkg/ipkg-collateral/dm8000"
# 
# add_dir "packages/linux/linux-dm8000"
# 
# add_dir "packages/netbase/netbase/dm8000"
# 
# add_dir "packages/sysvinit/sysvinit/dm8000"
# 
# add_dir "packages/wpa-supplicant/wpa-supplicant-0.4.7/dm8000"
# 
# add_file "conf/machine/dm8000.conf"
#  content [3e2a566c5dff0cf87a3beaeffd092404a1e87b78]
# 
# add_file "packages/base-files/base-files/dm8000/fstab"
#  content [7661a03a863f4080e395c98465900a6264fd7973]
# 
# add_file "packages/enigma2/enigma2/revert_tuner_config.patch"
#  content [8f1d24ca2cad3b354e6a2d4739a83f331eea19a1]
# 
# add_file "packages/initscripts/initscripts-1.0/dm8000/bootup"
#  content [69fb4e0124bc77dd0e8a2a212e59054e29bb1a4b]
# 
# add_file "packages/ipkg/ipkg-collateral/dm8000/dest"
#  content [10fea6f4bf894c58d341a5b4ec973c38fe4ae671]
# 
# add_file "packages/linux/linux-dm8000/dm8000_defconfig"
#  content [e36064165c805b5d717a9f7432f70c3abd70a699]
# 
# add_file "packages/linux/linux-dm8000/linux-2.6.12-7400AB-enable-llsc.patch"
#  content [af1774876b97f16fb1728b77e7fd115b1b8685b9]
# 
# add_file "packages/linux/linux-dm8000/linux-2.6.12-brcm-fix-minipci.patch"
#  content [0a83dd5a1544973bba9d785baaf4fe8a416b7a0c]
# 
# add_file "packages/linux/linux-dm8000/linux-2.6.12-brcm-mtd-blkdevfs-fix.diff"
#  content [c591ecfa507b07be306c20c298b20f9d1bf7ec53]
# 
# add_file "packages/linux/linux-dm8000/linux-2.6.12-dm8000-nand.patch"
#  content [6c3a32f0153851183ff3bf8f504a5f5f851a61d2]
# 
# add_file "packages/linux/linux-dm8000/linux-2.6.12-dream-misc.patch"
#  content [bfe3cf9692d2db5fd3651fdf6e8db4a5c13a55a3]
# 
# add_file "packages/linux/linux-dm8000/linux-2.6.12-dream-temp.patch"
#  content [f5c67cecccb8babf2c638c7f0e37c829f0a81e10]
# 
# add_file "packages/linux/linux-dm8000/linux-2.6.12-fixup-prom-args.patch"
#  content [023cf2b151d726cca914fd6d2e06a6191fa1dcfd]
# 
# add_file "packages/linux/linux-dm8000/linux-2.6.12-set-custom-extraversion.patch"
#  content [57bec94d999a1a4484b706b54db9d78e8bb0af74]
# 
# add_file "packages/linux/linux-dm8000/linuxmips-2.6.12-fix-fadvise.patch"
#  content [f6cebc94bcf5cce2c4e975bab28deaaa67b80d11]
# 
# add_file "packages/linux/linux-dm8000/linuxmips-2.6.12-fix-futex.patch"
#  content [83f05990a95db2dd71dba6ba7027f6516dd43374]
# 
# add_file "packages/linux/linux-dm8000/linuxmips-2.6.12-gcc4-compile-fix.patch"
#  content [657fbf4df57881078efc806bb500d5977a2067e7]
# 
# add_file "packages/linux/linux-dm8000/linuxmips-2.6.12-gdb-fix.patch"
#  content [b0891bedd12acb377d632a14748b54e8b2545a9e]
# 
# add_file "packages/linux/linux-dm8000.bb"
#  content [b909bf11b58364b956697fbb1e4252e408639b3a]
# 
# add_file "packages/netbase/netbase/dm8000/interfaces"
#  content [aabd462ba3c3c63e37836c3f3b79b7f292f30539]
# 
# add_file "packages/sysvinit/sysvinit/dm8000/inittab"
#  content [ae7b5c3dc59718ba20d7ab41bda56afeb67db6dd]
# 
# add_file "packages/wpa-supplicant/wpa-supplicant-0.4.7/dm8000/defconfig"
#  content [85506f43c2f5d7ae1d18735b8f66409050cfeeaf]
# 
# add_file "packages/wpa-supplicant/wpa-supplicant-0.4.7/dm8000/madwifi-bsd-fix.diff"
#  content [6f68ec9d1a7696f31c1fccd2e215be31744ec8f5]
# 
# patch "packages/dreambox/dreambox-bootlogo.bb"
#  from [d08772e89028a99824b5c2efcecb73298d0f03ae]
#    to [f897f64db8e6aef2e2ece8f636e8ca27b61986d3]
# 
# patch "packages/dreambox/dreambox-dvb-modules.bb"
#  from [1b8aa21300273c64add2e0bc07e84dd83b73a0bc]
#    to [f2d1243958c2d128dda4395bb93d922267a1e8f8]
# 
# patch "packages/dreambox/dreambox-dvbincludes.bb"
#  from [67fe1663a6f0169af4faeb7ea6f72b190997e768]
#    to [48b3220231aa3c1182667a8e18a79d879eb5b6cb]
# 
# patch "packages/dreambox/dreambox-secondstage.bb"
#  from [ff6ba187e992c6dba1451a40b69365f63a4cce1c]
#    to [a39d2689e9fc9015ccde96748662cd46e162f2e0]
# 
# patch "packages/enigma2/enigma2-plugins.bb"
#  from [0df69bf64a5cc214b553d607c2ec3b662a1b8443]
#    to [5c27a641c1524db12e6c844af95e67475f697b94]
# 
# patch "packages/enigma2/enigma2-skins.bb"
#  from [01f5d9b17b9ff04cedb1e24939b4887a6156710e]
#    to [2a63ef39fec0f8eda2dcef76afd0f8ad89e0e87b]
# 
# patch "packages/enigma2/enigma2.bb"
#  from [d8edb942c3d660ae789f17f10e9237e08cee85bb]
#    to [0249ce4ddda123a5eeecd631a39010ffcfa03aa6]
# 
# patch "packages/images/dreambox-image.bb"
#  from [7ac57cb2bd8b29a792ece7d482bcbf55f0c10e93]
#    to [e36658493199230041b2b2acbad8211d53042136]
# 
# patch "packages/tuxbox/tuxbox-libtuxtxt.bb"
#  from [7763979f2272e349d25cf03e8dde596ae1419678]
#    to [69924240142f67a02f68c1fc4f326e6d00b1f452]
# 
# patch "packages/wpa-supplicant/wpa-supplicant_0.4.7.bb"
#  from [904614f283593c561bd6724ec644c11788a61bce]
#    to [69afbba8d62edc03934a37e426db4df57eff78a0]
#
============================================================
--- conf/machine/dm8000.conf	3e2a566c5dff0cf87a3beaeffd092404a1e87b78
+++ conf/machine/dm8000.conf	3e2a566c5dff0cf87a3beaeffd092404a1e87b78
@@ -0,0 +1,51 @@
+#@TYPE: Machine
+#@NAME: Dreambox DM8000
+#@DESCRIPTION: Machine configuration for the Dreambox DM8000
+
+TARGET_ARCH = "mipsel"
+IPKG_ARCHS = "all mipsel ${MACHINE}"
+PREFERRED_PROVIDER_xserver = "xserver-kdrive"
+PREFERRED_PROVIDER_virtual/kernel = "linux-dm8000"
+BOOTSTRAP_EXTRA_DEPENDS = "virtual/kernel dreambox-dvb-modules gst-plugin-dvbmediasink"
+BOOTSTRAP_EXTRA_RDEPENDS = "kernel dreambox-dvb-modules kernel-module-stv0299 \
+	kernel-module-cifs	kernel-module-exportfs  kernel-module-isofs \
+	kernel-module-reiserfs 	kernel-module-scsi-mod	kernel-module-sd-mod \
+	kernel-module-sg	kernel-module-sr-mod	kernel-module-usb-storage \
+	kernel-module-usbhid	kernel-module-usbmon 	kernel-module-ide-cd \
+	kernel-module-autofs4 	kernel-module-cdrom \
+	kernel-module-msdos kernel-module-vfat kernel-module-fat \
+	kernel-module-xfs gst-plugin-dvbmediasink"
+
+TARGET_FPU = "soft"
+#OLDEST_KERNEL = "2.6.9"
+
+PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc-initial:gcc-cross-initial"
+PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc:gcc-cross"
+PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}g++:gcc-cross"
+PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}libc-for-gcc:glibc"
+
+PREFERRED_VERSION_glibc = "2.3.5+cvs20051107"
+PREFERRED_VERSION_gcc-cross-initial = "3.4.5"
+PREFERRED_VERSION_gcc-cross = "4.1.1"
+PREFERRED_VERSION_gcc-cross-sdk = "4.1.1" 
+PREFERRED_VERSION_gcc = "4.1.1"
+PREFERRED_VERSION_binutils-cross = "2.16.1"
+PREFERRED_VERSION_binutils-cross-sdk = "2.16.1"
+PREFERRED_VERSION_binutils = "2.16.1"
+PREFERRED_VERSION_linux-libc-headers = "2.6.12.0"
+GLIBC_ADDONS = "nptl"
+GLIBC_EXTRA_OECONF = "--disable-profile --with-tls --without-fp --with-__thread"
+
+EXTRA_IMAGEDEPENDS += "dreambox-secondstage dreambox-buildimage-native"
+EXTRA_IMAGECMD_jffs2 = " --eraseblock=0x20000 -n -l "
+IMAGE_CMD_jffs2 = "mkfs.jffs2 --root=${IMAGE_ROOTFS}/boot --faketime \
+       --output=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.boot.jffs2 \
+       ${EXTRA_IMAGECMD}; rm -rf ${IMAGE_ROOTFS}/boot/*; \
+				mkfs.jffs2 --root=${IMAGE_ROOTFS} --faketime \
+       --output=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.jffs2 \
+       ${EXTRA_IMAGECMD}; \
+       buildimage ${STAGING_LIBDIR}/dreambox-secondstage/main.bin.gz \
+       ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.boot.jffs2 \
+       ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.jffs2 \
+       ${MACHINE} 64 large \
+       > ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.nfi"
============================================================
--- packages/base-files/base-files/dm8000/fstab	7661a03a863f4080e395c98465900a6264fd7973
+++ packages/base-files/base-files/dm8000/fstab	7661a03a863f4080e395c98465900a6264fd7973
@@ -0,0 +1,9 @@
+rootfs               /                    auto       defaults              1 1
+proc                 /proc                proc       defaults              0 0
+devpts               /dev/pts             devpts     mode=0620,gid=5       0 0
+usbdevfs             /proc/bus/usb        usbdevfs   defaults              0 0
+/dev/mtdblock/2      /boot                jffs2      ro                    0 0
+tmpfs                /var                 tmpfs      defaults              0 0
+tmpfs                /tmp                 tmpfs      defaults		   0 0
+/dev/ide/host0/bus0/target0/lun0/part1 /media/hdd auto defaults            0 0
+/dev/ide/host0/bus1/target0/lun0/part1 /media/hdd auto defaults		   0 0
============================================================
--- packages/enigma2/enigma2/revert_tuner_config.patch	8f1d24ca2cad3b354e6a2d4739a83f331eea19a1
+++ packages/enigma2/enigma2/revert_tuner_config.patch	8f1d24ca2cad3b354e6a2d4739a83f331eea19a1
@@ -0,0 +1,319 @@
+diff -u -r1.144 -r1.140
+--- lib/python/Components/NimManager.py	2 Jul 2008 11:12:11 -0000	1.144
++++ lib/python/Components/NimManager.py	5 Jun 2008 09:19:01 -0000	1.140
+@@ -121,13 +121,13 @@
+ 				# save what nim we link to/are equal to/satposdepends to.
+ 				# this is stored in the *value* (not index!) of the config list
+ 				if nim.configMode.value == "equal":
+-					self.equal[int(nim.connectedTo.value)]=x
++					self.equal[int(nim.equalTo.value)]=x
+ 				elif nim.configMode.value == "loopthrough":
+-					self.linkNIMs(sec, x, int(nim.connectedTo.value))
+-					self.linked[int(nim.connectedTo.value)]=x
++					self.linkNIMs(sec, x, int(nim.linkedTo.value))
++					self.linked[int(nim.linkedTo.value)]=x
+ 				elif nim.configMode.value == "satposdepends":
+-					self.setSatposDepends(sec, x, int(nim.connectedTo.value))
+-					self.satposdepends[int(nim.connectedTo.value)]=x
++					self.setSatposDepends(sec, x, int(nim.satposDependsTo.value))
++					self.satposdepends[int(nim.satposDependsTo.value)]=x
+ 
+ 		for slot in nim_slots:
+ 			x = slot.slot
+@@ -357,7 +357,7 @@
+ 		self.update()
+ 
+ class NIM(object):
+-	def __init__(self, slot, type, description, has_outputs = True, internally_connectable = None):
++	def __init__(self, slot, type, description):
+ 		self.slot = slot
+ 
+ 		if type not in ["DVB-S", "DVB-C", "DVB-T", "DVB-S2", None]:
+@@ -366,8 +366,6 @@
+ 
+ 		self.type = type
+ 		self.description = description
+-		self.has_outputs = has_outputs
+-		self.internally_connectable = internally_connectable
+ 
+ 	def isCompatible(self, what):
+ 		compatible = {
+@@ -378,15 +376,6 @@
+ 				"DVB-S2": ["DVB-S", "DVB-S2", None]
+ 			}
+ 		return what in compatible[self.type]
+-	
+-	def connectableTo(self):
+-		connectable = {
+-				"DVB-S": ["DVB-S", "DVB-S2"],
+-				"DVB-C": ["DVB-C"],
+-				"DVB-T": ["DVB-T"],
+-				"DVB-S2": ["DVB-S", "DVB-S2"]
+-			}
+-		return connectable[self.type]
+ 
+ 	def getSlotName(self):
+ 		# get a friendly description for a slot name.
+@@ -398,12 +387,6 @@
+ 
+ 	def getSlotID(self):
+ 		return chr(ord('A') + self.slot)
+-	
+-	def hasOutputs(self):
+-		return self.has_outputs
+-	
+-	def internallyConnectableTo(self):
+-		return self.internally_connectable
+ 
+ 	slot_id = property(getSlotID)
+ 
+@@ -536,12 +519,6 @@
+ 				entries[current_slot]["type"] = str(line.strip()[6:])
+ 			elif line.strip().startswith("Name:"):
+ 				entries[current_slot]["name"] = str(line.strip()[6:])
+-			elif line.strip().startswith("Has_Outputs:"):
+-				input = str(line.strip()[len("Has_Outputs:") + 1:])
+-				entries[current_slot]["has_outputs"] = (input == "yes")
+-			elif line.strip().startswith("Internally_Connectable:"):
+-				input = int(line.strip()[len("Internally_Connectable:") + 1:])
+-				entries[current_slot]["internally_connectable"] = input 
+ 			elif line.strip().startswith("empty"):
+ 				entries[current_slot]["type"] = None
+ 				entries[current_slot]["name"] = _("N/A")
+@@ -551,23 +528,13 @@
+ 			if not (entry.has_key("name") and entry.has_key("type")):
+ 				entry["name"] =  _("N/A")
+ 				entry["type"] = None
+-			if not (entry.has_key("has_outputs")):
+-				entry["has_outputs"] = True
+-			if not (entry.has_key("internally_connectable")):
+-				entry["internally_connectable"] = None
+-			self.nim_slots.append(NIM(slot = id, description = entry["name"], type = entry["type"], has_outputs = entry["has_outputs"], internally_connectable = entry["internally_connectable"]))
++			self.nim_slots.append(NIM(slot = id, description = entry["name"], type = entry["type"]))
+ 
+ 	def hasNimType(self, chktype):
+ 		for slot in self.nim_slots:
+ 			if slot.isCompatible(chktype):
+ 				return True
+ 		return False
+-	
+-	def getNimType(self, slotid):
+-		return self.nim_slots[slotid].type
+-	
+-	def getNimDescription(self, slotid):
+-		return self.nim_slots[slotid].friendly_full_description
+ 
+ 	def getNimListOfType(self, type, exception = -1):
+ 		# returns a list of indexes for NIMs compatible to the given type, except for 'exception'
+@@ -591,59 +558,6 @@
+ 		for slot in self.nim_slots:
+ 			list.append(slot.friendly_full_description)
+ 		return list
+-	
+-	def getSlotCount(self):
+-		return len(self.nim_slots)
+-	
+-	def hasOutputs(self, slotid):
+-		return self.nim_slots[slotid].hasOutputs()
+-	
+-	def canConnectTo(self, slotid):
+-		slots = []
+-		if self.nim_slots[slotid].internallyConnectableTo() is not None:
+-			slots.append(self.nim_slots[slotid].internallyConnectableTo())
+-		for type in self.nim_slots[slotid].connectableTo(): 
+-			for slot in self.getNimListOfType(type, exception = slotid):
+-				# FIXME we restrict loopthrough from dvb-s2 to dvb-s, because the c++ part can't handle it
+-				if not (type == "DVB-S" and self.getNimType(slot)):
+-					if self.hasOutputs(slot):
+-						slots.append(slot)
+-		slots.sort()
+-		
+-		return slots
+-	
+-	def canEqualTo(self, slotid):
+-		type = self.getNimType(slotid)
+-		if self.getNimConfig(slotid) == "DVB-S2":
+-			type = "DVB-S"
+-		nimList = self.getNimListOfType(type, slotid)
+-		for nim in nimList[:]:
+-			mode = self.getNimConfig(nim)
+-			if mode.configMode.value == "loopthrough" or mode.configMode.value == "satposdepends":
+-				nimList.remove(nim)
+-		return nimList
+-	
+-	def canDependOn(self, slotid):
+-		type = self.getNimType(slotid)
+-		if self.getNimConfig(slotid) == "DVB-S2":
+-			type = "DVB-S"
+-		nimList = self.getNimListOfType(type, slotid)
+-		positionerList = []
+-		for nim in nimList[:]:
+-			mode = self.getNimConfig(nim)
+-			if mode.configMode.value == "simple" and mode.diseqcMode.value == "positioner":
+-				alreadyConnected = False
+-				for testnim in nimList:
+-					testmode = self.getNimConfig(testnim)
+-					if testmode.configMode.value == "satposdepends" and int(testmode.connectedTo.value) == int(nim):
+-						alreadyConnected = True
+-						break
+-				if not alreadyConnected:
+-					positionerList.append(nim)
+-		return positionerList
+-	
+-	def getNimConfig(self, slotid):
+-		return config.Nims[slotid]
+ 
+ 	def getSatList(self):
+ 		return self.satList
+@@ -778,16 +692,27 @@
+ 		x = slot.slot
+ 		nim = config.Nims[x]
+ 		
++		# HACK: currently, we can only looptrough to socket A
++
+ 		if slot.isCompatible("DVB-S"):
+-			choices = { "nothing": _("nothing connected"),
+-					"simple": _("simple"),
+-					"advanced": _("advanced")}
+-			if len(nimmgr.getNimListOfType(slot.type, exception = x)) > 0:
+-				choices["equal"] = _("equal to")
+-				choices["satposdepends"] = _("second cable of motorized LNB")
+-			if len(nimmgr.canConnectTo(x)) > 0:
+-				choices["loopthrough"] = _("loopthrough to")
+-			nim.configMode = ConfigSelection(choices = choices, default = "simple")
++			if slot.slot == 0:
++				nim.configMode = ConfigSelection(
++					choices = {
++						"simple": _("simple"),
++						"advanced": _("advanced"),
++						"nothing": _("nothing connected"),
++						},
++					default = "simple")
++			else:
++				nim.configMode = ConfigSelection(
++					choices = {
++						"equal": _("equal to Socket A"),
++						"loopthrough": _("loopthrough to socket A"),
++						"nothing": _("nothing connected"),
++						"satposdepends": _("second cable of motorized LNB"),
++						"simple": _("simple"),
++						"advanced": _("advanced")},
++					default = "loopthrough")
+ 
+ 			#important - check if just the 2nd one is LT only and the first one is DVB-S
+ 			# CHECKME: is this logic correct for >2 slots?
+@@ -814,11 +739,6 @@
+ 					("positioner", _("Positioner"))],
+ 				default = "diseqc_a_b")
+ 
+-			choices = []
+-			for id in nimmgr.getNimListOfType("DVB-S"):
+-				if id != x:
+-					choices.append((str(id), str(chr(65 + id))))
+-			nim.connectedTo = ConfigSelection(choices = choi%s
>>> DIFF TRUNCATED @ 16K






More information about the Openembedded-commits mailing list