[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