From e4a7e31f55a6969bf0c8b73787624c3ce1054a10 Mon Sep 17 00:00:00 2001 From: Rod Whitby Date: Thu, 7 Aug 2008 08:04:12 +0000 Subject: numptyphysics: Add -lX11 to LDOPTS to fix build --- packages/numptyphysics/numptyphysics_svn.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'packages') diff --git a/packages/numptyphysics/numptyphysics_svn.bb b/packages/numptyphysics/numptyphysics_svn.bb index 976028befe..d6b0e0f47b 100644 --- a/packages/numptyphysics/numptyphysics_svn.bb +++ b/packages/numptyphysics/numptyphysics_svn.bb @@ -16,7 +16,7 @@ EXTRA_S = "${WORKDIR}/local/packages/numptyphysics" # what an ugly buildsystem... handcrafted Makefiles... back to the stoneage export CCOPTS = "${CFLAGS} -I Box2D/Include" -export LDOPTS = "${LDFLAGS} -lSDL -lSDL_image" +export LDOPTS = "${LDFLAGS} -lSDL -lSDL_image -lX11" do_configure() { for i in Config.h Makefile Game.cpp; do -- cgit v1.2.3 From e0e06499ca566922181234ab2f4698d4024f7f64 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Fri, 8 Aug 2008 12:50:02 +0000 Subject: openzaurus pxa 2.4.18: update SRC_URI to point to oz.org, the ezaurus URL seems to be corrupt --- packages/linux/openzaurus-pxa_2.4.18-rmk7-pxa3-embedix20031107.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'packages') diff --git a/packages/linux/openzaurus-pxa_2.4.18-rmk7-pxa3-embedix20031107.inc b/packages/linux/openzaurus-pxa_2.4.18-rmk7-pxa3-embedix20031107.inc index b56746880f..7e7548491f 100644 --- a/packages/linux/openzaurus-pxa_2.4.18-rmk7-pxa3-embedix20031107.inc +++ b/packages/linux/openzaurus-pxa_2.4.18-rmk7-pxa3-embedix20031107.inc @@ -14,7 +14,7 @@ FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/openzaurus-pxa-${KV} SRC_URI = "${KERNELORG_MIRROR}/pub/linux/kernel/v2.4/linux-${KV}.tar.bz2 \ ftp://ftp.linux.org.uk/pub/armlinux/source/kernel-patches/v2.4/patch-${KV}-rmk${RMKV}.gz;patch=1 \ ftp://source.mvista.com/pub/xscale/pxa/diff-${KV}-rmk${RMKV}-pxa${PXAV}.gz;patch=1 \ - http://developer.ezaurus.com/sl_j/source/c860/${SHARPV}/linux-${PV}-slc860-${SHARPV}-rom1_10.bz2;patch=1 \ + http://openzaurus.org/mirror/linux-${PV}-slc860-${SHARPV}-rom1_10.bz2;patch=1 \ file://piro.patch;patch=1 \ file://swap-performance.patch;patch=1 \ file://bluetooth-2.4.18-mh15.patch;patch=1 \ -- cgit v1.2.3 From 7368c24df7043ab141500e2dc7a4df8f43eabef6 Mon Sep 17 00:00:00 2001 From: Robert Schuster Date: Fri, 8 Aug 2008 13:43:45 +0000 Subject: oprofile 0.9.3: Fixed armv7a patch to actually distribute armv7 event files. oprofile 0.9.4: New recipe. --- packages/oprofile/oprofile/0.9.4-armv7a.diff | 451 +++++++++++++++++++++ packages/oprofile/oprofile/armv7a.diff | 81 ++-- .../oprofile/oprofile/opjitconv-execvp-fix.diff | 23 ++ packages/oprofile/oprofile_0.9.3.bb | 2 +- packages/oprofile/oprofile_0.9.4.bb | 40 ++ 5 files changed, 555 insertions(+), 42 deletions(-) create mode 100644 packages/oprofile/oprofile/0.9.4-armv7a.diff create mode 100644 packages/oprofile/oprofile/opjitconv-execvp-fix.diff create mode 100644 packages/oprofile/oprofile_0.9.4.bb (limited to 'packages') diff --git a/packages/oprofile/oprofile/0.9.4-armv7a.diff b/packages/oprofile/oprofile/0.9.4-armv7a.diff new file mode 100644 index 0000000000..dd95ec732b --- /dev/null +++ b/packages/oprofile/oprofile/0.9.4-armv7a.diff @@ -0,0 +1,451 @@ +Index: oprofile-0.9.4/ChangeLog +=================================================================== +--- oprofile-0.9.4.orig/ChangeLog 2008-07-18 01:04:22.000000000 +0200 ++++ oprofile-0.9.4/ChangeLog 2008-08-08 15:32:15.226950589 +0200 +@@ -1,3 +1,14 @@ ++2008-08-08 Jean Pihet ++ ++ * events/arm/armv7/events: ++ * events/arm/armv7/unit_masks: ++ * libop/op_cpu_type.c: ++ * libop/op_cpu_type.h: ++ * libop/op_events.c: ++ * utils/ophelp.c: Added ARMv7 support to be consistent with the ++ kernel, remove some duplicate code and add some extra events ++ * event/Makefile.am: Install armv7 stuff. ++ + 2008-07-17 Maynard Johnson + + * configure.in: bump version in AM_INIT_AUTOMAKE to 0.9.4 +Index: oprofile-0.9.4/events/arm/armv7/events +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ oprofile-0.9.4/events/arm/armv7/events 2008-08-08 15:32:15.226950589 +0200 +@@ -0,0 +1,53 @@ ++# ARM V7 events ++# From Cortex A8 DDI (ARM DDI 0344B, revision r1p1) ++# ++event:0x00 counters:1,2,3,4 um:zero minimum:500 name:PMNC_SW_INCR : Software increment of PMNC registers ++event:0x01 counters:1,2,3,4 um:zero minimum:500 name:IFETCH_MISS : Instruction fetch misses from cache or normal cacheable memory ++event:0x02 counters:1,2,3,4 um:zero minimum:500 name:ITLB_MISS : Instruction fetch misses from TLB ++event:0x03 counters:1,2,3,4 um:zero minimum:500 name:DCACHE_REFILL : Data R/W operation that causes a refill from cache or normal cacheable memory ++event:0x04 counters:1,2,3,4 um:zero minimum:500 name:DCACHE_ACCESS : Data R/W from cache ++event:0x05 counters:1,2,3,4 um:zero minimum:500 name:DTLB_REFILL : Data R/W that causes a TLB refill ++event:0x06 counters:1,2,3,4 um:zero minimum:500 name:DREAD : Data read architecturally executed (note: architecturally executed = for instructions that are unconditional or that pass the condition code) ++event:0x07 counters:1,2,3,4 um:zero minimum:500 name:DWRITE : Data write architecturally executed ++event:0x08 counters:1,2,3,4 um:zero minimum:500 name:INSTR_EXECUTED : All executed instructions ++event:0x09 counters:1,2,3,4 um:zero minimum:500 name:EXC_TAKEN : Exception taken ++event:0x0A counters:1,2,3,4 um:zero minimum:500 name:EXC_EXECUTED : Exception return architecturally executed ++event:0x0B counters:1,2,3,4 um:zero minimum:500 name:CID_WRITE : Instruction that writes to the Context ID Register architecturally executed ++event:0x0C counters:1,2,3,4 um:zero minimum:500 name:PC_WRITE : SW change of PC, architecturally executed (not by exceptions) ++event:0x0D counters:1,2,3,4 um:zero minimum:500 name:PC_IMM_BRANCH : Immediate branch instruction executed (taken or not) ++event:0x0E counters:1,2,3,4 um:zero minimum:500 name:PC_PROC_RETURN : Procedure return architecturally executed (not by exceptions) ++event:0x0F counters:1,2,3,4 um:zero minimum:500 name:UNALIGNED_ACCESS : Unaligned access architecturally executed ++event:0x10 counters:1,2,3,4 um:zero minimum:500 name:PC_BRANCH_MIS_PRED : Branch mispredicted or not predicted. Counts pipeline flushes because of misprediction ++event:0x12 counters:1,2,3,4 um:zero minimum:500 name:PC_BRANCH_MIS_USED : Branch or change in program flow that could have been predicted ++event:0x40 counters:1,2,3,4 um:zero minimum:500 name:WRITE_BUFFER_FULL : Any write buffer full cycle ++event:0x41 counters:1,2,3,4 um:zero minimum:500 name:L2_STORE_MERGED : Any store that is merged in L2 cache ++event:0x42 counters:1,2,3,4 um:zero minimum:500 name:L2_STORE_BUFF : Any bufferable store from load/store to L2 cache ++event:0x43 counters:1,2,3,4 um:zero minimum:500 name:L2_ACCESS : Any access to L2 cache ++event:0x44 counters:1,2,3,4 um:zero minimum:500 name:L2_CACH_MISS : Any cacheable miss in L2 cache ++event:0x45 counters:1,2,3,4 um:zero minimum:500 name:AXI_READ_CYCLES : Number of cycles for an active AXI read ++event:0x46 counters:1,2,3,4 um:zero minimum:500 name:AXI_WRITE_CYCLES : Number of cycles for an active AXI write ++event:0x47 counters:1,2,3,4 um:zero minimum:500 name:MEMORY_REPLAY : Any replay event in the memory subsystem ++event:0x48 counters:1,2,3,4 um:zero minimum:500 name:UNALIGNED_ACCESS_REPLAY : Unaligned access that causes a replay ++event:0x49 counters:1,2,3,4 um:zero minimum:500 name:L1_DATA_MISS : L1 data cache miss as a result of the hashing algorithm ++event:0x4A counters:1,2,3,4 um:zero minimum:500 name:L1_INST_MISS : L1 instruction cache miss as a result of the hashing algorithm ++event:0x4B counters:1,2,3,4 um:zero minimum:500 name:L1_DATA_COLORING : L1 data access in which a page coloring alias occurs ++event:0x4C counters:1,2,3,4 um:zero minimum:500 name:L1_NEON_DATA : NEON data access that hits L1 cache ++event:0x4D counters:1,2,3,4 um:zero minimum:500 name:L1_NEON_CACH_DATA : NEON cacheable data access that hits L1 cache ++event:0x4E counters:1,2,3,4 um:zero minimum:500 name:L2_NEON : L2 access as a result of NEON memory access ++event:0x4F counters:1,2,3,4 um:zero minimum:500 name:L2_NEON_HIT : Any NEON hit in L2 cache ++event:0x50 counters:1,2,3,4 um:zero minimum:500 name:L1_INST : Any L1 instruction cache access, excluding CP15 cache accesses ++event:0x51 counters:1,2,3,4 um:zero minimum:500 name:PC_RETURN_MIS_PRED : Return stack misprediction at return stack pop (incorrect target address) ++event:0x52 counters:1,2,3,4 um:zero minimum:500 name:PC_BRANCH_FAILED : Branch prediction misprediction ++event:0x53 counters:1,2,3,4 um:zero minimum:500 name:PC_BRANCH_TAKEN : Any predicted branch that is taken ++event:0x54 counters:1,2,3,4 um:zero minimum:500 name:PC_BRANCH_EXECUTED : Any taken branch that is executed ++event:0x55 counters:1,2,3,4 um:zero minimum:500 name:OP_EXECUTED : Number of operations executed (in instruction or mutli-cycle instruction) ++event:0x56 counters:1,2,3,4 um:zero minimum:500 name:CYCLES_INST_STALL : Cycles where no instruction available ++event:0x57 counters:1,2,3,4 um:zero minimum:500 name:CYCLES_INST : Number of instructions issued in a cycle ++event:0x58 counters:1,2,3,4 um:zero minimum:500 name:CYCLES_NEON_DATA_STALL : Number of cycles the processor waits on MRC data from NEON ++event:0x59 counters:1,2,3,4 um:zero minimum:500 name:CYCLES_NEON_INST_STALL : Number of cycles the processor waits on NEON instruction queue or NEON load queue ++event:0x5A counters:1,2,3,4 um:zero minimum:500 name:NEON_CYCLES : Number of cycles NEON and integer processors are not idle ++event:0x70 counters:1,2,3,4 um:zero minimum:500 name:PMU0_EVENTS : Number of events from external input source PMUEXTIN[0] ++event:0x71 counters:1,2,3,4 um:zero minimum:500 name:PMU1_EVENTS : Number of events from external input source PMUEXTIN[1] ++event:0x72 counters:1,2,3,4 um:zero minimum:500 name:PMU_EVENTS : Number of events from both external input sources PMUEXTIN[0] and PMUEXTIN[1] ++event:0xFF counters:0 um:zero minimum:500 name:CPU_CYCLES : Number of CPU cycles ++ +Index: oprofile-0.9.4/events/arm/armv7/unit_masks +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ oprofile-0.9.4/events/arm/armv7/unit_masks 2008-08-08 15:32:15.273760932 +0200 +@@ -0,0 +1,4 @@ ++# ARM V7 PMNC possible unit masks ++# ++name:zero type:mandatory default:0x00 ++ 0x00 No unit mask +Index: oprofile-0.9.4/events/Makefile.in +=================================================================== +--- oprofile-0.9.4.orig/events/Makefile.in 2008-07-18 01:14:45.000000000 +0200 ++++ oprofile-0.9.4/events/Makefile.in 2008-08-08 15:32:34.971961074 +0200 +@@ -1,8 +1,8 @@ +-# Makefile.in generated by automake 1.9.6 from Makefile.am. ++# Makefile.in generated by automake 1.10 from Makefile.am. + # @configure_input@ + + # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +-# 2003, 2004, 2005 Free Software Foundation, Inc. ++# 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + # This Makefile.in is free software; the Free Software Foundation + # gives unlimited permission to copy and/or distribute it, + # with or without modifications, as long as this notice is preserved. +@@ -13,15 +13,11 @@ + # PARTICULAR PURPOSE. + + @SET_MAKE@ +-srcdir = @srcdir@ +-top_srcdir = @top_srcdir@ + VPATH = @srcdir@ + pkgdatadir = $(datadir)/@PACKAGE@ + pkglibdir = $(libdir)/@PACKAGE@ + pkgincludedir = $(includedir)/@PACKAGE@ +-top_builddir = .. + am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +-INSTALL = @INSTALL@ + install_sh_DATA = $(install_sh) -c -m 644 + install_sh_PROGRAM = $(install_sh) -c + install_sh_SCRIPT = $(install_sh) -c +@@ -38,20 +34,8 @@ + subdir = events + DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in + ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +-am__aclocal_m4_deps = $(top_srcdir)/m4/binutils.m4 \ +- $(top_srcdir)/m4/builtinexpect.m4 \ +- $(top_srcdir)/m4/cellspubfdsupport.m4 \ +- $(top_srcdir)/m4/compileroption.m4 \ +- $(top_srcdir)/m4/configmodule.m4 \ +- $(top_srcdir)/m4/copyifchange.m4 $(top_srcdir)/m4/docbook.m4 \ +- $(top_srcdir)/m4/extradirs.m4 $(top_srcdir)/m4/findkernel.m4 \ +- $(top_srcdir)/m4/kerneloption.m4 \ +- $(top_srcdir)/m4/kernelversion.m4 \ +- $(top_srcdir)/m4/mallocattribute.m4 \ +- $(top_srcdir)/m4/poptconst.m4 \ +- $(top_srcdir)/m4/precompiledheader.m4 $(top_srcdir)/m4/qt.m4 \ +- $(top_srcdir)/m4/resultyn.m4 $(top_srcdir)/m4/sstream.m4 \ +- $(top_srcdir)/m4/typedef.m4 $(top_srcdir)/configure.in ++am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ ++ $(top_srcdir)/configure.in + am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) + mkinstalldirs = $(install_sh) -d +@@ -61,8 +45,6 @@ + DIST_SOURCES = + DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) + ACLOCAL = @ACLOCAL@ +-AMDEP_FALSE = @AMDEP_FALSE@ +-AMDEP_TRUE = @AMDEP_TRUE@ + AMTAR = @AMTAR@ + AR = @AR@ + AUTOCONF = @AUTOCONF@ +@@ -70,10 +52,7 @@ + AUTOMAKE = @AUTOMAKE@ + AWK = @AWK@ + BFD_LIBS = @BFD_LIBS@ +-BUILD_JVMPI_AGENT_FALSE = @BUILD_JVMPI_AGENT_FALSE@ +-BUILD_JVMPI_AGENT_TRUE = @BUILD_JVMPI_AGENT_TRUE@ +-BUILD_JVMTI_AGENT_FALSE = @BUILD_JVMTI_AGENT_FALSE@ +-BUILD_JVMTI_AGENT_TRUE = @BUILD_JVMTI_AGENT_TRUE@ ++BUILD_HAMMER = @BUILD_HAMMER@ + CAT_ENTRY_END = @CAT_ENTRY_END@ + CAT_ENTRY_START = @CAT_ENTRY_START@ + CC = @CC@ +@@ -90,16 +69,17 @@ + DEFS = @DEFS@ + DEPDIR = @DEPDIR@ + DOCBOOK_ROOT = @DOCBOOK_ROOT@ +-ECHO = @ECHO@ ++DSYMUTIL = @DSYMUTIL@ ++DUMPBIN = @DUMPBIN@ + ECHO_C = @ECHO_C@ + ECHO_N = @ECHO_N@ + ECHO_T = @ECHO_T@ + EGREP = @EGREP@ + EXEEXT = @EXEEXT@ + EXTRA_CFLAGS_MODULE = @EXTRA_CFLAGS_MODULE@ +-F77 = @F77@ +-FFLAGS = @FFLAGS@ ++FGREP = @FGREP@ + GREP = @GREP@ ++INSTALL = @INSTALL@ + INSTALL_DATA = @INSTALL_DATA@ + INSTALL_PROGRAM = @INSTALL_PROGRAM@ + INSTALL_SCRIPT = @INSTALL_SCRIPT@ +@@ -114,17 +94,23 @@ + LIBOBJS = @LIBOBJS@ + LIBS = @LIBS@ + LIBTOOL = @LIBTOOL@ ++LIPO = @LIPO@ + LN_S = @LN_S@ + LTLIBOBJS = @LTLIBOBJS@ + MAKEINFO = @MAKEINFO@ ++MKDIR_P = @MKDIR_P@ + MOC = @MOC@ + MODINSTALLDIR = @MODINSTALLDIR@ ++NM = @NM@ ++NMEDIT = @NMEDIT@ + OBJEXT = @OBJEXT@ + OPROFILE_DIR = @OPROFILE_DIR@ + OPROFILE_MODULE_ARCH = @OPROFILE_MODULE_ARCH@ + OP_CFLAGS = @OP_CFLAGS@ + OP_CXXFLAGS = @OP_CXXFLAGS@ + OP_DOCDIR = @OP_DOCDIR@ ++OTOOL = @OTOOL@ ++OTOOL64 = @OTOOL64@ + PACKAGE = @PACKAGE@ + PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ + PACKAGE_NAME = @PACKAGE_NAME@ +@@ -139,13 +125,13 @@ + QT_LIB = @QT_LIB@ + QT_VERSION = @QT_VERSION@ + RANLIB = @RANLIB@ ++SED = @SED@ + SET_MAKE = @SET_MAKE@ + SHELL = @SHELL@ + SIZE_T_TYPE = @SIZE_T_TYPE@ + STRIP = @STRIP@ + UIC = @UIC@ + VERSION = @VERSION@ +-XMKMF = @XMKMF@ + XML_CATALOG = @XML_CATALOG@ + XSLTPROC = @XSLTPROC@ + XSLTPROC_FLAGS = @XSLTPROC_FLAGS@ +@@ -153,13 +139,13 @@ + X_EXTRA_LIBS = @X_EXTRA_LIBS@ + X_LIBS = @X_LIBS@ + X_PRE_LIBS = @X_PRE_LIBS@ ++abs_builddir = @abs_builddir@ ++abs_srcdir = @abs_srcdir@ ++abs_top_builddir = @abs_top_builddir@ ++abs_top_srcdir = @abs_top_srcdir@ + ac_ct_CC = @ac_ct_CC@ + ac_ct_CXX = @ac_ct_CXX@ +-ac_ct_F77 = @ac_ct_F77@ +-am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ +-am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ +-am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ +-am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@ ++ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ + am__include = @am__include@ + am__leading_dot = @am__leading_dot@ + am__quote = @am__quote@ +@@ -171,15 +157,12 @@ + build_cpu = @build_cpu@ + build_os = @build_os@ + build_vendor = @build_vendor@ ++builddir = @builddir@ + datadir = @datadir@ + datarootdir = @datarootdir@ + docdir = @docdir@ + dvidir = @dvidir@ + exec_prefix = @exec_prefix@ +-have_qt_FALSE = @have_qt_FALSE@ +-have_qt_TRUE = @have_qt_TRUE@ +-have_xsltproc_FALSE = @have_xsltproc_FALSE@ +-have_xsltproc_TRUE = @have_xsltproc_TRUE@ + host = @host@ + host_alias = @host_alias@ + host_cpu = @host_cpu@ +@@ -189,12 +172,11 @@ + includedir = @includedir@ + infodir = @infodir@ + install_sh = @install_sh@ +-kernel_support_FALSE = @kernel_support_FALSE@ +-kernel_support_TRUE = @kernel_support_TRUE@ + libdir = @libdir@ + libexecdir = @libexecdir@ + localedir = @localedir@ + localstatedir = @localstatedir@ ++lt_ECHO = @lt_ECHO@ + mandir = @mandir@ + mkdir_p = @mkdir_p@ + oldincludedir = @oldincludedir@ +@@ -204,8 +186,11 @@ + psdir = @psdir@ + sbindir = @sbindir@ + sharedstatedir = @sharedstatedir@ ++srcdir = @srcdir@ + sysconfdir = @sysconfdir@ + target_alias = @target_alias@ ++top_builddir = @top_builddir@ ++top_srcdir = @top_srcdir@ + topdir = @topdir@ + event_files = \ + alpha/ev4/events alpha/ev4/unit_masks \ +@@ -298,10 +283,6 @@ + + clean-libtool: + -rm -rf .libs _libs +- +-distclean-libtool: +- -rm -f libtool +-uninstall-info-am: + tags: TAGS + TAGS: + +@@ -310,23 +291,21 @@ + + + distdir: $(DISTFILES) +- $(mkdir_p) $(distdir)/alpha/ev4 $(distdir)/alpha/ev5 $(distdir)/alpha/ev6 $(distdir)/alpha/ev67 $(distdir)/alpha/pca56 $(distdir)/arm/armv6 $(distdir)/arm/mpcore $(distdir)/arm/xscale1 $(distdir)/arm/xscale2 $(distdir)/avr32 $(distdir)/i386/athlon $(distdir)/i386/core $(distdir)/i386/core_2 $(distdir)/i386/p4 $(distdir)/i386/p4-ht $(distdir)/i386/p6_mobile $(distdir)/i386/pii $(distdir)/i386/piii $(distdir)/i386/ppro $(distdir)/ia64/ia64 $(distdir)/ia64/itanium $(distdir)/ia64/itanium2 $(distdir)/mips/20K $(distdir)/mips/24K $(distdir)/mips/25K $(distdir)/mips/34K $(distdir)/mips/5K $(distdir)/mips/r10000 $(distdir)/mips/r12000 $(distdir)/mips/rm7000 $(distdir)/mips/rm9000 $(distdir)/mips/sb1 $(distdir)/mips/vr5432 $(distdir)/mips/vr5500 $(distdir)/ppc/7450 $(distdir)/ppc/e300 $(distdir)/ppc/e500 $(distdir)/ppc/e500v2 $(distdir)/ppc64/970 $(distdir)/ppc64/970MP $(distdir)/ppc64/cell-be $(distdir)/ppc64/pa6t $(distdir)/ppc64/power4 $(distdir)/ppc64/power5 $(distdir)/ppc64/power5+ $(distdir)/ppc64/power5++ $(distdir)/ppc64/power6 $(distdir)/rtc $(distdir)/x86-64/family10 $(distdir)/x86-64/hammer +- @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ +- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ +- list='$(DISTFILES)'; for file in $$list; do \ +- case $$file in \ +- $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ +- $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ +- esac; \ ++ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ ++ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ ++ list='$(DISTFILES)'; \ ++ dist_files=`for file in $$list; do echo $$file; done | \ ++ sed -e "s|^$$srcdirstrip/||;t" \ ++ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ ++ case $$dist_files in \ ++ */*) $(MKDIR_P) `echo "$$dist_files" | \ ++ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ ++ sort -u` ;; \ ++ esac; \ ++ for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ +- dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ +- if test "$$dir" != "$$file" && test "$$dir" != "."; then \ +- dir="/$$dir"; \ +- $(mkdir_p) "$(distdir)$$dir"; \ +- else \ +- dir=''; \ +- fi; \ + if test -d $$d/$$file; then \ ++ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ +@@ -371,7 +350,7 @@ + + distclean: distclean-am + -rm -f Makefile +-distclean-am: clean-am distclean-generic distclean-libtool ++distclean-am: clean-am distclean-generic + + dvi: dvi-am + +@@ -385,12 +364,20 @@ + + install-data-am: install-data-local + ++install-dvi: install-dvi-am ++ + install-exec-am: + ++install-html: install-html-am ++ + install-info: install-info-am + + install-man: + ++install-pdf: install-pdf-am ++ ++install-ps: install-ps-am ++ + installcheck-am: + + maintainer-clean: maintainer-clean-am +@@ -409,17 +396,21 @@ + + ps-am: + +-uninstall-am: uninstall-info-am uninstall-local ++uninstall-am: uninstall-local ++ ++.MAKE: install-am install-strip + + .PHONY: all all-am check check-am clean clean-generic clean-libtool \ + distclean distclean-generic distclean-libtool distdir dvi \ + dvi-am html html-am info info-am install install-am \ +- install-data install-data-am install-data-local install-exec \ +- install-exec-am install-info install-info-am install-man \ ++ install-data install-data-am install-data-local install-dvi \ ++ install-dvi-am install-exec install-exec-am install-html \ ++ install-html-am install-info install-info-am install-man \ ++ install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + maintainer-clean maintainer-clean-generic mostlyclean \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ +- uninstall uninstall-am uninstall-info-am uninstall-local ++ uninstall uninstall-am uninstall-local + + + install-data-local: +Index: oprofile-0.9.4/libop/op_cpu_type.c +=================================================================== +--- oprofile-0.9.4.orig/libop/op_cpu_type.c 2008-02-22 17:17:48.000000000 +0100 ++++ oprofile-0.9.4/libop/op_cpu_type.c 2008-08-08 15:32:15.307120161 +0200 +@@ -71,6 +71,7 @@ + { "ppc64 PA6T", "ppc64/pa6t", CPU_PPC64_PA6T, 6 }, + { "ARM MPCore", "arm/mpcore", CPU_ARM_MPCORE, 2 }, + { "ARM V6 PMU", "arm/armv6", CPU_ARM_V6, 3 }, ++ { "ARM V7 PMNC", "arm/armv7", CPU_ARM_V7, 5 }, + { "ppc64 POWER5++", "ppc64/power5++", CPU_PPC64_POWER5pp, 6 }, + { "e300", "ppc/e300", CPU_PPC_E300, 4 }, + { "AVR32", "avr32", CPU_AVR32, 3 }, +Index: oprofile-0.9.4/libop/op_cpu_type.h +=================================================================== +--- oprofile-0.9.4.orig/libop/op_cpu_type.h 2008-02-22 17:17:48.000000000 +0100 ++++ oprofile-0.9.4/libop/op_cpu_type.h 2008-08-08 15:32:15.322934386 +0200 +@@ -69,6 +69,7 @@ + CPU_PPC64_PA6T, /**< ppc64 PA6T */ + CPU_ARM_MPCORE, /**< ARM MPCore */ + CPU_ARM_V6, /**< ARM V6 */ ++ CPU_ARM_V7, /**< ARM V7 */ + CPU_PPC64_POWER5pp, /**< ppc64 Power5++ family */ + CPU_PPC_E300, /**< e300 */ + CPU_AVR32, /**< AVR32 */ +Index: oprofile-0.9.4/libop/op_events.c +=================================================================== +--- oprofile-0.9.4.orig/libop/op_events.c 2008-02-22 17:17:48.000000000 +0100 ++++ oprofile-0.9.4/libop/op_events.c 2008-08-08 15:32:15.347934528 +0200 +@@ -793,6 +793,7 @@ + case CPU_ARM_XSCALE2: + case CPU_ARM_MPCORE: + case CPU_ARM_V6: ++ case CPU_ARM_V7: + case CPU_AVR32: + descr->name = "CPU_CYCLES"; + break; +Index: oprofile-0.9.4/utils/ophelp.c +=================================================================== +--- oprofile-0.9.4.orig/utils/ophelp.c 2008-02-22 17:17:49.000000000 +0100 ++++ oprofile-0.9.4/utils/ophelp.c 2008-08-08 15:32:15.362934395 +0200 +@@ -433,6 +433,11 @@ + printf("See ARM11 Technical Reference Manual\n"); + break; + ++ case CPU_ARM_V7: ++ printf("See ARM11 Technical Reference Manual\n" ++ "Cortex A8 DDI (ARM DDI 0344B, revision r1p1)\n"); ++ break; ++ + case CPU_PPC64_PA6T: + printf("See PA6T Power Implementation Features Book IV\n" + "Chapter 7 Performance Counters\n"); +Index: oprofile-0.9.4/events/Makefile.am +=================================================================== +--- oprofile-0.9.4.orig/events/Makefile.am 2008-08-08 15:35:37.318966302 +0200 ++++ oprofile-0.9.4/events/Makefile.am 2008-08-08 15:35:57.259878132 +0200 +@@ -31,6 +31,7 @@ + arm/xscale1/events arm/xscale1/unit_masks \ + arm/xscale2/events arm/xscale2/unit_masks \ + arm/armv6/events arm/armv6/unit_masks \ ++ arm/armv7/events arm/armv7/unit_masks \ + arm/mpcore/events arm/mpcore/unit_masks \ + avr32/events avr32/unit_masks \ + mips/20K/events mips/20K/unit_masks \ diff --git a/packages/oprofile/oprofile/armv7a.diff b/packages/oprofile/oprofile/armv7a.diff index cb53e5e791..d6dccc16c6 100644 --- a/packages/oprofile/oprofile/armv7a.diff +++ b/packages/oprofile/oprofile/armv7a.diff @@ -1,6 +1,7 @@ -diff -urN oprofile-0.9.3/ChangeLog oprofile-0.9.3.armv7/ChangeLog ---- oprofile-0.9.3/ChangeLog 2007-07-16 20:22:17.000000000 +0200 -+++ oprofile-0.9.3.armv7/ChangeLog 2008-04-23 18:38:40.000000000 +0200 +Index: oprofile-0.9.3/ChangeLog +=================================================================== +--- oprofile-0.9.3.orig/ChangeLog 2007-07-16 20:22:17.000000000 +0200 ++++ oprofile-0.9.3/ChangeLog 2008-08-08 15:41:09.194935711 +0200 @@ -1,3 +1,14 @@ + +2008-04-23 Jean Pihet @@ -16,9 +17,10 @@ diff -urN oprofile-0.9.3/ChangeLog oprofile-0.9.3.armv7/ChangeLog 2007-07-09 Maynard Johnson * doc/opreport.xsd: -diff -urN oprofile-0.9.3/events/arm/armv7/events oprofile-0.9.3.armv7/events/arm/armv7/events ---- oprofile-0.9.3/events/arm/armv7/events 1970-01-01 01:00:00.000000000 +0100 -+++ oprofile-0.9.3.armv7/events/arm/armv7/events 2008-04-24 15:06:48.000000000 +0200 +Index: oprofile-0.9.3/events/arm/armv7/events +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ oprofile-0.9.3/events/arm/armv7/events 2008-08-08 15:41:09.198936463 +0200 @@ -0,0 +1,53 @@ +# ARM V7 events +# From Cortex A8 DDI (ARM DDI 0344B, revision r1p1) @@ -73,37 +75,19 @@ diff -urN oprofile-0.9.3/events/arm/armv7/events oprofile-0.9.3.armv7/events/arm +event:0x72 counters:1,2,3,4 um:zero minimum:500 name:PMU_EVENTS : Number of events from both external input sources PMUEXTIN[0] and PMUEXTIN[1] +event:0xFF counters:0 um:zero minimum:500 name:CPU_CYCLES : Number of CPU cycles + -diff -urN oprofile-0.9.3/events/arm/armv7/unit_masks oprofile-0.9.3.armv7/events/arm/armv7/unit_masks ---- oprofile-0.9.3/events/arm/armv7/unit_masks 1970-01-01 01:00:00.000000000 +0100 -+++ oprofile-0.9.3.armv7/events/arm/armv7/unit_masks 2008-04-01 10:52:00.000000000 +0200 +Index: oprofile-0.9.3/events/arm/armv7/unit_masks +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ oprofile-0.9.3/events/arm/armv7/unit_masks 2008-08-08 15:41:09.210955689 +0200 @@ -0,0 +1,4 @@ +# ARM V7 PMNC possible unit masks +# +name:zero type:mandatory default:0x00 + 0x00 No unit mask -diff -urN oprofile-0.9.3/events/Makefile.in oprofile-0.9.3.armv7/events/Makefile.in ---- oprofile-0.9.3/events/Makefile.in 2007-07-16 20:23:28.000000000 +0200 -+++ oprofile-0.9.3.armv7/events/Makefile.in 2008-04-24 15:11:52.000000000 +0200 -@@ -211,6 +211,7 @@ - arm/xscale1/events arm/xscale1/unit_masks \ - arm/xscale2/events arm/xscale2/unit_masks \ - arm/armv6/events arm/armv6/unit_masks \ -+ arm/armv7/events arm/armv7/unit_masks \ - arm/mpcore/events arm/mpcore/unit_masks \ - mips/20K/events mips/20K/unit_masks \ - mips/24K/events mips/24K/unit_masks \ -@@ -270,7 +271,7 @@ - - - distdir: $(DISTFILES) -- $(mkdir_p) $(distdir)/alpha/ev4 $(distdir)/alpha/ev5 $(distdir)/alpha/ev6 $(distdir)/alpha/ev67 $(distdir)/alpha/pca56 $(distdir)/arm/armv6 $(distdir)/arm/mpcore $(distdir)/arm/xscale1 $(distdir)/arm/xscale2 $(distdir)/i386/athlon $(distdir)/i386/core $(distdir)/i386/core_2 $(distdir)/i386/p4 $(distdir)/i386/p4-ht $(distdir)/i386/p6_mobile $(distdir)/i386/pii $(distdir)/i386/piii $(distdir)/i386/ppro $(distdir)/ia64/ia64 $(distdir)/ia64/itanium $(distdir)/ia64/itanium2 $(distdir)/mips/20K $(distdir)/mips/24K $(distdir)/mips/25K $(distdir)/mips/34K $(distdir)/mips/5K $(distdir)/mips/r10000 $(distdir)/mips/r12000 $(distdir)/mips/rm7000 $(distdir)/mips/rm9000 $(distdir)/mips/sb1 $(distdir)/mips/vr5432 $(distdir)/mips/vr5500 $(distdir)/ppc/7450 $(distdir)/ppc/e500 $(distdir)/ppc/e500v2 $(distdir)/ppc64/970 $(distdir)/ppc64/970MP $(distdir)/ppc64/cell-be $(distdir)/ppc64/pa6t $(distdir)/ppc64/power4 $(distdir)/ppc64/power5 $(distdir)/ppc64/power5+ $(distdir)/ppc64/power5++ $(distdir)/ppc64/power6 $(distdir)/rtc $(distdir)/x86-64/family10 $(distdir)/x86-64/hammer -+ $(mkdir_p) $(distdir)/alpha/ev4 $(distdir)/alpha/ev5 $(distdir)/alpha/ev6 $(distdir)/alpha/ev67 $(distdir)/alpha/pca56 $(distdir)/arm/armv6 $(distdir)/arm/armv7 $(distdir)/arm/mpcore $(distdir)/arm/xscale1 $(distdir)/arm/xscale2 $(distdir)/i386/athlon $(distdir)/i386/core $(distdir)/i386/core_2 $(distdir)/i386/p4 $(distdir)/i386/p4-ht $(distdir)/i386/p6_mobile $(distdir)/i386/pii $(distdir)/i386/piii $(distdir)/i386/ppro $(distdir)/ia64/ia64 $(distdir)/ia64/itanium $(distdir)/ia64/itanium2 $(distdir)/mips/20K $(distdir)/mips/24K $(distdir)/mips/25K $(distdir)/mips/34K $(distdir)/mips/5K $(distdir)/mips/r10000 $(distdir)/mips/r12000 $(distdir)/mips/rm7000 $(distdir)/mips/rm9000 $(distdir)/mips/sb1 $(distdir)/mips/vr5432 $(distdir)/mips/vr5500 $(distdir)/ppc/7450 $(distdir)/ppc/e500 $(distdir)/ppc/e500v2 $(distdir)/ppc64/970 $(distdir)/ppc64/970MP $(distdir)/ppc64/cell-be $(distdir)/ppc64/pa6t $(distdir)/ppc64/power4 $(distdir)/ppc64/power5 $(distdir)/ppc64/power5+ $(distdir)/ppc64/power5++ $(distdir)/ppc64/power6 $(distdir)/rtc $(distdir)/x86-64/family10 $(distdir)/x86-64/hammer - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ -diff -urN oprofile-0.9.3/libop/op_cpu_type.c oprofile-0.9.3.armv7/libop/op_cpu_type.c ---- oprofile-0.9.3/libop/op_cpu_type.c 2007-07-16 20:22:17.000000000 +0200 -+++ oprofile-0.9.3.armv7/libop/op_cpu_type.c 2008-04-23 18:31:56.000000000 +0200 +Index: oprofile-0.9.3/libop/op_cpu_type.c +=================================================================== +--- oprofile-0.9.3.orig/libop/op_cpu_type.c 2007-07-16 20:22:17.000000000 +0200 ++++ oprofile-0.9.3/libop/op_cpu_type.c 2008-08-08 15:41:09.242955608 +0200 @@ -71,6 +71,7 @@ { "ppc64 PA6T", "ppc64/pa6t", CPU_PPC64_PA6T, 6 }, { "ARM MPCore", "arm/mpcore", CPU_ARM_MPCORE, 2 }, @@ -112,9 +96,10 @@ diff -urN oprofile-0.9.3/libop/op_cpu_type.c oprofile-0.9.3.armv7/libop/op_cpu_t { "ppc64 POWER5++", "ppc64/power5++", CPU_PPC64_POWER5pp, 6 }, }; -diff -urN oprofile-0.9.3/libop/op_cpu_type.h oprofile-0.9.3.armv7/libop/op_cpu_type.h ---- oprofile-0.9.3/libop/op_cpu_type.h 2007-07-16 20:22:17.000000000 +0200 -+++ oprofile-0.9.3.armv7/libop/op_cpu_type.h 2008-04-23 18:34:37.000000000 +0200 +Index: oprofile-0.9.3/libop/op_cpu_type.h +=================================================================== +--- oprofile-0.9.3.orig/libop/op_cpu_type.h 2007-07-16 20:22:17.000000000 +0200 ++++ oprofile-0.9.3/libop/op_cpu_type.h 2008-08-08 15:41:09.262956072 +0200 @@ -69,6 +69,7 @@ CPU_PPC64_PA6T, /**< ppc64 PA6T */ CPU_ARM_MPCORE, /**< ARM MPCore */ @@ -123,9 +108,10 @@ diff -urN oprofile-0.9.3/libop/op_cpu_type.h oprofile-0.9.3.armv7/libop/op_cpu_t CPU_PPC64_POWER5pp, /**< ppc64 Power5++ family */ MAX_CPU_TYPE } op_cpu; -diff -urN oprofile-0.9.3/libop/op_events.c oprofile-0.9.3.armv7/libop/op_events.c ---- oprofile-0.9.3/libop/op_events.c 2007-07-16 20:22:17.000000000 +0200 -+++ oprofile-0.9.3.armv7/libop/op_events.c 2008-04-23 18:39:30.000000000 +0200 +Index: oprofile-0.9.3/libop/op_events.c +=================================================================== +--- oprofile-0.9.3.orig/libop/op_events.c 2007-07-16 20:22:17.000000000 +0200 ++++ oprofile-0.9.3/libop/op_events.c 2008-08-08 15:41:09.278955619 +0200 @@ -788,6 +788,7 @@ case CPU_ARM_XSCALE2: case CPU_ARM_MPCORE: @@ -134,9 +120,10 @@ diff -urN oprofile-0.9.3/libop/op_events.c oprofile-0.9.3.armv7/libop/op_events. descr->name = "CPU_CYCLES"; break; -diff -urN oprofile-0.9.3/utils/ophelp.c oprofile-0.9.3.armv7/utils/ophelp.c ---- oprofile-0.9.3/utils/ophelp.c 2007-07-16 20:22:17.000000000 +0200 -+++ oprofile-0.9.3.armv7/utils/ophelp.c 2008-04-23 19:17:51.000000000 +0200 +Index: oprofile-0.9.3/utils/ophelp.c +=================================================================== +--- oprofile-0.9.3.orig/utils/ophelp.c 2007-07-16 20:22:17.000000000 +0200 ++++ oprofile-0.9.3/utils/ophelp.c 2008-08-08 15:41:09.294934552 +0200 @@ -433,6 +433,11 @@ printf("See ARM11 Technical Reference Manual\n"); break; @@ -149,3 +136,15 @@ diff -urN oprofile-0.9.3/utils/ophelp.c oprofile-0.9.3.armv7/utils/ophelp.c case CPU_PPC64_PA6T: printf("See PA6T Power Implementation Features Book IV\n" "Chapter 7 Performance Counters\n"); +Index: oprofile-0.9.3/events/Makefile.am +=================================================================== +--- oprofile-0.9.3.orig/events/Makefile.am 2008-08-08 15:41:24.746955563 +0200 ++++ oprofile-0.9.3/events/Makefile.am 2008-08-08 15:41:43.465544495 +0200 +@@ -31,6 +31,7 @@ + arm/xscale1/events arm/xscale1/unit_masks \ + arm/xscale2/events arm/xscale2/unit_masks \ + arm/armv6/events arm/armv6/unit_masks \ ++ arm/armv7/events arm/armv7/unit_masks \ + arm/mpcore/events arm/mpcore/unit_masks \ + mips/20K/events mips/20K/unit_masks \ + mips/24K/events mips/24K/unit_masks \ diff --git a/packages/oprofile/oprofile/opjitconv-execvp-fix.diff b/packages/oprofile/oprofile/opjitconv-execvp-fix.diff new file mode 100644 index 0000000000..5e6d271cc5 --- /dev/null +++ b/packages/oprofile/oprofile/opjitconv-execvp-fix.diff @@ -0,0 +1,23 @@ +status: applied upstream http://sourceforge.net/tracker/index.php?func=detail&aid=2040417&group_id=16191&atid=116191 +applied in: >0.9.4 +Index: oprofile-0.9.4/daemon/init.c +=================================================================== +--- oprofile-0.9.4.orig/daemon/init.c 2008-08-06 17:59:43.126578165 +0200 ++++ oprofile-0.9.4/daemon/init.c 2008-08-06 18:00:10.694789667 +0200 +@@ -170,14 +170,14 @@ + sprintf(end_time_str, "%llu", end_time); + sprintf(opjitconv_path, "%s/%s", OP_BINDIR, "opjitconv"); + arg_num = 0; +- exec_args[arg_num++] = opjitconv_path; ++ exec_args[arg_num++] = "opjitconv"; + if (vmisc) + exec_args[arg_num++] = "-d"; + exec_args[arg_num++] = session_dir; + exec_args[arg_num++] = start_time_str; + exec_args[arg_num++] = end_time_str; + exec_args[arg_num] = (char *) NULL; +- execvp("opjitconv", exec_args); ++ execvp(opjitconv_path, exec_args); + fprintf(stderr, "Failed to exec %s: %s\n", + exec_args[0], strerror(errno)); + /* We don't want any cleanup in the child */ diff --git a/packages/oprofile/oprofile_0.9.3.bb b/packages/oprofile/oprofile_0.9.3.bb index 4d6af997af..7ffcec3b99 100644 --- a/packages/oprofile/oprofile_0.9.3.bb +++ b/packages/oprofile/oprofile_0.9.3.bb @@ -5,7 +5,7 @@ LICENSE = "GPL" DEPENDS = "popt binutils" RDEPENDS = "binutils-symlinks" RRECOMMENDS = "kernel-vmlinux" -PR = "r7" +PR = "r8" SRC_URI = "${SOURCEFORGE_MIRROR}/oprofile/oprofile-${PV}.tar.gz \ file://armv6_fix.patch;patch=1 \ diff --git a/packages/oprofile/oprofile_0.9.4.bb b/packages/oprofile/oprofile_0.9.4.bb new file mode 100644 index 0000000000..f8fb744fcc --- /dev/null +++ b/packages/oprofile/oprofile_0.9.4.bb @@ -0,0 +1,40 @@ +SECTION = "devel" +DESCRIPTION = "OProfile is a system-wide profiler for Linux systems, capable \ +of profiling all running code at low overhead." +LICENSE = "GPL" +DEPENDS = "popt binutils" +RDEPENDS = "binutils-symlinks" +RRECOMMENDS = "kernel-vmlinux" +PR = "r0" + +SRC_URI = "\ + ${SOURCEFORGE_MIRROR}/oprofile/oprofile-${PV}.tar.gz \ + file://opjitconv-execvp-fix.diff;patch=1 \ + file://0.9.4-armv7a.diff;patch=1 \ + file://acinclude.m4 \ + " + +inherit autotools + +EXTRA_OECONF = " \ + --with-kernel-support \ + --without-x \ + " + +do_configure () { + cp ${WORKDIR}/acinclude.m4 ${S}/ + autotools_do_configure +} + +do_stage () { + # As of 0.9.4 there is a libopagent library to compile and link against. + autotools_stage_all +} + +PACKAGES = "${PN}-dev ${PN}-doc ${PN}-dbg ${PN}" + +FILES_${PN}-dev += "\ + ${libdir}/oprofile/lib*.so \ + ${libdir}/oprofile/lib*.a \ + ${libdir}/oprofile/lib*.la \ +" -- cgit v1.2.3 From 32bdaa4760447ac13bfd3ad361b857e05457981e Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Fri, 8 Aug 2008 14:06:58 +0000 Subject: numptyphysics: add patch to build it with gcc 4.3 --- .../numptyphysics/numptyphysics/.mtn2git_empty | 0 packages/numptyphysics/numptyphysics/gcc43.diff | 50 ++++++++++++++++++++++ packages/numptyphysics/numptyphysics_svn.bb | 1 + 3 files changed, 51 insertions(+) create mode 100644 packages/numptyphysics/numptyphysics/.mtn2git_empty create mode 100644 packages/numptyphysics/numptyphysics/gcc43.diff (limited to 'packages') diff --git a/packages/numptyphysics/numptyphysics/.mtn2git_empty b/packages/numptyphysics/numptyphysics/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/numptyphysics/numptyphysics/gcc43.diff b/packages/numptyphysics/numptyphysics/gcc43.diff new file mode 100644 index 0000000000..2658771555 --- /dev/null +++ b/packages/numptyphysics/numptyphysics/gcc43.diff @@ -0,0 +1,50 @@ +--- /tmp/Common.h 2008-08-08 15:47:57.000000000 +0200 ++++ trunk/Common.h 2008-08-08 15:48:08.403198000 +0200 +@@ -14,6 +14,7 @@ + * + */ + ++#include + #ifndef COMMON_H + #define COMMON_H + +--- /tmp/b2Body.h 2008-08-08 15:51:13.000000000 +0200 ++++ trunk/Box2D/Source/Dynamics/b2Body.h 2008-08-08 15:52:26.583198000 +0200 +@@ -24,6 +24,7 @@ + #include "../Collision/b2Shape.h" + + #include ++#include + + class b2Joint; + class b2Contact; +--- /tmp/b2BroadPhase.cpp 2008-08-08 15:53:43.000000000 +0200 ++++ trunk/Box2D/Source/Collision/b2BroadPhase.cpp 2008-08-08 15:54:04.913198000 +0200 +@@ -18,6 +18,7 @@ + + #include "b2BroadPhase.h" + #include ++#include + + // Notes: + // - we use bound arrays instead of linked lists for cache coherence. +--- /tmp/b2PolyContact.cpp 2008-08-08 15:55:01.000000000 +0200 ++++ trunk/Box2D/Source/Dynamics/Contacts/b2PolyContact.cpp 2008-08-08 15:56:15.553198000 +0200 +@@ -21,6 +21,7 @@ + + #include + #include ++#include + + b2Contact* b2PolyContact::Create(b2Shape* shape1, b2Shape* shape2, b2BlockAllocator* allocator) + { +--- /tmp/b2BlockAllocator.cpp 2008-08-08 15:57:02.000000000 +0200 ++++ trunk/Box2D/Source/Common/b2BlockAllocator.cpp 2008-08-08 15:57:35.833198000 +0200 +@@ -20,6 +20,7 @@ + #include + #include + #include ++#include + + int32 b2BlockAllocator::s_blockSizes[b2_blockSizes] = + { diff --git a/packages/numptyphysics/numptyphysics_svn.bb b/packages/numptyphysics/numptyphysics_svn.bb index d6b0e0f47b..6c833c2f01 100644 --- a/packages/numptyphysics/numptyphysics_svn.bb +++ b/packages/numptyphysics/numptyphysics_svn.bb @@ -9,6 +9,7 @@ PV = "0.2+svnr${SRCREV}" SRC_URI = "\ svn://garage.maemo.org/svn/${PN};module=trunk;proto=https \ http://wwwpub.zih.tu-dresden.de/~mkluge/numptyphysics_setup.tgz \ + file://gcc43.diff;patch=1 \ " S = "${WORKDIR}/trunk" -- cgit v1.2.3 From 5b7c5937a7994b57fd8401f02b78c47fb274bf42 Mon Sep 17 00:00:00 2001 From: Stefan Schmidt Date: Fri, 8 Aug 2008 14:22:12 +0000 Subject: illume-theme-freesmartphone: Build theme from source. --- packages/freesmartphone/illume-theme-freesmartphone_git.bb | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'packages') diff --git a/packages/freesmartphone/illume-theme-freesmartphone_git.bb b/packages/freesmartphone/illume-theme-freesmartphone_git.bb index 2d881214a0..3beffce09e 100644 --- a/packages/freesmartphone/illume-theme-freesmartphone_git.bb +++ b/packages/freesmartphone/illume-theme-freesmartphone_git.bb @@ -2,11 +2,16 @@ DESCRIPTION = "Illume theme for the freesmartphone.org project" HOMEPAGE = "http://illume.projects.openmoko.org/" LICENSE = "MIT/BSD" PV = "0.0+gitr${SRCREV}" -PR = "r0" +PR = "r1" SRC_URI = "${FREESMARTPHONE_GIT}/artwork.git;protocol=git;branch=master" S = "${WORKDIR}/git/illume" +do_compile() { + cd illume && ./build.sh && cd .. + cd illume_init && ./build.sh && cd .. +} + do_install() { install -d ${D}${sysconfdir}/enlightenment install -d ${D}${datadir}/enlightenment/data/themes/ @@ -15,8 +20,8 @@ do_install() { # Make illume the default profile echo 'E_PROFILE="-profile illume"' > ${D}${sysconfdir}/enlightenment/default_profile - install -m 0644 ${S}/illume.edj ${D}${datadir}/enlightenment/data/themes/ - install -m 0644 ${S}/illume_init.edj ${D}${datadir}/enlightenment/data/init/ + install -m 0644 ${S}/illume/illume.edj ${D}${datadir}/enlightenment/data/themes/ + install -m 0644 ${S}/illume_init/illume_init.edj ${D}${datadir}/enlightenment/data/init/ } RPROVIDES_${PN} = "illume-theme" -- cgit v1.2.3 From e92e271aaf8f2d0c18f52a8ce5f81425e2609804 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Fri, 8 Aug 2008 14:33:27 +0000 Subject: x-load: bump SRCREV and PV --- packages/x-load/x-load_git.bb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'packages') diff --git a/packages/x-load/x-load_git.bb b/packages/x-load/x-load_git.bb index 82c39da5dd..b6ab851460 100644 --- a/packages/x-load/x-load_git.bb +++ b/packages/x-load/x-load_git.bb @@ -2,9 +2,9 @@ require x-load.inc FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/x-load-git/${MACHINE}" -SRCREV = "0c9ba2fb18aaad9f92faad2351e59721ae71bec4" +SRCREV = "73eb0caf065b3b3f407d8af5c4836624e5cc7b69" -PV = "1.41+${PR}+git${SRCREV}" +PV = "1.42+${PR}+git${SRCREV}" PR="r7" SRC_URI = "git://www.sakoman.net/git/x-load-omap3.git;branch=master;protocol=git" -- cgit v1.2.3 From a6e1e173fd4995c4daad7948a73577fe082fd963 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Fri, 8 Aug 2008 14:59:16 +0000 Subject: linux-omap2 git: bump SRCREV to get GPTIMER irq fix --- packages/linux/linux-omap2_git.bb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'packages') diff --git a/packages/linux/linux-omap2_git.bb b/packages/linux/linux-omap2_git.bb index 1c47bd95b4..4008102f09 100644 --- a/packages/linux/linux-omap2_git.bb +++ b/packages/linux/linux-omap2_git.bb @@ -2,11 +2,11 @@ require linux-omap.inc FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/linux-omap2-git/${MACHINE}" -SRCREV = "040378c1b24ace3b8945318a8c24ef218200912c" +SRCREV = "d6daf8d8cc5ccf90247def5551ee9c3e8555e848" PV = "2.6.26" #PV = "2.6.26+2.6.27-rc1+${PR}+git${SRCREV}" -PR = "r57" +PR = "r58" SRC_URI = "git://source.mvista.com/git/linux-omap-2.6.git;protocol=git \ file://defconfig" -- cgit v1.2.3 From fe3060787a05ebec019164a481228e89c611acd1 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Fri, 8 Aug 2008 15:29:49 +0000 Subject: qt4 staging: add a || true to the cp --- packages/qt4/qt_staging.inc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'packages') diff --git a/packages/qt4/qt_staging.inc b/packages/qt4/qt_staging.inc index de941df1df..75b5b5735d 100644 --- a/packages/qt4/qt_staging.inc +++ b/packages/qt4/qt_staging.inc @@ -17,9 +17,9 @@ do_stage_append() { sed -i s#'$(OE_QMAKE_LIBS_X11)'#"${OE_QMAKE_LIBS_X11}"#g libQt*.la install -d ${STAGING_DIR_TARGET}/qt4/bin - cp ${STAGING_DIR_NATIVE}/qt4/bin/* ${STAGING_DIR_TARGET}/qt4/bin/ + cp ${STAGING_DIR_NATIVE}/qt4/bin/* ${STAGING_DIR_TARGET}/qt4/bin/ || true for qttool in ${STAGING_DIR_TARGET}/qt4/bin/*4 ; do - ln -sf $qttool ${STAGING_DIR_TARGET}/qt4/bin/$(basename $qttool |sed s:4::g) + ln -sf $qttool ${STAGING_DIR_TARGET}/qt4/bin/$(basename $qttool |sed s:4::g) done } -- cgit v1.2.3 From 3ad1de8244c704953e1f4dbd21cebe72f6ed9aa0 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Fri, 8 Aug 2008 15:35:28 +0000 Subject: u-boot: fix bump SRCREV for neuros-osd2 to fix HDCP handshake --- packages/u-boot/u-boot_git.bb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'packages') diff --git a/packages/u-boot/u-boot_git.bb b/packages/u-boot/u-boot_git.bb index 201b814c9d..04eb7eb2e8 100644 --- a/packages/u-boot/u-boot_git.bb +++ b/packages/u-boot/u-boot_git.bb @@ -1,10 +1,10 @@ require u-boot.inc -PR="r15" +PR="r16" SRCREV_davinci-sffsdr = "4b50cd12a3b3c644153c4cf393f4a4c12289e5aa" SRCREV_davinci-dvevm = "4b50cd12a3b3c644153c4cf393f4a4c12289e5aa" SRCREV_beagleboard = "9c1c36409b2cb4e81aab0bd9d0a69c68f4475aae" -SRCREV_neuros-osd2 = "528a4ab736758ff0c889456d46673041eb52f756" +SRCREV_neuros-osd2 = "bc66414cd99154a40949db1bd2f45a62b8febca9" SRC_URI = "git://www.denx.de/git/u-boot.git;protocol=git " SRC_URI_sequoia = "git://www.denx.de/git/u-boot.git;protocol=git;tag=cf3b41e0c1111dbb865b6e34e9f3c3d3145a6093 " -- cgit v1.2.3 From 9d1651d8477273a9e9bef50e67d7444784eddf19 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Fri, 8 Aug 2008 16:55:12 +0000 Subject: dsplink, codec-engine: put common paths in a .inc file so more recipes can share them --- packages/dsplink/codec-engine_2.10.bb | 8 +------- packages/dsplink/dsplink.inc | 7 +------ packages/dsplink/ti-paths.inc | 8 ++++++++ 3 files changed, 10 insertions(+), 13 deletions(-) create mode 100644 packages/dsplink/ti-paths.inc (limited to 'packages') diff --git a/packages/dsplink/codec-engine_2.10.bb b/packages/dsplink/codec-engine_2.10.bb index 0e85d38a82..098d0054cd 100644 --- a/packages/dsplink/codec-engine_2.10.bb +++ b/packages/dsplink/codec-engine_2.10.bb @@ -18,13 +18,7 @@ SRC_URI = "http://install.tarball.in.source.dir/codec_engine_2_10_01.tar.gz \ S = "${WORKDIR}/codec_engine_2_10_01" -# Path to the dir where the TI tools are unpacked -TITOOLSDIR ?= "/OE/TI" -# Path under TITOOLSDIR where dspbios is unpacked -TIBIOSDIR ?= "bios_5_32_03" -TIXDCTOOLSDIR ?= "${TIBIOSDIR}/xdctools" -# Path under TITOOLSDIR where the dsp toolchain is unpacked -TICGTOOLSDIR ?= "cg6x_6_1_2" +require ti-paths.inc PARALLEL_MAKE = "" diff --git a/packages/dsplink/dsplink.inc b/packages/dsplink/dsplink.inc index 2347068379..f303b6e53f 100644 --- a/packages/dsplink/dsplink.inc +++ b/packages/dsplink/dsplink.inc @@ -11,12 +11,7 @@ S = "${WORKDIR}/dsplink_1_50/dsplink" # Needed for buildscripts export DSPLINK = "${S}" -# Path to the dir where the TI tools are unpacked -TITOOLSDIR ?= "/OE/TI" -# Path under TITOOLSDIR where dspbios is unpacked -TIBIOSDIR ?= "bios_5_32_03" -# Path under TITOOLSDIR where the dsp toolchain is unpacked -TICGTOOLSDIR ?= "cg6x_6_1_2" +require ti-paths.inc DSPLINKPLATFORM ?= "Davinci" diff --git a/packages/dsplink/ti-paths.inc b/packages/dsplink/ti-paths.inc new file mode 100644 index 0000000000..83cbe683c0 --- /dev/null +++ b/packages/dsplink/ti-paths.inc @@ -0,0 +1,8 @@ +# Path to the dir where the TI tools are unpacked +TITOOLSDIR ?= "/OE/TI" +# Path under TITOOLSDIR where dspbios is unpacked +TIBIOSDIR ?= "bios_5_32_03" +TIXDCTOOLSDIR ?= "${TIBIOSDIR}/xdctools" +# Path under TITOOLSDIR where the dsp toolchain is unpacked +TICGTOOLSDIR ?= "cg6x_6_1_2" + -- cgit v1.2.3 From d92bbee8b560537e54f14ba01b38b19d36dbc5ac Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Fri, 8 Aug 2008 19:14:08 +0000 Subject: vala(-native): add 0.3.4 --- packages/vala/vala-native_0.3.4.bb | 5 +++++ packages/vala/vala_0.3.4.bb | 15 +++++++++++++++ 2 files changed, 20 insertions(+) create mode 100644 packages/vala/vala-native_0.3.4.bb create mode 100644 packages/vala/vala_0.3.4.bb (limited to 'packages') diff --git a/packages/vala/vala-native_0.3.4.bb b/packages/vala/vala-native_0.3.4.bb new file mode 100644 index 0000000000..f097e7db74 --- /dev/null +++ b/packages/vala/vala-native_0.3.4.bb @@ -0,0 +1,5 @@ +require vala_${PV}.bb + +inherit native +DEPENDS = "glib-2.0-native" + diff --git a/packages/vala/vala_0.3.4.bb b/packages/vala/vala_0.3.4.bb new file mode 100644 index 0000000000..37ad4b4cfe --- /dev/null +++ b/packages/vala/vala_0.3.4.bb @@ -0,0 +1,15 @@ +DESCRIPTION = "Vala is a C#-like language dedicated to ease GObject programming. Vala compiles to C" +SECTION = "devel" +DEPENDS = "glib-2.0" +HOMEPAGE = "http://live.gnome.org/Vala" +LICENSE = "LGPL" + +SRC_URI = "http://download.gnome.org/sources/vala/0.3/vala-${PV}.tar.bz2" +S = "${WORKDIR}/vala-${PV}" + +inherit autotools lib_package + +do_stage() { + autotools_stage_all +} + -- cgit v1.2.3 From 19d7a70af1f98b1e498930d522c31910b0662799 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Fri, 8 Aug 2008 20:45:58 +0000 Subject: linux-openmoko.inc: sync with openmoko so package upgrade doesn't &*$(*@$(@ erase my kernel partition again --- packages/linux/linux-handhelds-2.6-2.6.21/h2200/defconfig | 8 ++++++-- packages/linux/linux-openmoko.inc | 10 +++++++--- 2 files changed, 13 insertions(+), 5 deletions(-) (limited to 'packages') diff --git a/packages/linux/linux-handhelds-2.6-2.6.21/h2200/defconfig b/packages/linux/linux-handhelds-2.6-2.6.21/h2200/defconfig index 7c8e756060..e5d3cd1a07 100644 --- a/packages/linux/linux-handhelds-2.6-2.6.21/h2200/defconfig +++ b/packages/linux/linux-handhelds-2.6-2.6.21/h2200/defconfig @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit # Linux kernel version: 2.6.21-hh20 -# Fri Feb 15 01:08:07 2008 +# Thu Aug 7 19:32:15 2008 # CONFIG_ARM=y CONFIG_SYS_SUPPORTS_APM_EMULATION=y @@ -938,7 +938,11 @@ CONFIG_HW_CONSOLE=y # # Serial drivers # -# CONFIG_SERIAL_8250 is not set +CONFIG_SERIAL_8250=m +CONFIG_SERIAL_8250_CS=m +CONFIG_SERIAL_8250_NR_UARTS=4 +CONFIG_SERIAL_8250_RUNTIME_UARTS=4 +# CONFIG_SERIAL_8250_EXTENDED is not set # # Non-8250 serial port support diff --git a/packages/linux/linux-openmoko.inc b/packages/linux/linux-openmoko.inc index b4863ca0c8..3a6589791e 100644 --- a/packages/linux/linux-openmoko.inc +++ b/packages/linux/linux-openmoko.inc @@ -4,12 +4,12 @@ KERNEL_IMAGETYPE = "uImage" UBOOT_ENTRYPOINT = "30008000" -FILES_kernel-image = "" -ALLOW_EMPTY = "1" - COMPATIBLE_HOST = "arm.*-linux" COMPATIBLE_MACHINE = 'om-gta01|om-gta02' +CONFIG_NAME_om-gta01 = "gta01" +CONFIG_NAME_om-gta02 = "gta02" + CMDLINE = "unused -- bootloader passes ATAG list" ############################################################### @@ -66,6 +66,10 @@ else exit 1 fi + if [ ! -f /${KERNEL_IMAGEDEST}/${KERNEL_IMAGETYPE}-${KERNEL_VERSION} ] ; then + exit 1 + fi + ${bindir}/flash_eraseall $MTD_KERNEL_PARTITION ${bindir}/nandwrite -p $MTD_KERNEL_PARTITION /${KERNEL_IMAGEDEST}/${KERNEL_IMAGETYPE}-${KERNEL_VERSION} else -- cgit v1.2.3 From 1f651e7bfd7409c8db96d530b74b31af2a79cf15 Mon Sep 17 00:00:00 2001 From: Philip Balister Date: Fri, 8 Aug 2008 22:01:19 +0000 Subject: linux-davinci : Add patch to solve strange serial console behavior. --- packages/linux/linux-davinci/8250_davinci.patch | 28 +++++++++++++++++++++++ packages/linux/linux-davinci_2.6.x+git-davinci.bb | 1 + 2 files changed, 29 insertions(+) create mode 100644 packages/linux/linux-davinci/8250_davinci.patch (limited to 'packages') diff --git a/packages/linux/linux-davinci/8250_davinci.patch b/packages/linux/linux-davinci/8250_davinci.patch new file mode 100644 index 0000000000..3625ded357 --- /dev/null +++ b/packages/linux/linux-davinci/8250_davinci.patch @@ -0,0 +1,28 @@ +--- linux-2.6/drivers/serial/8250.c 2008-08-06 15:56:53.000000000 -0500 ++++ linux-2.6-vanilla/drivers/serial/8250.c 2008-08-07 12:24:29.000000000 -0500 +@@ -1867,7 +1867,6 @@ + } + + if (is_real_interrupt(up->port.irq)) { +- unsigned char iir1; + /* + * Test for UARTs that do not reassert THRE when the + * transmitter is idle and the interrupt has already +@@ -1881,7 +1880,7 @@ + wait_for_xmitr(up, UART_LSR_THRE); + serial_out_sync(up, UART_IER, UART_IER_THRI); + udelay(1); /* allow THRE to set */ +- iir1 = serial_in(up, UART_IIR); ++ serial_in(up, UART_IIR); + serial_out(up, UART_IER, 0); + serial_out_sync(up, UART_IER, UART_IER_THRI); + udelay(1); /* allow a working UART time to re-assert THRE */ +@@ -1894,7 +1893,7 @@ + * If the interrupt is not reasserted, setup a timer to + * kick the UART on a regular basis. + */ +- if (!(iir1 & UART_IIR_NO_INT) && (iir & UART_IIR_NO_INT)) { ++ if (iir & UART_IIR_NO_INT) { + pr_debug("ttyS%d - using backup timer\n", port->line); + up->timer.function = serial8250_backup_timeout; + up->timer.data = (unsigned long)up; diff --git a/packages/linux/linux-davinci_2.6.x+git-davinci.bb b/packages/linux/linux-davinci_2.6.x+git-davinci.bb index 5b5a55aaf3..6560fc9fbb 100644 --- a/packages/linux/linux-davinci_2.6.x+git-davinci.bb +++ b/packages/linux/linux-davinci_2.6.x+git-davinci.bb @@ -13,6 +13,7 @@ PR = "r2" COMPATIBLE_MACHINE = "(davinci-dvevm|davinci-sffsdr)" SRC_URI = "git://source.mvista.com/git/linux-davinci-2.6.git;protocol=git \ + file://8250_davinci.patch;patch=1 \ file://defconfig" SRC_URI_append_davinci-sffsdr = " file://sffsdr.patch;patch=1" -- cgit v1.2.3 From 495376665c836f453510890e20579252a1d0323c Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sat, 9 Aug 2008 08:01:13 +0000 Subject: linux-openmoko 2.6.24+git: make bt and sound builtin, stash PR between version and git rev to get something monotonically increasing --- packages/linux/linux-openmoko/defconfig-oe | 48 ++++++++++++++--------------- packages/linux/linux-openmoko_2.6.24+git.bb | 4 +-- 2 files changed, 26 insertions(+), 26 deletions(-) (limited to 'packages') diff --git a/packages/linux/linux-openmoko/defconfig-oe b/packages/linux/linux-openmoko/defconfig-oe index 4154639d3e..174f0a544d 100644 --- a/packages/linux/linux-openmoko/defconfig-oe +++ b/packages/linux/linux-openmoko/defconfig-oe @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit # Linux kernel version: 2.6.24 -# Mon Feb 25 07:03:56 2008 +# Sat Aug 9 09:51:30 2008 # CONFIG_ARM=y CONFIG_SYS_SUPPORTS_APM_EMULATION=y @@ -569,20 +569,20 @@ CONFIG_NET_SCH_FIFO=y # CONFIG_NET_PKTGEN is not set # CONFIG_HAMRADIO is not set # CONFIG_IRDA is not set -CONFIG_BT=m -CONFIG_BT_L2CAP=m -CONFIG_BT_SCO=m -CONFIG_BT_RFCOMM=m +CONFIG_BT=y +CONFIG_BT_L2CAP=y +CONFIG_BT_SCO=y +CONFIG_BT_RFCOMM=y CONFIG_BT_RFCOMM_TTY=y -CONFIG_BT_BNEP=m +CONFIG_BT_BNEP=y CONFIG_BT_BNEP_MC_FILTER=y CONFIG_BT_BNEP_PROTO_FILTER=y -CONFIG_BT_HIDP=m +CONFIG_BT_HIDP=y # # Bluetooth device drivers # -CONFIG_BT_HCIUSB=m +CONFIG_BT_HCIUSB=y CONFIG_BT_HCIUSB_SCO=y # CONFIG_BT_HCIBTSDIO is not set # CONFIG_BT_HCIUART is not set @@ -891,9 +891,6 @@ CONFIG_INPUT_MOUSE=y # CONFIG_INPUT_JOYSTICK is not set # CONFIG_INPUT_TABLET is not set CONFIG_INPUT_TOUCHSCREEN=y -CONFIG_TOUCHSCREEN_FILTER=y -CONFIG_TOUCHSCREEN_FILTER_MEDIAN=y -CONFIG_TOUCHSCREEN_FILTER_MEAN=y # CONFIG_TOUCHSCREEN_ADS7846 is not set # CONFIG_TOUCHSCREEN_FUJITSU is not set CONFIG_TOUCHSCREEN_S3C2410=y @@ -1137,13 +1134,13 @@ CONFIG_SOUND=y # # Advanced Linux Sound Architecture # -CONFIG_SND=m -CONFIG_SND_TIMER=m -CONFIG_SND_PCM=m +CONFIG_SND=y +CONFIG_SND_TIMER=y +CONFIG_SND_PCM=y # CONFIG_SND_SEQUENCER is not set CONFIG_SND_OSSEMUL=y -CONFIG_SND_MIXER_OSS=m -CONFIG_SND_PCM_OSS=m +CONFIG_SND_MIXER_OSS=y +CONFIG_SND_PCM_OSS=y CONFIG_SND_PCM_OSS_PLUGINS=y # CONFIG_SND_DYNAMIC_MINORS is not set CONFIG_SND_SUPPORT_OLD_API=y @@ -1176,16 +1173,17 @@ CONFIG_SND_VERBOSE_PROCFS=y # # System on Chip audio support # -CONFIG_SND_SOC=m -CONFIG_SND_S3C24XX_SOC=m -CONFIG_SND_S3C24XX_SOC_I2S=m -CONFIG_SND_S3C24XX_SOC_NEO1973_WM8753=m -CONFIG_SND_S3C24XX_SOC_NEO1973_GTA02_WM8753=m +CONFIG_SND_SOC=y +CONFIG_SND_S3C24XX_SOC=y +CONFIG_SND_S3C24XX_SOC_I2S=y +CONFIG_SND_S3C24XX_SOC_NEO1973_WM8753=y +# CONFIG_SND_S3C24XX_SOC_NEO1973_WM8753_DEBUG is not set +CONFIG_SND_S3C24XX_SOC_NEO1973_GTA02_WM8753=y # # SoC Audio support for SuperH # -CONFIG_SND_SOC_WM8753=m +CONFIG_SND_SOC_WM8753=y # # Open Sound System @@ -1230,7 +1228,7 @@ CONFIG_USB_SUSPEND=y # USB Host Controller Drivers # # CONFIG_USB_ISP116X_HCD is not set -CONFIG_USB_OHCI_HCD=m +CONFIG_USB_OHCI_HCD=y # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set CONFIG_USB_OHCI_LITTLE_ENDIAN=y @@ -1568,6 +1566,9 @@ CONFIG_JFFS2_ZLIB=y CONFIG_JFFS2_RTIME=y # CONFIG_JFFS2_RUBIN is not set CONFIG_CRAMFS=y +CONFIG_SQUASHFS=m +# CONFIG_SQUASHFS_EMBEDDED is not set +CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 # CONFIG_VXFS_FS is not set # CONFIG_HPFS_FS is not set # CONFIG_QNX4FS_FS is not set @@ -1604,7 +1605,6 @@ CONFIG_CIFS_WEAK_PW_HASH=y # CONFIG_NCP_FS is not set # CONFIG_CODA_FS is not set # CONFIG_AFS_FS is not set -CONFIG_SQUASHFS=m # # Partition Types diff --git a/packages/linux/linux-openmoko_2.6.24+git.bb b/packages/linux/linux-openmoko_2.6.24+git.bb index 79e2cde8dc..8520adc3e1 100644 --- a/packages/linux/linux-openmoko_2.6.24+git.bb +++ b/packages/linux/linux-openmoko_2.6.24+git.bb @@ -6,8 +6,8 @@ DESCRIPTION = "Linux 2.6.x (development) kernel for FIC SmartPhones shipping w/ KERNEL_RELEASE = "2.6.24" KERNEL_VERSION = "${KERNEL_RELEASE}" -PV = "${KERNEL_RELEASE}+gitr${SRCREV}" -PR = "r4" +PV = "${KERNEL_RELEASE}+${PR}+gitr${SRCREV}" +PR = "r5" SRC_URI = "\ git://git.openmoko.org/git/kernel.git;protocol=git;branch=stable \ -- cgit v1.2.3 From e161167cfb2f77d56ca8e169c6435e632ec789fc Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sat, 9 Aug 2008 08:21:41 +0000 Subject: xserver-kdrive-common: fix up GTA0* entries in non-openmoko Xserver script, now we have a working touchscreen again --- packages/xserver-kdrive-common/xserver-kdrive-common/Xserver | 6 +++--- packages/xserver-kdrive-common/xserver-kdrive-common_0.1.bb | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) (limited to 'packages') diff --git a/packages/xserver-kdrive-common/xserver-kdrive-common/Xserver b/packages/xserver-kdrive-common/xserver-kdrive-common/Xserver index 417b29ca2a..b856a75cd0 100644 --- a/packages/xserver-kdrive-common/xserver-kdrive-common/Xserver +++ b/packages/xserver-kdrive-common/xserver-kdrive-common/Xserver @@ -106,14 +106,14 @@ case `module_id` in else DPI=140 fi - ARGS="$ARGS -dpi ${DPI} -screen ${SCREEN_SIZE}" ;; + ARGS="$ARGS -dpi ${DPI} -screen ${SCREEN_SIZE} -mouse tslib" ;; "GTA02") if [ `screen_width` -gt 330 ] ; then DPI=285 else DPI=140 fi - ARGS="$ARGS -dpi ${DPI} -screen ${SCREEN_SIZE}" + ARGS="$ARGS -dpi ${DPI} -screen ${SCREEN_SIZE} -mouse tslib" XSERVER=/usr/bin/Xglamo ;; "Nokia N770") @@ -143,4 +143,4 @@ fi DISPLAY=':0' -exec xinit /etc/X11/Xsession -- $XSERVER $DISPLAY $ARGS $* +exec xinit /etc/X11/Xsession -- $XSERVER $DISPLAY $ARGS $* >/tmp/x.log 2>&1 diff --git a/packages/xserver-kdrive-common/xserver-kdrive-common_0.1.bb b/packages/xserver-kdrive-common/xserver-kdrive-common_0.1.bb index e07a83ed3c..738bb3f6fc 100644 --- a/packages/xserver-kdrive-common/xserver-kdrive-common_0.1.bb +++ b/packages/xserver-kdrive-common/xserver-kdrive-common_0.1.bb @@ -2,7 +2,7 @@ DESCRIPTION = "Common X11 scripts" LICENSE = "GPL" SECTION = "x11" RDEPENDS_${PN} = "xmodmap libxrandr xdpyinfo xtscal xinit" -PR = "r29" +PR = "r30" SRC_URI = "\ file://Xdefaults \ -- cgit v1.2.3 From a69acd9afd2e20a621d4f073df48000c68b731ea Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sat, 9 Aug 2008 09:01:25 +0000 Subject: bluez-utils: restore device naming behaviour that got lost after removing bluez-utils-3.x from FILESPATH --- packages/bluez/bluez-utils/hcid.conf | 4 ++-- packages/bluez/bluez-utils_3.33.bb | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) (limited to 'packages') diff --git a/packages/bluez/bluez-utils/hcid.conf b/packages/bluez/bluez-utils/hcid.conf index bb935aa23d..a7164f6eb0 100644 --- a/packages/bluez/bluez-utils/hcid.conf +++ b/packages/bluez/bluez-utils/hcid.conf @@ -21,7 +21,7 @@ options { pairing multi; # Default PIN code for incoming connections - passkey "BlueZ"; + passkey "1234"; } # Default settings for HCI devices @@ -29,7 +29,7 @@ device { # Local device name # %d - device id # %h - host name - name "BlueZ (%d)"; + name "%h (%d)"; # Local device class class 0x120112; diff --git a/packages/bluez/bluez-utils_3.33.bb b/packages/bluez/bluez-utils_3.33.bb index e4b5f21a84..dc0ee8e739 100644 --- a/packages/bluez/bluez-utils_3.33.bb +++ b/packages/bluez/bluez-utils_3.33.bb @@ -1,5 +1,7 @@ require bluez-utils3.inc +PR = "r1" + # see bluez-utils3.inc for the explanation of these option EXTRA_OECONF = " \ --enable-bccmd \ -- cgit v1.2.3 From 748fc616d854ad6e0c124560e6e426924f0f0a6b Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sat, 9 Aug 2008 10:23:57 +0000 Subject: ffmpeg git: switch from 'arm-neon' to 'arm' branch for arm --- packages/ffmpeg/ffmpeg_git.bb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'packages') diff --git a/packages/ffmpeg/ffmpeg_git.bb b/packages/ffmpeg/ffmpeg_git.bb index 0cbfce233c..d34e143fc7 100644 --- a/packages/ffmpeg/ffmpeg_git.bb +++ b/packages/ffmpeg/ffmpeg_git.bb @@ -3,18 +3,18 @@ require ffmpeg.inc DEPENDS += "libgsm" PV = "0.4.9+${PR}+gitr${SRCREV}" -PR = "r23" +PR = "r24" DEFAULT_PREFERENCE = "-1" DEFAULT_PREFERENCE_armv5te = "1" DEFAULT_PREFERENCE_armv6 = "1" DEFAULT_PREFERENCE_armv7a = "1" -FFBRANCH_arm = "arm-neon" +FFBRANCH_arm = "arm" FFBRANCH ?= "master" SRCREV = "3692b8de9fae73860be636606cb6344f26e28b1a" -SRCREV_arm = "3c4b8ba71b922be6559fcfea3cb990ea3ded234d" +SRCREV_arm = "772c7cee7595b4122ca77d3e72e1430417ff58f5" SRC_URI = "git://git.mansr.com/ffmpeg.mru;protocol=git;branch=${FFBRANCH} \ " -- cgit v1.2.3 From 4d232b50f21c7b59fc3a37af1a9ce1976f31cecd Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sat, 9 Aug 2008 10:25:47 +0000 Subject: ffmpeg git: add note on how to keep software working --- packages/ffmpeg/ffmpeg_git.bb | 1 + 1 file changed, 1 insertion(+) (limited to 'packages') diff --git a/packages/ffmpeg/ffmpeg_git.bb b/packages/ffmpeg/ffmpeg_git.bb index d34e143fc7..b030bd41c5 100644 --- a/packages/ffmpeg/ffmpeg_git.bb +++ b/packages/ffmpeg/ffmpeg_git.bb @@ -13,6 +13,7 @@ DEFAULT_PREFERENCE_armv7a = "1" FFBRANCH_arm = "arm" FFBRANCH ?= "master" +# When bumping SRCREV make sure you bump PR here and in dependant recipes (gst-ffmpeg, gnash, omxil, etc) to account for SOVERSION changes SRCREV = "3692b8de9fae73860be636606cb6344f26e28b1a" SRCREV_arm = "772c7cee7595b4122ca77d3e72e1430417ff58f5" SRC_URI = "git://git.mansr.com/ffmpeg.mru;protocol=git;branch=${FFBRANCH} \ -- cgit v1.2.3 From 61b920f00cfce063c84f81a7d6e2f4c828644cc8 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sat, 9 Aug 2008 10:27:20 +0000 Subject: gst-ffmpeg: bump PR, ffmpeg changed SOVERSION --- packages/gstreamer/gst-ffmpeg_0.10.4.bb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'packages') diff --git a/packages/gstreamer/gst-ffmpeg_0.10.4.bb b/packages/gstreamer/gst-ffmpeg_0.10.4.bb index 5bd5f987b6..aa96026891 100644 --- a/packages/gstreamer/gst-ffmpeg_0.10.4.bb +++ b/packages/gstreamer/gst-ffmpeg_0.10.4.bb @@ -4,10 +4,11 @@ PRIORITY = "optional" LICENSE = "LGPL" HOMEPAGE = "http://www.gstreamer.net/" DEPENDS = "ffmpeg gstreamer zlib" -PR = "r2" +PR = "r3" # This uses the systems ffmpeg, which is unsupported, but we can't build the internal one with the current autotools (ab)usage DEFAULT_PREFERENCE = "-1" +DEFAULT_PREFERENCE_armv6 = "1" DEFAULT_PREFERENCE_armv7a = "1" inherit autotools pkgconfig -- cgit v1.2.3 From ec353e3934289c03cd08f9adeeb559297b411f20 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sat, 9 Aug 2008 10:28:09 +0000 Subject: libomxil: bump PR, ffmpeg changed SOVERSION --- packages/openmax/libomxil-bellagio_0.9.0.bb | 2 ++ 1 file changed, 2 insertions(+) (limited to 'packages') diff --git a/packages/openmax/libomxil-bellagio_0.9.0.bb b/packages/openmax/libomxil-bellagio_0.9.0.bb index af14ef14e9..6656ed3e27 100644 --- a/packages/openmax/libomxil-bellagio_0.9.0.bb +++ b/packages/openmax/libomxil-bellagio_0.9.0.bb @@ -2,6 +2,8 @@ DESCRIPTION = "OpenMAX Integration Layer (IL) is a standard API to access Multim LICENSE = "LGPLv2" DEPENDS = "libmad alsa-lib ffmpeg" +PR = "r1" + SRC_URI = "${SOURCEFORGE_MIRROR}/omxil/${PN}-${PV}.tar.gz" inherit autotools -- cgit v1.2.3 From 2ca45585b3327f420d99e830df3adfb131c1750d Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sat, 9 Aug 2008 11:29:39 +0000 Subject: netbase: remove resolv.conf hack from om-gta0* that keeps overwriting working resolv.conf files with broken ones --- packages/netbase/netbase/om-gta01/interfaces | 1 - packages/netbase/netbase/om-gta02/interfaces | 1 - packages/netbase/netbase_4.21.bb | 2 +- 3 files changed, 1 insertion(+), 3 deletions(-) (limited to 'packages') diff --git a/packages/netbase/netbase/om-gta01/interfaces b/packages/netbase/netbase/om-gta01/interfaces index 39f45af734..090c18aa07 100644 --- a/packages/netbase/netbase/om-gta01/interfaces +++ b/packages/netbase/netbase/om-gta01/interfaces @@ -22,7 +22,6 @@ iface usb0 inet static netmask 255.255.255.0 network 192.168.0.0 gateway 192.168.0.200 - up echo nameserver 192.168.0.200 >/etc/resolv.conf # Bluetooth networking iface bnep0 inet dhcp diff --git a/packages/netbase/netbase/om-gta02/interfaces b/packages/netbase/netbase/om-gta02/interfaces index 39f45af734..090c18aa07 100644 --- a/packages/netbase/netbase/om-gta02/interfaces +++ b/packages/netbase/netbase/om-gta02/interfaces @@ -22,7 +22,6 @@ iface usb0 inet static netmask 255.255.255.0 network 192.168.0.0 gateway 192.168.0.200 - up echo nameserver 192.168.0.200 >/etc/resolv.conf # Bluetooth networking iface bnep0 inet dhcp diff --git a/packages/netbase/netbase_4.21.bb b/packages/netbase/netbase_4.21.bb index 73e765376c..2fc352f547 100644 --- a/packages/netbase/netbase_4.21.bb +++ b/packages/netbase/netbase_4.21.bb @@ -2,7 +2,7 @@ DESCRIPTION = "This package provides the necessary \ infrastructure for basic TCP/IP based networking." SECTION = "base" LICENSE = "GPL" -PR = "r27" +PR = "r28" inherit update-rc.d -- cgit v1.2.3 From 669ded768860c55b893ab918657f95fd1fd9e2e8 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sat, 9 Aug 2008 11:37:38 +0000 Subject: resolvconf: add 1.41 * openresolv (http://roy.marples.name/node/343) doesn't need bash, which is more in line what OE expects --- packages/resolvconf/resolvconf_1.41.bb | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 packages/resolvconf/resolvconf_1.41.bb (limited to 'packages') diff --git a/packages/resolvconf/resolvconf_1.41.bb b/packages/resolvconf/resolvconf_1.41.bb new file mode 100644 index 0000000000..2c210ef1ec --- /dev/null +++ b/packages/resolvconf/resolvconf_1.41.bb @@ -0,0 +1,29 @@ +DESCRIPTION = "Resolvconf is a framework for keeping track of the system's \ +information about currently available nameservers. It sets \ +itself up as the intermediary between programs that supply \ +nameserver information and programs that need nameserver \ +information." +SECTION = "console/network" +LICENSE = "GPL" +AUTHOR = "Thomas Hood" +HOMEPAGE = "http://packages.debian.org/resolvconf" +DEPENDS = "bash" +RDEPENDS = "bash" + +SRC_URI = "${DEBIAN_MIRROR}/main/r/resolvconf/resolvconf_${PV}.tar.gz" + +do_compile () { + : +} + +do_install () { + install -d ${D}${sysconfdir} ${D}${sbindir} ${D}${base_sbindir} ${D}${localstatedir}/run/resolvconf/interface + install -d ${D}${mandir}/man8 ${D}${docdir}/${P} + cp -pPR etc/* ${D}${sysconfdir}/ + install -m 0755 bin/resolvconf ${D}${base_sbindir}/ + install -m 0644 README ${D}${docdir}/${P}/ + install -m 0644 man/resolvconf.8 ${D}${mandir}/man8/ +} + +PACKAGE_ARCH = "all" + -- cgit v1.2.3 From 394adeae5ab8aa1697564aff52517112eddfbfca Mon Sep 17 00:00:00 2001 From: Michael Lauer Date: Sat, 9 Aug 2008 19:29:20 +0000 Subject: curl 7.18.0 update to 7.18.2 --- packages/curl/curl-native_7.18.0.bb | 14 ---------- packages/curl/curl-native_7.18.2.bb | 14 ++++++++++ packages/curl/curl-sdk_7.18.0.bb | 14 ---------- packages/curl/curl-sdk_7.18.2.bb | 14 ++++++++++ packages/curl/curl_7.18.0.bb | 52 ------------------------------------- packages/curl/curl_7.18.2.bb | 52 +++++++++++++++++++++++++++++++++++++ 6 files changed, 80 insertions(+), 80 deletions(-) delete mode 100644 packages/curl/curl-native_7.18.0.bb create mode 100644 packages/curl/curl-native_7.18.2.bb delete mode 100644 packages/curl/curl-sdk_7.18.0.bb create mode 100644 packages/curl/curl-sdk_7.18.2.bb delete mode 100644 packages/curl/curl_7.18.0.bb create mode 100644 packages/curl/curl_7.18.2.bb (limited to 'packages') diff --git a/packages/curl/curl-native_7.18.0.bb b/packages/curl/curl-native_7.18.0.bb deleted file mode 100644 index e056ec10c3..0000000000 --- a/packages/curl/curl-native_7.18.0.bb +++ /dev/null @@ -1,14 +0,0 @@ -require curl_${PV}.bb -inherit native -DEPENDS = "zlib-native" - -do_stage () { - install -d ${STAGING_INCDIR}/curl - install -m 0644 ${S}/include/curl/*.h ${STAGING_INCDIR}/curl/ - oe_libinstall -so -a -C lib libcurl ${STAGING_LIBDIR} -} - -do_install() { - : -} - diff --git a/packages/curl/curl-native_7.18.2.bb b/packages/curl/curl-native_7.18.2.bb new file mode 100644 index 0000000000..e056ec10c3 --- /dev/null +++ b/packages/curl/curl-native_7.18.2.bb @@ -0,0 +1,14 @@ +require curl_${PV}.bb +inherit native +DEPENDS = "zlib-native" + +do_stage () { + install -d ${STAGING_INCDIR}/curl + install -m 0644 ${S}/include/curl/*.h ${STAGING_INCDIR}/curl/ + oe_libinstall -so -a -C lib libcurl ${STAGING_LIBDIR} +} + +do_install() { + : +} + diff --git a/packages/curl/curl-sdk_7.18.0.bb b/packages/curl/curl-sdk_7.18.0.bb deleted file mode 100644 index 816fe645bc..0000000000 --- a/packages/curl/curl-sdk_7.18.0.bb +++ /dev/null @@ -1,14 +0,0 @@ -require curl_${PV}.bb -inherit sdk -DEPENDS = "zlib-sdk" - -do_stage () { - install -d ${STAGING_INCDIR}/curl - install -m 0644 ${S}/include/curl/*.h ${STAGING_INCDIR}/curl/ - oe_libinstall -so -a -C lib libcurl ${STAGING_LIBDIR} -} - -do_install() { - : -} - diff --git a/packages/curl/curl-sdk_7.18.2.bb b/packages/curl/curl-sdk_7.18.2.bb new file mode 100644 index 0000000000..816fe645bc --- /dev/null +++ b/packages/curl/curl-sdk_7.18.2.bb @@ -0,0 +1,14 @@ +require curl_${PV}.bb +inherit sdk +DEPENDS = "zlib-sdk" + +do_stage () { + install -d ${STAGING_INCDIR}/curl + install -m 0644 ${S}/include/curl/*.h ${STAGING_INCDIR}/curl/ + oe_libinstall -so -a -C lib libcurl ${STAGING_LIBDIR} +} + +do_install() { + : +} + diff --git a/packages/curl/curl_7.18.0.bb b/packages/curl/curl_7.18.0.bb deleted file mode 100644 index ae2cff6e10..0000000000 --- a/packages/curl/curl_7.18.0.bb +++ /dev/null @@ -1,52 +0,0 @@ -DESCRIPTION = "Command line tool and library for client-side URL transfers." -LICENSE = "MIT" -DEPENDS = "zlib gnutls" -SECTION = "console/network" - -SRC_URI = "http://curl.haxx.se/download/curl-${PV}.tar.bz2 \ - file://pkgconfig_fix.patch;patch=1" -S = "${WORKDIR}/curl-${PV}" - -inherit autotools pkgconfig binconfig - -EXTRA_OECONF = "--with-zlib=${STAGING_LIBDIR}/../ \ - --with-gnutls=${STAGING_BINDIR_CROSS}/ \ - --without-ssl \ - --without-libssh2 \ - --with-random=/dev/urandom \ - --without-libidn \ - --enable-crypto-auth \ - " - -do_configure_prepend() { - sed -i s:OPT_GNUTLS/bin:OPT_GNUTLS:g configure.ac -} - -do_stage () { - install -d ${STAGING_INCDIR}/curl - install -m 0644 ${S}/include/curl/*.h ${STAGING_INCDIR}/curl/ - oe_libinstall -so -a -C lib libcurl ${STAGING_LIBDIR} -} - -PACKAGES += "${PN}-certs libcurl libcurl-dev libcurl-doc" - -FILES_${PN} = "${bindir}/curl" - -FILES_${PN}-certs = "${datadir}/curl/curl-*" -PACKAGE_ARCH_${PN}-certs = "all" - -FILES_${PN}-doc = "${mandir}/man1/curl.1" - -FILES_lib${PN} = "${libdir}/lib*.so.*" -RRECOMMENDS_lib${PN} += "${PN}-certs" -FILES_lib${PN}-dev = "${includedir} \ - ${libdir}/lib*.so \ - ${libdir}/lib*.a \ - ${libdir}/lib*.la \ - ${libdir}/pkgconfig \ - ${datadir}/aclocal \ - ${bindir}/*-config" - -FILES_lib${PN}-doc = "${mandir}/man3 \ - ${mandir}/man1/curl-config.1" - diff --git a/packages/curl/curl_7.18.2.bb b/packages/curl/curl_7.18.2.bb new file mode 100644 index 0000000000..ae2cff6e10 --- /dev/null +++ b/packages/curl/curl_7.18.2.bb @@ -0,0 +1,52 @@ +DESCRIPTION = "Command line tool and library for client-side URL transfers." +LICENSE = "MIT" +DEPENDS = "zlib gnutls" +SECTION = "console/network" + +SRC_URI = "http://curl.haxx.se/download/curl-${PV}.tar.bz2 \ + file://pkgconfig_fix.patch;patch=1" +S = "${WORKDIR}/curl-${PV}" + +inherit autotools pkgconfig binconfig + +EXTRA_OECONF = "--with-zlib=${STAGING_LIBDIR}/../ \ + --with-gnutls=${STAGING_BINDIR_CROSS}/ \ + --without-ssl \ + --without-libssh2 \ + --with-random=/dev/urandom \ + --without-libidn \ + --enable-crypto-auth \ + " + +do_configure_prepend() { + sed -i s:OPT_GNUTLS/bin:OPT_GNUTLS:g configure.ac +} + +do_stage () { + install -d ${STAGING_INCDIR}/curl + install -m 0644 ${S}/include/curl/*.h ${STAGING_INCDIR}/curl/ + oe_libinstall -so -a -C lib libcurl ${STAGING_LIBDIR} +} + +PACKAGES += "${PN}-certs libcurl libcurl-dev libcurl-doc" + +FILES_${PN} = "${bindir}/curl" + +FILES_${PN}-certs = "${datadir}/curl/curl-*" +PACKAGE_ARCH_${PN}-certs = "all" + +FILES_${PN}-doc = "${mandir}/man1/curl.1" + +FILES_lib${PN} = "${libdir}/lib*.so.*" +RRECOMMENDS_lib${PN} += "${PN}-certs" +FILES_lib${PN}-dev = "${includedir} \ + ${libdir}/lib*.so \ + ${libdir}/lib*.a \ + ${libdir}/lib*.la \ + ${libdir}/pkgconfig \ + ${datadir}/aclocal \ + ${bindir}/*-config" + +FILES_lib${PN}-doc = "${mandir}/man3 \ + ${mandir}/man1/curl-config.1" + -- cgit v1.2.3 From 9d204ad1e53fcb93b3f75b8c8e68030f9e82243a Mon Sep 17 00:00:00 2001 From: Michael Lauer Date: Sat, 9 Aug 2008 19:56:57 +0000 Subject: python-pycurl 7.16.4 update to 7.18.2; use dynamic linking --- packages/python/python-pycurl/.mtn2git_empty | 0 packages/python/python-pycurl/no-static-link.patch | 14 ++++++++++++++ packages/python/python-pycurl_7.16.4.bb | 12 ------------ packages/python/python-pycurl_7.18.2.bb | 21 +++++++++++++++++++++ 4 files changed, 35 insertions(+), 12 deletions(-) create mode 100644 packages/python/python-pycurl/.mtn2git_empty create mode 100644 packages/python/python-pycurl/no-static-link.patch delete mode 100644 packages/python/python-pycurl_7.16.4.bb create mode 100644 packages/python/python-pycurl_7.18.2.bb (limited to 'packages') diff --git a/packages/python/python-pycurl/.mtn2git_empty b/packages/python/python-pycurl/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/python/python-pycurl/no-static-link.patch b/packages/python/python-pycurl/no-static-link.patch new file mode 100644 index 0000000000..b7c5ab9c9c --- /dev/null +++ b/packages/python/python-pycurl/no-static-link.patch @@ -0,0 +1,14 @@ +Index: pycurl-7.18.2/setup.py +=================================================================== +--- pycurl-7.18.2.orig/setup.py ++++ pycurl-7.18.2/setup.py +@@ -97,8 +97,7 @@ else: + else: + extra_compile_args.append(e) + libs = split_quoted( +- os.popen("'%s' --libs" % CURL_CONFIG).read()+\ +- os.popen("'%s' --static-libs" % CURL_CONFIG).read()) ++ os.popen("'%s' --libs" % CURL_CONFIG).read()) + for e in libs: + if e[:2] == "-l": + libraries.append(e[2:]) diff --git a/packages/python/python-pycurl_7.16.4.bb b/packages/python/python-pycurl_7.16.4.bb deleted file mode 100644 index a9480ad949..0000000000 --- a/packages/python/python-pycurl_7.16.4.bb +++ /dev/null @@ -1,12 +0,0 @@ -DESCRIPTION = "libcurl Python Bindings" -SECTION = "devel/python" -PRIORITY = "optional" -LICENSE = "LGPL" -RDEPENDS = "python-core curl (>=${PV})" -DEPENDS = "curl-${PV}" -SRCNAME = "pycurl" - -SRC_URI = "http://${SRCNAME}.sourceforge.net/download/${SRCNAME}-${PV}.tar.gz" -S = "${WORKDIR}/${SRCNAME}-${PV}" - -inherit distutils diff --git a/packages/python/python-pycurl_7.18.2.bb b/packages/python/python-pycurl_7.18.2.bb new file mode 100644 index 0000000000..406add10c8 --- /dev/null +++ b/packages/python/python-pycurl_7.18.2.bb @@ -0,0 +1,21 @@ +DESCRIPTION = "libcurl Python Bindings" +SECTION = "devel/python" +PRIORITY = "optional" +LICENSE = "LGPL" +DEPENDS = "curl-${PV}" +SRCNAME = "pycurl" +PR = "ml0" + +SRC_URI = "\ + http://${SRCNAME}.sourceforge.net/download/${SRCNAME}-${PV}.tar.gz \ + file://no-static-link.patch;patch=1 \ +" +S = "${WORKDIR}/${SRCNAME}-${PV}" + +inherit distutils + +do_install_append() { + mv -f ${D}${datadir}/share/* ${D}${datadir}/ +} + +RDEPENDS = "python-core curl (>=${PV})" -- cgit v1.2.3 From db335aa0b4a208cbc6c118ac20fdb4bf53181a81 Mon Sep 17 00:00:00 2001 From: Michael Lauer Date: Sat, 9 Aug 2008 19:57:13 +0000 Subject: python-edje cvs add debian patch fixing unicode conversion --- packages/python/python-edje/.mtn2git_empty | 0 .../python-edje/0001-fix-unicode-conversion.patch | 41 ++++++++++++++++++++++ packages/python/python-edje_cvs.bb | 6 +++- 3 files changed, 46 insertions(+), 1 deletion(-) create mode 100644 packages/python/python-edje/.mtn2git_empty create mode 100644 packages/python/python-edje/0001-fix-unicode-conversion.patch (limited to 'packages') diff --git a/packages/python/python-edje/.mtn2git_empty b/packages/python/python-edje/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/python/python-edje/0001-fix-unicode-conversion.patch b/packages/python/python-edje/0001-fix-unicode-conversion.patch new file mode 100644 index 0000000000..7964e097d1 --- /dev/null +++ b/packages/python/python-edje/0001-fix-unicode-conversion.patch @@ -0,0 +1,41 @@ +From fa12a33b5a3c0e86231ca84967d9eff456e5f314 Mon Sep 17 00:00:00 2001 +From: Jan Luebbe +Date: Sat, 9 Aug 2008 18:30:04 +0200 +Subject: [PATCH] fix unicode conversion + +--- + edje/edje.c_edje_object.pxi | 11 +++++++---- + 1 files changed, 7 insertions(+), 4 deletions(-) + +diff --git a/edje/edje.c_edje_object.pxi b/edje/edje.c_edje_object.pxi +index 0f4da68..21c237e 100644 +--- a/edje/edje.c_edje_object.pxi ++++ b/edje/edje.c_edje_object.pxi +@@ -391,17 +391,20 @@ cdef public class Edje(evas.c_evas.Object) [object PyEdje, type PyEdje_Type]: + else: + raise TypeError("func must be callable or None") + +- def part_text_set(self, char *part, char *text): +- edje_object_part_text_set(self.obj, part, text) ++ def part_text_set(self, char *part, text): ++ cdef char *s ++ u = text.encode("utf8") ++ s = u ++ edje_object_part_text_set(self.obj, part, s) + + def part_text_get(self, char *part): +- "@rtype: str" ++ "@rtype: unicode" + cdef char *s + s = edje_object_part_text_get(self.obj, part) + if s == NULL: + return None + else: +- return s ++ return s.decode("utf8") + + def part_swallow(self, char *part, c_evas.Object obj): + """Swallows an object into the edje +-- +1.5.6.3 + diff --git a/packages/python/python-edje_cvs.bb b/packages/python/python-edje_cvs.bb index 144fcfddde..a0665e8b09 100644 --- a/packages/python/python-edje_cvs.bb +++ b/packages/python/python-edje_cvs.bb @@ -1,5 +1,9 @@ require python-efl.inc + DEPENDS += "edje python-evas" RDEPENDS += "python-evas" + +SRC_URI += "file://0001-fix-unicode-conversion.patch;patch=1" + PV = "0.2.1+cvs${SRCDATE}" -PR = "r2" +PR = "r3" -- cgit v1.2.3 From 6c44b5f5250f8c7912f5ca775a663a1cccc3c885 Mon Sep 17 00:00:00 2001 From: Michael Lauer Date: Sat, 9 Aug 2008 20:14:28 +0000 Subject: python 2.5.2 include low level _bsddb module in python-bsd and DEPENDS += db --- packages/python/python-2.5-manifest.inc | 5 +++-- packages/python/python_2.5.2.bb | 6 +++--- 2 files changed, 6 insertions(+), 5 deletions(-) (limited to 'packages') diff --git a/packages/python/python-2.5-manifest.inc b/packages/python/python-2.5-manifest.inc index a0ec692095..9ae307e7a4 100644 --- a/packages/python/python-2.5-manifest.inc +++ b/packages/python/python-2.5-manifest.inc @@ -1,6 +1,7 @@ # WARNING: This file is AUTO GENERATED: Manual edits will be lost next time I regenerate the file. # Generator: './generate-manifest-2.5.py' Version 20080722 (C) 2002-2008 Michael 'Mickey' Lauer # Visit the Python for Embedded Systems Site => http://www.Vanille.de/projects/python.spy + PROVIDES+="python-profile python-threading python-distutils python-doctest python-codecs python-ctypes python-pickle python-datetime python-core python-io python-compiler python-compression python-re python-xmlrpc python-terminal python-email python-image python-tests python-core-dbg python-resource python-devel python-difflib python-math python-syslog python-hotshot python-unixadmin python-textutils python-tkinter python-gdbm python-fcntl python-netclient python-pprint python-netserver python-curses python-smtpd python-html python-readline python-subprocess python-pydoc python-logging python-mailbox python-xml python-mime python-sqlite3 python-sqlite3-tests python-unittest python-stringold python-robotparser python-lib-old-and-deprecated python-compile python-debugger python-shell python-bsddb python-mmap python-zlib python-db python-crypt python-idle python-lang python-audio " @@ -268,9 +269,9 @@ RDEPENDS_python-shell="python-core python-re" FILES_python-shell="${libdir}/python2.5/cmd.* ${libdir}/python2.5/commands.* ${libdir}/python2.5/dircache.* ${libdir}/python2.5/fnmatch.* ${libdir}/python2.5/glob.* ${libdir}/python2.5/popen2.* ${libdir}/python2.5/shutil.* " DESCRIPTION_python-bsddb="Python Berkeley Database Bindings" -PR_python-bsddb="ml0" +PR_python-bsddb="ml1" RDEPENDS_python-bsddb="python-core" -FILES_python-bsddb="${libdir}/python2.5/bsddb " +FILES_python-bsddb="${libdir}/python2.5/bsddb ${libdir}/python2.5/lib-dynload/_bsddb.so " DESCRIPTION_python-mmap="Python Memory-Mapped-File Support" PR_python-mmap="ml0" diff --git a/packages/python/python_2.5.2.bb b/packages/python/python_2.5.2.bb index 707c0f562e..c68f7d5e3b 100644 --- a/packages/python/python_2.5.2.bb +++ b/packages/python/python_2.5.2.bb @@ -3,10 +3,10 @@ HOMEPAGE = "http://www.python.org" LICENSE = "PSF" SECTION = "devel/python" PRIORITY = "optional" -DEPENDS = "python-native readline zlib gdbm openssl sqlite3 tcl tk" -DEPENDS_sharprom = "python-native readline zlib gdbm openssl" +DEPENDS = "python-native db gdbm openssl readline sqlite3 tcl tk zlib" +DEPENDS_sharprom = "python-native db readline zlib gdbm openssl" # bump this on every change in contrib/python/generate-manifest-2.5.py -PR = "ml8" +PR = "ml9" PYTHON_MAJMIN = "2.5" -- cgit v1.2.3 From 17749e1e129cdb3a6e4121cd70edb3ad2801e33f Mon Sep 17 00:00:00 2001 From: Michael Lauer Date: Sun, 10 Aug 2008 07:47:17 +0000 Subject: fso-image: ship alsa-utils-amixer --- packages/images/fso-image.bb | 1 + 1 file changed, 1 insertion(+) (limited to 'packages') diff --git a/packages/images/fso-image.bb b/packages/images/fso-image.bb index fb5026db2a..5495af9e1c 100644 --- a/packages/images/fso-image.bb +++ b/packages/images/fso-image.bb @@ -57,6 +57,7 @@ AUDIO_INSTALL = "\ alsa-oss \ alsa-state \ alsa-utils-aplay \ + alsa-utils-amixer \ gst-meta-audio \ gst-plugin-mad \ gst-plugin-modplug \ -- cgit v1.2.3 From b3820771773665a6d7f28b480f03dfbb9db6f4c3 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sun, 10 Aug 2008 09:42:19 +0000 Subject: ffmpeg git: bump SRCREV --- packages/ffmpeg/ffmpeg_git.bb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'packages') diff --git a/packages/ffmpeg/ffmpeg_git.bb b/packages/ffmpeg/ffmpeg_git.bb index b030bd41c5..1eb3b20ed7 100644 --- a/packages/ffmpeg/ffmpeg_git.bb +++ b/packages/ffmpeg/ffmpeg_git.bb @@ -3,7 +3,7 @@ require ffmpeg.inc DEPENDS += "libgsm" PV = "0.4.9+${PR}+gitr${SRCREV}" -PR = "r24" +PR = "r25" DEFAULT_PREFERENCE = "-1" DEFAULT_PREFERENCE_armv5te = "1" @@ -15,7 +15,7 @@ FFBRANCH ?= "master" # When bumping SRCREV make sure you bump PR here and in dependant recipes (gst-ffmpeg, gnash, omxil, etc) to account for SOVERSION changes SRCREV = "3692b8de9fae73860be636606cb6344f26e28b1a" -SRCREV_arm = "772c7cee7595b4122ca77d3e72e1430417ff58f5" +SRCREV_arm = "36c4918f7bc8ff6296d38ed0c9a5f1a8785fcd32" SRC_URI = "git://git.mansr.com/ffmpeg.mru;protocol=git;branch=${FFBRANCH} \ " -- cgit v1.2.3 From 1f8646843133f54add7691999e765cc440b05c32 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sun, 10 Aug 2008 09:42:52 +0000 Subject: omapfbplay: bump PR --- packages/ffmpeg/omapfbplay_git.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'packages') diff --git a/packages/ffmpeg/omapfbplay_git.bb b/packages/ffmpeg/omapfbplay_git.bb index 890ed31e20..25057072c2 100644 --- a/packages/ffmpeg/omapfbplay_git.bb +++ b/packages/ffmpeg/omapfbplay_git.bb @@ -2,7 +2,7 @@ DESCRIPTION = "Simple ffmpeg-based player that uses the omapfb overlays" DEPENDS = "bzip2 lame ffmpeg virtual/kernel" LICENSE = "MIT" -PR = "r9" +PR = "r10" inherit module-base -- cgit v1.2.3 From 062946db8225c9062f1853ef4fccfb5975fc3b48 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sun, 10 Aug 2008 10:47:20 +0000 Subject: linux-omap2 git: update to latest git, add Pauls latest serial hang patch set --- .../beagleboard/01-gptimer_clear_isrs_on_init | 25 ----- .../beagleboard/01-make_tick_gptimer_configurable | 58 +++++++++++ .../beagleboard/02-gptimer_use_match_for_tick | 97 ------------------ .../beagleboard/03-gptimer_match_plus_ovf | 94 ------------------ .../beagleboard/04-gptimer_add_debug_to_sysrq_q | 110 --------------------- .../linux/linux-omap2-git/beagleboard/defconfig | 5 +- packages/linux/linux-omap2_git.bb | 9 +- 7 files changed, 64 insertions(+), 334 deletions(-) delete mode 100644 packages/linux/linux-omap2-git/beagleboard/01-gptimer_clear_isrs_on_init create mode 100644 packages/linux/linux-omap2-git/beagleboard/01-make_tick_gptimer_configurable delete mode 100644 packages/linux/linux-omap2-git/beagleboard/02-gptimer_use_match_for_tick delete mode 100644 packages/linux/linux-omap2-git/beagleboard/03-gptimer_match_plus_ovf delete mode 100644 packages/linux/linux-omap2-git/beagleboard/04-gptimer_add_debug_to_sysrq_q (limited to 'packages') diff --git a/packages/linux/linux-omap2-git/beagleboard/01-gptimer_clear_isrs_on_init b/packages/linux/linux-omap2-git/beagleboard/01-gptimer_clear_isrs_on_init deleted file mode 100644 index 5123bafe54..0000000000 --- a/packages/linux/linux-omap2-git/beagleboard/01-gptimer_clear_isrs_on_init +++ /dev/null @@ -1,25 +0,0 @@ -clear - -From: Paul Walmsley - - ---- - - arch/arm/plat-omap/dmtimer.c | 4 ++++ - 1 files changed, 4 insertions(+), 0 deletions(-) - -diff --git a/arch/arm/plat-omap/dmtimer.c b/arch/arm/plat-omap/dmtimer.c -index f22506a..e38a11e 100644 ---- a/arch/arm/plat-omap/dmtimer.c -+++ b/arch/arm/plat-omap/dmtimer.c -@@ -703,6 +703,10 @@ int __init omap_dm_timer_init(void) - timer->fclk = clk_get(NULL, clk_name); - } - #endif -+ omap_dm_timer_write_status(timer, OMAP_TIMER_INT_OVERFLOW | -+ OMAP_TIMER_INT_MATCH | -+ OMAP_TIMER_INT_CAPTURE); -+ - } - - return 0; diff --git a/packages/linux/linux-omap2-git/beagleboard/01-make_tick_gptimer_configurable b/packages/linux/linux-omap2-git/beagleboard/01-make_tick_gptimer_configurable new file mode 100644 index 0000000000..bcf0fa79f8 --- /dev/null +++ b/packages/linux/linux-omap2-git/beagleboard/01-make_tick_gptimer_configurable @@ -0,0 +1,58 @@ +OMAP2/3 GPTIMER: allow system tick GPTIMER to be configurable at build + +From: Paul Walmsley + +Add Kbuild code to allow the builder to select which GPTIMER block to use +for the Linux clockevents timer. Practical choices at this point are +GPTIMER1 or GPTIMER12. Both of these timers are in the WKUP powerdomain, +and so are unaffected by chip power management. GPTIMER1 can use sys_clk +as a source, for applications where a high-resolution timer is more important +than power management. GPTIMER12 has the special property that it has +the secure 32kHz oscillator as its source clock, which may be less prone +to glitches than the off-chip 32kHz oscillator. + +At this point, it appears that most boards are fine with GPTIMER1, +but Beagle should use GPTIMER12. +--- + + arch/arm/mach-omap2/Kconfig | 16 ++++++++++++++++ + arch/arm/mach-omap2/timer-gp.c | 2 +- + 2 files changed, 17 insertions(+), 1 deletions(-) + +diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig +index bb6d695..0002cb6 100644 +--- a/arch/arm/mach-omap2/Kconfig ++++ b/arch/arm/mach-omap2/Kconfig +@@ -122,3 +122,19 @@ config MACH_OMAP3EVM + config MACH_OMAP3_BEAGLE + bool "OMAP3 BEAGLE board" + depends on ARCH_OMAP3 && ARCH_OMAP34XX ++ ++config OMAP_TICK_GPTIMER ++ int "GPTIMER used for system tick timer" ++ depends on ARCH_OMAP2 || ARCH_OMAP3 ++ range 1 12 ++ default 1 ++ help ++ Linux uses one of the twelve on-board OMAP GPTIMER blocks to generate ++ system tick interrupts. The twelve GPTIMERs have slightly ++ different powerdomain, source clock, and security properties ++ (mostly documented in the OMAP3 TRMs) that can affect the selection ++ of which GPTIMER to use. The historical default is GPTIMER1. ++ If CONFIG_OMAP_32K_TIMER is selected, Beagle may require GPTIMER12 ++ due to hardware sensitivity to glitches on the OMAP 32kHz clock ++ input. ++ +diff --git a/arch/arm/mach-omap2/timer-gp.c b/arch/arm/mach-omap2/timer-gp.c +index 557603f..ec80af5 100644 +--- a/arch/arm/mach-omap2/timer-gp.c ++++ b/arch/arm/mach-omap2/timer-gp.c +@@ -99,7 +99,7 @@ static void __init omap2_gp_clockevent_init(void) + { + u32 tick_rate; + +- gptimer = omap_dm_timer_request_specific(1); ++ gptimer = omap_dm_timer_request_specific(CONFIG_OMAP_TICK_GPTIMER); + BUG_ON(gptimer == NULL); + + #if defined(CONFIG_OMAP_32K_TIMER) diff --git a/packages/linux/linux-omap2-git/beagleboard/02-gptimer_use_match_for_tick b/packages/linux/linux-omap2-git/beagleboard/02-gptimer_use_match_for_tick deleted file mode 100644 index 6eb6c9b477..0000000000 --- a/packages/linux/linux-omap2-git/beagleboard/02-gptimer_use_match_for_tick +++ /dev/null @@ -1,97 +0,0 @@ -OMAP2/3 system tick GPTIMER: use match interrupts rather than overflow interrupts - -From: Paul Walmsley - -On some OMAP3 chips, GPTIMER1 will occasionally decline to interrupt -the MPU when a timer overflow event occurs. The timer stops running; -and TOCR is sometimes incremented; but the MPU apparently never receives -the interrupt. This patch was an experiment in using the GPTIMER -match interrupt to determine if it resolves the problem. -Unfortunately, it does not; the same problem occurs with match -interrupts; but this patch is preserved as the base for a -match+overflow interrupt workaround used in a following patch. ---- - - arch/arm/mach-omap2/timer-gp.c | 32 ++++++++++---------------------- - 1 files changed, 10 insertions(+), 22 deletions(-) - -diff --git a/arch/arm/mach-omap2/timer-gp.c b/arch/arm/mach-omap2/timer-gp.c -index 557603f..51996ba 100644 ---- a/arch/arm/mach-omap2/timer-gp.c -+++ b/arch/arm/mach-omap2/timer-gp.c -@@ -36,6 +36,8 @@ - #include - #include - -+#define GPTIMER_MATCH_VAL 0xffff0000 -+ - static struct omap_dm_timer *gptimer; - static struct clock_event_device clockevent_gpt; - -@@ -44,7 +46,7 @@ static irqreturn_t omap2_gp_timer_interrupt(int irq, void *dev_id) - struct omap_dm_timer *gpt = (struct omap_dm_timer *)dev_id; - struct clock_event_device *evt = &clockevent_gpt; - -- omap_dm_timer_write_status(gpt, OMAP_TIMER_INT_OVERFLOW); -+ omap_dm_timer_write_status(gpt, OMAP_TIMER_INT_MATCH); - - evt->event_handler(evt); - return IRQ_HANDLED; -@@ -59,7 +61,7 @@ static struct irqaction omap2_gp_timer_irq = { - static int omap2_gp_timer_set_next_event(unsigned long cycles, - struct clock_event_device *evt) - { -- omap_dm_timer_set_load_start(gptimer, 0, 0xffffffff - cycles); -+ omap_dm_timer_set_load_start(gptimer, 0, GPTIMER_MATCH_VAL - cycles); - - return 0; - } -@@ -67,29 +69,12 @@ static int omap2_gp_timer_set_next_event(unsigned long cycles, - static void omap2_gp_timer_set_mode(enum clock_event_mode mode, - struct clock_event_device *evt) - { -- u32 period; -- - omap_dm_timer_stop(gptimer); -- -- switch (mode) { -- case CLOCK_EVT_MODE_PERIODIC: -- period = clk_get_rate(omap_dm_timer_get_fclk(gptimer)) / HZ; -- period -= 1; -- -- omap_dm_timer_set_load_start(gptimer, 1, 0xffffffff - period); -- break; -- case CLOCK_EVT_MODE_ONESHOT: -- break; -- case CLOCK_EVT_MODE_UNUSED: -- case CLOCK_EVT_MODE_SHUTDOWN: -- case CLOCK_EVT_MODE_RESUME: -- break; -- } - } - - static struct clock_event_device clockevent_gpt = { - .name = "gp timer", -- .features = CLOCK_EVT_FEAT_PERIODIC | CLOCK_EVT_FEAT_ONESHOT, -+ .features = CLOCK_EVT_FEAT_ONESHOT, - .shift = 32, - .set_next_event = omap2_gp_timer_set_next_event, - .set_mode = omap2_gp_timer_set_mode, -@@ -111,12 +96,15 @@ static void __init omap2_gp_clockevent_init(void) - - omap2_gp_timer_irq.dev_id = (void *)gptimer; - setup_irq(omap_dm_timer_get_irq(gptimer), &omap2_gp_timer_irq); -- omap_dm_timer_set_int_enable(gptimer, OMAP_TIMER_INT_OVERFLOW); -+ omap_dm_timer_stop(gptimer); -+ /* omap_dm_timer_set_load(gptimer, 0, 0);*/ -+ omap_dm_timer_set_match(gptimer, 1, GPTIMER_MATCH_VAL); -+ omap_dm_timer_set_int_enable(gptimer, OMAP_TIMER_INT_MATCH); - - clockevent_gpt.mult = div_sc(tick_rate, NSEC_PER_SEC, - clockevent_gpt.shift); - clockevent_gpt.max_delta_ns = -- clockevent_delta2ns(0xffffffff, &clockevent_gpt); -+ clockevent_delta2ns(GPTIMER_MATCH_VAL, &clockevent_gpt); - clockevent_gpt.min_delta_ns = - clockevent_delta2ns(1, &clockevent_gpt); - diff --git a/packages/linux/linux-omap2-git/beagleboard/03-gptimer_match_plus_ovf b/packages/linux/linux-omap2-git/beagleboard/03-gptimer_match_plus_ovf deleted file mode 100644 index 3de6e05042..0000000000 --- a/packages/linux/linux-omap2-git/beagleboard/03-gptimer_match_plus_ovf +++ /dev/null @@ -1,94 +0,0 @@ -OMAP2/3 system tick GPTIMER: use overflow interrupts to detect missing match interrupts - -From: Paul Walmsley - -GPTIMER1 on some OMAP3 chips occasionally misses match conditions -between the timer counter and the target register value, and does not -interrupt to the MPU. This patch adds another line of defense by -setting the timer to generate an overflow interrupt 0.5 seconds after the -timer passes the original comparison value. - -If interrupts are masked for a long period of time, one would expect -both a match and an overflow interrupt to be logged. This is considered -a normal condition. However, if only an overflow interrupt is logged, -this is considered evidence of a hardware bug and the kernel will issue -a warning. - -This workaround is unlikely to be 100% effective, since GPTIMER1 has -also been observed to lose overflow interrupts occasionally. It is -hoped that the probability of losing both will be significantly lower -than the probability of losing either one. ---- - - arch/arm/mach-omap2/timer-gp.c | 36 ++++++++++++++++++++++++++++++++---- - 1 files changed, 32 insertions(+), 4 deletions(-) - -diff --git a/arch/arm/mach-omap2/timer-gp.c b/arch/arm/mach-omap2/timer-gp.c -index 51996ba..ce5c2b4 100644 ---- a/arch/arm/mach-omap2/timer-gp.c -+++ b/arch/arm/mach-omap2/timer-gp.c -@@ -36,17 +36,43 @@ - #include - #include - --#define GPTIMER_MATCH_VAL 0xffff0000 -+/* -+ * The number of timer ticks to delay will be subtracted from -+ * GPTIMER_MATCH_VAL before loading into the timer. So GPTIMER_MATCH_VAL -+ * constrains the longest delay that can be generated with the timer. -+ * Since the current code uses overflow interrupts as protection against -+ * missed comparison interrupts, this value should also be sufficiently -+ * large such that there is not an excessively long delay between ticks -+ * if the comparison interrupt fails to arrive. The 0xfffff800 value -+ * below results in a half-second delay in such a case when using -+ * the 32kHz timer as source. -+ */ -+#define GPTIMER_MATCH_VAL (0xffffffff - (32768/2)) - - static struct omap_dm_timer *gptimer; - static struct clock_event_device clockevent_gpt; - -+static u32 last_load; -+ - static irqreturn_t omap2_gp_timer_interrupt(int irq, void *dev_id) - { - struct omap_dm_timer *gpt = (struct omap_dm_timer *)dev_id; - struct clock_event_device *evt = &clockevent_gpt; -- -- omap_dm_timer_write_status(gpt, OMAP_TIMER_INT_MATCH); -+ u32 v; -+ -+ v = omap_dm_timer_read_status(gpt); -+ if ((v & OMAP_TIMER_INT_OVERFLOW) && !(v & OMAP_TIMER_INT_MATCH)) { -+ /* -+ * Should never happen. Current belief is that this is -+ * due to a hardware bug in the GPTIMER block on some -+ * OMAP3 revisions. -+ */ -+ pr_err("*** GPTIMER missed match interrupt! last load: %08x\n", -+ last_load); -+ WARN_ON(1); -+ } -+ -+ omap_dm_timer_write_status(gpt, v); - - evt->event_handler(evt); - return IRQ_HANDLED; -@@ -61,6 +87,7 @@ static struct irqaction omap2_gp_timer_irq = { - static int omap2_gp_timer_set_next_event(unsigned long cycles, - struct clock_event_device *evt) - { -+ last_load = GPTIMER_MATCH_VAL - cycles; - omap_dm_timer_set_load_start(gptimer, 0, GPTIMER_MATCH_VAL - cycles); - - return 0; -@@ -99,7 +126,8 @@ static void __init omap2_gp_clockevent_init(void) - omap_dm_timer_stop(gptimer); - /* omap_dm_timer_set_load(gptimer, 0, 0);*/ - omap_dm_timer_set_match(gptimer, 1, GPTIMER_MATCH_VAL); -- omap_dm_timer_set_int_enable(gptimer, OMAP_TIMER_INT_MATCH); -+ omap_dm_timer_set_int_enable(gptimer, OMAP_TIMER_INT_MATCH | -+ OMAP_TIMER_INT_OVERFLOW); - - clockevent_gpt.mult = div_sc(tick_rate, NSEC_PER_SEC, - clockevent_gpt.shift); diff --git a/packages/linux/linux-omap2-git/beagleboard/04-gptimer_add_debug_to_sysrq_q b/packages/linux/linux-omap2-git/beagleboard/04-gptimer_add_debug_to_sysrq_q deleted file mode 100644 index aa9f09811a..0000000000 --- a/packages/linux/linux-omap2-git/beagleboard/04-gptimer_add_debug_to_sysrq_q +++ /dev/null @@ -1,110 +0,0 @@ -Add extra debug for the q_d_w_o() when work fn is already active. - -From: Paul Walmsley - - ---- - - arch/arm/mach-omap2/timer-gp.c | 3 ++- - arch/arm/plat-omap/dmtimer.c | 20 ++++++++++++++++++++ - include/asm-arm/arch-omap/dmtimer.h | 1 + - kernel/time/timer_list.c | 8 ++++++++ - 4 files changed, 31 insertions(+), 1 deletions(-) - -diff --git a/arch/arm/mach-omap2/timer-gp.c b/arch/arm/mach-omap2/timer-gp.c -index ce5c2b4..e3ed368 100644 ---- a/arch/arm/mach-omap2/timer-gp.c -+++ b/arch/arm/mach-omap2/timer-gp.c -@@ -50,6 +50,7 @@ - #define GPTIMER_MATCH_VAL (0xffffffff - (32768/2)) - - static struct omap_dm_timer *gptimer; -+struct omap_dm_timer *gptimer_pub; - static struct clock_event_device clockevent_gpt; - - static u32 last_load; -@@ -111,7 +112,7 @@ static void __init omap2_gp_clockevent_init(void) - { - u32 tick_rate; - -- gptimer = omap_dm_timer_request_specific(1); -+ gptimer = gptimer_pub = omap_dm_timer_request_specific(1); - BUG_ON(gptimer == NULL); - - #if defined(CONFIG_OMAP_32K_TIMER) -diff --git a/arch/arm/plat-omap/dmtimer.c b/arch/arm/plat-omap/dmtimer.c -index e38a11e..b10f8ac 100644 ---- a/arch/arm/plat-omap/dmtimer.c -+++ b/arch/arm/plat-omap/dmtimer.c -@@ -614,6 +614,26 @@ void omap_dm_timer_set_int_enable(struct omap_dm_timer *timer, - omap_dm_timer_write_reg(timer, OMAP_TIMER_WAKEUP_EN_REG, value); - } - -+void omap_dm_timer_dump_int_enable(struct omap_dm_timer *timer) -+{ -+ u32 l; -+ l = omap_dm_timer_read_reg(timer, OMAP_TIMER_COUNTER_REG); -+ pr_err("GPT TCRR: %08x\n", l); -+ l = omap_dm_timer_read_reg(timer, OMAP_TIMER_MATCH_REG); -+ pr_err("GPT TMAT: %08x\n", l); -+ l = omap_dm_timer_read_reg(timer, OMAP_TIMER_STAT_REG); -+ pr_err("GPT TISR: %08x\n", l); -+ l = omap_dm_timer_read_reg(timer, OMAP_TIMER_INT_EN_REG); -+ pr_err("GPT TIER: %08x\n", l); -+ l = omap_dm_timer_read_reg(timer, OMAP_TIMER_CTRL_REG); -+ pr_err("GPT TCLR: %08x\n", l); -+ l = omap_dm_timer_read_reg(timer, OMAP_TIMER_TICK_INT_MASK_SET_REG); -+ pr_err("GPT TOCR: %08x\n", l); -+ l = omap_dm_timer_read_reg(timer, OMAP_TIMER_TICK_INT_MASK_COUNT_REG); -+ pr_err("GPT TOWR: %08x\n", l); -+} -+ -+ - unsigned int omap_dm_timer_read_status(struct omap_dm_timer *timer) - { - unsigned int l; -diff --git a/include/asm-arm/arch-omap/dmtimer.h b/include/asm-arm/arch-omap/dmtimer.h -index 02b29e8..a8123e9 100644 ---- a/include/asm-arm/arch-omap/dmtimer.h -+++ b/include/asm-arm/arch-omap/dmtimer.h -@@ -73,6 +73,7 @@ void omap_dm_timer_set_prescaler(struct omap_dm_timer *timer, int prescaler); - - void omap_dm_timer_set_int_enable(struct omap_dm_timer *timer, unsigned int value); - -+void omap_dm_timer_dump_int_enable(struct omap_dm_timer *timer); - unsigned int omap_dm_timer_read_status(struct omap_dm_timer *timer); - void omap_dm_timer_write_status(struct omap_dm_timer *timer, unsigned int value); - unsigned int omap_dm_timer_read_counter(struct omap_dm_timer *timer); -diff --git a/kernel/time/timer_list.c b/kernel/time/timer_list.c -index a40e20f..452eab7 100644 ---- a/kernel/time/timer_list.c -+++ b/kernel/time/timer_list.c -@@ -18,6 +18,8 @@ - #include - #include - -+#include -+ - #include - - typedef void (*print_fn_t)(struct seq_file *m, unsigned int *classes); -@@ -239,6 +241,8 @@ static void timer_list_show_tickdevices(struct seq_file *m) - static void timer_list_show_tickdevices(struct seq_file *m) { } - #endif - -+extern struct omap_dm_timer *gptimer_pub; -+ - static int timer_list_show(struct seq_file *m, void *v) - { - u64 now = ktime_to_ns(ktime_get()); -@@ -254,6 +258,10 @@ static int timer_list_show(struct seq_file *m, void *v) - SEQ_printf(m, "\n"); - timer_list_show_tickdevices(m); - -+ SEQ_printf(m, "\n"); -+ -+ omap_dm_timer_dump_int_enable(gptimer_pub); -+ - return 0; - } - diff --git a/packages/linux/linux-omap2-git/beagleboard/defconfig b/packages/linux/linux-omap2-git/beagleboard/defconfig index d01d473ed5..c07d0ab5e2 100644 --- a/packages/linux/linux-omap2-git/beagleboard/defconfig +++ b/packages/linux/linux-omap2-git/beagleboard/defconfig @@ -187,8 +187,8 @@ CONFIG_OMAP_BOOT_REASON=y CONFIG_OMAP_MCBSP=y # CONFIG_OMAP_MMU_FWK is not set # CONFIG_OMAP_MBOX_FWK is not set -CONFIG_OMAP_MPU_TIMER=y -# CONFIG_OMAP_32K_TIMER is not set +# CONFIG_OMAP_MPU_TIMER is not set +CONFIG_OMAP_32K_TIMER=y CONFIG_OMAP_DM_TIMER=y # CONFIG_OMAP_LL_DEBUG_UART1 is not set # CONFIG_OMAP_LL_DEBUG_UART2 is not set @@ -203,6 +203,7 @@ CONFIG_ARCH_OMAP3430=y # CONFIG_MACH_OMAP_3430SDP is not set # CONFIG_MACH_OMAP3EVM is not set CONFIG_MACH_OMAP3_BEAGLE=y +CONFIG_OMAP_TICK_GPTIMER=12 # # Boot options diff --git a/packages/linux/linux-omap2_git.bb b/packages/linux/linux-omap2_git.bb index 4008102f09..5749d4fc0c 100644 --- a/packages/linux/linux-omap2_git.bb +++ b/packages/linux/linux-omap2_git.bb @@ -6,9 +6,9 @@ SRCREV = "d6daf8d8cc5ccf90247def5551ee9c3e8555e848" PV = "2.6.26" #PV = "2.6.26+2.6.27-rc1+${PR}+git${SRCREV}" -PR = "r58" +PR = "r59" -SRC_URI = "git://source.mvista.com/git/linux-omap-2.6.git;protocol=git \ +SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6.git;protocol=git \ file://defconfig" SRC_URI_append_beagleboard = " file://no-harry-potter.diff;patch=1 \ @@ -35,10 +35,7 @@ SRC_URI_append_beagleboard = " file://no-harry-potter.diff;patch=1 \ file://mru-clocks3.diff;patch=1 \ file://4bitmmc.diff;patch=1 \ file://no-cortex-deadlock.patch;patch=1 \ - file://01-gptimer_clear_isrs_on_init;patch=1 \ - file://02-gptimer_use_match_for_tick;patch=1 \ - file://03-gptimer_match_plus_ovf;patch=1 \ - file://04-gptimer_add_debug_to_sysrq_q;patch=1 \ + file://01-make_tick_gptimer_configurable;patch=1 \ file://read_die_ids.patch;patch=1 \ " -- cgit v1.2.3 From 21b9640fd59630c0360ebb11baab1c69cae4d2e1 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sun, 10 Aug 2008 14:25:29 +0000 Subject: gmyth: add 0.7.1 --- packages/mythtv/gmyth_0.7.1.bb | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 packages/mythtv/gmyth_0.7.1.bb (limited to 'packages') diff --git a/packages/mythtv/gmyth_0.7.1.bb b/packages/mythtv/gmyth_0.7.1.bb new file mode 100644 index 0000000000..b5f9849842 --- /dev/null +++ b/packages/mythtv/gmyth_0.7.1.bb @@ -0,0 +1,16 @@ +DESCRIPTION = "GMyth is a library to access MythTV backend services." +LICENSE = "LGPLv2"" +HOMEPAGE = "http://gmyth.sourceforge.net/wiki/index.php/Main_Page" +DEPENDS = "curl libxml2 glib-2.0" + +SRC_URI = "${SOURCEFORGE_MIRROR}/gmyth/${PN}-${PV}.tar.gz" + +inherit autotools + +AUTOTOOLS_STAGE_PKGCONFIG = "1" + +do_stage() { + sed -i -e s:${STAGING_DIR}::g gmyth.pc + autotools_stage_all +} + -- cgit v1.2.3 From 3d742bb070f089d28aff59fd0a7c66d62d6a4432 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sun, 10 Aug 2008 14:28:13 +0000 Subject: totem-pl-parser: add 2.23.3 --- packages/totem/totem-pl-parser_2.23.3.bb | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 packages/totem/totem-pl-parser_2.23.3.bb (limited to 'packages') diff --git a/packages/totem/totem-pl-parser_2.23.3.bb b/packages/totem/totem-pl-parser_2.23.3.bb new file mode 100644 index 0000000000..7f3cd861e9 --- /dev/null +++ b/packages/totem/totem-pl-parser_2.23.3.bb @@ -0,0 +1,15 @@ +DESCRIPTION = "Playlist parser for Totem, a GTK2 based media player" +HOMEPAGE = "http://www.gnome.org/projects/totem/" +LICENSE = "GPL" + +DEPENDS = "eds-dbus" + +inherit gnome + +AUTOTOOLS_STAGE_PKGCONFIG = "1" + +do_stage() { + autotools_stage_all +} + + -- cgit v1.2.3 From 491515fb2f411eed26eaa22cc08cc36843f75190 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sun, 10 Aug 2008 14:51:54 +0000 Subject: mysql: use autotools_stage_all to get libs into libdir/mysql as they should. The old wrong behaviour is left alone to minimize breakage --- packages/mysql/mysql_4.1.18.bb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'packages') diff --git a/packages/mysql/mysql_4.1.18.bb b/packages/mysql/mysql_4.1.18.bb index cd32f929e3..2017463c36 100644 --- a/packages/mysql/mysql_4.1.18.bb +++ b/packages/mysql/mysql_4.1.18.bb @@ -3,7 +3,7 @@ HOMEPAGE = "http://www.mysql.com/" SECTION = "libs" LICENSE = "GPL" DEPENDS += "ncurses mysql-native" -PR = "r3" +PR = "r4" SRC_URI = "http://downloads.mysql.com/archives/mysql-4.1/mysql-${PV}.tar.gz \ file://autofoo.patch;patch=1 \ @@ -28,7 +28,7 @@ EXTRA_OEMAKE = "'GEN_LEX_HASH=${STAGING_BINDIR_NATIVE}/gen_lex_hash'" EXTRA_OECONF = " --with-embedded-server --prefix=/usr --sysconfdir=/etc/mysql --localstatedir=/var/mysql --datadir=/var/mysql --disable-dependency-tracking --without-raid --without-debug --with-low-memory --without-query-cache --without-man --without-docs --without-innodb " do_stage() { - autotools_stage_includes + autotools_stage_all oe_libinstall -a -so -C libmysql libmysqlclient ${STAGING_LIBDIR} oe_libinstall -a -C libmysqld libmysqld ${STAGING_LIBDIR} } -- cgit v1.2.3 From 0baaf788fe38003f930ce46065bacbf15ba1d215 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sun, 10 Aug 2008 14:53:14 +0000 Subject: gmyth-upnp: add 0.7.0 --- packages/mythtv/gmyth-upnp_0.7.0.bb | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 packages/mythtv/gmyth-upnp_0.7.0.bb (limited to 'packages') diff --git a/packages/mythtv/gmyth-upnp_0.7.0.bb b/packages/mythtv/gmyth-upnp_0.7.0.bb new file mode 100644 index 0000000000..3200ba334a --- /dev/null +++ b/packages/mythtv/gmyth-upnp_0.7.0.bb @@ -0,0 +1,17 @@ +DESCRIPTION = "GMyth is a library to access MythTV backend services." +LICENSE = "LGPLv2"" +HOMEPAGE = "http://gmyth.sourceforge.net/wiki/index.php/Main_Page" + +DEPENDS = "glib-2.0 mysql gmyth libupnp + +SRC_URI = "${SOURCEFORGE_MIRROR}/gmyth/${PN}_0.7-indt1.tar.gz" +S = "${WORKDIR}/${PN}" + +inherit autotools + +AUTOTOOLS_STAGE_PKGCONFIG = "1" + +do_stage() { + autotools_stage_all +} + -- cgit v1.2.3 From 60ead6c3df9298dbbbf284ddd6d1415ca604f5bb Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sun, 10 Aug 2008 15:33:21 +0000 Subject: gmyth*: fix up .pc files for -dev packages as well --- packages/mythtv/gmyth-upnp_0.7.0.bb | 13 +++++++++++-- packages/mythtv/gmyth_0.7.1.bb | 9 ++++++++- 2 files changed, 19 insertions(+), 3 deletions(-) (limited to 'packages') diff --git a/packages/mythtv/gmyth-upnp_0.7.0.bb b/packages/mythtv/gmyth-upnp_0.7.0.bb index 3200ba334a..eb6028a3c0 100644 --- a/packages/mythtv/gmyth-upnp_0.7.0.bb +++ b/packages/mythtv/gmyth-upnp_0.7.0.bb @@ -2,6 +2,8 @@ DESCRIPTION = "GMyth is a library to access MythTV backend services." LICENSE = "LGPLv2"" HOMEPAGE = "http://gmyth.sourceforge.net/wiki/index.php/Main_Page" +PR = "r1" + DEPENDS = "glib-2.0 mysql gmyth libupnp SRC_URI = "${SOURCEFORGE_MIRROR}/gmyth/${PN}_0.7-indt1.tar.gz" @@ -11,7 +13,14 @@ inherit autotools AUTOTOOLS_STAGE_PKGCONFIG = "1" +do_compile_append() { + sed -i -e s:${STAGING_DIR_TARGET}::g \ + -e s,Version:,Version:\ 0\.7\.0,g \ + -e s:/${TARGET_SYS}::g \ + gmyth-upnp.pc +} + do_stage() { - autotools_stage_all -} + autotools_stage_all +} diff --git a/packages/mythtv/gmyth_0.7.1.bb b/packages/mythtv/gmyth_0.7.1.bb index b5f9849842..11d6f4310f 100644 --- a/packages/mythtv/gmyth_0.7.1.bb +++ b/packages/mythtv/gmyth_0.7.1.bb @@ -3,14 +3,21 @@ LICENSE = "LGPLv2"" HOMEPAGE = "http://gmyth.sourceforge.net/wiki/index.php/Main_Page" DEPENDS = "curl libxml2 glib-2.0" +PR = "r1" + SRC_URI = "${SOURCEFORGE_MIRROR}/gmyth/${PN}-${PV}.tar.gz" inherit autotools AUTOTOOLS_STAGE_PKGCONFIG = "1" +do_compile_append() { + sed -i -e s:${STAGING_DIR_TARGET}::g \ + -e s:/${TARGET_SYS}::g \ + gmyth.pc +} + do_stage() { - sed -i -e s:${STAGING_DIR}::g gmyth.pc autotools_stage_all } -- cgit v1.2.3 From 70185fab5a60f21c0888baa34d621450b7205716 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sun, 10 Aug 2008 15:47:43 +0000 Subject: totem: add 2.23.4 --- packages/totem/totem/.mtn2git_empty | 0 packages/totem/totem/gst-detect.diff | 37 ++++++++++++++++++++++++++++++++++++ packages/totem/totem_2.23.4.bb | 35 ++++++++++++++++++++++++++++++++++ 3 files changed, 72 insertions(+) create mode 100644 packages/totem/totem/.mtn2git_empty create mode 100644 packages/totem/totem/gst-detect.diff create mode 100644 packages/totem/totem_2.23.4.bb (limited to 'packages') diff --git a/packages/totem/totem/.mtn2git_empty b/packages/totem/totem/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/totem/totem/gst-detect.diff b/packages/totem/totem/gst-detect.diff new file mode 100644 index 0000000000..5fc0788654 --- /dev/null +++ b/packages/totem/totem/gst-detect.diff @@ -0,0 +1,37 @@ +--- /tmp/configure.in 2008-08-10 15:27:06.000000000 +0200 ++++ totem-2.23.4/configure.in 2008-08-10 17:35:46.593198000 +0200 +@@ -142,11 +142,7 @@ + if $gst010_inspect $base_element >/dev/null 2>/dev/null; then + AC_MSG_RESULT([yes]) + else +- AC_MSG_RESULT([no]) +- AC_MSG_ERROR([ +- Cannot find required GStreamer-0.10 plugin '$base_element'. +- It should be part of gst-plugins-base. Please install it. +- ]) ++ AC_MSG_RESULT([yes, we assume OE has already built them]) + fi + done + +@@ -157,11 +153,7 @@ + if $gst010_inspect $good_element >/dev/null 2>/dev/null; then + AC_MSG_RESULT([yes]) + else +- AC_MSG_RESULT([no]) +- AC_MSG_ERROR([ +- Cannot find required GStreamer-0.10 plugin '$good_element'. +- It should be part of gst-plugins-good. Please install it. +- ]) ++ AC_MSG_RESULT([yes, we assume OE has already built them]) + fi + done + +@@ -565,7 +557,7 @@ + fi + ;; + mythtv) +- PKG_CHECK_MODULES(GMYTH, gmyth >= 0.7 gmyth-upnp >= 0.7.1, ++ PKG_CHECK_MODULES(GMYTH, gmyth >= 0.7.0, + [HAVE_GMYTH=yes], [HAVE_GMYTH=no]) + if test "${HAVE_GMYTH}" != "yes"; then + plugin_error_or_ignore "you need GMyth >= 0.7 installed for the MythTV plugin" diff --git a/packages/totem/totem_2.23.4.bb b/packages/totem/totem_2.23.4.bb new file mode 100644 index 0000000000..7bd5c6945b --- /dev/null +++ b/packages/totem/totem_2.23.4.bb @@ -0,0 +1,35 @@ +# totem OE build file +# Copyright (C) 2004, Advanced Micro Devices, Inc. All Rights Reserved +# Released under the MIT license (see packages/COPYING) + +DESCRIPTION = "A GTK2 based media player" +HOMEPAGE = "http://www.gnome.org/projects/totem/" +LICENSE = "GPL" + +DEPENDS = " totem-pl-parser gtk+ dbus bluez-libs libglade gconf libxml2 gst-ffmpeg gst-plugins-bad gst-plugins-base" +RDEPENDS = "iso-codes" +RRECOMMENDS = "gst-plugin-playbin gst-ffmpeg gst-plugin-audioresample gst-plugin-ximagesink gst-plugin-xvimagesink gst-plugin-alsa" + +inherit gnome + +SRC_URI += "file://gst-detect.diff;patch=1" + +EXTRA_OECONF=" --disable-schemas-install \ + --enable-gtk \ + --disable-iso-codes \ + --disable-debug \ + --enable-gstreamer \ + --enable-browser-plugins \ + --disable-run-in-source-tree \ + --with-dbus \ + " + +do_configure_prepend() { + sed -i -e s:help::g ${S}/Makefile.am +} + +PACKAGES =+ "totem-browser-plugin-dbg totem-browser-plugin" +FILES_${PN} += "${datadir}/icons" +FILES_${PN}-dbg += "${libdir}/totem/plugins/*/.debug" +FILES_totem-browser-plugin-dbg += "${libdir}/mozilla/plugins/.debug" +FILES_totem-browser-plugin += "${libdir}/mozilla/plugins/" -- cgit v1.2.3 From a7c1b9e83858e722cd3e79e4faad630c07c1ad21 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sun, 10 Aug 2008 18:11:19 +0000 Subject: xserver-common: add keypad to keymap --- packages/xserver-common/files/fixes-fix-fix.patch | 20 ++++++++++++++++++++ packages/xserver-common/xserver-common_1.22.bb | 3 ++- 2 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 packages/xserver-common/files/fixes-fix-fix.patch (limited to 'packages') diff --git a/packages/xserver-common/files/fixes-fix-fix.patch b/packages/xserver-common/files/fixes-fix-fix.patch new file mode 100644 index 0000000000..c44e0277b5 --- /dev/null +++ b/packages/xserver-common/files/fixes-fix-fix.patch @@ -0,0 +1,20 @@ +--- /tmp/default.xmodmap 2008-08-10 20:06:35.000000000 +0200 ++++ xserver-common-1.22/X11/default.xmodmap 2008-08-10 20:07:04.000000000 +0200 +@@ -188,13 +188,13 @@ + keycode 195 = + keycode 196 = + keycode 197 = +-keycode 198 = ++keycode 198 = Up + keycode 199 = +-keycode 200 = +-keycode 201 = ++keycode 200 = Left ++keycode 201 = Right + keycode 202 = + keycode 203 = +-keycode 204 = ++keycode 204 = Down + keycode 205 = + keycode 206 = + keycode 207 = diff --git a/packages/xserver-common/xserver-common_1.22.bb b/packages/xserver-common/xserver-common_1.22.bb index 425e64c627..9ef4e457d2 100644 --- a/packages/xserver-common/xserver-common_1.22.bb +++ b/packages/xserver-common/xserver-common_1.22.bb @@ -2,7 +2,7 @@ DESCRIPTION = "Common X11 scripts and support files" LICENSE = "GPL" SECTION = "x11" RDEPENDS_${PN} = "xmodmap xrandr xdpyinfo" -PR = "r5" +PR = "r6" PACKAGE_ARCH = "all" @@ -12,6 +12,7 @@ inherit gpe SRC_URI_append = " file://setDPI.sh " SRC_URI_append_angstrom = " file://kdrive-1.4-fixes.patch;patch=1 \ file://kdrive-1.4-fixes-fix.patch;patch=1 \ + file://fixes-fix-fix.patch;patch=1 \ " do_install_append() { -- cgit v1.2.3 From e3374f4da06c04a1503bd9e27126cde55e1075e2 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sun, 10 Aug 2008 18:22:25 +0000 Subject: gconf-editor: add 2.22.0 --- packages/gnome/gconf-editor_2.22.0.bb | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 packages/gnome/gconf-editor_2.22.0.bb (limited to 'packages') diff --git a/packages/gnome/gconf-editor_2.22.0.bb b/packages/gnome/gconf-editor_2.22.0.bb new file mode 100644 index 0000000000..00f7b02544 --- /dev/null +++ b/packages/gnome/gconf-editor_2.22.0.bb @@ -0,0 +1,7 @@ +DESCRIPTION = "Editor for the gnome registry" +LICENSE = "GPLv2" +DEPENDS = "gnome-doc-utils gconf-dbus" + +inherit gnome gconf + + -- cgit v1.2.3 From bbc89341cb44077e0dd7a1f78d1b3d7f5d73b31a Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sun, 10 Aug 2008 18:32:14 +0000 Subject: gst-plugins: fix do_split_packages bogus dependency addition gst-plguins-good: fix gconfelements plugin --- packages/gstreamer/gst-plugins-good_0.10.7.bb | 7 ++++++- packages/gstreamer/gst-plugins.inc | 4 ++-- 2 files changed, 8 insertions(+), 3 deletions(-) (limited to 'packages') diff --git a/packages/gstreamer/gst-plugins-good_0.10.7.bb b/packages/gstreamer/gst-plugins-good_0.10.7.bb index fb551f5176..ac3a5e73c5 100644 --- a/packages/gstreamer/gst-plugins-good_0.10.7.bb +++ b/packages/gstreamer/gst-plugins-good_0.10.7.bb @@ -1,5 +1,10 @@ require gst-plugins.inc -PR = "r1" +PR = "r2" + +inherit gconf EXTRA_OECONF += "--with-check=no" DEPENDS += "gst-plugins-base esound" + +PACKAGES =+ "gst-plugin-gconfelements" +FILES_gst-plugin-gconfelements += "${sysconfdir}/gconf" diff --git a/packages/gstreamer/gst-plugins.inc b/packages/gstreamer/gst-plugins.inc index eaba8343f3..177585340d 100644 --- a/packages/gstreamer/gst-plugins.inc +++ b/packages/gstreamer/gst-plugins.inc @@ -19,8 +19,8 @@ python populate_packages_prepend () { gst_libdir = bb.data.expand('${libdir}/gstreamer-${LIBV}', d) postinst = bb.data.getVar('plugin_postinst', d, 1) - do_split_packages(d, gst_libdir, '^libgst(.*)\.so$', 'gst-plugin-%s', 'GStreamer plugin for %s', postinst=postinst) - do_split_packages(d, gst_libdir, '^libgst(.*)\.l?a$', 'gst-plugin-%s-dev', 'GStreamer plugin for %s (development files)') + do_split_packages(d, gst_libdir, '^libgst(.*)\.so$', 'gst-plugin-%s', 'GStreamer plugin for %s', postinst=postinst, extra_depends='') + do_split_packages(d, gst_libdir, '^libgst(.*)\.l?a$', 'gst-plugin-%s-dev', 'GStreamer plugin for %s (development files)', extra_depends='') } ALLOW_EMPTY = "1" -- cgit v1.2.3 From 83e1ef08b48b2e29073f2b96e322264ba80abdd7 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sun, 10 Aug 2008 18:47:06 +0000 Subject: libupnp: stage .pc files from inside autotools_stage_all --- packages/upnp/libupnp_1.6.5.bb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'packages') diff --git a/packages/upnp/libupnp_1.6.5.bb b/packages/upnp/libupnp_1.6.5.bb index a7a01597ac..245575ed28 100644 --- a/packages/upnp/libupnp_1.6.5.bb +++ b/packages/upnp/libupnp_1.6.5.bb @@ -2,10 +2,14 @@ DESCRIPTION = "The portable SDK for UPnP* Devices (libupnp) provides developers HOMEPAGE = "http://pupnp.sourceforge.net/" LICENSE = "BSD" +PR = "r1" + LEAD_SONAME = "libupnp" SRC_URI = "${SOURCEFORGE_MIRROR}/pupnp/${P}.tar.bz2" -inherit autotools pkgconfig +inherit autotools + +AUTOTOOLS_STAGE_PKGCONFIG = "1" do_stage() { autotools_stage_all -- cgit v1.2.3 From 201225b260c776c256ef7ab633ca45c82235bf0a Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sun, 10 Aug 2008 19:03:36 +0000 Subject: gmyth-upnp: fix .pc some more, the clinkc dep isn't needed --- packages/mythtv/gmyth-upnp_0.7.0.bb | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'packages') diff --git a/packages/mythtv/gmyth-upnp_0.7.0.bb b/packages/mythtv/gmyth-upnp_0.7.0.bb index eb6028a3c0..3f20b3dd83 100644 --- a/packages/mythtv/gmyth-upnp_0.7.0.bb +++ b/packages/mythtv/gmyth-upnp_0.7.0.bb @@ -2,9 +2,9 @@ DESCRIPTION = "GMyth is a library to access MythTV backend services." LICENSE = "LGPLv2"" HOMEPAGE = "http://gmyth.sourceforge.net/wiki/index.php/Main_Page" -PR = "r1" +PR = "r2" -DEPENDS = "glib-2.0 mysql gmyth libupnp +DEPENDS = "glib-2.0 mysql gmyth libupnp" SRC_URI = "${SOURCEFORGE_MIRROR}/gmyth/${PN}_0.7-indt1.tar.gz" S = "${WORKDIR}/${PN}" @@ -17,7 +17,8 @@ do_compile_append() { sed -i -e s:${STAGING_DIR_TARGET}::g \ -e s,Version:,Version:\ 0\.7\.0,g \ -e s:/${TARGET_SYS}::g \ - gmyth-upnp.pc + -e s:clinkc::g \ + gmyth-upnp.pc } do_stage() { -- cgit v1.2.3 From ef8e477cb0d7367cc8375ed52dd2102b289622a6 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sun, 10 Aug 2008 19:08:50 +0000 Subject: totem: add more gst plugins and fix mythtv detection --- packages/totem/totem/gst-detect.diff | 4 ++-- packages/totem/totem_2.23.4.bb | 7 +++++-- 2 files changed, 7 insertions(+), 4 deletions(-) (limited to 'packages') diff --git a/packages/totem/totem/gst-detect.diff b/packages/totem/totem/gst-detect.diff index 5fc0788654..6d37515995 100644 --- a/packages/totem/totem/gst-detect.diff +++ b/packages/totem/totem/gst-detect.diff @@ -1,5 +1,5 @@ --- /tmp/configure.in 2008-08-10 15:27:06.000000000 +0200 -+++ totem-2.23.4/configure.in 2008-08-10 17:35:46.593198000 +0200 ++++ totem-2.23.4/configure.in 2008-08-10 20:37:08.743198000 +0200 @@ -142,11 +142,7 @@ if $gst010_inspect $base_element >/dev/null 2>/dev/null; then AC_MSG_RESULT([yes]) @@ -31,7 +31,7 @@ ;; mythtv) - PKG_CHECK_MODULES(GMYTH, gmyth >= 0.7 gmyth-upnp >= 0.7.1, -+ PKG_CHECK_MODULES(GMYTH, gmyth >= 0.7.0, ++ PKG_CHECK_MODULES(GMYTH, gmyth >= 0.7.0 gmyth-upnp, [HAVE_GMYTH=yes], [HAVE_GMYTH=no]) if test "${HAVE_GMYTH}" != "yes"; then plugin_error_or_ignore "you need GMyth >= 0.7 installed for the MythTV plugin" diff --git a/packages/totem/totem_2.23.4.bb b/packages/totem/totem_2.23.4.bb index 7bd5c6945b..f20499a41a 100644 --- a/packages/totem/totem_2.23.4.bb +++ b/packages/totem/totem_2.23.4.bb @@ -6,9 +6,11 @@ DESCRIPTION = "A GTK2 based media player" HOMEPAGE = "http://www.gnome.org/projects/totem/" LICENSE = "GPL" -DEPENDS = " totem-pl-parser gtk+ dbus bluez-libs libglade gconf libxml2 gst-ffmpeg gst-plugins-bad gst-plugins-base" +PR = "r1" + +DEPENDS = " totem-pl-parser gtk+ dbus bluez-libs libglade gconf libxml2 gst-ffmpeg gst-plugins-bad gst-plugins-base python" RDEPENDS = "iso-codes" -RRECOMMENDS = "gst-plugin-playbin gst-ffmpeg gst-plugin-audioresample gst-plugin-ximagesink gst-plugin-xvimagesink gst-plugin-alsa" +RRECOMMENDS = "gst-plugin-playbin gst-plugin-gconfelements gst-plugin-decodebin gst-plugin-decodebin2 gst-ffmpeg gst-plugin-audioresample gst-plugin-ximagesink gst-plugin-xvimagesink gst-plugin-alsa" inherit gnome @@ -21,6 +23,7 @@ EXTRA_OECONF=" --disable-schemas-install \ --enable-gstreamer \ --enable-browser-plugins \ --disable-run-in-source-tree \ + --disable-vala \ --with-dbus \ " -- cgit v1.2.3 From 83a0d81da8cfe1263b9717cfd08ebe758a0b67ba Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sun, 10 Aug 2008 19:47:46 +0000 Subject: gmyth: add mythtv dependency --- packages/mythtv/gmyth_0.7.1.bb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'packages') diff --git a/packages/mythtv/gmyth_0.7.1.bb b/packages/mythtv/gmyth_0.7.1.bb index 11d6f4310f..22efa84e50 100644 --- a/packages/mythtv/gmyth_0.7.1.bb +++ b/packages/mythtv/gmyth_0.7.1.bb @@ -1,9 +1,9 @@ DESCRIPTION = "GMyth is a library to access MythTV backend services." LICENSE = "LGPLv2"" HOMEPAGE = "http://gmyth.sourceforge.net/wiki/index.php/Main_Page" -DEPENDS = "curl libxml2 glib-2.0" +DEPENDS = "myththv curl libxml2 glib-2.0" -PR = "r1" +PR = "r2" SRC_URI = "${SOURCEFORGE_MIRROR}/gmyth/${PN}-${PV}.tar.gz" -- cgit v1.2.3 From ae5995869975437ef76e6b42852333efa5d9abd3 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sun, 10 Aug 2008 21:12:39 +0000 Subject: gmyth: fix typo --- packages/mythtv/gmyth_0.7.1.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'packages') diff --git a/packages/mythtv/gmyth_0.7.1.bb b/packages/mythtv/gmyth_0.7.1.bb index 22efa84e50..71c5ddb143 100644 --- a/packages/mythtv/gmyth_0.7.1.bb +++ b/packages/mythtv/gmyth_0.7.1.bb @@ -1,7 +1,7 @@ DESCRIPTION = "GMyth is a library to access MythTV backend services." LICENSE = "LGPLv2"" HOMEPAGE = "http://gmyth.sourceforge.net/wiki/index.php/Main_Page" -DEPENDS = "myththv curl libxml2 glib-2.0" +DEPENDS = "mythtv curl libxml2 glib-2.0" PR = "r2" -- cgit v1.2.3 From 6a9cf3cffc96a6b3327e8e16f7b2dece332fccaf Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sun, 10 Aug 2008 21:13:13 +0000 Subject: totem: split plugins into seperate packages --- packages/totem/totem_2.23.4.bb | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) (limited to 'packages') diff --git a/packages/totem/totem_2.23.4.bb b/packages/totem/totem_2.23.4.bb index f20499a41a..60d23073a8 100644 --- a/packages/totem/totem_2.23.4.bb +++ b/packages/totem/totem_2.23.4.bb @@ -6,11 +6,11 @@ DESCRIPTION = "A GTK2 based media player" HOMEPAGE = "http://www.gnome.org/projects/totem/" LICENSE = "GPL" -PR = "r1" +PR = "r2" DEPENDS = " totem-pl-parser gtk+ dbus bluez-libs libglade gconf libxml2 gst-ffmpeg gst-plugins-bad gst-plugins-base python" -RDEPENDS = "iso-codes" -RRECOMMENDS = "gst-plugin-playbin gst-plugin-gconfelements gst-plugin-decodebin gst-plugin-decodebin2 gst-ffmpeg gst-plugin-audioresample gst-plugin-ximagesink gst-plugin-xvimagesink gst-plugin-alsa" +RDEPENDS_${PN} += "iso-codes" +RRECOMMENDS_${PN} += "gst-plugin-playbin gst-plugin-gconfelements gst-plugin-decodebin gst-plugin-decodebin2 gst-ffmpeg gst-plugin-audioresample gst-plugin-ximagesink gst-plugin-xvimagesink gst-plugin-alsa" inherit gnome @@ -23,6 +23,7 @@ EXTRA_OECONF=" --disable-schemas-install \ --enable-gstreamer \ --enable-browser-plugins \ --disable-run-in-source-tree \ + --enable-python \ --disable-vala \ --with-dbus \ " @@ -31,8 +32,22 @@ do_configure_prepend() { sed -i -e s:help::g ${S}/Makefile.am } -PACKAGES =+ "totem-browser-plugin-dbg totem-browser-plugin" -FILES_${PN} += "${datadir}/icons" +PACKAGES += "totem-plugin-bemused totem-plugin-gromit totem-plugin-lirc totem-plugin-media-player-keys totem-plugin-mythtv totem-plugin-ontop totem-plugin-properties totem-plugin-screensaver totem-plugin-skipto totem-plugin-thumbnail totem-plugin-youtube totem-browser-plugin-dbg totem-browser-plugin" + +FILES_totem-plugin-bemused += "${libdir}/totem/plugins/bemused/*" +FILES_totem-plugin-gromit += "${libdir}/totem/plugins/gromit/*" +FILES_totem-plugin-lirc += "${libdir}/totem/plugins/lirc/*" +FILES_totem-plugin-media-player-keys += "${libdir}/totem/plugins/media-player-keys/*" +FILES_totem-plugin-mythtv += "${libdir}/totem/plugins/mythtv/*" +FILES_totem-plugin-ontop += "${libdir}/totem/plugins/ontop/*" +FILES_totem-plugin-properties += "${libdir}/totem/plugins/properties/*" +FILES_totem-plugin-screensaver += "${libdir}/totem/plugins/screensaver/*" +FILES_totem-plugin-skipto += "${libdir}/totem/plugins/skipto/*" +FILES_totem-plugin-thumbnail += "${libdir}/totem/plugins/thumbnail/*" +FILES_totem-plugin-youtube += "${libdir}/totem/plugins/youtube/*" + +FILES_${PN} = "${bindir}/* ${sysconfdir} ${libdir}/lib*.so.* ${libexecdir} ${datadir}/icons ${datadir}/totem ${datadir}/applications" FILES_${PN}-dbg += "${libdir}/totem/plugins/*/.debug" +FILES_${PN}-dev += "${libdir}/totem/plugins/*/*a" FILES_totem-browser-plugin-dbg += "${libdir}/mozilla/plugins/.debug" FILES_totem-browser-plugin += "${libdir}/mozilla/plugins/" -- cgit v1.2.3 From 4d9deb9dc09244b37d4649c934f07d7a5776f5d5 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Mon, 11 Aug 2008 08:00:07 +0000 Subject: libgtop: add 2.23.4 --- packages/gnome/libgtop_2.23.4.bb | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 packages/gnome/libgtop_2.23.4.bb (limited to 'packages') diff --git a/packages/gnome/libgtop_2.23.4.bb b/packages/gnome/libgtop_2.23.4.bb new file mode 100644 index 0000000000..02d1d9405c --- /dev/null +++ b/packages/gnome/libgtop_2.23.4.bb @@ -0,0 +1,10 @@ +LICENSE = "LGPL" +DEPENDS = "glib-2.0" + +inherit gnome lib_package + +AUTOTOOLS_STAGE_PKGCONFIG = "1" + +do_stage() { + autotools_stage_all +} -- cgit v1.2.3 From e87f7f0f085ff608387934bc68bccb9f5c33b15f Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Mon, 11 Aug 2008 08:56:35 +0000 Subject: gtkmm: add hack to get it to compile with a recent libtool --- packages/gtkmm/gtkmm_2.12.7.bb | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'packages') diff --git a/packages/gtkmm/gtkmm_2.12.7.bb b/packages/gtkmm/gtkmm_2.12.7.bb index b8ba69f50e..9ef908db63 100644 --- a/packages/gtkmm/gtkmm_2.12.7.bb +++ b/packages/gtkmm/gtkmm_2.12.7.bb @@ -2,3 +2,8 @@ require gtkmm.inc PR = "r0" +# Hack! Remove once gtkmm likes libtool 2x +do_configure() { + gnu-configize + oe_runconf +} -- cgit v1.2.3 From c0be89a2b7c8e07ab9ecd41ca717f3d529fdaff9 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Mon, 11 Aug 2008 09:29:34 +0000 Subject: gnome-system-monitor: add 2.23.6 --- packages/gnome/gnome-system-monitor_2.23.6.bb | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 packages/gnome/gnome-system-monitor_2.23.6.bb (limited to 'packages') diff --git a/packages/gnome/gnome-system-monitor_2.23.6.bb b/packages/gnome/gnome-system-monitor_2.23.6.bb new file mode 100644 index 0000000000..0e27be5ffe --- /dev/null +++ b/packages/gnome/gnome-system-monitor_2.23.6.bb @@ -0,0 +1,24 @@ +LICENSE = "GPLv2" +DEPENDS = "libgtop gtkmm glibmm libnotify libgnomeui gnome-panel gnome-doc-utils libwnck gtk+ gnome-keyring libglade hal dbus-glib " + +inherit gnome + +do_configure_prepend() { + sed -i -e s:help::g ${S}/Makefile.am +} + + +PACKAGES =+ "${PN}-applets" + +FILES_${PN}-applets = "${bindir}/*applet* \ + ${libdir}/bonobo/servers \ + ${datadir}/gnome-2.0/ui" + +FILES_${PN} += "${datadir}/icons \ + ${datadir}/dbus-1 \ + ${datadir}/gnome/autostart \ + " + +FILE_{PN}-doc += "${datadir}/omf \ + ${datadir}/gnome/help " + -- cgit v1.2.3 From 564fa88b93e739b86f1e4a8a3e7fecd01460bb9b Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Mon, 11 Aug 2008 13:00:58 +0000 Subject: gcc configure common: disable objective-c, it ICEs gcc-cross --- packages/gcc/gcc-configure-common.inc | 1 + 1 file changed, 1 insertion(+) (limited to 'packages') diff --git a/packages/gcc/gcc-configure-common.inc b/packages/gcc/gcc-configure-common.inc index 878e2ba1ef..1b3f398789 100644 --- a/packages/gcc/gcc-configure-common.inc +++ b/packages/gcc/gcc-configure-common.inc @@ -12,6 +12,7 @@ JAVA_sh3 ?= "" # gcc 3.x expects 'f77', 4.0 expects 'f95', 4.1 and 4.2 expect 'fortran' FORTRAN ?= ",f77" LANGUAGES ?= "c,objc,c++${FORTRAN}${JAVA}" +LANGUAGES_avr32 = "c,c++${FORTRAN}${JAVA}" EXTRA_OECONF_BASE ?= "" EXTRA_OECONF_PATHS ?= "" -- cgit v1.2.3 From 69404b2791c64f0d72a1464f5dbe2b52472b466a Mon Sep 17 00:00:00 2001 From: Robert Schuster Date: Mon, 11 Aug 2008 13:03:14 +0000 Subject: binutils: fix avr32 prefixing issue --- packages/binutils/binutils-avr32.inc | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'packages') diff --git a/packages/binutils/binutils-avr32.inc b/packages/binutils/binutils-avr32.inc index 2767494940..bbae784011 100644 --- a/packages/binutils/binutils-avr32.inc +++ b/packages/binutils/binutils-avr32.inc @@ -18,6 +18,14 @@ do_avr32_reconf () { do_avr32_configure_bfd () { if test ${TARGET_ARCH} == avr32; then + # fix Makefile brokenness due to unmatched single quotes + (cd ${B} && sed -i -e "s,'CC=ccache,'CC=${CC}'," Makefile) + # *_alias options are not supported in binutils 2.17 and need + # to be removed + (cd ${B} && sed -i -e "s,'host_alias=.*',," Makefile) + (cd ${B} && sed -i -e "s,'build_alias=.*',," Makefile) + (cd ${B} && sed -i -e "s,'target_alias=*.',," Makefile) + (cd ${B} && make configure-bfd) || die "Error running 'make configure-bfd'" (cd ${B}/bfd && make headers) || die "Error running 'make headers'" fi -- cgit v1.2.3 From 37ccaf6d05e4f962d4d7eab0e7b00179b409e64c Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Mon, 11 Aug 2008 14:03:41 +0000 Subject: angstrom led config: adjust names to match kernel --- packages/angstrom/angstrom-led-config.bb | 2 +- packages/angstrom/angstrom-led-config/beagleboard/leds | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'packages') diff --git a/packages/angstrom/angstrom-led-config.bb b/packages/angstrom/angstrom-led-config.bb index 83f5a1211b..36585f0b00 100644 --- a/packages/angstrom/angstrom-led-config.bb +++ b/packages/angstrom/angstrom-led-config.bb @@ -1,7 +1,7 @@ DESCRIPTION = "Configuration files for runtime LED configuration" #PV = "${DISTRO_VERSION}" -PR = "r1" +PR = "r2" PACKAGE_ARCH = "${MACHINE_ARCH}" inherit update-rc.d diff --git a/packages/angstrom/angstrom-led-config/beagleboard/leds b/packages/angstrom/angstrom-led-config/beagleboard/leds index 19c73ebcf3..4a567996ee 100644 --- a/packages/angstrom/angstrom-led-config/beagleboard/leds +++ b/packages/angstrom/angstrom-led-config/beagleboard/leds @@ -1,3 +1,3 @@ #file format: name trigger -beagleboard::led0 mmc0 -beagleboard::led1 nand-disk +beagleboard::usr0 mmc0 +beagleboard::usr1 nand-disk -- cgit v1.2.3 From 5cf49c96a744508ff2dcbb49c86f709096a8f39e Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Mon, 11 Aug 2008 14:39:50 +0000 Subject: linux-omap2 git: check in WIP cpufreq patches for beagleboard --- .../beagleboard/01-beagle-cpufreq.diff | 178 ++++ .../beagleboard/01-omap3-cpufreq.eml | 319 ++++++++ .../linux-omap2-git/beagleboard/01-omappm-srf.eml | 513 ++++++++++++ .../beagleboard/01-postrate-notifier.eml | 392 +++++++++ .../beagleboard/02-beagle_use_gptimer12 | 38 + .../beagleboard/02-omappm-mpu-latency-modeling.eml | 245 ++++++ .../beagleboard/02-postrate-notifier.eml | 186 +++++ .../beagleboard/03-omappm-omap3srf.eml | 167 ++++ .../beagleboard/04-omappm-srf-noop.eml | 497 ++++++++++++ .../beagleboard/05-omappm-virtualclocks.eml | 456 +++++++++++ .../06-omappm-opp-resource-modeling.eml | 228 ++++++ .../beagleboard/07-omappm-srf-updates.eml | 173 ++++ .../beagleboard/08-omappm-voltagescaling.eml | 96 +++ .../beagleboard/09-omappm-vdd2-scaling.eml | 102 +++ .../beagleboard/10-omappm-off-mode.eml | 35 + .../linux/linux-omap2-git/beagleboard/defconfig | 18 +- .../linux-omap2-git/beagleboard/omap23-pm-noop.eml | 894 +++++++++++++++++++++ packages/linux/linux-omap2_git.bb | 17 +- 18 files changed, 4546 insertions(+), 8 deletions(-) create mode 100644 packages/linux/linux-omap2-git/beagleboard/01-beagle-cpufreq.diff create mode 100644 packages/linux/linux-omap2-git/beagleboard/01-omap3-cpufreq.eml create mode 100644 packages/linux/linux-omap2-git/beagleboard/01-omappm-srf.eml create mode 100644 packages/linux/linux-omap2-git/beagleboard/01-postrate-notifier.eml create mode 100644 packages/linux/linux-omap2-git/beagleboard/02-beagle_use_gptimer12 create mode 100644 packages/linux/linux-omap2-git/beagleboard/02-omappm-mpu-latency-modeling.eml create mode 100644 packages/linux/linux-omap2-git/beagleboard/02-postrate-notifier.eml create mode 100644 packages/linux/linux-omap2-git/beagleboard/03-omappm-omap3srf.eml create mode 100644 packages/linux/linux-omap2-git/beagleboard/04-omappm-srf-noop.eml create mode 100644 packages/linux/linux-omap2-git/beagleboard/05-omappm-virtualclocks.eml create mode 100644 packages/linux/linux-omap2-git/beagleboard/06-omappm-opp-resource-modeling.eml create mode 100644 packages/linux/linux-omap2-git/beagleboard/07-omappm-srf-updates.eml create mode 100644 packages/linux/linux-omap2-git/beagleboard/08-omappm-voltagescaling.eml create mode 100644 packages/linux/linux-omap2-git/beagleboard/09-omappm-vdd2-scaling.eml create mode 100644 packages/linux/linux-omap2-git/beagleboard/10-omappm-off-mode.eml create mode 100644 packages/linux/linux-omap2-git/beagleboard/omap23-pm-noop.eml (limited to 'packages') diff --git a/packages/linux/linux-omap2-git/beagleboard/01-beagle-cpufreq.diff b/packages/linux/linux-omap2-git/beagleboard/01-beagle-cpufreq.diff new file mode 100644 index 0000000000..5343f3276b --- /dev/null +++ b/packages/linux/linux-omap2-git/beagleboard/01-beagle-cpufreq.diff @@ -0,0 +1,178 @@ +--- /tmp/board-omap3beagle.h 2008-08-11 15:40:17.000000000 +0200 ++++ git/include/asm-arm/arch-omap/board-omap3beagle.h 2008-08-11 15:41:32.433198000 +0200 +@@ -29,5 +29,41 @@ + #ifndef __ASM_ARCH_OMAP3_BEAGLE_H + #define __ASM_ARCH_OMAP3_BEAGLE_H + ++/* MPU speeds */ ++#define S600M 600000000 ++#define S550M 550000000 ++#define S500M 500000000 ++#define S250M 250000000 ++#define S125M 125000000 ++ ++/* IVA speeds */ ++#define S430M 430000000 ++#define S400M 400000000 ++#define S360M 360000000 ++#define S180M 180000000 ++#define S90M 90000000 ++ ++/* L3 speeds */ ++#define S83M 83000000 ++#define S166M 166000000 ++ ++/* VDD1 OPPS */ ++#define VDD1_OPP1 0x1 ++#define VDD1_OPP2 0x2 ++#define VDD1_OPP3 0x3 ++#define VDD1_OPP4 0x4 ++#define VDD1_OPP5 0x5 ++ ++/* VDD2 OPPS */ ++#define VDD2_OPP1 0x1 ++#define VDD2_OPP2 0x2 ++#define VDD2_OPP3 0x3 ++ ++#define MIN_VDD1_OPP VDD1_OPP1 ++#define MAX_VDD1_OPP VDD1_OPP5 ++#define MIN_VDD2_OPP VDD2_OPP1 ++#define MAX_VDD2_OPP VDD2_OPP3 ++ ++ + #endif /* __ASM_ARCH_OMAP3_BEAGLE_H */ + +--- /tmp/resource34xx.c 2008-08-11 16:11:28.000000000 +0200 ++++ git/arch/arm/mach-omap2/resource34xx.c 2008-08-11 16:20:18.803198000 +0200 +@@ -173,7 +173,7 @@ + + int set_opp(struct shared_resource *resp, u32 target_level) + { +-#ifdef CONFIG_MACH_OMAP_3430SDP ++#if defined(CONFIG_MACH_OMAP_3430SDP) || defined(CONFIG_MACH_OMAP3_BEAGLE) + unsigned long mpu_freq, l3_freq, tput; + int ind; + struct bus_throughput_db *tput_db; +@@ -248,7 +248,7 @@ + */ + void init_freq(struct shared_resource *resp) + { +-#ifdef CONFIG_MACH_OMAP_3430SDP ++#if defined(CONFIG_MACH_OMAP_3430SDP) || defined(CONFIG_MACH_OMAP3_BEAGLE) + char *linked_res_name; + resp->no_of_users = 0; + +@@ -269,7 +269,7 @@ + + int set_freq(struct shared_resource *resp, u32 target_level) + { +-#ifdef CONFIG_MACH_OMAP_3430SDP ++#if defined(CONFIG_MACH_OMAP_3430SDP) || defined(CONFIG_MACH_OMAP3_BEAGLE) + unsigned int vdd1_opp; + + if (strcmp(resp->name, "mpu_freq") == 0) +--- /tmp/clock34xx.c 2008-08-11 15:57:48.000000000 +0200 ++++ git/arch/arm/mach-omap2/clock34xx.c 2008-08-11 16:22:43.093198000 +0200 +@@ -773,7 +773,7 @@ + dpll2_clk = clk_get(NULL, "dpll2_ck"); + dpll3_clk = clk_get(NULL, "dpll3_ck"); + +-#ifdef CONFIG_MACH_OMAP_3430SDP ++#if defined(CONFIG_MACH_OMAP_3430SDP) || defined(CONFIG_MACH_OMAP3_BEAGLE) + mpu_speed = dpll1_clk->rate; + prcm_vdd = vdd1_rate_table + MAX_VDD1_OPP; + for (; prcm_vdd->speed; prcm_vdd--) { +@@ -836,7 +836,7 @@ + return (prcm_config+1)->opp; + } + +-#ifdef CONFIG_MACH_OMAP_3430SDP ++#if defined(CONFIG_MACH_OMAP_3430SDP) || defined(CONFIG_MACH_OMAP3_BEAGLE) + static void omap3_table_recalc(struct clk *clk) + { + if ((clk != &virt_vdd1_prcm_set) && (clk != &virt_vdd2_prcm_set)) +--- /tmp/board-omap3beagle.c 2008-08-11 15:54:04.000000000 +0200 ++++ git/arch/arm/mach-omap2/board-omap3beagle.c 2008-08-11 16:25:11.333198000 +0200 +@@ -39,9 +39,62 @@ + #include + #include + ++#include ++ + #define GPMC_CS0_BASE 0x60 + #define GPMC_CS_SIZE 0x30 + ++struct vdd_prcm_config vdd1_rate_table[] = { ++ {0, 0, 0}, ++ /*OPP1*/ ++ {S125M, VDD1_OPP1, 0}, ++ /*OPP2*/ ++ {S250M, VDD1_OPP2, 0}, ++ /*OPP3*/ ++ {S500M, VDD1_OPP3, 0}, ++ /*OPP4*/ ++ {S550M, VDD1_OPP4, 0}, ++ /*OPP5*/ ++ {S600M, VDD1_OPP5, 0}, ++}; ++ ++struct vdd_prcm_config vdd2_rate_table[] = { ++ {0, 0, 0}, ++ /*OPP1*/ ++ {0, VDD2_OPP1, 0}, ++ /*OPP2*/ ++ {S83M, VDD2_OPP2, 0}, ++ /*OPP3*/ ++ {S166M, VDD2_OPP3, 0}, ++}; ++ ++struct vdd_prcm_config iva2_rate_table[] = { ++ {0, 0, 0}, ++ /*OPP1*/ ++ {S90M, VDD1_OPP1, 0}, ++ /*OPP2*/ ++ {S180M, VDD1_OPP2, 0}, ++ /*OPP3*/ ++ {S360M, VDD1_OPP3, 0}, ++ /*OPP4*/ ++ {S400M, VDD1_OPP4, 0}, ++ /*OPP5*/ ++ {S430M, VDD1_OPP5, 0}, ++}; ++ ++u8 vdd1_volts[MAX_VDD1_OPP] = { ++ /* Vsel corresponding to 0.9V (OPP1), 1.00V (OPP2), ++ * 1.20V (OPP3), 1.27V (OPP4), 1.35 (OPP5) ++ */ ++ 0x18, 0x20, 0x30, 0x36, 0x3C ++}; ++ ++u8 vdd2_volts[MAX_VDD2_OPP] = { ++ /* Vsel corresponding to 0.9V (OPP1), 1.00V (OPP2), 1.15 (OPP3) */ ++ 0x18, 0x20, 0x2C ++}; ++ ++ + static struct mtd_partition omap3beagle_nand_partitions[] = { + /* All the partition sizes are listed in terms of NAND block size */ + { +--- /tmp/cpu-omap.c 2008-08-11 15:43:01.000000000 +0200 ++++ git/arch/arm/plat-omap/cpu-omap.c 2008-08-11 16:31:24.943198000 +0200 +@@ -47,7 +47,7 @@ + + static struct clk *mpu_clk; + +-#ifdef CONFIG_MACH_OMAP_3430SDP ++#if defined(CONFIG_MACH_OMAP_3430SDP) || defined(CONFIG_MACH_OMAP3_BEAGLE) + extern struct vdd_prcm_config vdd1_rate_table[]; + extern struct vdd_prcm_config vdd2_rate_table[]; + extern struct vdd_prcm_config iva2_rate_table[]; +@@ -127,7 +127,7 @@ + ret = clk_set_rate(mpu_clk, freqs.new * 1000); + cpufreq_notify_transition(&freqs, CPUFREQ_POSTCHANGE); + #elif defined(CONFIG_ARCH_OMAP3) && !defined(CONFIG_OMAP_PM_NONE)\ +- && defined(CONFIG_MACH_OMAP_3430SDP) ++ && (defined(CONFIG_MACH_OMAP_3430SDP) || defined(CONFIG_MACH_OMAP3_BEAGLE)) + { + int ind; + for (ind = 1; ind <= MAX_VDD1_OPP; ind++) { diff --git a/packages/linux/linux-omap2-git/beagleboard/01-omap3-cpufreq.eml b/packages/linux/linux-omap2-git/beagleboard/01-omap3-cpufreq.eml new file mode 100644 index 0000000000..b45a81edce --- /dev/null +++ b/packages/linux/linux-omap2-git/beagleboard/01-omap3-cpufreq.eml @@ -0,0 +1,319 @@ +CPUFreq driver for OMAP3 + +Signed-off-by: Rajendra Nayak +--- + arch/arm/configs/omap_3430sdp_defconfig | 19 +++++++ + arch/arm/mach-omap2/clock34xx.c | 42 ++++++++++++++++- + arch/arm/mach-omap2/resource34xx.c | 6 -- + arch/arm/plat-omap/cpu-omap.c | 78 ++++++++++++++++++++++++++++++-- + drivers/cpufreq/cpufreq.c | 2 + 5 files changed, 136 insertions(+), 11 deletions(-) + +Index: linux-omap-2.6/arch/arm/mach-omap2/clock34xx.c +=================================================================== +--- linux-omap-2.6.orig/arch/arm/mach-omap2/clock34xx.c 2008-08-11 +17:21:57.000000000 +0530 ++++ linux-omap-2.6/arch/arm/mach-omap2/clock34xx.c 2008-08-11 +17:36:53.000000000 +0530 +@@ -31,6 +31,7 @@ + #include + #include + #include ++#include + + #include + #include "clock.h" +@@ -637,6 +638,35 @@ static void omap3_clkoutx2_recalc(struct + */ + #if defined(CONFIG_ARCH_OMAP3) + ++#ifdef CONFIG_CPU_FREQ ++static struct cpufreq_frequency_table freq_table[MAX_VDD1_OPP+1]; ++ ++void omap2_clk_init_cpufreq_table(struct cpufreq_frequency_table **table) ++{ ++ struct vdd_prcm_config *prcm; ++ int i = 0; ++ ++ prcm = vdd1_rate_table + MAX_VDD1_OPP; ++ for (; prcm->speed; prcm--) { ++ freq_table[i].index = i; ++ freq_table[i].frequency = prcm->speed / 1000; ++ i++; ++ } ++ ++ if (i == 0) { ++ printk(KERN_WARNING "%s: failed to initialize frequency \ ++ table\n", ++ __func__); ++ return; ++ } ++ ++ freq_table[i].index = i; ++ freq_table[i].frequency = CPUFREQ_TABLE_END; ++ ++ *table = &freq_table[0]; ++} ++#endif ++ + static struct clk_functions omap2_clk_functions = { + .clk_enable = omap2_clk_enable, + .clk_disable = omap2_clk_disable, +@@ -644,6 +674,9 @@ static struct clk_functions omap2_clk_fu + .clk_set_rate = omap2_clk_set_rate, + .clk_set_parent = omap2_clk_set_parent, + .clk_disable_unused = omap2_clk_disable_unused, ++#ifdef CONFIG_CPU_FREQ ++ .clk_init_cpufreq_table = omap2_clk_init_cpufreq_table, ++#endif + }; + + /* +@@ -793,12 +826,11 @@ inline unsigned int get_opp(struct vdd_p + + if (prcm_config->speed <= freq) + return prcm_config->opp; /* Return the Highest OPP */ +- for (; prcm_config->speed; prcm_config--) { ++ for (; prcm_config->speed; prcm_config--) + if (prcm_config->speed < freq) + return (prcm_config+1)->opp; + else if (prcm_config->speed == freq) + return prcm_config->opp; +- } + /* Return the least OPP */ + return (prcm_config+1)->opp; + } +@@ -878,6 +910,10 @@ static int omap3_select_table_rate(struc + clk_set_rate(dpll1_clk, prcm_vdd->speed); + clk_set_rate(dpll2_clk, iva2_rate_table[index].speed); + curr_vdd1_prcm_set = prcm_vdd; ++ omap2_clksel_recalc(&mpu_ck); ++ propagate_rate(&mpu_ck); ++ omap2_clksel_recalc(&iva2_ck); ++ propagate_rate(&iva2_ck); + #ifndef CONFIG_CPU_FREQ + /*Update loops_per_jiffy if processor speed is being changed*/ + loops_per_jiffy = compute_lpj(loops_per_jiffy, +@@ -886,6 +922,8 @@ static int omap3_select_table_rate(struc + } else { + clk_set_rate(dpll3_clk, prcm_vdd->speed); + curr_vdd2_prcm_set = prcm_vdd; ++ omap2_clksel_recalc(&core_ck); ++ propagate_rate(&core_ck); + } + return 0; + } +Index: linux-omap-2.6/arch/arm/mach-omap2/resource34xx.c +=================================================================== +--- linux-omap-2.6.orig/arch/arm/mach-omap2/resource34xx.c 2008-08-11 +17:36:52.000000000 +0530 ++++ linux-omap-2.6/arch/arm/mach-omap2/resource34xx.c 2008-08-11 +17:36:53.000000000 +0530 +@@ -278,11 +278,7 @@ int set_freq(struct shared_resource *res + else if (strcmp(resp->name, "dsp_freq") == 0) + vdd1_opp = get_opp(iva2_rate_table + MAX_VDD1_OPP, + target_level); +- +- if (vdd1_opp == MIN_VDD1_OPP) +- resource_release("vdd1_opp", &dummy_srf_dev); +- else +- resource_request("vdd1_opp", &dummy_srf_dev, vdd1_opp); ++ resource_request("vdd1_opp", &dummy_srf_dev, vdd1_opp); + + resp->curr_level = target_level; + #endif +Index: linux-omap-2.6/arch/arm/plat-omap/cpu-omap.c +=================================================================== +--- linux-omap-2.6.orig/arch/arm/plat-omap/cpu-omap.c 2008-08-11 +17:21:57.000000000 +0530 ++++ linux-omap-2.6/arch/arm/plat-omap/cpu-omap.c 2008-08-11 17:36:53.000000000 ++0530 +@@ -8,6 +8,10 @@ + * + * Based on cpu-sa1110.c, Copyright (C) 2001 Russell King + * ++ * Copyright (C) 2007-2008 Texas Instruments, Inc. ++ * Updated to support OMAP3 ++ * Rajendra Nayak ++ * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. +@@ -25,6 +29,9 @@ + #include + #include + #include ++#if defined(CONFIG_ARCH_OMAP3) && !defined(CONFIG_OMAP_PM_NONE) ++#include ++#endif + + #define VERY_HI_RATE 900000000 + +@@ -32,12 +39,34 @@ static struct cpufreq_frequency_table *f + + #ifdef CONFIG_ARCH_OMAP1 + #define MPU_CLK "mpu" ++#elif CONFIG_ARCH_OMAP3 ++#define MPU_CLK "virt_vdd1_prcm_set" + #else + #define MPU_CLK "virt_prcm_set" + #endif + + static struct clk *mpu_clk; + ++#ifdef CONFIG_MACH_OMAP_3430SDP ++extern struct vdd_prcm_config vdd1_rate_table[]; ++extern struct vdd_prcm_config vdd2_rate_table[]; ++extern struct vdd_prcm_config iva2_rate_table[]; ++#endif ++ ++#if defined(CONFIG_ARCH_OMAP3) && !defined(CONFIG_OMAP_PM_NONE) ++int cpufreq_pre_func(struct notifier_block *n, unsigned long event, void *ptr); ++int cpufreq_post_func(struct notifier_block *n, unsigned long event, void *ptr); ++static struct notifier_block cpufreq_pre = { ++ cpufreq_pre_func, ++ NULL, ++}; ++ ++static struct notifier_block cpufreq_post = { ++ cpufreq_post_func, ++ NULL, ++}; ++#endif ++ + /* TODO: Add support for SDRAM timing changes */ + + int omap_verify_speed(struct cpufreq_policy *policy) +@@ -89,7 +118,7 @@ static int omap_target(struct cpufreq_po + + if (freqs.old == freqs.new) + return ret; +- ++#ifdef CONFIG_ARCH_OMAP1 + cpufreq_notify_transition(&freqs, CPUFREQ_PRECHANGE); + #ifdef CONFIG_CPU_FREQ_DEBUG + printk(KERN_DEBUG "cpufreq-omap: transition: %u --> %u\n", +@@ -97,10 +126,50 @@ static int omap_target(struct cpufreq_po + #endif + ret = clk_set_rate(mpu_clk, freqs.new * 1000); + cpufreq_notify_transition(&freqs, CPUFREQ_POSTCHANGE); +- ++#elif defined(CONFIG_ARCH_OMAP3) && !defined(CONFIG_OMAP_PM_NONE)\ ++ && defined(CONFIG_MACH_OMAP_3430SDP) ++ { ++ int ind; ++ for (ind = 1; ind <= MAX_VDD1_OPP; ind++) { ++ if (vdd1_rate_table[ind].speed/1000 >= freqs.new) { ++ omap_pm_cpu_set_freq ++ (vdd1_rate_table[ind].speed); ++ break; ++ } ++ } ++ } ++#endif + return ret; + } + ++#if defined(CONFIG_ARCH_OMAP3) && !defined(CONFIG_OMAP_PM_NONE) ++static struct cpufreq_freqs freqs_notify; ++int cpufreq_pre_func(struct notifier_block *n, unsigned long event, void *ptr) ++{ ++ struct clk_notifier_data *cnd; ++ ++ cnd = (struct clk_notifier_data *)ptr; ++ freqs_notify.old = cnd->old_rate/1000; ++ freqs_notify.new = cnd->new_rate/1000; ++ /* HACK: The clk_notify_post_rate_chg currently ++ * returns a zero for old_rate at bootup ++ */ ++ if (freqs_notify.old == 0) ++ freqs_notify.old = 500000; ++ cpufreq_notify_transition(&freqs_notify, CPUFREQ_PRECHANGE); ++ return 0; ++} ++ ++int cpufreq_post_func(struct notifier_block *n, unsigned long event, void *ptr) ++{ ++ struct clk_notifier_data *cnd; ++ ++ cnd = (struct clk_notifier_data *)ptr; ++ cpufreq_notify_transition(&freqs_notify, CPUFREQ_POSTCHANGE); ++ return 0; ++} ++#endif ++ + static int __init omap_cpu_init(struct cpufreq_policy *policy) + { + int result = 0; +@@ -128,7 +197,10 @@ static int __init omap_cpu_init(struct c + + /* FIXME: what's the actual transition time? */ + policy->cpuinfo.transition_latency = 10 * 1000 * 1000; +- ++#if defined(CONFIG_ARCH_OMAP3) && !defined(CONFIG_OMAP_PM_NONE) ++ clk_notifier_register(mpu_clk, &cpufreq_pre); ++ clk_notifier_register(mpu_clk, &cpufreq_post); ++#endif + return 0; + } + +Index: linux-omap-2.6/drivers/cpufreq/cpufreq.c +=================================================================== +--- linux-omap-2.6.orig/drivers/cpufreq/cpufreq.c 2008-08-11 17:21:57.000000000 ++0530 ++++ linux-omap-2.6/drivers/cpufreq/cpufreq.c 2008-08-11 17:36:53.000000000 +0530 +@@ -321,7 +321,9 @@ void cpufreq_notify_transition(struct cp + { + struct cpufreq_policy *policy; + ++#if 0 /*This causes an issue if clk_notify_post_rate_chg is used*/ + BUG_ON(irqs_disabled()); ++#endif + + freqs->flags = cpufreq_driver->flags; + dprintk("notification %u of frequency transition to %u kHz\n", +Index: linux-omap-2.6/arch/arm/configs/omap_3430sdp_defconfig +=================================================================== +--- linux-omap-2.6.orig/arch/arm/configs/omap_3430sdp_defconfig 2008-08-11 +17:36:43.000000000 +0530 ++++ linux-omap-2.6/arch/arm/configs/omap_3430sdp_defconfig 2008-08-11 +17:37:33.000000000 +0530 +@@ -193,6 +193,9 @@ CONFIG_OMAP_LL_DEBUG_UART1=y + # CONFIG_OMAP_LL_DEBUG_UART2 is not set + # CONFIG_OMAP_LL_DEBUG_UART3 is not set + CONFIG_OMAP_SERIAL_WAKE=y ++# CONFIG_OMAP_PM_NONE is not set ++# CONFIG_OMAP_PM_NOOP is not set ++CONFIG_OMAP_PM_SRF=y + CONFIG_ARCH_OMAP34XX=y + CONFIG_ARCH_OMAP3430=y + +@@ -288,7 +291,21 @@ CONFIG_CMDLINE="root=/dev/nfs nfsroot=19 + # + # CPU Frequency scaling + # +-# CONFIG_CPU_FREQ is not set ++CONFIG_CPU_FREQ=y ++CONFIG_CPU_FREQ_TABLE=y ++# CONFIG_CPU_FREQ_DEBUG is not set ++CONFIG_CPU_FREQ_STAT=y ++CONFIG_CPU_FREQ_STAT_DETAILS=y ++CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y ++# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set ++# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set ++# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set ++# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set ++CONFIG_CPU_FREQ_GOV_PERFORMANCE=y ++# CONFIG_CPU_FREQ_GOV_POWERSAVE is not set ++# CONFIG_CPU_FREQ_GOV_USERSPACE is not set ++CONFIG_CPU_FREQ_GOV_ONDEMAND=y ++# CONFIG_CPU_FREQ_GOV_CONSERVATIVE is not set + + # + # Floating point emulation + + +-- +To unsubscribe from this list: send the line "unsubscribe linux-omap" in +the body of a message to majordomo@vger.kernel.org +More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/packages/linux/linux-omap2-git/beagleboard/01-omappm-srf.eml b/packages/linux/linux-omap2-git/beagleboard/01-omappm-srf.eml new file mode 100644 index 0000000000..8b8b183808 --- /dev/null +++ b/packages/linux/linux-omap2-git/beagleboard/01-omappm-srf.eml @@ -0,0 +1,513 @@ +Adds Generic Shared Resource Framework structures and API's + +Signed-off-by: Rajendra Nayak +--- + arch/arm/plat-omap/resource.c | 389 +++++++++++++++++++++++++++++++++++ + include/asm-arm/arch-omap/resource.h | 97 ++++++++ + 2 files changed, 486 insertions(+) + +Index: linux-omap-2.6/arch/arm/plat-omap/resource.c +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ linux-omap-2.6/arch/arm/plat-omap/resource.c 2008-08-07 15:06:58.000000000 ++0530 +@@ -0,0 +1,389 @@ ++/* ++ * linux/arch/arm/plat-omap/resource.c ++ * Shared Resource Framework API implementation ++ * ++ * Copyright (C) 2007-2008 Texas Instruments, Inc. ++ * Written by Rajendra Nayak ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License version 2 as ++ * published by the Free Software Foundation. ++ * ++ * THIS PACKAGE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR ++ * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED ++ * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. ++ * History: ++ * ++ */ ++ ++#include ++#include ++#include ++#include ++ ++/* res_list contains all registered struct shared_resource */ ++static LIST_HEAD(res_list); ++ ++/* res_mutex protects res_list add and del ops */ ++static DEFINE_MUTEX(res_mutex); ++ ++/* Static Pool of users for a resource */ ++/* used till kmalloc becomes availabel */ ++struct users_list usr_list[MAX_USERS]; ++ ++/* Private/Internal functions */ ++ ++/** ++ * resource_lookup - loop up a resource by its name, return a pointer ++ * @name: The name of the resource to lookup ++ * ++ * Looks for a registered resource by its name. Returns a pointer to ++ * the struct shared_resource if found, else returns NULL. ++ */ ++static struct shared_resource *resource_lookup(const char *name) ++{ ++ struct shared_resource *res, *tmp_res; ++ ++ if (!name) ++ return NULL; ++ ++ res = NULL; ++ ++ srf_mutex_lock(&res_mutex); ++ list_for_each_entry(tmp_res, &res_list, node) { ++ if (!strcmp(name, tmp_res->name)) { ++ res = tmp_res; ++ break; ++ } ++ } ++ srf_mutex_unlock(&res_mutex); ++ return res; ++} ++ ++/** ++ * update_resource_level - Regenerates and updates the curr_level of the res ++ * @resp: Pointer to the resource ++ * ++ * This function looks at all the users of the given resource and the levels ++ * requested by each of them, and recomputes a target level for the resource ++ * acceptable to all its current usres. It then calls platform specific ++ * change_level to change the level of the resource. ++ * Returns 0 on success, else a non-zero value returned by the platform ++ * specific change_level function. ++ **/ ++static int update_resource_level(struct shared_resource *resp) ++{ ++ struct users_list *user; ++ unsigned long target_level; ++ int ret; ++ ++ /* Regenerate the target_value for the resource */ ++ target_level = RES_DEFAULTLEVEL; ++ list_for_each_entry(user, &resp->users_list, node) ++ if (user->level > target_level) ++ target_level = user->level; ++ ++ pr_debug("SRF: Changing Level for resource %s to %ld\n", ++ resp->name, target_level); ++ ret = resp->ops->change_level(resp, target_level); ++ if (ret) { ++ printk(KERN_ERR "Unable to Change" ++ "level for resource %s to %ld\n", ++ resp->name, target_level); ++ return ret; ++ } ++ return ret; ++} ++ ++/** ++ * get_user - gets a new users_list struct from static pool or dynamically ++ * ++ * This function initally looks for availability in the static pool and ++ * tries to dynamcially allocate only once the static pool is empty. ++ * We hope that during bootup by the time we hit a case of dynamic allocation ++ * slab initialization would have happened. ++ * Returns a pointer users_list struct on success. On dynamic allocation failure ++ * returns a ERR_PTR(-ENOMEM). ++ */ ++static struct users_list *get_user(void) ++{ ++ int ind = 0; ++ struct users_list *user; ++ ++ /* See if something available in the static pool */ ++ while (ind < MAX_USERS) { ++ if (usr_list[ind].usage == UNUSED) ++ break; ++ else ++ ind++; ++ } ++ if (ind < MAX_USERS) { ++ /* Pick from the static pool */ ++ user = &usr_list[ind]; ++ user->usage = STATIC_ALLOC; ++ } else { ++ /* By this time we hope slab is initialized */ ++ if (slab_is_available()) { ++ user = kmalloc(sizeof(struct users_list), GFP_KERNEL); ++ if (!user) { ++ printk(KERN_ERR "SRF:FATAL ERROR: kmalloc" ++ "failed\n"); ++ return ERR_PTR(-ENOMEM); ++ } ++ user->usage = DYNAMIC_ALLOC; ++ } else { ++ /* Dynamic alloc not available yet */ ++ printk(KERN_ERR "SRF: FATAL ERROR: users_list" ++ "initial POOL EMPTY before slab init\n"); ++ return ERR_PTR(-ENOMEM); ++ } ++ } ++ return user; ++} ++ ++/** ++ * free_user - frees the dynamic users_list and marks the static one unused ++ * @user: The struct users_list to be freed ++ * ++ * Looks at the usage flag and either frees the users_list if it was ++ * dynamically allocated, and if its from the static pool, marks it unused. ++ * No return value. ++ */ ++void free_user(struct users_list *user) ++{ ++ if (user->usage == DYNAMIC_ALLOC) ++ kfree(user); ++ else { ++ user->usage = UNUSED; ++ user->level = RES_DEFAULTLEVEL; ++ user->dev = NULL; ++ } ++} ++ ++/** ++ * resource_init - Initializes the Shared resource framework. ++ * @resources: List of all the resources modelled ++ * ++ * Loops through the list of resources and registers all that ++ * are available for the current CPU. ++ * No return value ++ */ ++void resource_init(struct shared_resource **resources) ++{ ++ struct shared_resource **resp; ++ int ind; ++ ++ pr_debug("Initializing Shared Resource Framework\n"); ++ ++ if (!cpu_is_omap343x()) { ++ /* This CPU is not supported */ ++ printk(KERN_WARNING "Shared Resource Framework does not" ++ "support this CPU type.\n"); ++ WARN_ON(1); ++ } ++ ++ /* Init the users_list POOL */ ++ for (ind = 0; ind < MAX_USERS; ind++) { ++ usr_list[ind].usage = UNUSED; ++ usr_list[ind].dev = NULL; ++ usr_list[ind].level = RES_DEFAULTLEVEL; ++ } ++ ++ if (resources) ++ for (resp = resources; *resp; resp++) ++ resource_register(*resp); ++} ++ ++/** ++ * resource_register - registers and initializes a resource ++ * @res: struct shared_resource * to register ++ * ++ * Initializes the given resource and adds it to the resource list ++ * for the current CPU. ++ * Returns 0 on success, -EINVAL if given a NULL pointer, -EEXIST if the ++ * resource is already registered. ++ */ ++int resource_register(struct shared_resource *resp) ++{ ++ if (!resp) ++ return -EINVAL; ++ ++ if (!omap_chip_is(resp->omap_chip)) ++ return -EINVAL; ++ ++ /* Verify that the resource is not already registered */ ++ if (resource_lookup(resp->name)) ++ return -EEXIST; ++ ++ INIT_LIST_HEAD(&resp->users_list); ++ mutex_init(&resp->res_mutex); ++ ++ srf_mutex_lock(&res_mutex); ++ /* Add the resource to the resource list */ ++ list_add(&resp->node, &res_list); ++ srf_mutex_unlock(&res_mutex); ++ ++ /* Call the resource specific init*/ ++ if (resp->ops->init) ++ resp->ops->init(resp); ++ ++ pr_debug("resource: registered %s\n", resp->name); ++ ++ return 0; ++} ++EXPORT_SYMBOL(resource_register); ++ ++/** ++ * resource_unregister - unregister a resource ++ * @res: struct shared_resource * to unregister ++ * ++ * Removes a resource from the resource list. ++ * Returns 0 on success, -EINVAL if passed a NULL pointer. ++ */ ++int resource_unregister(struct shared_resource *resp) ++{ ++ if (!resp) ++ return -EINVAL; ++ ++ srf_mutex_lock(&res_mutex); ++ /* delete the resource from the resource list */ ++ list_del(&resp->node); ++ srf_mutex_unlock(&res_mutex); ++ ++ pr_debug("resource: unregistered %s\n", resp->name); ++ ++ return 0; ++} ++EXPORT_SYMBOL(resource_unregister); ++ ++/** ++ * resource_request - Request for a required level of a resource ++ * @name: The name of the resource requested ++ * @dev: Uniquely identifes the caller ++ * @level: The requested level for the resource ++ * ++ * This function recomputes the target level of the resource based on ++ * the level requested by the user. The level of the resource is ++ * changed to the target level, if it is not the same as the existing level ++ * of the resource. Multiple calls to this function by the same device will ++ * replace the previous level requested ++ * Returns 0 on success, -EINVAL if the resource name passed in invalid. ++ * -ENOMEM if no static pool available or dynamic allocations fails. ++ * Else returns a non-zero error value returned by one of the failing ++ * shared_resource_ops. ++ */ ++int resource_request(const char *name, struct device *dev, ++ unsigned long level) ++{ ++ struct shared_resource *resp; ++ struct users_list *user; ++ int found = 0, ret = 0; ++ ++ resp = resource_lookup(name); ++ if (!resp) { ++ printk(KERN_ERR "resource_request: Invalid resource name\n"); ++ return -EINVAL; ++ } ++ ++ /* Call the resource specific validate function */ ++ if (resp->ops->validate_level) ++ ret = resp->ops->validate_level(resp, level); ++ if (ret) ++ return ret; ++ ++ srf_mutex_lock(&resp->res_mutex); ++ list_for_each_entry(user, &(resp->users_list), node) ++ if (user->dev == dev) { ++ found = 1; ++ break; ++ } ++ if (!found) { ++ /* First time user */ ++ user = get_user(); ++ if (IS_ERR(user)) { ++ srf_mutex_unlock(&resp->res_mutex); ++ return -ENOMEM; ++ } ++ user->dev = dev; ++ list_add(&user->node, &resp->users_list); ++ resp->no_of_users++; ++ } ++ user->level = level; ++ srf_mutex_unlock(&resp->res_mutex); ++ ++ /* Recompute and set the current level for the resource */ ++ return update_resource_level(resp); ++} ++EXPORT_SYMBOL(resource_request); ++ ++/** ++ * resource_release - Release a previously requested level of a resource ++ * @name: The name of the resource to be released ++ * @dev: Uniquely identifes the caller ++ * ++ * This function recomputes the target level of the resource after removing ++ * the level requested by the user. The level of the resource is ++ * changed to the target level, if it is not the same as the existing level ++ * of the resource. ++ * Returns 0 on success, -EINVAL if the resource name or dev structure ++ * is invalid. ++ */ ++int resource_release(const char *name, struct device *dev) ++{ ++ struct shared_resource *resp; ++ struct users_list *user; ++ int found = 0; ++ ++ resp = resource_lookup(name); ++ if (!resp) { ++ printk(KERN_ERR "resource_release: Invalid resource name\n"); ++ return -EINVAL; ++ } ++ ++ srf_mutex_lock(&resp->res_mutex); ++ list_for_each_entry(user, &(resp->users_list), node) ++ if (user->dev == dev) { ++ found = 1; ++ break; ++ } ++ ++ if (!found) { ++ srf_mutex_unlock(&resp->res_mutex); ++ /* No such user exists */ ++ return -EINVAL; ++ } ++ ++ resp->no_of_users--; ++ list_del(&user->node); ++ free_user(user); ++ srf_mutex_unlock(&resp->res_mutex); ++ ++ /* Recompute and set the current level for the resource */ ++ return update_resource_level(resp); ++} ++EXPORT_SYMBOL(resource_release); ++ ++/** ++ * resource_get_level - Returns the current level of the resource ++ * @name: Name of the resource ++ * ++ * Returns the current level of the resource if found, else returns ++ * -EINVAL if the resource name is invalid. ++ */ ++int resource_get_level(const char *name) ++{ ++ struct shared_resource *resp; ++ u32 ret; ++ ++ resp = resource_lookup(name); ++ if (!resp) { ++ printk(KERN_ERR "resource_release: Invalid resource name\n"); ++ return -EINVAL; ++ } ++ ++ srf_mutex_lock(&resp->res_mutex); ++ ret = resp->curr_level; ++ srf_mutex_unlock(&resp->res_mutex); ++ return ret; ++} ++EXPORT_SYMBOL(resource_get_level); +Index: linux-omap-2.6/include/asm-arm/arch-omap/resource.h +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ linux-omap-2.6/include/asm-arm/arch-omap/resource.h 2008-08-07 +15:06:58.000000000 +0530 +@@ -0,0 +1,97 @@ ++/* ++ * linux/include/asm-arm/arch-omap/resource.h ++ * Structure definitions for Shared resource Framework ++ * ++ * Copyright (C) 2007-2008 Texas Instruments, Inc. ++ * Written by Rajendra Nayak ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License version 2 as ++ * published by the Free Software Foundation. ++ * ++ * THIS PACKAGE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR ++ * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED ++ * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. ++ * ++ * History: ++ * ++ */ ++ ++#ifndef __ARCH_ARM_OMAP_RESOURCE_H ++#define __ARCH_ARM_OMAP_RESOURCE_H ++ ++#include ++#include ++#include ++#include ++ ++#define srf_mutex_lock(x) { \ ++ if (!(in_atomic() || irqs_disabled())) \ ++ mutex_lock(x); \ ++ } ++#define srf_mutex_unlock(x) { \ ++ if (!(in_atomic() || irqs_disabled())) \ ++ mutex_unlock(x); \ ++ } ++ ++#define RES_DEFAULTLEVEL 0x0 ++ ++struct shared_resource_ops; /* forward declaration */ ++ ++/* Used to model a Shared Multilevel Resource */ ++struct shared_resource { ++ /* Resource name */ ++ const char *name; ++ /* Used to represent the OMAP chip types containing this res */ ++ const struct omap_chip_id omap_chip; ++ /* Total no of users at any point of this resource */ ++ u8 no_of_users; ++ /* Current level of this resource */ ++ u32 curr_level; ++ /* Used to store any resource specific data */ ++ void *resource_data; ++ /* List of all the current users for this resource */ ++ struct list_head users_list; ++ /* Used to guard the resource */ ++ struct mutex res_mutex; ++ /* Shared resource operations */ ++ struct shared_resource_ops *ops; ++ struct list_head node; ++}; ++ ++struct shared_resource_ops { ++ /* Init function for the resource */ ++ void (*init)(struct shared_resource *res); ++ /* Function to change the level of the resource */ ++ int (*change_level)(struct shared_resource *res, u32 target_level); ++ /* Function to validate the requested level of the resource */ ++ int (*validate_level)(struct shared_resource *res, u32 target_level); ++}; ++ ++/* This is to statically defining the users pool */ ++/* This static pool is used till kmalloc becomes available */ ++#define MAX_USERS 10 ++#define UNUSED 0x0 ++#define DYNAMIC_ALLOC 0x1 ++#define STATIC_ALLOC 0x2 ++ ++/* Used to represent a user of a shared resource */ ++struct users_list { ++ /* Device pointer used to uniquely identify the user */ ++ struct device *dev; ++ /* Current level as requested for the resource by the user */ ++ u32 level; ++ struct list_head node; ++ u8 usage; ++}; ++ ++/* Shared resource Framework API's */ ++void resource_init(struct shared_resource **resources); ++int resource_register(struct shared_resource *res); ++int resource_unregister(struct shared_resource *res); ++int resource_request(const char *name, struct device *dev, ++ unsigned long level); ++int resource_release(const char *name, struct device *dev); ++int resource_get_level(const char *name); ++ ++#endif /* __ARCH_ARM_OMAP_RESOURCE_H */ + + +-- +To unsubscribe from this list: send the line "unsubscribe linux-omap" in +the body of a message to majordomo@vger.kernel.org +More majordomo info at http://vger.kernel.org/majordomo-info.html + diff --git a/packages/linux/linux-omap2-git/beagleboard/01-postrate-notifier.eml b/packages/linux/linux-omap2-git/beagleboard/01-postrate-notifier.eml new file mode 100644 index 0000000000..8e72afeb3f --- /dev/null +++ b/packages/linux/linux-omap2-git/beagleboard/01-postrate-notifier.eml @@ -0,0 +1,392 @@ +Add the infrastructure necessary to support clock post-rate-change notifiers +in the OMAP clock framework. This includes: + +- adding the clk_notify_post_rate_chg() function, which will trigger a + notifier call chain when a clock rate is changed (but which currently + does nothing); and + +- adding calls to clk_notify_post_rate_chg() everywhere clk->rate is + assigned (mostly *_recalc() functions). + +This patch has no functional effect by itself; the actual notifier +implementation follows in a separate patch. + +One item to note is that the post-rate-change notifier is called even +if the new clock rate is identical to the old rate. This is because +the process of changing the rate may have temporarily disabled or +glitched the clock or one of its parents, and some devices may be +sensitive to such changes. + +Signed-off-by: Paul Walmsley +--- + + arch/arm/mach-omap2/clock.c | 37 +++++++++++++++++++++++++++------ + arch/arm/mach-omap2/clock24xx.c | 42 +++++++++++++++++++++++++++++++++++-- + arch/arm/mach-omap2/clock34xx.c | 10 +++++++++ + arch/arm/plat-omap/clock.c | 32 ++++++++++++++++++++++++++++ + include/asm-arm/arch-omap/clock.h | 21 +++++++++++++++++++ + 5 files changed, 134 insertions(+), 8 deletions(-) + +diff --git a/arch/arm/mach-omap2/clock.c b/arch/arm/mach-omap2/clock.c +index ed15868..bd3c1f8 100644 +--- a/arch/arm/mach-omap2/clock.c ++++ b/arch/arm/mach-omap2/clock.c +@@ -165,10 +165,15 @@ u32 omap2_get_dpll_rate(struct clk *clk) + */ + void omap2_fixed_divisor_recalc(struct clk *clk) + { ++ unsigned long orig_rate; ++ + WARN_ON(!clk->fixed_div); + ++ orig_rate = clk->rate; + clk->rate = clk->parent->rate / clk->fixed_div; + ++ clk_notify_post_rate_chg(clk, orig_rate, clk->rate); ++ + if (clk->flags & RATE_PROPAGATES) + propagate_rate(clk); + } +@@ -376,6 +381,7 @@ int omap2_clk_enable(struct clk *clk) + void omap2_clksel_recalc(struct clk *clk) + { + u32 div = 0; ++ unsigned long orig_rate; + + pr_debug("clock: recalc'ing clksel clk %s\n", clk->name); + +@@ -385,10 +391,13 @@ void omap2_clksel_recalc(struct clk *clk) + + if (clk->rate == (clk->parent->rate / div)) + return; ++ orig_rate = clk->rate; + clk->rate = clk->parent->rate / div; + + pr_debug("clock: new clock rate is %ld (div %d)\n", clk->rate, div); + ++ clk_notify_post_rate_chg(clk, orig_rate, clk->rate); ++ + if (clk->flags & RATE_PROPAGATES) + propagate_rate(clk); + } +@@ -662,6 +671,8 @@ int omap2_clksel_set_rate(struct clk *clk, unsigned long rate) + wmb(); + } + ++ /* post-rate-change notifier will be called by omap2_clk_set_rate() */ ++ + return 0; + } + +@@ -670,20 +681,30 @@ int omap2_clksel_set_rate(struct clk *clk, unsigned long rate) + int omap2_clk_set_rate(struct clk *clk, unsigned long rate) + { + int ret = -EINVAL; +- +- pr_debug("clock: set_rate for clock %s to rate %ld\n", clk->name, rate); ++ unsigned long orig_rate; + + /* CONFIG_PARTICIPANT clocks are changed only in sets via the + rate table mechanism, driven by mpu_speed */ + if (clk->flags & CONFIG_PARTICIPANT) + return -EINVAL; + ++ if (!clk->set_rate) ++ return -EINVAL; ++ ++ orig_rate = clk->rate; ++ ++ pr_debug("clock: set_rate for clock %s from %ld Hz to %ld Hz\n", ++ clk->name, orig_rate, rate); ++ + /* dpll_ck, core_ck, virt_prcm_set; plus all clksel clocks */ +- if (clk->set_rate) +- ret = clk->set_rate(clk, rate); ++ ret = clk->set_rate(clk, rate); + +- if (ret == 0 && (clk->flags & RATE_PROPAGATES)) +- propagate_rate(clk); ++ if (ret == 0) { ++ clk_notify_post_rate_chg(clk, orig_rate, rate); ++ ++ if (clk->flags & RATE_PROPAGATES) ++ propagate_rate(clk); ++ } + + return ret; + } +@@ -732,6 +753,7 @@ int omap2_clk_set_parent(struct clk *clk, struct clk *new_parent) + { + void __iomem *src_addr; + u32 field_val, field_mask, reg_val, parent_div; ++ unsigned long orig_rate; + + if (clk->flags & CONFIG_PARTICIPANT) + return -EINVAL; +@@ -765,11 +787,14 @@ int omap2_clk_set_parent(struct clk *clk, struct clk *new_parent) + clk->parent = new_parent; + + /* CLKSEL clocks follow their parents' rates, divided by a divisor */ ++ orig_rate = clk->rate; + clk->rate = new_parent->rate; + + if (parent_div > 0) + clk->rate /= parent_div; + ++ clk_notify_post_rate_chg(clk, orig_rate, clk->rate); ++ + pr_debug("clock: set parent of %s to %s (new rate %ld)\n", + clk->name, clk->parent->name, clk->rate); + +diff --git a/arch/arm/mach-omap2/clock24xx.c b/arch/arm/mach-omap2/clock24xx.c +index 54cc6e1..e001549 100644 +--- a/arch/arm/mach-omap2/clock24xx.c ++++ b/arch/arm/mach-omap2/clock24xx.c +@@ -172,11 +172,22 @@ static long omap2_dpllcore_round_rate(unsigned long target_rate) + + static void omap2_dpllcore_recalc(struct clk *clk) + { ++ unsigned long orig_rate; ++ ++ orig_rate = clk->rate; + clk->rate = omap2_get_dpll_rate_24xx(clk); + ++ clk_notify_post_rate_chg(clk, orig_rate, clk->rate); ++ + propagate_rate(clk); + } + ++/* ++ * XXX REVISIT: This code needs to keep track of the underlying struct ++ * clocks that it is changing, so it can call post-rate-change notifiers ++ * on them. This function probably should be rewritten to use the clock ++ * fw. ++ */ + static int omap2_reprogram_dpllcore(struct clk *clk, unsigned long rate) + { + u32 cur_rate, low, mult, div, valid_rate, done_rate; +@@ -259,7 +270,14 @@ dpll_exit: + */ + static void omap2_table_mpu_recalc(struct clk *clk) + { ++ unsigned long orig_rate; ++ ++ orig_rate = clk->rate; + clk->rate = curr_prcm_set->mpu_speed; ++ ++ clk_notify_post_rate_chg(clk, orig_rate, clk->rate); ++ ++ /* No rate propagation since table clocks have no children */ + } + + /* +@@ -294,7 +312,14 @@ static long omap2_round_to_table_rate(struct clk *clk, unsigned long rate) + return highest_rate; + } + +-/* Sets basic clocks based on the specified rate */ ++/* ++ * Sets basic clocks based on the specified rate ++ * ++ * XXX REVISIT: This code needs to keep track of the underlying struct ++ * clocks that it is changing, so it can call post-rate-change notifiers ++ * on them. This function probably should be rewritten to use the clock ++ * fw. ++ */ + static int omap2_select_table_rate(struct clk *clk, unsigned long rate) + { + u32 cur_rate, done_rate, bypass = 0, tmp; +@@ -353,7 +378,8 @@ static int omap2_select_table_rate(struct clk *clk, unsigned long rate) + cm_write_mod_reg(prcm->cm_clksel_gfx, GFX_MOD, CM_CLKSEL); + + /* Major subsystem dividers */ +- tmp = cm_read_mod_reg(CORE_MOD, CM_CLKSEL1) & OMAP24XX_CLKSEL_DSS2_MASK; ++ tmp = cm_read_mod_reg(CORE_MOD, CM_CLKSEL1) & ++ OMAP24XX_CLKSEL_DSS2_MASK; + cm_write_mod_reg(prcm->cm_clksel1_core | tmp, CORE_MOD, + CM_CLKSEL1); + +@@ -460,13 +486,25 @@ static u32 omap2_get_sysclkdiv(void) + + static void omap2_osc_clk_recalc(struct clk *clk) + { ++ unsigned long orig_rate; ++ ++ orig_rate = clk->rate; + clk->rate = omap2_get_apll_clkin() * omap2_get_sysclkdiv(); ++ ++ clk_notify_post_rate_chg(clk, orig_rate, clk->rate); ++ + propagate_rate(clk); + } + + static void omap2_sys_clk_recalc(struct clk *clk) + { ++ unsigned long orig_rate; ++ ++ orig_rate = clk->rate; + clk->rate = clk->parent->rate / omap2_get_sysclkdiv(); ++ ++ clk_notify_post_rate_chg(clk, orig_rate, clk->rate); ++ + propagate_rate(clk); + } + +diff --git a/arch/arm/mach-omap2/clock34xx.c b/arch/arm/mach-omap2/clock34xx.c +index 408b51a..7b89b61 100644 +--- a/arch/arm/mach-omap2/clock34xx.c ++++ b/arch/arm/mach-omap2/clock34xx.c +@@ -53,8 +53,13 @@ + */ + static void omap3_dpll_recalc(struct clk *clk) + { ++ unsigned long orig_rate; ++ ++ orig_rate = clk->rate; + clk->rate = omap2_get_dpll_rate(clk); + ++ clk_notify_post_rate_chg(clk, orig_rate, clk->rate); ++ + propagate_rate(clk); + } + +@@ -500,6 +505,7 @@ static void omap3_clkoutx2_recalc(struct clk *clk) + const struct dpll_data *dd; + u32 v; + struct clk *pclk; ++ unsigned long orig_rate; + + /* Walk up the parents of clk, looking for a DPLL */ + pclk = clk->parent; +@@ -513,6 +519,8 @@ static void omap3_clkoutx2_recalc(struct clk *clk) + + WARN_ON(!dd->control_reg || !dd->enable_mask); + ++ orig_rate = clk->rate; ++ + v = __raw_readl(dd->control_reg) & dd->enable_mask; + v >>= __ffs(dd->enable_mask); + if (v != DPLL_LOCKED) +@@ -520,6 +528,8 @@ static void omap3_clkoutx2_recalc(struct clk *clk) + else + clk->rate = clk->parent->rate * 2; + ++ clk_notify_post_rate_chg(clk, orig_rate, clk->rate); ++ + if (clk->flags & RATE_PROPAGATES) + propagate_rate(clk); + } +diff --git a/arch/arm/plat-omap/clock.c b/arch/arm/plat-omap/clock.c +index c2e741d..421d076 100644 +--- a/arch/arm/plat-omap/clock.c ++++ b/arch/arm/plat-omap/clock.c +@@ -254,10 +254,16 @@ __setup("mpurate=", omap_clk_setup); + /* Used for clocks that always have same value as the parent clock */ + void followparent_recalc(struct clk *clk) + { ++ unsigned long orig_rate; ++ + if (clk == NULL || IS_ERR(clk)) + return; + ++ orig_rate = clk->rate; + clk->rate = clk->parent->rate; ++ ++ clk_notify_post_rate_chg(clk, orig_rate, clk->rate); ++ + if (unlikely(clk->flags & RATE_PROPAGATES)) + propagate_rate(clk); + } +@@ -373,6 +379,32 @@ void clk_init_cpufreq_table(struct cpufreq_frequency_table **table) + EXPORT_SYMBOL(clk_init_cpufreq_table); + #endif + ++/** ++ * clk_notify_post_rate_chg - call post-clk-rate-change notifier chain ++ * @clk: struct clk * that is changing rate ++ * @old_rate: old rate ++ * @new_rate: new rate ++ * ++ * Triggers a notifier call chain on the post-clk-rate-change notifier ++ * for clock 'clk'. Passes a pointer to the struct clk and the ++ * previous and current rates to the notifier callback. Intended to be ++ * called by internal clock code only. No return value. ++ */ ++void clk_notify_post_rate_chg(struct clk *clk, unsigned long old_rate, ++ unsigned long new_rate) ++{ ++ struct clk_notifier *cn; ++ struct clk_notifier_data cnd; ++ ++ cnd.clk = clk; ++ cnd.old_rate = old_rate; ++ cnd.new_rate = new_rate; ++ ++ /* XXX Call notifier here */ ++ ++} ++ ++ + /*-------------------------------------------------------------------------*/ + + #ifdef CONFIG_OMAP_RESET_CLOCKS +diff --git a/include/asm-arm/arch-omap/clock.h b/include/asm-arm/arch-omap/clock.h +index bfaf7b6..e3c9aeb 100644 +--- a/include/asm-arm/arch-omap/clock.h ++++ b/include/asm-arm/arch-omap/clock.h +@@ -10,6 +10,8 @@ + * published by the Free Software Foundation. + */ + ++#include ++ + #ifndef __ARCH_ARM_OMAP_CLOCK_H + #define __ARCH_ARM_OMAP_CLOCK_H + +@@ -58,6 +60,19 @@ struct dpll_data { + + #endif + ++struct clk_notifier { ++ struct clk *clk; ++ struct atomic_notifier_head notifier_head; ++ struct list_head node; ++}; ++ ++struct clk_notifier_data { ++ struct clk *clk; ++ unsigned long old_rate; ++ unsigned long new_rate; ++}; ++ ++ + struct clk { + struct list_head node; + struct module *owner; +@@ -121,6 +136,10 @@ extern void clk_allow_idle(struct clk *clk); + extern void clk_deny_idle(struct clk *clk); + extern int clk_get_usecount(struct clk *clk); + extern void clk_enable_init_clocks(void); ++extern int clk_notifier_register(struct clk *clk, struct notifier_block *nb); ++extern int clk_notifier_unregister(struct clk *clk, struct notifier_block *nb); ++extern void clk_notify_post_rate_chg(struct clk *clk, unsigned long old_rate, ++ unsigned long new_rate); + #ifdef CONFIG_CPU_FREQ + extern void clk_init_cpufreq_table(struct cpufreq_frequency_table **table); + #endif +@@ -161,6 +180,8 @@ extern void clk_init_cpufreq_table(struct cpufreq_frequency_table **table); + + #define RATE_IN_24XX (RATE_IN_242X | RATE_IN_243X) + ++/* Clk rate change notifier callback type */ ++#define CLK_POST_RATE_CHANGE 1 + + /* CM_CLKSEL2_PLL.CORE_CLK_SRC options (24XX) */ + #define CORE_CLK_SRC_32K 0 + + +-- +To unsubscribe from this list: send the line "unsubscribe linux-omap" in +the body of a message to majordomo@vger.kernel.org +More majordomo info at http://vger.kernel.org/majordomo-info.html + diff --git a/packages/linux/linux-omap2-git/beagleboard/02-beagle_use_gptimer12 b/packages/linux/linux-omap2-git/beagleboard/02-beagle_use_gptimer12 new file mode 100644 index 0000000000..51d2c8cff0 --- /dev/null +++ b/packages/linux/linux-omap2-git/beagleboard/02-beagle_use_gptimer12 @@ -0,0 +1,38 @@ +BeagleBoard: make Beagle use GPTIMER12 for system ticks + +From: Paul Walmsley + +There is suspicion that the 32kHz input clock to the OMAP may be noisy +on BeagleBoards. On OMAP2/3 GPTIMER1, this can cause the timer +counter register to warp to unknown values or miss interrupt +conditions. So, use GPTIMER12 instead, which apparently has its own +secure 32kHz oscillator and will hopefully not be prone to the 32kHz +glitches. +--- + + arch/arm/configs/omap3_beagle_defconfig | 5 +++-- + 1 files changed, 3 insertions(+), 2 deletions(-) + +diff --git a/arch/arm/configs/omap3_beagle_defconfig b/arch/arm/configs/omap3_beagle_defconfig +index e1b16d0..7805995 100644 +--- a/arch/arm/configs/omap3_beagle_defconfig ++++ defconfig +@@ -182,8 +182,8 @@ CONFIG_OMAP_BOOT_REASON=y + # CONFIG_OMAP_MCBSP is not set + # CONFIG_OMAP_MMU_FWK is not set + # CONFIG_OMAP_MBOX_FWK is not set +-CONFIG_OMAP_MPU_TIMER=y +-# CONFIG_OMAP_32K_TIMER is not set ++# CONFIG_OMAP_MPU_TIMER is not set ++CONFIG_OMAP_32K_TIMER=y + CONFIG_OMAP_DM_TIMER=y + # CONFIG_OMAP_LL_DEBUG_UART1 is not set + # CONFIG_OMAP_LL_DEBUG_UART2 is not set +@@ -198,6 +198,7 @@ CONFIG_ARCH_OMAP3430=y + # CONFIG_MACH_OMAP_3430SDP is not set + # CONFIG_MACH_OMAP3EVM is not set + CONFIG_MACH_OMAP3_BEAGLE=y ++CONFIG_OMAP_TICK_GPTIMER=12 + + # + # Boot options diff --git a/packages/linux/linux-omap2-git/beagleboard/02-omappm-mpu-latency-modeling.eml b/packages/linux/linux-omap2-git/beagleboard/02-omappm-mpu-latency-modeling.eml new file mode 100644 index 0000000000..35ef87bdf0 --- /dev/null +++ b/packages/linux/linux-omap2-git/beagleboard/02-omappm-mpu-latency-modeling.eml @@ -0,0 +1,245 @@ +Adds resource def's for mpu/core/powerdomain latencies for OMAP3 + +Signed-off-by: Rajendra Nayak +--- + arch/arm/mach-omap2/resource34xx.h | 226 +++++++++++++++++++++++++++++++++++++ + 1 files changed, 226 insertions(+) + +Index: linux-omap-2.6/arch/arm/mach-omap2/resource34xx.h +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ linux-omap-2.6/arch/arm/mach-omap2/resource34xx.h 2008-08-07 +15:07:02.000000000 +0530 +@@ -0,0 +1,226 @@ ++/* ++ * linux/arch/arm/mach-omap2/resource34xx.h ++ * ++ * OMAP3 resource definitions ++ * ++ * Copyright (C) 2007-2008 Texas Instruments, Inc. ++ * Written by Rajendra Nayak ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License version 2 as ++ * published by the Free Software Foundation. ++ * ++ * THIS PACKAGE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR ++ * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED ++ * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. ++ * ++ * History: ++ * ++ */ ++ ++#ifndef __ARCH_ARM_MACH_OMAP2_RESOURCE_H ++#define __ARCH_ARM_MACH_OMAP2_RESOURCE_H ++ ++#include ++#include ++ ++/** ++ * mpu_latency/core_latency are used to control the cpuidle C state. ++ */ ++void init_latency(struct shared_resource *resp); ++int set_latency(struct shared_resource *resp, u32 target_level); ++ ++static u8 mpu_qos_req_added; ++static u8 core_qos_req_added; ++ ++static struct shared_resource_ops lat_res_ops = { ++ .init = init_latency, ++ .change_level = set_latency, ++}; ++ ++static struct shared_resource mpu_latency = { ++ .name = "mpu_latency", ++ .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430), ++ .resource_data = &mpu_qos_req_added, ++ .ops = &lat_res_ops, ++}; ++ ++static struct shared_resource core_latency = { ++ .name = "core_latency", ++ .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430), ++ .resource_data = &core_qos_req_added, ++ .ops = &lat_res_ops, ++}; ++ ++/** ++ * Power domain Latencies are used to control the target Power ++ * domain state once all clocks for the power domain ++ * are released. ++ */ ++void init_pd_latency(struct shared_resource *resp); ++int set_pd_latency(struct shared_resource *resp, u32 target_level); ++ ++/* Power Domain Latency levels */ ++#define PD_LATENCY_OFF 0x0 ++#define PD_LATENCY_RET 0x1 ++#define PD_LATENCY_INACT 0x2 ++#define PD_LATENCY_ON 0x3 ++ ++#define PD_LATENCY_MAXLEVEL 0x4 ++ ++struct pd_latency_db { ++ char *pwrdm_name; ++ struct powerdomain *pd; ++ /* Latencies for each state transition, stored in us */ ++ unsigned long latency[PD_LATENCY_MAXLEVEL]; ++}; ++ ++static struct shared_resource_ops pd_lat_res_ops = { ++ .init = init_pd_latency, ++ .change_level = set_pd_latency, ++}; ++ ++static struct pd_latency_db iva2_pwrdm_lat_db = { ++ .pwrdm_name = "iva2_pwrdm", ++ .latency[PD_LATENCY_OFF] = 1000, ++ .latency[PD_LATENCY_RET] = 100, ++ .latency[PD_LATENCY_INACT] = 0, ++ .latency[PD_LATENCY_ON] = 0 ++}; ++ ++static struct shared_resource iva2_pwrdm_latency = { ++ .name = "iva2_pwrdm_latency", ++ .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430), ++ .resource_data = &iva2_pwrdm_lat_db, ++ .ops = &pd_lat_res_ops, ++}; ++ ++static struct pd_latency_db gfx_pwrdm_lat_db = { ++ .pwrdm_name = "gfx_pwrdm", ++ .latency[PD_LATENCY_OFF] = 1000, ++ .latency[PD_LATENCY_RET] = 100, ++ .latency[PD_LATENCY_INACT] = 0, ++ .latency[PD_LATENCY_ON] = 0 ++}; ++ ++static struct shared_resource gfx_pwrdm_latency = { ++ .name = "gfx_pwrdm_latency", ++ .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430ES1), ++ .resource_data = &gfx_pwrdm_lat_db, ++ .ops = &pd_lat_res_ops, ++}; ++ ++static struct shared_resource sgx_pwrdm_latency = { ++ .name = "sgx_pwrdm_latency", ++ .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430ES2), ++ .resource_data = &gfx_pwrdm_lat_db, ++ .ops = &pd_lat_res_ops, ++}; ++ ++static struct pd_latency_db dss_pwrdm_lat_db = { ++ .pwrdm_name = "dss_pwrdm", ++ .latency[PD_LATENCY_OFF] = 70, ++ .latency[PD_LATENCY_RET] = 20, ++ .latency[PD_LATENCY_INACT] = 0, ++ .latency[PD_LATENCY_ON] = 0 ++}; ++ ++static struct shared_resource dss_pwrdm_latency = { ++ .name = "dss_pwrdm_latency", ++ .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430), ++ .resource_data = &dss_pwrdm_lat_db, ++ .ops = &pd_lat_res_ops, ++}; ++ ++static struct pd_latency_db cam_pwrdm_lat_db = { ++ .pwrdm_name = "cam_pwrdm", ++ .latency[PD_LATENCY_OFF] = 850, ++ .latency[PD_LATENCY_RET] = 35, ++ .latency[PD_LATENCY_INACT] = 0, ++ .latency[PD_LATENCY_ON] = 0 ++}; ++ ++static struct shared_resource cam_pwrdm_latency = { ++ .name = "cam_pwrdm_latency", ++ .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430), ++ .resource_data = &cam_pwrdm_lat_db, ++ .ops = &pd_lat_res_ops, ++}; ++ ++static struct pd_latency_db per_pwrdm_lat_db = { ++ .pwrdm_name = "per_pwrdm", ++ .latency[PD_LATENCY_OFF] = 200, ++ .latency[PD_LATENCY_RET] = 110, ++ .latency[PD_LATENCY_INACT] = 0, ++ .latency[PD_LATENCY_ON] = 0 ++}; ++ ++static struct shared_resource per_pwrdm_latency = { ++ .name = "per_pwrdm_latency", ++ .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430), ++ .resource_data = &per_pwrdm_lat_db, ++ .ops = &pd_lat_res_ops, ++}; ++ ++static struct pd_latency_db neon_pwrdm_lat_db = { ++ .pwrdm_name = "neon_pwrdm", ++ .latency[PD_LATENCY_OFF] = 1000, ++ .latency[PD_LATENCY_RET] = 100, ++ .latency[PD_LATENCY_INACT] = 0, ++ .latency[PD_LATENCY_ON] = 0 ++}; ++ ++static struct shared_resource neon_pwrdm_latency = { ++ .name = "neon_pwrdm_latency", ++ .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430), ++ .resource_data = &neon_pwrdm_lat_db, ++ .ops = &pd_lat_res_ops, ++}; ++ ++static struct pd_latency_db usbhost_pwrdm_lat_db = { ++ .pwrdm_name = "usbhost_pwrdm", ++ .latency[PD_LATENCY_OFF] = 1000, ++ .latency[PD_LATENCY_RET] = 100, ++ .latency[PD_LATENCY_INACT] = 0, ++ .latency[PD_LATENCY_ON] = 0 ++}; ++ ++static struct shared_resource usbhost_pwrdm_latency = { ++ .name = "usbhost_pwrdm_latency", ++ .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430ES2), ++ .resource_data = &usbhost_pwrdm_lat_db, ++ .ops = &pd_lat_res_ops, ++}; ++ ++static struct pd_latency_db emu_pwrdm_lat_db = { ++ .pwrdm_name = "emu_pwrdm", ++ .latency[PD_LATENCY_OFF] = 1000, ++ .latency[PD_LATENCY_RET] = 100, ++ .latency[PD_LATENCY_INACT] = 0, ++ .latency[PD_LATENCY_ON] = 0 ++}; ++ ++static struct shared_resource emu_pwrdm_latency = { ++ .name = "emu_pwrdm", ++ .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430), ++ .resource_data = &emu_pwrdm_lat_db, ++ .ops = &pd_lat_res_ops, ++}; ++ ++struct shared_resource *resources_omap[] __initdata = { ++ &mpu_latency, ++ &core_latency, ++ /* Power Domain Latency resources */ ++ &iva2_pwrdm_latency, ++ &gfx_pwrdm_latency, ++ &sgx_pwrdm_latency, ++ &dss_pwrdm_latency, ++ &cam_pwrdm_latency, ++ &per_pwrdm_latency, ++ &neon_pwrdm_latency, ++ &usbhost_pwrdm_latency, ++ &emu_pwrdm_latency, ++ NULL ++}; ++ ++#endif /* __ARCH_ARM_MACH_OMAP2_RESOURCE_H */ + + +-- +To unsubscribe from this list: send the line "unsubscribe linux-omap" in +the body of a message to majordomo@vger.kernel.org +More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/packages/linux/linux-omap2-git/beagleboard/02-postrate-notifier.eml b/packages/linux/linux-omap2-git/beagleboard/02-postrate-notifier.eml new file mode 100644 index 0000000000..97058f99e1 --- /dev/null +++ b/packages/linux/linux-omap2-git/beagleboard/02-postrate-notifier.eml @@ -0,0 +1,186 @@ +This patch implements the remaining code for notification of clock +rate changes via the clock framework: + +- a notifier registration function, clk_notifier_register() + +- a notifier unregistration function, clk_notifier_unregister() + +- the clk_notify_post_rate_chg() call-chain function, has been fleshed out + +The implementation is via an atomic notifier, called with the clockfw +spinlock held. Callback functions must not sleep and must not re-enter +the clock framework, and should execute quickly. + +In the medium-term future, there are likely to be few users of these +notifiers. So, rather than storing one notifier per struct clk, +notifiers are stored in a separate, dynamically allocated list, +effectively trading execution speed (in terms of a sequential scan of +the notifier list) for memory savings. The implementation is +completely hidden from the callbacks and is easily changed if +necessary. + +Signed-off-by: Paul Walmsley +--- + + arch/arm/plat-omap/clock.c | 118 +++++++++++++++++++++++++++++++++++++++++++- + 1 files changed, 115 insertions(+), 3 deletions(-) + +diff --git a/arch/arm/plat-omap/clock.c b/arch/arm/plat-omap/clock.c +index 421d076..354f45f 100644 +--- a/arch/arm/plat-omap/clock.c ++++ b/arch/arm/plat-omap/clock.c +@@ -22,6 +22,7 @@ + #include + #include + #include ++#include + #include + + #include +@@ -34,6 +35,8 @@ static DEFINE_SPINLOCK(clockfw_lock); + + static struct clk_functions *arch_clock; + ++static LIST_HEAD(clk_notifier_list); ++ + /*------------------------------------------------------------------------- + * Standard clock functions defined in include/linux/clk.h + *-------------------------------------------------------------------------*/ +@@ -380,6 +383,110 @@ EXPORT_SYMBOL(clk_init_cpufreq_table); + #endif + + /** ++<<<<<<< current:arch/arm/plat-omap/clock.c ++======= ++ * clk_notifier_register - add a clock rate change notifier ++ * @clk: struct clk * to watch for rate echanges ++ * @nb: struct notifier_block * with callback info ++ * ++ * Request notification after a frequency change on clock 'clk'. This ++ * uses an atomic notifier. The callback will be called with ++ * interrupts disabled; therefore callback code should be very ++ * lightweight. Callback code must not call back into the clock ++ * framework. Callback code will be passed the previous and new rate ++ * of the clock. ++ * ++ * clk_notifier_register() must be called from process ++ * context. Returns -EINVAL if called with null arguments, -ENOMEM ++ * upon allocation failure; otherwise, passes along the return value ++ * of atomic_notifier_chain_register(). ++ */ ++int clk_notifier_register(struct clk *clk, struct notifier_block *nb) ++{ ++ struct clk_notifier *cn = NULL, *cn_new = NULL; ++ int r; ++ unsigned long flags; ++ ++ if (!clk || !nb) ++ return -EINVAL; ++ ++ /* Allocate this here speculatively so we can avoid GFP_ATOMIC */ ++ cn_new = kzalloc(sizeof(struct clk_notifier), GFP_KERNEL); ++ if (!cn_new) ++ return -ENOMEM; ++ ++ spin_lock_irqsave(&clockfw_lock, flags); ++ ++ list_for_each_entry(cn, &clk_notifier_list, node) { ++ if (cn->clk == clk) ++ break; ++ } ++ ++ if (cn->clk != clk) { ++ cn_new->clk = clk; ++ ATOMIC_INIT_NOTIFIER_HEAD(&cn_new->notifier_head); ++ ++ list_add(&cn_new->node, &clk_notifier_list); ++ cn = cn_new; ++ } else { ++ kfree(cn_new); /* didn't need it after all */ ++ } ++ ++ r = atomic_notifier_chain_register(&cn->notifier_head, nb); ++ ++ spin_unlock_irqrestore(&clockfw_lock, flags); ++ ++ return r; ++} ++ ++/** ++ * clk_notifier_unregister - remove a clock rate change notifier ++ * @clk: struct clk * ++ * @nb: struct notifier_block * with callback info ++ * ++ * Request no further notification for frequency changes on clock ++ * 'clk'. This function presently does not release memory allocated ++ * by its corresponding _register function; see inline comments for ++ * more informations. Returns -EINVAL if called with null arguments; ++ * otherwise, passes along the return value of ++ * atomic_notifier_chain_unregister(). ++ */ ++int clk_notifier_unregister(struct clk *clk, struct notifier_block *nb) ++{ ++ struct clk_notifier *cn = NULL; ++ int r = -EINVAL; ++ unsigned long flags; ++ ++ if (!clk || !nb) ++ return -EINVAL; ++ ++ spin_lock_irqsave(&clockfw_lock, flags); ++ ++ list_for_each_entry(cn, &clk_notifier_list, node) { ++ if (cn->clk == clk) ++ break; ++ } ++ ++ if (cn->clk == clk) { ++ r = atomic_notifier_chain_unregister(&cn->notifier_head, nb); ++ ++ /* ++ * XXX unfortunately it seems that there is no polite ++ * way to test if a notifier has zero users. So once ++ * a post-notifier has been registered on a clock, ++ * that struct clk_notifier will not be freed, even if ++ * all of its users unregister. ++ */ ++ } else { ++ r = -ENOENT; ++ } ++ ++ spin_unlock_irqrestore(&clockfw_lock, flags); ++ ++ return r; ++} ++ ++/** + * clk_notify_post_rate_chg - call post-clk-rate-change notifier chain + * @clk: struct clk * that is changing rate + * @old_rate: old rate +@@ -400,11 +507,16 @@ void clk_notify_post_rate_chg(struct clk *clk, unsigned long old_rate, + cnd.old_rate = old_rate; + cnd.new_rate = new_rate; + +- /* XXX Call notifier here */ +- ++ list_for_each_entry(cn, &clk_notifier_list, node) { ++ if (cn->clk == clk) { ++ atomic_notifier_call_chain(&cn->notifier_head, ++ CLK_POST_RATE_CHANGE, ++ &cnd); ++ break; ++ } ++ } + } + +- + /*-------------------------------------------------------------------------*/ + + #ifdef CONFIG_OMAP_RESET_CLOCKS + + +-- +To unsubscribe from this list: send the line "unsubscribe linux-omap" in +the body of a message to majordomo@vger.kernel.org +More majordomo info at http://vger.kernel.org/majordomo-info.html + diff --git a/packages/linux/linux-omap2-git/beagleboard/03-omappm-omap3srf.eml b/packages/linux/linux-omap2-git/beagleboard/03-omappm-omap3srf.eml new file mode 100644 index 0000000000..d052023f12 --- /dev/null +++ b/packages/linux/linux-omap2-git/beagleboard/03-omappm-omap3srf.eml @@ -0,0 +1,167 @@ +Adds init/change_level/validate_level calls for OMAP3 resources + +Signed-off-by: Rajendra Nayak +--- + arch/arm/mach-omap2/resource34xx.c | 148 +++++++++++++++++++++++++++++++++++++ + 1 files changed, 148 insertions(+) + +Index: linux-omap-2.6/arch/arm/mach-omap2/resource34xx.c +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ linux-omap-2.6/arch/arm/mach-omap2/resource34xx.c 2008-08-07 +15:07:04.000000000 +0530 +@@ -0,0 +1,148 @@ ++/* ++ * linux/arch/arm/mach-omap2/resource34xx.c ++ * OMAP3 resource init/change_level/validate_level functions ++ * ++ * Copyright (C) 2007-2008 Texas Instruments, Inc. ++ * Written by Rajendra Nayak ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License version 2 as ++ * published by the Free Software Foundation. ++ * ++ * THIS PACKAGE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR ++ * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED ++ * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. ++ * History: ++ * ++ */ ++ ++#include ++#include ++#include ++#include "resource34xx.h" ++ ++/** ++ * init_latency - Initializes the mpu/core latency resource. ++ * @resp: Latency resource to be initalized ++ * ++ * No return value. ++ */ ++void init_latency(struct shared_resource *resp) ++{ ++ resp->no_of_users = 0; ++ resp->curr_level = RES_DEFAULTLEVEL; ++ *((u8 *)resp->resource_data) = 0; ++ return; ++} ++ ++/** ++ * set_latency - Adds/Updates and removes the CPU_DMA_LATENCY in *pm_qos_params. ++ * @resp: resource pointer ++ * @latency: target latency to be set ++ * ++ * Returns 0 on success, or error values as returned by ++ * pm_qos_update_requirement/pm_qos_add_requirement. ++ */ ++int set_latency(struct shared_resource *resp, u32 latency) ++{ ++ u8 *pm_qos_req_added; ++ ++ if (resp->curr_level == latency) ++ return 0; ++ else ++ /* Update the resources current level */ ++ resp->curr_level = latency; ++ ++ pm_qos_req_added = resp->resource_data; ++ if (latency == RES_DEFAULTLEVEL) ++ /* No more users left, remove the pm_qos_req if present */ ++ if (*pm_qos_req_added) { ++ pm_qos_remove_requirement(PM_QOS_CPU_DMA_LATENCY, ++ resp->name); ++ *pm_qos_req_added = 0; ++ return 0; ++ } ++ ++ if (*pm_qos_req_added) { ++ return pm_qos_update_requirement(PM_QOS_CPU_DMA_LATENCY, ++ resp->name, latency); ++ } else { ++ *pm_qos_req_added = 1; ++ return pm_qos_add_requirement(PM_QOS_CPU_DMA_LATENCY, ++ resp->name, latency); ++ } ++} ++ ++/** ++ * init_pd_latency - Initializes the power domain latency resource. ++ * @resp: Power Domain Latency resource to be initialized. ++ * ++ * No return value. ++ */ ++void init_pd_latency(struct shared_resource *resp) ++{ ++ struct pd_latency_db *pd_lat_db; ++ ++ resp->no_of_users = 0; ++ resp->curr_level = PD_LATENCY_OFF; ++ pd_lat_db = resp->resource_data; ++ /* Populate the power domain associated with the latency resource */ ++ pd_lat_db->pd = pwrdm_lookup(pd_lat_db->pwrdm_name); ++ return; ++} ++ ++/** ++ * set_pd_latency - Updates the curr_level of the power domain resource. ++ * @resp: Power domain latency resource. ++ * @latency: New latency value acceptable. ++ * ++ * This function maps the latency in microsecs to the acceptable ++ * Power domain state using the latency DB. ++ * It then programs the power domain to enter the target state. ++ * Always returns 0. ++ */ ++int set_pd_latency(struct shared_resource *resp, u32 latency) ++{ ++ u32 pd_lat_level, ind, i; ++ struct pd_latency_db *pd_lat_db; ++ struct powerdomain *pwrdm; ++ ++ pd_lat_db = resp->resource_data; ++ pwrdm = pd_lat_db->pd; ++ pd_lat_level = PD_LATENCY_OFF; ++ /* using the latency db map to the appropriate PD state */ ++ for (ind = 0; ind < PD_LATENCY_MAXLEVEL; ind++) ++ if (pd_lat_db->latency[ind] < latency) ++ pd_lat_level = ind; ++ ++ resp->curr_level = pd_lat_level; ++ switch (pd_lat_level) { ++ case PWRDM_POWER_OFF: ++ case PWRDM_POWER_RET: ++ /* Errata 1.29: No transitions from INACTIVE to RET/OFF ++ * possible. ++ * Need to be taken care of here. ++ */ ++ if (pwrdm_read_pwrst(pwrdm) != PWRDM_POWER_ON) { ++ /* Force the clock domains to ON */ ++ for (i = 0; pwrdm->pwrdm_clkdms[i]; i++) { ++ omap2_clkdm_deny_idle(pwrdm->pwrdm_clkdms[i]); ++ omap2_clkdm_wakeup(pwrdm->pwrdm_clkdms[i]); ++ } ++ pwrdm_set_next_pwrst(pwrdm, PWRDM_POWER_ON); ++ pwrdm_set_next_pwrst(pwrdm, pd_lat_level); ++ for (i = 0; pwrdm->pwrdm_clkdms[i]; i++) { ++ omap2_clkdm_sleep(pwrdm->pwrdm_clkdms[i]); ++ omap2_clkdm_allow_idle(pwrdm->pwrdm_clkdms[i]); ++ } ++ } else ++ pwrdm_set_next_pwrst(pwrdm, pd_lat_level); ++ break; ++ case PWRDM_POWER_ON: ++ pwrdm_set_next_pwrst(pwrdm, PWRDM_POWER_ON); ++ break; ++ default: ++ break; ++ } ++ return 0; ++} + + +-- +To unsubscribe from this list: send the line "unsubscribe linux-omap" in +the body of a message to majordomo@vger.kernel.org +More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/packages/linux/linux-omap2-git/beagleboard/04-omappm-srf-noop.eml b/packages/linux/linux-omap2-git/beagleboard/04-omappm-srf-noop.eml new file mode 100644 index 0000000000..32d767a342 --- /dev/null +++ b/packages/linux/linux-omap2-git/beagleboard/04-omappm-srf-noop.eml @@ -0,0 +1,497 @@ +Adds SRF calls into OMAP PM skeleton layer developed by Paul W. + +Signed-off-by: Rajendra Nayak +--- + arch/arm/mach-omap2/Makefile | 1 + arch/arm/mach-omap2/clockdomain.c | 7 + arch/arm/plat-omap/Kconfig | 3 + arch/arm/plat-omap/Makefile | 4 + arch/arm/plat-omap/omap-pm-srf.c | 367 ++++++++++++++++++++++++++++++++ + include/asm-arm/arch-omap/powerdomain.h | 1 + include/asm-arm/arch-omap/resource.h | 1 + 7 files changed, 383 insertions(+), 1 deletion(-) + +Index: linux-omap-2.6/arch/arm/plat-omap/omap-pm-srf.c +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ linux-omap-2.6/arch/arm/plat-omap/omap-pm-srf.c 2008-08-11 +17:38:37.000000000 +0530 +@@ -0,0 +1,367 @@ ++/* ++ * omap-pm-srf.c - OMAP power management interface implemented ++ * using Shared resource framework ++ * ++ * This code implements the OMAP power management interface to ++ * drivers, CPUIdle, CPUFreq, and DSP Bridge. It is strictly for ++ * debug/demonstration use, as it does nothing but printk() whenever a ++ * function is called (when DEBUG is defined, below) ++ * ++ * Copyright (C) 2008 Texas Instruments, Inc. ++ * Copyright (C) 2008 Nokia Corporation ++ * Paul Walmsley ++ * ++ * Interface developed by (in alphabetical order): ++ * Karthik Dasu, Amish Lakhani, Tony Lindgren, Rajendra Nayak, Sakari ++ * Poussa, Veeramanikandan Raju, Igor Stoppa, Paul Walmsley, Richard ++ * Woodruff ++ * ++ * Interfaces defined by Paul Walmsley ++ * Updated with SRF calls by Rajendra Nayak ++ */ ++ ++#undef DEBUG ++ ++#include ++#include ++#include ++ ++/* Interface documentation is in asm/arch/omap-pm.h */ ++#include ++ ++#include ++#include ++/* ++#include ++*/ ++ ++#define LAT_RES_POSTAMBLE "_latency" ++char latency_res_name[30]; ++/* lat_name_mutex protects latency_res_name*/ ++static DEFINE_MUTEX(lat_name_mutex); ++ ++ ++/** ++ * get_lat_res_name - gets the latency resource name given a power domain name ++ * @pwrdm_name: Name of the power domain. ++ * ++ * Returns a pointer to the latency resource name. ++ */ ++static char *get_lat_res_name(const char *pwrdm_name) ++{ ++ strcpy(latency_res_name, ""); ++ if (!(in_atomic() || irqs_disabled())) ++ mutex_lock(&lat_name_mutex); ++ WARN_ON(strlen(pwrdm_name) + strlen(LAT_RES_POSTAMBLE) > ++ sizeof(latency_res_name)); ++ strcpy(latency_res_name, pwrdm_name); ++ strcat(latency_res_name, LAT_RES_POSTAMBLE); ++ if (!(in_atomic() || irqs_disabled())) ++ mutex_unlock(&lat_name_mutex); ++ return latency_res_name; ++} ++ ++static struct omap_opp *dsp_opps; ++static struct omap_opp *mpu_opps; ++ ++/* ++ * Device-driver-originated constraints (via board-*.c files) ++ */ ++ ++void omap_pm_set_max_mpu_wakeup_lat(struct device *dev, long t) ++{ ++ if (!dev || t < -1) { ++ WARN_ON(1); ++ return; ++ }; ++ ++ if (t == -1) { ++ pr_debug("OMAP PM: remove max MPU wakeup latency constraint: " ++ "dev %s\n", dev_name(dev)); ++ resource_release("mpu_latency", dev); ++ } else { ++ pr_debug("OMAP PM: add max MPU wakeup latency constraint: " ++ "dev %s, t = %ld usec\n", dev_name(dev), t); ++ resource_request("mpu_latency", dev, t); ++ } ++} ++ ++void omap_pm_set_min_bus_tput(struct device *dev, u8 agent_id, unsigned long r) ++{ ++ if (!dev || agent_id != OCP_INITIATOR_AGENT || ++ agent_id != OCP_TARGET_AGENT) { ++ WARN_ON(1); ++ return; ++ }; ++ ++ if (r == 0) ++ pr_debug("OMAP PM: remove min bus tput constraint: " ++ "dev %s for agent_id %d\n", dev_name(dev), agent_id); ++ else ++ pr_debug("OMAP PM: add min bus tput constraint: " ++ "dev %s for agent_id %d: rate %ld KiB\n", ++ dev_name(dev), agent_id, r); ++ ++ /* ++ * This code should model the interconnect and compute the ++ * required clock frequency, convert that to a VDD2 OPP ID, then ++ * set the VDD2 OPP appropriately. ++ * ++ * TI CDP code can call constraint_set here on the VDD2 OPP. ++ */ ++} ++ ++void omap_pm_set_max_dev_wakeup_lat(struct device *dev, long t) ++{ ++ /* struct tiocp *tiocp_dev; */ ++ struct powerdomain *pwrdm_dev; ++ char *res_name; ++ ++ if (!dev || t < -1) { ++ WARN_ON(1); ++ return; ++ }; ++ /* Look for the devices Power Domain */ ++ /* TODO: Put this back in once tiocp layer is available ++ tiocp_dev = container_of(dev, struct tiocp, dev); ++ pwrdm_dev = tiocp_dev->pwrdm; ++ */ ++ ++ if (t == -1) { ++ pr_debug("OMAP PM: remove max device latency constraint: " ++ "dev %s\n", dev_name(dev)); ++ res_name = get_lat_res_name(pwrdm_dev->name); ++ resource_release(res_name, dev); ++ } else { ++ pr_debug("OMAP PM: add max device latency constraint: " ++ "dev %s, t = %ld usec\n", dev_name(dev), t); ++ res_name = get_lat_res_name(pwrdm_dev->name); ++ resource_request(res_name, dev, t); ++ } ++ ++ /* ++ * For current Linux, this needs to map the device to a ++ * powerdomain, then go through the list of current max lat ++ * constraints on that powerdomain and find the smallest. If ++ * the latency constraint has changed, the code should ++ * recompute the state to enter for the next powerdomain ++ * state. Conceivably, this code should also determine ++ * whether to actually disable the device clocks or not, ++ * depending on how long it takes to re-enable the clocks. ++ * ++ * TI CDP code can call constraint_set here. ++ */ ++} ++ ++void omap_pm_set_max_sdma_lat(struct device *dev, long t) ++{ ++ if (!dev || t < -1) { ++ WARN_ON(1); ++ return; ++ }; ++ ++ if (t == -1) { ++ pr_debug("OMAP PM: remove max DMA latency constraint: " ++ "dev %s\n", dev_name(dev)); ++ resource_release("core_latency", dev); ++ } else { ++ pr_debug("OMAP PM: add max DMA latency constraint: " ++ "dev %s, t = %ld usec\n", dev_name(dev), t); ++ resource_request("core_latency", dev, t); ++ } ++ ++ /* ++ * For current Linux PM QOS params, this code should scan the ++ * list of maximum CPU and DMA latencies and select the ++ * smallest, then set cpu_dma_latency pm_qos_param ++ * accordingly. ++ * ++ * For future Linux PM QOS params, with separate CPU and DMA ++ * latency params, this code should just set the dma_latency param. ++ * ++ * TI CDP code can call constraint_set here. ++ */ ++ ++} ++ ++ ++/* ++ * DSP Bridge-specific constraints ++ */ ++ ++const struct omap_opp *omap_pm_dsp_get_opp_table(void) ++{ ++ pr_debug("OMAP PM: DSP request for OPP table\n"); ++ ++ /* ++ * Return DSP frequency table here: The final item in the ++ * array should have .rate = .opp_id = 0. ++ */ ++ ++ return NULL; ++} ++ ++void omap_pm_dsp_set_min_opp(u8 opp_id) ++{ ++ if (opp_id == 0) { ++ WARN_ON(1); ++ return; ++ } ++ ++ pr_debug("OMAP PM: DSP requests minimum VDD1 OPP to be %d\n", opp_id); ++ ++ /* ++ * ++ * For l-o dev tree, our VDD1 clk is keyed on OPP ID, so we ++ * can just test to see which is higher, the CPU's desired OPP ++ * ID or the DSP's desired OPP ID, and use whichever is ++ * highest. ++ * ++ * In CDP12.14+, the VDD1 OPP custom clock that controls the DSP ++ * rate is keyed on MPU speed, not the OPP ID. So we need to ++ * map the OPP ID to the MPU speed for use with clk_set_rate() ++ * if it is higher than the current OPP clock rate. ++ * ++ */ ++} ++ ++ ++u8 omap_pm_dsp_get_opp(void) ++{ ++ pr_debug("OMAP PM: DSP requests current DSP OPP ID\n"); ++ ++ /* ++ * For l-o dev tree, call clk_get_rate() on VDD1 OPP clock ++ * ++ * CDP12.14+: ++ * Call clk_get_rate() on the OPP custom clock, map that to an ++ * OPP ID using the tables defined in board-*.c/chip-*.c files. ++ */ ++ ++ return 0; ++} ++ ++/* ++ * CPUFreq-originated constraint ++ * ++ * In the future, this should be handled by custom OPP clocktype ++ * functions. ++ */ ++ ++struct cpufreq_frequency_table **omap_pm_cpu_get_freq_table(void) ++{ ++ pr_debug("OMAP PM: CPUFreq request for frequency table\n"); ++ ++ /* ++ * Return CPUFreq frequency table here: loop over ++ * all VDD1 clkrates, pull out the mpu_ck frequencies, build ++ * table ++ */ ++ ++ return NULL; ++} ++ ++void omap_pm_cpu_set_freq(unsigned long f) ++{ ++ if (f == 0) { ++ WARN_ON(1); ++ return; ++ } ++ ++ pr_debug("OMAP PM: CPUFreq requests CPU frequency to be set to %lu\n", ++ f); ++ ++ /* ++ * For l-o dev tree, determine whether MPU freq or DSP OPP id ++ * freq is higher. Find the OPP ID corresponding to the ++ * higher frequency. Call clk_round_rate() and clk_set_rate() ++ * on the OPP custom clock. ++ * ++ * CDP should just be able to set the VDD1 OPP clock rate here. ++ */ ++} ++ ++unsigned long omap_pm_cpu_get_freq(void) ++{ ++ pr_debug("OMAP PM: CPUFreq requests current CPU frequency\n"); ++ ++ /* ++ * Call clk_get_rate() on the mpu_ck. ++ */ ++ ++ return 0; ++} ++ ++struct device omap_pm_dev; ++ ++/* ++ * Powerdomain usecounting hooks ++ */ ++ ++void omap_pm_pwrdm_active(struct powerdomain *pwrdm) ++{ ++ char *res_name; ++ ++ if (!pwrdm) { ++ WARN_ON(1); ++ return; ++ }; ++ ++ if (!strcmp(pwrdm->name, "wkup_pwrdm") || ++ !strcmp(pwrdm->name, "core_pwrdm")) ++ return; ++ ++ pr_debug("OMAP PM: powerdomain %s is becoming active\n", pwrdm->name); ++ ++ res_name = get_lat_res_name(pwrdm->name); ++ /* Request for a zero latency which puts the Power Domain in ON state*/ ++ resource_request(res_name, &omap_pm_dev, 0); ++ return; ++} ++ ++void omap_pm_pwrdm_inactive(struct powerdomain *pwrdm) ++{ ++ char *res_name; ++ ++ if (!pwrdm) { ++ WARN_ON(1); ++ return; ++ }; ++ ++ if (!strcmp(pwrdm->name, "wkup_pwrdm") || ++ !strcmp(pwrdm->name, "core_pwrdm")) ++ return; ++ ++ pr_debug("OMAP PM: powerdomain %s is becoming inactive\n", ++ pwrdm->name); ++ ++ res_name = get_lat_res_name(pwrdm->name); ++ /* Release the latency requested */ ++ resource_release(res_name, &omap_pm_dev); ++ return; ++} ++ ++/* ++ * Should be called before clk framework since clk fw will call ++ * omap_pm_pwrdm_{in,}active() ++ */ ++int __init omap_pm_if_early_init(void) ++{ ++ return 0; ++} ++ ++/* Must be called after clock framework is initialized */ ++int __init omap_pm_if_init(struct omap_opp *mpu_opp_table, ++ struct omap_opp *dsp_opp_table) ++{ ++ mpu_opps = mpu_opp_table; ++ dsp_opps = dsp_opp_table; ++ resource_init(resources_omap); ++ return 0; ++} ++ ++void omap_pm_if_exit(void) ++{ ++ /* Deallocate CPUFreq frequency table here */ ++} ++ +Index: linux-omap-2.6/arch/arm/mach-omap2/clockdomain.c +=================================================================== +--- linux-omap-2.6.orig/arch/arm/mach-omap2/clockdomain.c 2008-08-11 +17:12:19.000000000 +0530 ++++ linux-omap-2.6/arch/arm/mach-omap2/clockdomain.c 2008-08-11 +17:14:31.000000000 +0530 +@@ -35,6 +35,7 @@ + + #include + #include ++#include + + /* clkdm_list contains all registered struct clockdomains */ + static LIST_HEAD(clkdm_list); +@@ -561,6 +562,9 @@ int omap2_clkdm_clk_enable(struct clockd + else + omap2_clkdm_wakeup(clkdm); + ++ /*Hook to inform the OMAP PM layer that the pwrdm has become active */ ++ omap_pm_pwrdm_active(clkdm->pwrdm.ptr); ++ + return 0; + } + +@@ -612,6 +616,9 @@ int omap2_clkdm_clk_disable(struct clock + else + omap2_clkdm_sleep(clkdm); + ++ /*Hook to inform the OMAP PM layer that the pwrdm has become inactive */ ++ omap_pm_pwrdm_inactive(clkdm->pwrdm.ptr); ++ + return 0; + } + +Index: linux-omap-2.6/include/asm-arm/arch-omap/powerdomain.h +=================================================================== +--- linux-omap-2.6.orig/include/asm-arm/arch-omap/powerdomain.h 2008-08-11 +17:12:19.000000000 +0530 ++++ linux-omap-2.6/include/asm-arm/arch-omap/powerdomain.h 2008-08-11 +17:14:31.000000000 +0530 +@@ -148,6 +148,7 @@ int pwrdm_read_next_pwrst(struct powerdo + int pwrdm_read_pwrst(struct powerdomain *pwrdm); + int pwrdm_read_prev_pwrst(struct powerdomain *pwrdm); + int pwrdm_clear_all_prev_pwrst(struct powerdomain *pwrdm); ++int pwrdm_read_pwrst(struct powerdomain *pwrdm); + + int pwrdm_set_logic_retst(struct powerdomain *pwrdm, u8 pwrst); + int pwrdm_set_mem_onst(struct powerdomain *pwrdm, u8 bank, u8 pwrst); +Index: linux-omap-2.6/arch/arm/mach-omap2/Makefile +=================================================================== +--- linux-omap-2.6.orig/arch/arm/mach-omap2/Makefile 2008-08-11 +17:12:19.000000000 +0530 ++++ linux-omap-2.6/arch/arm/mach-omap2/Makefile 2008-08-11 17:14:31.000000000 ++0530 +@@ -34,6 +34,7 @@ obj-$(CONFIG_OMAP_SMARTREFLEX) += smart + # Clock framework + obj-$(CONFIG_ARCH_OMAP2) += clock24xx.o + obj-$(CONFIG_ARCH_OMAP3) += clock34xx.o ++obj-$(CONFIG_OMAP_PM_SRF) += resource34xx.o + + # DSP + obj-$(CONFIG_OMAP_MMU_FWK) += mmu_mach.o +Index: linux-omap-2.6/arch/arm/plat-omap/Kconfig +=================================================================== +--- linux-omap-2.6.orig/arch/arm/plat-omap/Kconfig 2008-08-11 +17:12:25.000000000 +0530 ++++ linux-omap-2.6/arch/arm/plat-omap/Kconfig 2008-08-11 17:14:31.000000000 +0530 +@@ -258,6 +258,9 @@ config OMAP_PM_NONE + config OMAP_PM_NOOP + bool "No-op/debug PM layer" + ++config OMAP_PM_SRF ++ bool "PM layer implemented using SRF" ++ + endchoice + + endif +Index: linux-omap-2.6/arch/arm/plat-omap/Makefile +=================================================================== +--- linux-omap-2.6.orig/arch/arm/plat-omap/Makefile 2008-08-11 +17:12:25.000000000 +0530 ++++ linux-omap-2.6/arch/arm/plat-omap/Makefile 2008-08-11 17:14:31.000000000 +0530 +@@ -29,4 +29,6 @@ obj-$(CONFIG_OMAP_MMU_FWK) += mmu.o + # OMAP mailbox framework + obj-$(CONFIG_OMAP_MBOX_FWK) += mailbox.o + +-obj-$(CONFIG_OMAP_PM_NOOP) += omap-pm-noop.o +\ No newline at end of file ++obj-$(CONFIG_OMAP_PM_NOOP) += omap-pm-noop.o ++obj-$(CONFIG_OMAP_PM_SRF) += omap-pm-srf.o \ ++ resource.o +Index: linux-omap-2.6/include/asm-arm/arch-omap/resource.h +=================================================================== +--- linux-omap-2.6.orig/include/asm-arm/arch-omap/resource.h 2008-08-11 +17:12:30.000000000 +0530 ++++ linux-omap-2.6/include/asm-arm/arch-omap/resource.h 2008-08-11 +17:14:31.000000000 +0530 +@@ -85,6 +85,7 @@ struct users_list { + u8 usage; + }; + ++extern struct shared_resource *resources_omap[]; + /* Shared resource Framework API's */ + void resource_init(struct shared_resource **resources); + int resource_register(struct shared_resource *res); + + +-- +To unsubscribe from this list: send the line "unsubscribe linux-omap" in +the body of a message to majordomo@vger.kernel.org +More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/packages/linux/linux-omap2-git/beagleboard/05-omappm-virtualclocks.eml b/packages/linux/linux-omap2-git/beagleboard/05-omappm-virtualclocks.eml new file mode 100644 index 0000000000..0aaed7b91c --- /dev/null +++ b/packages/linux/linux-omap2-git/beagleboard/05-omappm-virtualclocks.eml @@ -0,0 +1,456 @@ +The patch defines virtual nodes for VDD1 and VDD2 + +Signed-off-by: Rajendra Nayak +--- + arch/arm/mach-omap2/board-3430sdp.c | 38 +++++ + arch/arm/mach-omap2/clock34xx.c | 206 +++++++++++++++++++++++++----- + arch/arm/mach-omap2/clock34xx.h | 29 ++++ + include/asm-arm/arch-omap/board-3430sdp.h | 35 +++++ + include/asm-arm/arch-omap/clock.h | 8 + + 5 files changed, 287 insertions(+), 29 deletions(-) + +Index: linux-omap-2.6/arch/arm/mach-omap2/clock34xx.h +=================================================================== +--- linux-omap-2.6.orig/arch/arm/mach-omap2/clock34xx.h 2008-08-06 +14:55:12.000000000 +0530 ++++ linux-omap-2.6/arch/arm/mach-omap2/clock34xx.h 2008-08-07 +15:07:19.000000000 +0530 +@@ -36,6 +36,14 @@ static int omap3_noncore_dpll_enable(str + static void omap3_noncore_dpll_disable(struct clk *clk); + static int omap3_noncore_dpll_set_rate(struct clk *clk, unsigned long rate); + static int omap3_core_dpll_m2_set_rate(struct clk *clk, unsigned long rate); ++static void omap3_table_recalc(struct clk *clk); ++static long omap3_round_to_table_rate(struct clk *clk, unsigned long rate); ++static int omap3_select_table_rate(struct clk *clk, unsigned long rate); ++ ++extern struct vdd_prcm_config vdd1_rate_table[]; ++extern struct vdd_prcm_config vdd2_rate_table[]; ++extern struct vdd_prcm_config iva2_rate_table[]; ++ + + /* Maximum DPLL multiplier, divider values for OMAP3 */ + #define OMAP3_MAX_DPLL_MULT 2048 +@@ -3064,6 +3072,24 @@ static struct clk wdt1_fck = { + .recalc = &followparent_recalc, + }; + ++static struct clk virt_vdd1_prcm_set = { ++ .name = "virt_vdd1_prcm_set", ++ .flags = CLOCK_IN_OMAP343X | VIRTUAL_CLOCK | ALWAYS_ENABLED, ++ .parent = &mpu_ck, /* Indexed by mpu speed, no parent */ ++ .recalc = &omap3_table_recalc, /*sets are keyed on mpu rate */ ++ .set_rate = &omap3_select_table_rate, ++ .round_rate = &omap3_round_to_table_rate, ++}; ++ ++static struct clk virt_vdd2_prcm_set = { ++ .name = "virt_vdd2_prcm_set", ++ .flags = CLOCK_IN_OMAP343X | VIRTUAL_CLOCK | ALWAYS_ENABLED, ++ .parent = &core_ck, ++ .recalc = &omap3_table_recalc, ++ .set_rate = &omap3_select_table_rate, ++ .round_rate = &omap3_round_to_table_rate, ++}; ++ + static struct clk *onchip_34xx_clks[] __initdata = { + &omap_32k_fck, + &virt_12m_ck, +@@ -3276,6 +3302,9 @@ static struct clk *onchip_34xx_clks[] __ + &secure_32k_fck, + &gpt12_fck, + &wdt1_fck, ++ /* virtual group clock */ ++ &virt_vdd1_prcm_set, ++ &virt_vdd2_prcm_set, + }; + + #endif +Index: linux-omap-2.6/arch/arm/mach-omap2/clock34xx.c +=================================================================== +--- linux-omap-2.6.orig/arch/arm/mach-omap2/clock34xx.c 2008-08-07 +14:34:23.000000000 +0530 ++++ linux-omap-2.6/arch/arm/mach-omap2/clock34xx.c 2008-08-07 +15:07:19.000000000 +0530 +@@ -25,6 +25,7 @@ + #include + #include + #include ++#include + + #include + #include +@@ -45,6 +46,32 @@ + + #define MAX_DPLL_WAIT_TRIES 1000000 + ++struct vdd_prcm_config *curr_vdd1_prcm_set; ++struct vdd_prcm_config *curr_vdd2_prcm_set; ++static struct clk *dpll1_clk, *dpll2_clk, *dpll3_clk; ++ ++#ifndef CONFIG_CPU_FREQ ++static unsigned long compute_lpj(unsigned long ref, u_int div, u_int mult) ++{ ++ unsigned long new_jiffy_l, new_jiffy_h; ++ ++ /* ++ * Recalculate loops_per_jiffy. We do it this way to ++ * avoid math overflow on 32-bit machines. Maybe we ++ * should make this architecture dependent? If you have ++ * a better way of doing this, please replace! ++ * ++ * new = old * mult / div ++ */ ++ new_jiffy_h = ref / div; ++ new_jiffy_l = (ref % div) / 100; ++ new_jiffy_h *= mult; ++ new_jiffy_l = new_jiffy_l * mult / div; ++ ++ return new_jiffy_h + new_jiffy_l * 100; ++} ++#endif ++ + /** + * omap3_dpll_recalc - recalculate DPLL rate + * @clk: DPLL struct clk +@@ -644,15 +671,6 @@ void omap2_clk_prepare_for_reboot(void) + */ + static int __init omap2_clk_arch_init(void) + { +- if (!mpurate) +- return -EINVAL; +- +- /* REVISIT: not yet ready for 343x */ +-#if 0 +- if (omap2_select_table_rate(&virt_prcm_set, mpurate)) +- printk(KERN_ERR "Could not find matching MPU rate\n"); +-#endif +- + recalculate_root_clocks(); + + printk(KERN_INFO "Switched to new clocking rate (Crystal/DPLL3/MPU): " +@@ -670,6 +688,9 @@ int __init omap2_clk_init(void) + struct clk **clkp; + /* u32 clkrate; */ + u32 cpu_clkflg; ++ unsigned long mpu_speed, core_speed; ++ struct vdd_prcm_config *prcm_vdd; ++ + + /* REVISIT: Ultimately this will be used for multiboot */ + #if 0 +@@ -712,22 +733,31 @@ int __init omap2_clk_init(void) + } + } + +- /* REVISIT: Not yet ready for OMAP3 */ +-#if 0 +- /* Check the MPU rate set by bootloader */ +- clkrate = omap2_get_dpll_rate_24xx(&dpll_ck); +- for (prcm = rate_table; prcm->mpu_speed; prcm++) { +- if (!(prcm->flags & cpu_mask)) +- continue; +- if (prcm->xtal_speed != sys_ck.rate) +- continue; +- if (prcm->dpll_speed <= clkrate) +- break; ++ recalculate_root_clocks(); ++ ++ dpll1_clk = clk_get(NULL, "dpll1_ck"); ++ dpll2_clk = clk_get(NULL, "dpll2_ck"); ++ dpll3_clk = clk_get(NULL, "dpll3_ck"); ++ ++#ifdef CONFIG_MACH_OMAP_3430SDP ++ mpu_speed = dpll1_clk->rate; ++ prcm_vdd = vdd1_rate_table + MAX_VDD1_OPP; ++ for (; prcm_vdd->speed; prcm_vdd--) { ++ if (prcm_vdd->speed <= mpu_speed) { ++ curr_vdd1_prcm_set = prcm_vdd; ++ break; ++ } + } +- curr_prcm_set = prcm; +-#endif + +- recalculate_root_clocks(); ++ core_speed = dpll3_clk->rate; ++ prcm_vdd = vdd2_rate_table + MAX_VDD2_OPP; ++ for (; prcm_vdd->speed; prcm_vdd--) { ++ if (prcm_vdd->speed <= core_speed) { ++ curr_vdd2_prcm_set = prcm_vdd; ++ break; ++ } ++ } ++#endif + + printk(KERN_INFO "Clocking rate (Crystal/DPLL/ARM core): " + "%ld.%01ld/%ld/%ld MHz\n", +@@ -740,13 +770,131 @@ int __init omap2_clk_init(void) + */ + clk_enable_init_clocks(); + +- /* Avoid sleeping during omap2_clk_prepare_for_reboot() */ +- /* REVISIT: not yet ready for 343x */ +-#if 0 +- vclk = clk_get(NULL, "virt_prcm_set"); +- sclk = clk_get(NULL, "sys_ck"); +-#endif + return 0; + } + ++inline unsigned int get_freq(struct vdd_prcm_config *opp_freq_table, ++ unsigned long opp) ++{ ++ struct vdd_prcm_config *prcm_config; ++ prcm_config = opp_freq_table; ++ ++ for (; prcm_config->opp; prcm_config--) ++ if (prcm_config->opp == opp) ++ return prcm_config->speed; ++ return 0; ++} ++ ++inline unsigned int get_opp(struct vdd_prcm_config *opp_freq_table, ++ unsigned long freq) ++{ ++ struct vdd_prcm_config *prcm_config; ++ prcm_config = opp_freq_table; ++ ++ if (prcm_config->speed <= freq) ++ return prcm_config->opp; /* Return the Highest OPP */ ++ for (; prcm_config->speed; prcm_config--) { ++ if (prcm_config->speed < freq) ++ return (prcm_config+1)->opp; ++ else if (prcm_config->speed == freq) ++ return prcm_config->opp; ++ } ++ /* Return the least OPP */ ++ return (prcm_config+1)->opp; ++} ++ ++#ifdef CONFIG_MACH_OMAP_3430SDP ++static void omap3_table_recalc(struct clk *clk) ++{ ++ if ((clk != &virt_vdd1_prcm_set) && (clk != &virt_vdd2_prcm_set)) ++ return; ++ ++ if ((curr_vdd1_prcm_set) && (clk == &virt_vdd1_prcm_set)) ++ clk->rate = curr_vdd1_prcm_set->speed; ++ else if ((curr_vdd2_prcm_set) && (clk == &virt_vdd2_prcm_set)) ++ clk->rate = curr_vdd2_prcm_set->speed; ++ pr_debug("CLK RATE:%lu\n", clk->rate); ++} ++ ++static long omap3_round_to_table_rate(struct clk *clk, unsigned long rate) ++{ ++ struct vdd_prcm_config *ptr; ++ long highest_rate; ++ ++ if ((clk != &virt_vdd1_prcm_set) && (clk != &virt_vdd2_prcm_set)) ++ return -EINVAL; ++ ++ highest_rate = -EINVAL; ++ ++ if (clk == &virt_vdd1_prcm_set) ++ ptr = vdd1_rate_table + MAX_VDD1_OPP; ++ else ++ ptr = vdd2_rate_table + MAX_VDD2_OPP; ++ ++ for (; ptr->speed; ptr--) { ++ highest_rate = ptr->speed; ++ pr_debug("Highest speed : %lu, rate: %lu\n", highest_rate, ++ rate); ++ if (ptr->speed <= rate) ++ break; ++ } ++ return highest_rate; ++} ++ ++static int omap3_select_table_rate(struct clk *clk, unsigned long rate) ++{ ++ struct vdd_prcm_config *prcm_vdd; ++ unsigned long found_speed = 0, curr_mpu_speed; ++ int index; ++ ++ if ((clk != &virt_vdd1_prcm_set) && (clk != &virt_vdd2_prcm_set)) ++ return -EINVAL; ++ ++ if (clk == &virt_vdd1_prcm_set) { ++ prcm_vdd = vdd1_rate_table + MAX_VDD1_OPP; ++ index = MAX_VDD1_OPP; ++ } else if (clk == &virt_vdd2_prcm_set) { ++ prcm_vdd = vdd2_rate_table + MAX_VDD2_OPP; ++ index = MAX_VDD2_OPP; ++ } ++ ++ for (; prcm_vdd->speed; prcm_vdd--, index--) { ++ if (prcm_vdd->speed <= rate) { ++ found_speed = prcm_vdd->speed; ++ pr_debug("Found speed = %lu\n", found_speed); ++ break; ++ } ++ } ++ ++ if (!found_speed) { ++ printk(KERN_INFO "Could not set table rate to %luMHz\n", ++ rate / 1000000); ++ return -EINVAL; ++ } ++ ++ ++ if (clk == &virt_vdd1_prcm_set) { ++ curr_mpu_speed = curr_vdd1_prcm_set->speed; ++ clk_set_rate(dpll1_clk, prcm_vdd->speed); ++ clk_set_rate(dpll2_clk, iva2_rate_table[index].speed); ++ curr_vdd1_prcm_set = prcm_vdd; ++#ifndef CONFIG_CPU_FREQ ++ /*Update loops_per_jiffy if processor speed is being changed*/ ++ loops_per_jiffy = compute_lpj(loops_per_jiffy, ++ curr_mpu_speed/1000, found_speed/1000); + #endif ++ } else { ++ clk_set_rate(dpll3_clk, prcm_vdd->speed); ++ curr_vdd2_prcm_set = prcm_vdd; ++ } ++ return 0; ++} ++#else /* CONFIG_MACH_OMAP_3430SDP */ ++static void omap3_table_recalc(struct clk *clk) {} ++static long omap3_round_to_table_rate(struct clk *clk, unsigned long rate) ++{ return 0; } ++static int omap3_select_table_rate(struct clk *clk, unsigned long rate) ++{ return 0; } ++#endif /* CONFIG_MACH_OMAP_3430SDP */ ++ ++#endif /* CONFIG_ARCH_OMAP3 */ +Index: linux-omap-2.6/include/asm-arm/arch-omap/clock.h +=================================================================== +--- linux-omap-2.6.orig/include/asm-arm/arch-omap/clock.h 2008-08-07 +14:34:23.000000000 +0530 ++++ linux-omap-2.6/include/asm-arm/arch-omap/clock.h 2008-08-07 +15:07:19.000000000 +0530 +@@ -126,6 +126,14 @@ struct clk_functions { + #endif + }; + ++#ifdef CONFIG_ARCH_OMAP3 ++struct vdd_prcm_config { ++ unsigned long speed; ++ unsigned long opp; ++ unsigned long flags; ++}; ++#endif ++ + extern unsigned int mpurate; + + extern int clk_init(struct clk_functions *custom_clocks); +Index: linux-omap-2.6/arch/arm/mach-omap2/board-3430sdp.c +=================================================================== +--- linux-omap-2.6.orig/arch/arm/mach-omap2/board-3430sdp.c 2008-08-06 +14:55:12.000000000 +0530 ++++ linux-omap-2.6/arch/arm/mach-omap2/board-3430sdp.c 2008-08-07 +15:07:50.000000000 +0530 +@@ -40,6 +40,7 @@ + #include + #include + #include ++#include + #include + + #include +@@ -53,6 +54,43 @@ + #define ENABLE_VAUX3_DEDICATED 0x03 + #define ENABLE_VAUX3_DEV_GRP 0x20 + ++struct vdd_prcm_config vdd1_rate_table[] = { ++ {0, 0, 0}, ++ /*OPP1*/ ++ {S125M, VDD1_OPP1, 0}, ++ /*OPP2*/ ++ {S250M, VDD1_OPP2, 0}, ++ /*OPP3*/ ++ {S500M, VDD1_OPP3, 0}, ++ /*OPP4*/ ++ {S550M, VDD1_OPP4, 0}, ++ /*OPP5*/ ++ {S600M, VDD1_OPP5, 0}, ++}; ++ ++struct vdd_prcm_config vdd2_rate_table[] = { ++ {0, 0, 0}, ++ /*OPP1*/ ++ {0, VDD2_OPP1, 0}, ++ /*OPP2*/ ++ {S83M, VDD2_OPP2, 0}, ++ /*OPP3*/ ++ {S166M, VDD2_OPP3, 0}, ++}; ++ ++struct vdd_prcm_config iva2_rate_table[] = { ++ {0, 0, 0}, ++ /*OPP1*/ ++ {S90M, VDD1_OPP1, 0}, ++ /*OPP2*/ ++ {S180M, VDD1_OPP2, 0}, ++ /*OPP3*/ ++ {S360M, VDD1_OPP3, 0}, ++ /*OPP4*/ ++ {S400M, VDD1_OPP4, 0}, ++ /*OPP5*/ ++ {S430M, VDD1_OPP5, 0}, ++}; + + #define TWL4030_MSECURE_GPIO 22 + +Index: linux-omap-2.6/include/asm-arm/arch-omap/board-3430sdp.h +=================================================================== +--- linux-omap-2.6.orig/include/asm-arm/arch-omap/board-3430sdp.h 2008-08-06 +14:55:22.000000000 +0530 ++++ linux-omap-2.6/include/asm-arm/arch-omap/board-3430sdp.h 2008-08-07 +15:07:19.000000000 +0530 +@@ -68,5 +68,40 @@ extern void twl4030_bci_battery_init(voi + #define FLASH_SIZE_SDPV1 SZ_64M + #define FLASH_SIZE_SDPV2 SZ_128M + ++/* MPU speeds */ ++#define S600M 600000000 ++#define S550M 550000000 ++#define S500M 500000000 ++#define S250M 250000000 ++#define S125M 125000000 ++ ++/* IVA speeds */ ++#define S430M 430000000 ++#define S400M 400000000 ++#define S360M 360000000 ++#define S180M 180000000 ++#define S90M 90000000 ++ ++/* L3 speeds */ ++#define S83M 83000000 ++#define S166M 166000000 ++ ++/* VDD1 OPPS */ ++#define VDD1_OPP1 0x1 ++#define VDD1_OPP2 0x2 ++#define VDD1_OPP3 0x3 ++#define VDD1_OPP4 0x4 ++#define VDD1_OPP5 0x5 ++ ++/* VDD2 OPPS */ ++#define VDD2_OPP1 0x1 ++#define VDD2_OPP2 0x2 ++#define VDD2_OPP3 0x3 ++ ++#define MIN_VDD1_OPP VDD1_OPP1 ++#define MAX_VDD1_OPP VDD1_OPP5 ++#define MIN_VDD2_OPP VDD2_OPP1 ++#define MAX_VDD2_OPP VDD2_OPP3 ++ + #endif /* __ASM_ARCH_OMAP_3430SDP_H */ + + + +-- +To unsubscribe from this list: send the line "unsubscribe linux-omap" in +the body of a message to majordomo@vger.kernel.org +More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/packages/linux/linux-omap2-git/beagleboard/06-omappm-opp-resource-modeling.eml b/packages/linux/linux-omap2-git/beagleboard/06-omappm-opp-resource-modeling.eml new file mode 100644 index 0000000000..69ed0f748c --- /dev/null +++ b/packages/linux/linux-omap2-git/beagleboard/06-omappm-opp-resource-modeling.eml @@ -0,0 +1,228 @@ +Adds OPP/Frequency resources to SRF + +Signed-off-by: Rajendra Nayak +--- + arch/arm/mach-omap2/resource34xx.c | 101 +++++++++++++++++++++++++++++++++++++ + arch/arm/mach-omap2/resource34xx.h | 74 +++++++++++++++++++++++++++ + 2 files changed, 175 insertions(+) + +Index: linux-omap-2.6/arch/arm/mach-omap2/resource34xx.c +=================================================================== +--- linux-omap-2.6.orig/arch/arm/mach-omap2/resource34xx.c 2008-08-07 +15:07:08.000000000 +0530 ++++ linux-omap-2.6/arch/arm/mach-omap2/resource34xx.c 2008-08-07 +15:09:01.000000000 +0530 +@@ -146,3 +146,104 @@ int set_pd_latency(struct shared_resourc + } + return 0; + } ++ ++static struct clk *vdd1_clk; ++static struct clk *vdd2_clk; ++static struct device dummy_srf_dev; ++ ++/** ++ * init_opp - Initialize the OPP resource ++ */ ++void init_opp(struct shared_resource *resp) ++{ ++ resp->no_of_users = 0; ++ /* Initialize the current level of the OPP resource ++ * to the opp set by u-boot. ++ */ ++ if (strcmp(resp->name, "vdd1_opp") == 0) { ++ resp->curr_level = curr_vdd1_prcm_set->opp; ++ vdd1_clk = clk_get(NULL, "virt_vdd1_prcm_set"); ++ } else if (strcmp(resp->name, "vdd2_opp") == 0) { ++ resp->curr_level = curr_vdd2_prcm_set->opp; ++ vdd2_clk = clk_get(NULL, "virt_vdd2_prcm_set"); ++ } ++ return; ++} ++ ++int set_opp(struct shared_resource *resp, u32 target_level) ++{ ++#ifdef CONFIG_MACH_OMAP_3430SDP ++ unsigned long mpu_freq; ++ if (strcmp(resp->name, "vdd1_opp") == 0) { ++ mpu_freq = get_freq(vdd1_rate_table + MAX_VDD1_OPP, ++ target_level); ++ clk_set_rate(vdd1_clk, mpu_freq); ++ resp->curr_level = curr_vdd1_prcm_set->opp; ++ } else if (strcmp(resp->name, "vdd2_opp") == 0) { ++ /* Not supported yet */ ++ } ++#endif ++ return 0; ++} ++ ++/** ++ * validate_opp - Validates if valid VDD1 OPP's are passed as the ++ * target_level. ++ * VDD2 OPP levels are passed as L3 throughput, which are then mapped ++ * to an appropriate OPP. ++ */ ++int validate_opp(struct shared_resource *resp, u32 target_level) ++{ ++ return 0; ++} ++ ++/** ++ * init_freq - Initialize the frequency resource. ++ */ ++void init_freq(struct shared_resource *resp) ++{ ++#ifdef CONFIG_MACH_OMAP_3430SDP ++ char *linked_res_name; ++ resp->no_of_users = 0; ++ ++ linked_res_name = (char *)resp->resource_data; ++ /* Initialize the current level of the Freq resource ++ * to the frequency set by u-boot. ++ */ ++ if (strcmp(resp->name, "mpu_freq") == 0) ++ /* MPU freq in Mhz */ ++ resp->curr_level = curr_vdd1_prcm_set->speed; ++ else if (strcmp(resp->name, "dsp_freq") == 0) ++ /* DSP freq in Mhz */ ++ resp->curr_level = get_freq(iva2_rate_table + MAX_VDD2_OPP, ++ curr_vdd1_prcm_set->opp); ++#endif ++ return; ++} ++ ++int set_freq(struct shared_resource *resp, u32 target_level) ++{ ++#ifdef CONFIG_MACH_OMAP_3430SDP ++ unsigned int vdd1_opp; ++ ++ if (strcmp(resp->name, "mpu_freq") == 0) ++ vdd1_opp = get_opp(vdd1_rate_table + MAX_VDD1_OPP, ++ target_level); ++ else if (strcmp(resp->name, "dsp_freq") == 0) ++ vdd1_opp = get_opp(iva2_rate_table + MAX_VDD1_OPP, ++ target_level); ++ ++ if (vdd1_opp == MIN_VDD1_OPP) ++ resource_release("vdd1_opp", &dummy_srf_dev); ++ else ++ resource_request("vdd1_opp", &dummy_srf_dev, vdd1_opp); ++ ++ resp->curr_level = target_level; ++#endif ++ return 0; ++} ++ ++int validate_freq(struct shared_resource *resp, u32 target_level) ++{ ++ return 0; ++} +Index: linux-omap-2.6/arch/arm/mach-omap2/resource34xx.h +=================================================================== +--- linux-omap-2.6.orig/arch/arm/mach-omap2/resource34xx.h 2008-08-07 +15:07:02.000000000 +0530 ++++ linux-omap-2.6/arch/arm/mach-omap2/resource34xx.h 2008-08-07 +15:31:42.000000000 +0530 +@@ -22,8 +22,17 @@ + #define __ARCH_ARM_MACH_OMAP2_RESOURCE_H + + #include ++#include ++#include + #include + ++extern struct vdd_prcm_config *curr_vdd1_prcm_set; ++extern struct vdd_prcm_config *curr_vdd2_prcm_set; ++extern unsigned int get_freq(struct vdd_prcm_config *, unsigned long); ++extern unsigned int get_opp(struct vdd_prcm_config *, unsigned long); ++extern struct vdd_prcm_config vdd1_rate_table[]; ++extern struct vdd_prcm_config vdd2_rate_table[]; ++extern struct vdd_prcm_config iva2_rate_table[]; + /** + * mpu_latency/core_latency are used to control the cpuidle C state. + */ +@@ -207,6 +216,66 @@ static struct shared_resource emu_pwrdm_ + .ops = &pd_lat_res_ops, + }; + ++void init_opp(struct shared_resource *resp); ++int set_opp(struct shared_resource *resp, u32 target_level); ++int validate_opp(struct shared_resource *resp, u32 target_level); ++void init_freq(struct shared_resource *resp); ++int set_freq(struct shared_resource *resp, u32 target_level); ++int validate_freq(struct shared_resource *resp, u32 target_level); ++ ++struct bus_throughput_db { ++ /* Throughput for each OPP/Freq of the bus */ ++ unsigned long throughput[3]; ++}; ++ ++static struct shared_resource_ops opp_res_ops = { ++ .init = init_opp, ++ .change_level = set_opp, ++ .validate_level = validate_opp, ++}; ++ ++static struct shared_resource vdd1_opp = { ++ .name = "vdd1_opp", ++ .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430), ++ .ops = &opp_res_ops, ++}; ++ ++/* Throughput in KiB/s */ ++static struct bus_throughput_db l3_throughput_db = { ++ .throughput[0] = 0, ++ .throughput[1] = 100, ++ .throughput[2] = 250, ++}; ++ ++static struct shared_resource vdd2_opp = { ++ .name = "vdd2_opp", ++ .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430), ++ .resource_data = &l3_throughput_db, ++ .ops = &opp_res_ops, ++}; ++ ++static char linked_res[] = "vdd1_opp"; ++ ++static struct shared_resource_ops freq_res_ops = { ++ .init = init_freq, ++ .change_level = set_freq, ++ .validate_level = validate_freq, ++}; ++ ++static struct shared_resource mpu_freq = { ++ .name = "mpu_freq", ++ .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430), ++ .resource_data = &linked_res, ++ .ops = &freq_res_ops, ++}; ++ ++static struct shared_resource dsp_freq = { ++ .name = "dsp_freq", ++ .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430), ++ .resource_data = &linked_res, ++ .ops = &freq_res_ops, ++}; ++ + struct shared_resource *resources_omap[] __initdata = { + &mpu_latency, + &core_latency, +@@ -220,6 +289,11 @@ struct shared_resource *resources_omap[] + &neon_pwrdm_latency, + &usbhost_pwrdm_latency, + &emu_pwrdm_latency, ++ /* OPP/frequency resources */ ++ &vdd1_opp, ++ &vdd2_opp, ++ &mpu_freq, ++ &dsp_freq, + NULL + }; + + + +-- +To unsubscribe from this list: send the line "unsubscribe linux-omap" in +the body of a message to majordomo@vger.kernel.org +More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/packages/linux/linux-omap2-git/beagleboard/07-omappm-srf-updates.eml b/packages/linux/linux-omap2-git/beagleboard/07-omappm-srf-updates.eml new file mode 100644 index 0000000000..735e991298 --- /dev/null +++ b/packages/linux/linux-omap2-git/beagleboard/07-omappm-srf-updates.eml @@ -0,0 +1,173 @@ +Updates the omap-pm apis with calls to SRF implementation + +Signed-off-by: Rajendra Nayak +--- + arch/arm/plat-omap/omap-pm-srf.c | 84 +++++++++------------------------------ + 1 files changed, 20 insertions(+), 64 deletions(-) + +Index: linux-omap-2.6/arch/arm/plat-omap/omap-pm-srf.c +=================================================================== +--- linux-omap-2.6.orig/arch/arm/plat-omap/omap-pm-srf.c 2008-07-21 +12:10:19.824596984 +0530 ++++ linux-omap-2.6/arch/arm/plat-omap/omap-pm-srf.c 2008-07-21 +12:10:21.626540178 +0530 +@@ -25,6 +25,7 @@ + #include + #include + #include ++#include + + /* Interface documentation is in asm/arch/omap-pm.h */ + #include +@@ -121,6 +122,7 @@ void omap_pm_set_max_dev_wakeup_lat(stru + WARN_ON(1); + return; + }; ++ + /* Look for the devices Power Domain */ + /* TODO: Put this back in once tiocp layer is available + tiocp_dev = container_of(dev, struct tiocp, dev); +@@ -138,19 +140,6 @@ void omap_pm_set_max_dev_wakeup_lat(stru + res_name = get_lat_res_name(pwrdm_dev->name); + resource_request(res_name, dev, t); + } +- +- /* +- * For current Linux, this needs to map the device to a +- * powerdomain, then go through the list of current max lat +- * constraints on that powerdomain and find the smallest. If +- * the latency constraint has changed, the code should +- * recompute the state to enter for the next powerdomain +- * state. Conceivably, this code should also determine +- * whether to actually disable the device clocks or not, +- * depending on how long it takes to re-enable the clocks. +- * +- * TI CDP code can call constraint_set here. +- */ + } + + void omap_pm_set_max_sdma_lat(struct device *dev, long t) +@@ -169,21 +158,9 @@ void omap_pm_set_max_sdma_lat(struct dev + "dev %s, t = %ld usec\n", dev_name(dev), t); + resource_request("core_latency", dev, t); + } +- +- /* +- * For current Linux PM QOS params, this code should scan the +- * list of maximum CPU and DMA latencies and select the +- * smallest, then set cpu_dma_latency pm_qos_param +- * accordingly. +- * +- * For future Linux PM QOS params, with separate CPU and DMA +- * latency params, this code should just set the dma_latency param. +- * +- * TI CDP code can call constraint_set here. +- */ +- + } + ++static struct device dummy_dsp_dev; + + /* + * DSP Bridge-specific constraints +@@ -200,6 +177,7 @@ const struct omap_opp *omap_pm_dsp_get_o + + return NULL; + } ++EXPORT_SYMBOL(omap_pm_dsp_get_opp_table); + + void omap_pm_dsp_set_min_opp(u8 opp_id) + { +@@ -210,36 +188,21 @@ void omap_pm_dsp_set_min_opp(u8 opp_id) + + pr_debug("OMAP PM: DSP requests minimum VDD1 OPP to be %d\n", opp_id); + +- /* +- * +- * For l-o dev tree, our VDD1 clk is keyed on OPP ID, so we +- * can just test to see which is higher, the CPU's desired OPP +- * ID or the DSP's desired OPP ID, and use whichever is +- * highest. +- * +- * In CDP12.14+, the VDD1 OPP custom clock that controls the DSP +- * rate is keyed on MPU speed, not the OPP ID. So we need to +- * map the OPP ID to the MPU speed for use with clk_set_rate() +- * if it is higher than the current OPP clock rate. +- * +- */ +-} ++ /* For now pass a dummy_dev struct for SRF to identify the caller. ++ * Maybe its good to have DSP pass this as an argument ++ */ ++ resource_request("vdd1_opp", &dummy_dsp_dev, opp_id); ++ return; + ++} ++EXPORT_SYMBOL(omap_pm_dsp_set_min_opp); + + u8 omap_pm_dsp_get_opp(void) + { + pr_debug("OMAP PM: DSP requests current DSP OPP ID\n"); +- +- /* +- * For l-o dev tree, call clk_get_rate() on VDD1 OPP clock +- * +- * CDP12.14+: +- * Call clk_get_rate() on the OPP custom clock, map that to an +- * OPP ID using the tables defined in board-*.c/chip-*.c files. +- */ +- +- return 0; ++ return resource_get_level("vdd1_opp"); + } ++EXPORT_SYMBOL(omap_pm_dsp_get_opp); + + /* + * CPUFreq-originated constraint +@@ -261,6 +224,8 @@ struct cpufreq_frequency_table **omap_pm + return NULL; + } + ++static struct device dummy_cpufreq_dev; ++ + void omap_pm_cpu_set_freq(unsigned long f) + { + if (f == 0) { +@@ -271,26 +236,17 @@ void omap_pm_cpu_set_freq(unsigned long + pr_debug("OMAP PM: CPUFreq requests CPU frequency to be set to %lu\n", + f); + +- /* +- * For l-o dev tree, determine whether MPU freq or DSP OPP id +- * freq is higher. Find the OPP ID corresponding to the +- * higher frequency. Call clk_round_rate() and clk_set_rate() +- * on the OPP custom clock. +- * +- * CDP should just be able to set the VDD1 OPP clock rate here. +- */ ++ resource_request("mpu_freq", &dummy_cpufreq_dev, f); ++ return; + } ++EXPORT_SYMBOL(omap_pm_cpu_set_freq); + + unsigned long omap_pm_cpu_get_freq(void) + { + pr_debug("OMAP PM: CPUFreq requests current CPU frequency\n"); +- +- /* +- * Call clk_get_rate() on the mpu_ck. +- */ +- +- return 0; ++ return resource_get_level("mpu_freq"); + } ++EXPORT_SYMBOL(omap_pm_cpu_get_freq); + + struct device omap_pm_dev; + + + +-- +To unsubscribe from this list: send the line "unsubscribe linux-omap" in +the body of a message to majordomo@vger.kernel.org +More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/packages/linux/linux-omap2-git/beagleboard/08-omappm-voltagescaling.eml b/packages/linux/linux-omap2-git/beagleboard/08-omappm-voltagescaling.eml new file mode 100644 index 0000000000..a7885774f4 --- /dev/null +++ b/packages/linux/linux-omap2-git/beagleboard/08-omappm-voltagescaling.eml @@ -0,0 +1,96 @@ +Adds Voltage scaling support + +Signed-off-by: Rajendra Nayak +--- + arch/arm/mach-omap2/board-3430sdp.c | 12 ++++++++++++ + arch/arm/mach-omap2/resource34xx.c | 17 ++++++++++++++++- + arch/arm/mach-omap2/resource34xx.h | 3 +++ + 3 files changed, 31 insertions(+), 1 deletion(-) + +Index: linux-omap-2.6/arch/arm/mach-omap2/board-3430sdp.c +=================================================================== +--- linux-omap-2.6.orig/arch/arm/mach-omap2/board-3430sdp.c 2008-08-11 +17:16:07.000000000 +0530 ++++ linux-omap-2.6/arch/arm/mach-omap2/board-3430sdp.c 2008-08-11 +17:17:58.000000000 +0530 +@@ -94,6 +94,18 @@ struct vdd_prcm_config iva2_rate_table[] + + #define TWL4030_MSECURE_GPIO 22 + ++u8 vdd1_volts[MAX_VDD1_OPP] = { ++ /* Vsel corresponding to 0.9V (OPP1), 1.00V (OPP2), ++ * 1.20V (OPP3), 1.27V (OPP4), 1.35 (OPP5) ++ */ ++ 0x18, 0x20, 0x30, 0x36, 0x3C ++}; ++ ++u8 vdd2_volts[MAX_VDD2_OPP] = { ++ /* Vsel corresponding to 0.9V (OPP1), 1.00V (OPP2), 1.15 (OPP3) */ ++ 0x18, 0x20, 0x2C ++}; ++ + static struct resource sdp3430_smc91x_resources[] = { + [0] = { + .start = OMAP34XX_ETHR_START, +Index: linux-omap-2.6/arch/arm/mach-omap2/resource34xx.c +=================================================================== +--- linux-omap-2.6.orig/arch/arm/mach-omap2/resource34xx.c 2008-08-11 +17:17:23.000000000 +0530 ++++ linux-omap-2.6/arch/arm/mach-omap2/resource34xx.c 2008-08-11 +17:22:02.000000000 +0530 +@@ -19,6 +19,7 @@ + #include + #include + #include ++#include "smartreflex.h" + #include "resource34xx.h" + + /** +@@ -174,10 +175,24 @@ int set_opp(struct shared_resource *resp + { + #ifdef CONFIG_MACH_OMAP_3430SDP + unsigned long mpu_freq; ++ ++ if (resp->curr_level == target_level) ++ return 0; ++ + if (strcmp(resp->name, "vdd1_opp") == 0) { + mpu_freq = get_freq(vdd1_rate_table + MAX_VDD1_OPP, + target_level); +- clk_set_rate(vdd1_clk, mpu_freq); ++ if (resp->curr_level > target_level) { ++ /* Scale Frequency and then voltage */ ++ clk_set_rate(vdd1_clk, mpu_freq); ++ sr_voltagescale_vcbypass(PRCM_VDD1, ++ vdd1_volts[target_level-1]); ++ } else { ++ /* Scale Voltage and then frequency */ ++ sr_voltagescale_vcbypass(PRCM_VDD1, ++ vdd1_volts[target_level-1]); ++ clk_set_rate(vdd1_clk, mpu_freq); ++ } + resp->curr_level = curr_vdd1_prcm_set->opp; + } else if (strcmp(resp->name, "vdd2_opp") == 0) { + /* Not supported yet */ +Index: linux-omap-2.6/arch/arm/mach-omap2/resource34xx.h +=================================================================== +--- linux-omap-2.6.orig/arch/arm/mach-omap2/resource34xx.h 2008-08-11 +17:17:23.000000000 +0530 ++++ linux-omap-2.6/arch/arm/mach-omap2/resource34xx.h 2008-08-11 +17:17:58.000000000 +0530 +@@ -33,6 +33,9 @@ extern unsigned int get_opp(struct vdd_p + extern struct vdd_prcm_config vdd1_rate_table[]; + extern struct vdd_prcm_config vdd2_rate_table[]; + extern struct vdd_prcm_config iva2_rate_table[]; ++extern u8 vdd1_volts[]; ++extern u8 vdd2_volts[]; ++extern int sr_voltagescale_vcbypass(u32 target_opp, u8 vsel); + /** + * mpu_latency/core_latency are used to control the cpuidle C state. + */ + + +-- +To unsubscribe from this list: send the line "unsubscribe linux-omap" in +the body of a message to majordomo@vger.kernel.org +More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/packages/linux/linux-omap2-git/beagleboard/09-omappm-vdd2-scaling.eml b/packages/linux/linux-omap2-git/beagleboard/09-omappm-vdd2-scaling.eml new file mode 100644 index 0000000000..532a9f7975 --- /dev/null +++ b/packages/linux/linux-omap2-git/beagleboard/09-omappm-vdd2-scaling.eml @@ -0,0 +1,102 @@ +Adds VDD2 scaling support + +Signed-off-by: Rajendra Nayak +--- + arch/arm/mach-omap2/resource34xx.c | 35 +++++++++++++++++++++++++++++++++-- + arch/arm/plat-omap/omap-pm-srf.c | 15 +++++---------- + 2 files changed, 38 insertions(+), 12 deletions(-) + +Index: linux-omap-2.6/arch/arm/mach-omap2/resource34xx.c +=================================================================== +--- linux-omap-2.6.orig/arch/arm/mach-omap2/resource34xx.c 2008-07-21 +12:10:22.032527379 +0530 ++++ linux-omap-2.6/arch/arm/mach-omap2/resource34xx.c 2008-07-21 +12:10:22.479513287 +0530 +@@ -174,7 +174,9 @@ void init_opp(struct shared_resource *re + int set_opp(struct shared_resource *resp, u32 target_level) + { + #ifdef CONFIG_MACH_OMAP_3430SDP +- unsigned long mpu_freq; ++ unsigned long mpu_freq, l3_freq, tput; ++ int ind; ++ struct bus_throughput_db *tput_db; + + if (resp->curr_level == target_level) + return 0; +@@ -195,7 +197,36 @@ int set_opp(struct shared_resource *resp + } + resp->curr_level = curr_vdd1_prcm_set->opp; + } else if (strcmp(resp->name, "vdd2_opp") == 0) { +- /* Not supported yet */ ++ tput_db = resp->resource_data; ++ tput = target_level; ++ /* using the throughput db map to the appropriate L3 Freq */ ++ for (ind = 1; ind < MAX_VDD2_OPP; ind++) ++ if (tput_db->throughput[ind] > tput) ++ target_level = ind; ++ ++ /* Set the highest OPP possible */ ++ if (ind == MAX_VDD2_OPP) ++ target_level = ind-1; ++ ++ if (resp->curr_level == target_level) ++ return 0; ++ ++ resp->curr_level = target_level; ++ ++ l3_freq = get_freq(vdd2_rate_table + MAX_VDD2_OPP, ++ target_level); ++ if (resp->curr_level > target_level) { ++ /* Scale Frequency and then voltage */ ++ clk_set_rate(vdd2_clk, l3_freq); ++ sr_voltagescale_vcbypass(PRCM_VDD2, ++ vdd2_volts[target_level-1]); ++ } else { ++ /* Scale Voltage and then frequency */ ++ sr_voltagescale_vcbypass(PRCM_VDD2, ++ vdd2_volts[target_level-1]); ++ clk_set_rate(vdd1_clk, l3_freq); ++ } ++ resp->curr_level = curr_vdd2_prcm_set->opp; + } + #endif + return 0; +Index: linux-omap-2.6/arch/arm/plat-omap/omap-pm-srf.c +=================================================================== +--- linux-omap-2.6.orig/arch/arm/plat-omap/omap-pm-srf.c 2008-07-21 +12:10:21.626540178 +0530 ++++ linux-omap-2.6/arch/arm/plat-omap/omap-pm-srf.c 2008-07-21 +12:10:22.479513287 +0530 +@@ -95,21 +95,16 @@ void omap_pm_set_min_bus_tput(struct dev + return; + }; + +- if (r == 0) ++ if (r == 0) { + pr_debug("OMAP PM: remove min bus tput constraint: " + "dev %s for agent_id %d\n", dev_name(dev), agent_id); +- else ++ resource_release("vdd2_opp", r); ++ } else { + pr_debug("OMAP PM: add min bus tput constraint: " + "dev %s for agent_id %d: rate %ld KiB\n", + dev_name(dev), agent_id, r); +- +- /* +- * This code should model the interconnect and compute the +- * required clock frequency, convert that to a VDD2 OPP ID, then +- * set the VDD2 OPP appropriately. +- * +- * TI CDP code can call constraint_set here on the VDD2 OPP. +- */ ++ resource_request("vdd2_opp", dev, r); ++ } + } + + void omap_pm_set_max_dev_wakeup_lat(struct device *dev, long t) + + +-- +To unsubscribe from this list: send the line "unsubscribe linux-omap" in +the body of a message to majordomo@vger.kernel.org +More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/packages/linux/linux-omap2-git/beagleboard/10-omappm-off-mode.eml b/packages/linux/linux-omap2-git/beagleboard/10-omappm-off-mode.eml new file mode 100644 index 0000000000..3728440159 --- /dev/null +++ b/packages/linux/linux-omap2-git/beagleboard/10-omappm-off-mode.eml @@ -0,0 +1,35 @@ +A Temp patch needed only till OFF mode is implemented. + +Signed-off-by: Rajendra Nayak +--- + arch/arm/mach-omap2/resource34xx.c | 4 ++-- + 1 files changed, 2 insertions(+), 2 deletions(-) + +Index: linux-omap-2.6/arch/arm/mach-omap2/resource34xx.c +=================================================================== +--- linux-omap-2.6.orig/arch/arm/mach-omap2/resource34xx.c 2008-08-11 +17:39:00.000000000 +0530 ++++ linux-omap-2.6/arch/arm/mach-omap2/resource34xx.c 2008-08-11 +17:39:00.000000000 +0530 +@@ -131,13 +131,13 @@ int set_pd_latency(struct shared_resourc + omap2_clkdm_wakeup(pwrdm->pwrdm_clkdms[i]); + } + pwrdm_set_next_pwrst(pwrdm, PWRDM_POWER_ON); +- pwrdm_set_next_pwrst(pwrdm, pd_lat_level); ++ pwrdm_set_next_pwrst(pwrdm, PWRDM_POWER_RET); + for (i = 0; pwrdm->pwrdm_clkdms[i]; i++) { + omap2_clkdm_sleep(pwrdm->pwrdm_clkdms[i]); + omap2_clkdm_allow_idle(pwrdm->pwrdm_clkdms[i]); + } + } else +- pwrdm_set_next_pwrst(pwrdm, pd_lat_level); ++ pwrdm_set_next_pwrst(pwrdm, PWRDM_POWER_RET); + break; + case PWRDM_POWER_ON: + pwrdm_set_next_pwrst(pwrdm, PWRDM_POWER_ON); + + +-- +To unsubscribe from this list: send the line "unsubscribe linux-omap" in +the body of a message to majordomo@vger.kernel.org +More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/packages/linux/linux-omap2-git/beagleboard/defconfig b/packages/linux/linux-omap2-git/beagleboard/defconfig index c07d0ab5e2..b3ea5f9557 100644 --- a/packages/linux/linux-omap2-git/beagleboard/defconfig +++ b/packages/linux/linux-omap2-git/beagleboard/defconfig @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit # Linux kernel version: 2.6.26-omap1 -# Tue Aug 5 20:34:54 2008 +# Mon Aug 11 16:37:34 2008 # CONFIG_ARM=y CONFIG_SYS_SUPPORTS_APM_EMULATION=y @@ -189,10 +189,14 @@ CONFIG_OMAP_MCBSP=y # CONFIG_OMAP_MBOX_FWK is not set # CONFIG_OMAP_MPU_TIMER is not set CONFIG_OMAP_32K_TIMER=y +CONFIG_OMAP_32K_TIMER_HZ=128 CONFIG_OMAP_DM_TIMER=y # CONFIG_OMAP_LL_DEBUG_UART1 is not set # CONFIG_OMAP_LL_DEBUG_UART2 is not set CONFIG_OMAP_LL_DEBUG_UART3=y +# CONFIG_OMAP_PM_NONE is not set +# CONFIG_OMAP_PM_NOOP is not set +CONFIG_OMAP_PM_SRF=y CONFIG_ARCH_OMAP34XX=y CONFIG_ARCH_OMAP3430=y @@ -256,7 +260,7 @@ CONFIG_NO_HZ=y CONFIG_HIGH_RES_TIMERS=y CONFIG_GENERIC_CLOCKEVENTS_BUILD=y # CONFIG_PREEMPT is not set -CONFIG_HZ=100 +CONFIG_HZ=128 CONFIG_AEABI=y # CONFIG_OABI_COMPAT is not set # CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set @@ -307,19 +311,19 @@ CONFIG_CPU_IDLE_GOV_MENU=y # CONFIG_CPU_FREQ=y CONFIG_CPU_FREQ_TABLE=y -# CONFIG_CPU_FREQ_DEBUG is not set +CONFIG_CPU_FREQ_DEBUG=y CONFIG_CPU_FREQ_STAT=y CONFIG_CPU_FREQ_STAT_DETAILS=y -CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y +# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set # CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set # CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set -# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set +CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y # CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set CONFIG_CPU_FREQ_GOV_PERFORMANCE=y -# CONFIG_CPU_FREQ_GOV_POWERSAVE is not set +CONFIG_CPU_FREQ_GOV_POWERSAVE=y CONFIG_CPU_FREQ_GOV_USERSPACE=y CONFIG_CPU_FREQ_GOV_ONDEMAND=y -# CONFIG_CPU_FREQ_GOV_CONSERVATIVE is not set +CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y # # Floating point emulation diff --git a/packages/linux/linux-omap2-git/beagleboard/omap23-pm-noop.eml b/packages/linux/linux-omap2-git/beagleboard/omap23-pm-noop.eml new file mode 100644 index 0000000000..48ff5da822 --- /dev/null +++ b/packages/linux/linux-omap2-git/beagleboard/omap23-pm-noop.eml @@ -0,0 +1,894 @@ +The interface provides device drivers, CPUFreq, and DSP Bridge with a +means of controlling OMAP power management parameters that are not yet +supported by the Linux PM PMQOS interface. Copious documentation and +rationale is in the patch in Documentation/arm/OMAP/omap_pm and the +interface header file, include/asm-arm/arch-omap/omap-pm.h. + +Signed-off-by: Paul Walmsley +--- + + Documentation/arm/OMAP/omap_pm | 185 +++++++++++++++++++++ + arch/arm/mach-omap2/io.c | 4 + arch/arm/plat-omap/Kconfig | 13 + + arch/arm/plat-omap/Makefile | 1 + arch/arm/plat-omap/omap-pm-noop.c | 309 +++++++++++++++++++++++++++++++++++ + include/asm-arm/arch-omap/omap-pm.h | 300 ++++++++++++++++++++++++++++++++++ + 6 files changed, 812 insertions(+), 0 deletions(-) + create mode 100644 Documentation/arm/OMAP/omap_pm + create mode 100644 arch/arm/plat-omap/omap-pm-noop.c + create mode 100644 include/asm-arm/arch-omap/omap-pm.h + +diff --git a/Documentation/arm/OMAP/omap_pm b/Documentation/arm/OMAP/omap_pm +new file mode 100644 +index 0000000..2ec2034 +--- /dev/null ++++ b/Documentation/arm/OMAP/omap_pm +@@ -0,0 +1,185 @@ ++ ++Rationale: the OMAP PM interface ++================================ ++ ++ ++Existing PM interfaces are currently not ideal for OMAP ++------------------------------------------------------- ++ ++There are two PM interfaces in use with publicly-distributed OMAP ++Linux code: the TI Shared Resource Framework (SRF) and the Linux PM ++QoS parameters code. Neither interface is ideal for Linux OMAP code. ++ ++TI Shared Resource Framework: ++ ++The TI CDP 12.14 tree drivers currently use the TI Shared Resource ++Framework (SRF) to control chip power management. Use of the SRF ++allowed TI to get the drivers up and running quickly with considerable ++power savings; and the SRF provided debugging support. However, many ++of the SRF parameters are specified in OMAP-specific terms, such as ++target OPPs, rather than in terms of actual latency or throughput ++requirements. OPPs change depending on OMAP silicon revisions or OMAP ++types, and are meaningless for other architectures, so drivers shared ++between OMAP and other architectures would also have to #ifdef out the ++SRF constraints. ++ ++Linux PM QoS parameters: ++ ++In February 2008, the mainline Linux kernel added code that is ++somewhat similar to the SRF: the Linux PM QoS parameters code, located ++in kernel/pm_qos_params.c. (This code replaced the latency management ++code that was present in earlier kernels.) Ideally, OMAP drivers ++would be able to use this Linux PM QoS code directly, but the PM QoS ++code has some drawbacks: ++ ++- It combines some power management parameters that should be kept ++ separate for maximum power savings on OMAP3. For example, in the PM ++ QoS code, CPU and system DMA wakeup latency are combined into one ++ parameter; but on OMAP3, these are distinct parameters. The Linux ++ PM QoS code also combines all network power management knobs into ++ two non-device-specific parameters. OMAP2/3 systems can have ++ different network devices with different power management ++ requirements - for example, a wired Ethernet interface may have ++ different latency and throughput constraints than a WiFi interface. ++ ++- It does not yet cover all of the power management capabilities of ++ the OMAP3 architecture. It does not express latency constraints on ++ a per-device or per-powerdomain basis; it only covers ++ cpu_dma_latency and network throughput and latency, which would not ++ cover most of the OMAP3 devices. ++ ++The result is that drivers using the current Linux PM QoS layer ++directly are unlikely to reach the same level of power efficiency as ++driver code using the Shared Resource Framework. ++ ++To summarize, the SRF provides significant power savings, but ++expresses power constraints in an OMAP- and silicon-revision-specific ++way; and the PM QoS layer expresses PM constraints in a cross-platform ++manner (in terms of fundamental physical units), but does not support ++per-powerdomain constraints and does not cover many of the OMAP power ++management features. ++ ++ ++A medium-term alternative: the OMAP PM interface ++------------------------------------------------ ++ ++We need a way for driver code to express PM parameters which: ++ ++- supports the range of power management parameters present in the TI SRF; ++ ++- separates the drivers from the underlying PM parameter ++ implementation, whether it is the TI SRF or Linux PM QoS or Linux ++ latency framework or something else; ++ ++- specifies PM parameters in terms of fundamental units, such as ++ latency and throughput, rather than units which are specific to OMAP ++ or to particular OMAP variants; ++ ++- allows drivers which are shared with other architectures (e.g., ++ DaVinci) to add these constraints in a way which won't affect non-OMAP ++ systems, ++ ++- can be implemented immediately with minimal disruption of other ++ architectures. ++ ++ ++We therefore propose the OMAP PM interface, including the following ++four power management functions for driver code: ++ ++1. Set the maximum MPU wakeup latency: ++ (*pdata->set_max_mpu_wakeup_lat)(struct device *dev, unsigned long t) ++ ++2. Set the maximum device wakeup latency: ++ (*pdata->set_max_dev_wakeup_lat)(struct device *dev, unsigned long t) ++ ++3. Set the maximum system DMA transfer start latency (CORE pwrdm): ++ (*pdata->set_max_sdma_lat)(struct device *dev, long t) ++ ++4. Set the minimum bus throughput needed by a device: ++ (*pdata->set_min_bus_tput)(struct device *dev, u8 agent_id, unsigned long r) ++ ++ ++These functions are extensively documented in the OMAP PM interface header ++file, included in the patch. ++ ++ ++The OMAP PM layer is intended to be temporary ++--------------------------------------------- ++ ++The intention is that, in time, the Linux PM QoS layer should support ++the range of power management features present in OMAP3. As this ++happens, existing drivers using the OMAP PM interface can be modified ++to use the Linux PM QoS code; and the OMAP PM interface can disappear. ++ ++ ++Driver usage of the OMAP PM functions ++------------------------------------- ++ ++As the 'pdata' in the above examples indicates, these functions are ++exposed to drivers through function pointers in driver .platform_data ++structures. The function pointers are initialized by the board-*.c ++files to point to the corresponding OMAP PM functions: ++.set_max_dev_wakeup_lat will point to ++omap_pm_set_max_dev_wakeup_lat(), etc. Other architectures which do ++not support these functions should leave these function pointers set ++to NULL. Drivers should use the following idiom: ++ ++ if (pdata->set_max_dev_wakeup_lat) ++ (*pdata->set_max_dev_wakeup_lat)(dev, t); ++ ++The most common usage of these functions will probably be to specify ++the maximum time from when an interrupt occurs, to when the device ++becomes accessible. To accomplish this, driver writers should use the ++set_max_mpu_wakeup_lat() function to to constrain the MPU wakeup ++latency, and the set_max_dev_wakeup_lat() function to constrain the ++device wakeup latency (from clk_enable() to accessibility). For ++example, ++ ++ /* Limit MPU wakeup latency */ ++ if (pdata->set_max_mpu_wakeup_lat) ++ (*pdata->set_max_mpu_wakeup_lat)(dev, tc); ++ ++ /* Limit device powerdomain wakeup latency */ ++ if (pdata->set_max_dev_wakeup_lat) ++ (*pdata->set_max_dev_wakeup_lat)(dev, td); ++ ++ /* total wakeup latency in this example: (tc + td) */ ++ ++ ++The PM parameters can be overwritten by calling the function again ++with the new value. The settings can be removed by calling the ++function with a t argument of -1 (except in the case of ++set_max_bus_tput(), which should be called with an r argument of 0). ++ ++ ++Other specialized interface functions ++------------------------------------- ++ ++The four functions listed above are intended to be usable by any ++device driver. However, DSPBridge and CPUFreq have special ++requirements. DSPBridge expresses target DSP performance levels in ++terms of OPP IDs. CPUFreq expresses target MPU performance levels in ++terms of MPU frequency. The OMAP PM interface contains functions for ++these specialized cases to convert that input information (OPPs/MPU ++frequency) into the form that the underlying power management ++implementation needs: ++ ++5. (*pdata->omap_pm_dsp_get_opp_table)(void) ++ ++6. (*pdata->omap_pm_dsp_set_min_opp)(u8 opp_id) ++ ++7. (*pdata->omap_pm_dsp_get_opp)(void) ++ ++8. (*pdata->omap_pm_cpu_get_freq_table)(void) ++ ++9. (*pdata->omap_pm_cpu_set_freq)(unsigned long f) ++ ++10. (*pdata->omap_pm_cpu_get_freq)(void) ++ ++ ++There are also functions for use by the clockdomain layer to indicate ++that a powerdomain should wake up or be put to sleep: ++ ++11. (*pdata->omap_pm_pwrdm_active)(struct powerdomain *pwrdm) ++ ++12. (*pdata->omap_pm_pwrdm_inactive)(struct powerdomain *pwrdm) +diff --git a/arch/arm/plat-omap/Kconfig b/arch/arm/plat-omap/Kconfig +index 960c13f..ca790ac 100644 +--- a/arch/arm/plat-omap/Kconfig ++++ b/arch/arm/plat-omap/Kconfig +@@ -247,4 +247,17 @@ config OMAP_SERIAL_WAKE + + endmenu + ++choice ++ prompt "OMAP PM layer selection" ++ depends on ARCH_OMAP ++ default OMAP_PM_NOOP ++ ++config OMAP_PM_NONE ++ bool "No PM layer" ++ ++config OMAP_PM_NOOP ++ bool "No-op/debug PM layer" ++ ++endchoice ++ + endif +diff --git a/arch/arm/plat-omap/Makefile b/arch/arm/plat-omap/Makefile +index 93bbb64..d5453d5 100644 +--- a/arch/arm/plat-omap/Makefile ++++ b/arch/arm/plat-omap/Makefile +@@ -29,3 +29,4 @@ obj-$(CONFIG_OMAP_MMU_FWK) += mmu.o + # OMAP mailbox framework + obj-$(CONFIG_OMAP_MBOX_FWK) += mailbox.o + ++obj-$(CONFIG_OMAP_PM_NOOP) += omap-pm-noop.o +\ No newline at end of file +diff --git a/arch/arm/plat-omap/omap-pm-noop.c b/arch/arm/plat-omap/omap-pm-noop.c +new file mode 100644 +index 0000000..5ff7962 +--- /dev/null ++++ b/arch/arm/plat-omap/omap-pm-noop.c +@@ -0,0 +1,309 @@ ++/* ++ * omap-pm-noop.c - OMAP power management interface - dummy version ++ * ++ * This code implements the OMAP power management interface to ++ * drivers, CPUIdle, CPUFreq, and DSP Bridge. It is strictly for ++ * debug/demonstration use, as it does nothing but printk() whenever a ++ * function is called (when DEBUG is defined, below) ++ * ++ * Copyright (C) 2008 Texas Instruments, Inc. ++ * Copyright (C) 2008 Nokia Corporation ++ * Paul Walmsley ++ * ++ * Interface developed by (in alphabetical order): ++ * Karthik Dasu, Amish Lakhani, Tony Lindgren, Rajendra Nayak, Sakari ++ * Poussa, Veeramanikandan Raju, Igor Stoppa, Paul Walmsley, Richard ++ * Woodruff ++ */ ++ ++#undef DEBUG ++ ++#include ++#include ++#include ++ ++/* Interface documentation is in asm/arch/omap-pm.h */ ++#include ++ ++#include ++ ++static struct omap_opp *dsp_opps; ++static struct omap_opp *mpu_opps; ++ ++/* ++ * Device-driver-originated constraints (via board-*.c files) ++ */ ++ ++void omap_pm_set_max_mpu_wakeup_lat(struct device *dev, long t) ++{ ++ if (!dev || t < -1) { ++ WARN_ON(1); ++ return; ++ }; ++ ++ if (t == -1) ++ pr_debug("OMAP PM: remove max MPU wakeup latency constraint: " ++ "dev %s\n", dev_name(dev)); ++ else ++ pr_debug("OMAP PM: add max MPU wakeup latency constraint: " ++ "dev %s, t = %ld usec\n", dev_name(dev), t); ++ ++ /* ++ * For current Linux, this needs to map the MPU to a ++ * powerdomain, then go through the list of current max lat ++ * constraints on the MPU and find the smallest. If ++ * the latency constraint has changed, the code should ++ * recompute the state to enter for the next powerdomain ++ * state. ++ * ++ * TI CDP code can call constraint_set here. ++ */ ++} ++ ++void omap_pm_set_min_bus_tput(struct device *dev, u8 agent_id, unsigned long r) ++{ ++ if (!dev || agent_id != OCP_INITIATOR_AGENT || ++ agent_id != OCP_TARGET_AGENT) { ++ WARN_ON(1); ++ return; ++ }; ++ ++ if (r == 0) ++ pr_debug("OMAP PM: remove min bus tput constraint: " ++ "dev %s for agent_id %d\n", dev_name(dev), agent_id); ++ else ++ pr_debug("OMAP PM: add min bus tput constraint: " ++ "dev %s for agent_id %d: rate %ld KiB\n", ++ dev_name(dev), agent_id, r); ++ ++ /* ++ * This code should model the interconnect and compute the ++ * required clock frequency, convert that to a VDD2 OPP ID, then ++ * set the VDD2 OPP appropriately. ++ * ++ * TI CDP code can call constraint_set here on the VDD2 OPP. ++ */ ++} ++ ++void omap_pm_set_max_dev_wakeup_lat(struct device *dev, long t) ++{ ++ if (!dev || t < -1) { ++ WARN_ON(1); ++ return; ++ }; ++ ++ if (t == -1) ++ pr_debug("OMAP PM: remove max device latency constraint: " ++ "dev %s\n", dev_name(dev)); ++ else ++ pr_debug("OMAP PM: add max device latency constraint: " ++ "dev %s, t = %ld usec\n", dev_name(dev), t); ++ ++ /* ++ * For current Linux, this needs to map the device to a ++ * powerdomain, then go through the list of current max lat ++ * constraints on that powerdomain and find the smallest. If ++ * the latency constraint has changed, the code should ++ * recompute the state to enter for the next powerdomain ++ * state. Conceivably, this code should also determine ++ * whether to actually disable the device clocks or not, ++ * depending on how long it takes to re-enable the clocks. ++ * ++ * TI CDP code can call constraint_set here. ++ */ ++} ++ ++void omap_pm_set_max_sdma_lat(struct device *dev, long t) ++{ ++ if (!dev || t < -1) { ++ WARN_ON(1); ++ return; ++ }; ++ ++ if (t == -1) ++ pr_debug("OMAP PM: remove max DMA latency constraint: " ++ "dev %s\n", dev_name(dev)); ++ else ++ pr_debug("OMAP PM: add max DMA latency constraint: " ++ "dev %s, t = %ld usec\n", dev_name(dev), t); ++ ++ /* ++ * For current Linux PM QOS params, this code should scan the ++ * list of maximum CPU and DMA latencies and select the ++ * smallest, then set cpu_dma_latency pm_qos_param ++ * accordingly. ++ * ++ * For future Linux PM QOS params, with separate CPU and DMA ++ * latency params, this code should just set the dma_latency param. ++ * ++ * TI CDP code can call constraint_set here. ++ */ ++ ++} ++ ++ ++/* ++ * DSP Bridge-specific constraints ++ */ ++ ++const struct omap_opp *omap_pm_dsp_get_opp_table(void) ++{ ++ pr_debug("OMAP PM: DSP request for OPP table\n"); ++ ++ /* ++ * Return DSP frequency table here: The final item in the ++ * array should have .rate = .opp_id = 0. ++ */ ++ ++ return NULL; ++} ++ ++void omap_pm_dsp_set_min_opp(u8 opp_id) ++{ ++ if (opp_id == 0) { ++ WARN_ON(1); ++ return; ++ } ++ ++ pr_debug("OMAP PM: DSP requests minimum VDD1 OPP to be %d\n", opp_id); ++ ++ /* ++ * ++ * For l-o dev tree, our VDD1 clk is keyed on OPP ID, so we ++ * can just test to see which is higher, the CPU's desired OPP ++ * ID or the DSP's desired OPP ID, and use whichever is ++ * highest. ++ * ++ * In CDP12.14+, the VDD1 OPP custom clock that controls the DSP ++ * rate is keyed on MPU speed, not the OPP ID. So we need to ++ * map the OPP ID to the MPU speed for use with clk_set_rate() ++ * if it is higher than the current OPP clock rate. ++ * ++ */ ++} ++ ++ ++u8 omap_pm_dsp_get_opp(void) ++{ ++ pr_debug("OMAP PM: DSP requests current DSP OPP ID\n"); ++ ++ /* ++ * For l-o dev tree, call clk_get_rate() on VDD1 OPP clock ++ * ++ * CDP12.14+: ++ * Call clk_get_rate() on the OPP custom clock, map that to an ++ * OPP ID using the tables defined in board-*.c/chip-*.c files. ++ */ ++ ++ return 0; ++} ++ ++/* ++ * CPUFreq-originated constraint ++ * ++ * In the future, this should be handled by custom OPP clocktype ++ * functions. ++ */ ++ ++struct cpufreq_frequency_table **omap_pm_cpu_get_freq_table(void) ++{ ++ pr_debug("OMAP PM: CPUFreq request for frequency table\n"); ++ ++ /* ++ * Return CPUFreq frequency table here: loop over ++ * all VDD1 clkrates, pull out the mpu_ck frequencies, build ++ * table ++ */ ++ ++ return NULL; ++} ++ ++void omap_pm_cpu_set_freq(unsigned long f) ++{ ++ if (f == 0) { ++ WARN_ON(1); ++ return; ++ } ++ ++ pr_debug("OMAP PM: CPUFreq requests CPU frequency to be set to %lu\n", ++ f); ++ ++ /* ++ * For l-o dev tree, determine whether MPU freq or DSP OPP id ++ * freq is higher. Find the OPP ID corresponding to the ++ * higher frequency. Call clk_round_rate() and clk_set_rate() ++ * on the OPP custom clock. ++ * ++ * CDP should just be able to set the VDD1 OPP clock rate here. ++ */ ++} ++ ++unsigned long omap_pm_cpu_get_freq(void) ++{ ++ pr_debug("OMAP PM: CPUFreq requests current CPU frequency\n"); ++ ++ /* ++ * Call clk_get_rate() on the mpu_ck. ++ */ ++ ++ return 0; ++} ++ ++/* ++ * Powerdomain usecounting hooks ++ */ ++ ++void omap_pm_pwrdm_active(struct powerdomain *pwrdm) ++{ ++ if (!pwrdm) { ++ WARN_ON(1); ++ return; ++ }; ++ ++ pr_debug("OMAP PM: powerdomain %s is becoming active\n", pwrdm->name); ++ ++ /* ++ * CDP code apparently will need these for the enable_power_domain() ++ * and disable_power_domain() functions. ++ */ ++} ++ ++void omap_pm_pwrdm_inactive(struct powerdomain *pwrdm) ++{ ++ if (!pwrdm) { ++ WARN_ON(1); ++ return; ++ }; ++ ++ pr_debug("OMAP PM: powerdomain %s is becoming inactive\n", ++ pwrdm->name); ++ ++ /* ++ * CDP code apparently will need these for the enable_power_domain() ++ * and disable_power_domain() functions. ++ */ ++} ++ ++/* ++ * Should be called before clk framework since clk fw will call ++ * omap_pm_pwrdm_{in,}active() ++ */ ++int __init omap_pm_if_early_init(void) ++{ ++ return 0; ++} ++ ++/* Must be called after clock framework is initialized */ ++int __init omap_pm_if_init(struct omap_opp *mpu_opp_table, ++ struct omap_opp *dsp_opp_table) ++{ ++ mpu_opps = mpu_opp_table; ++ dsp_opps = dsp_opp_table; ++ return 0; ++} ++ ++void omap_pm_if_exit(void) ++{ ++ /* Deallocate CPUFreq frequency table here */ ++} ++ +diff --git a/include/asm-arm/arch-omap/omap-pm.h b/include/asm-arm/arch-omap/omap-pm.h +new file mode 100644 +index 0000000..d272dba +--- /dev/null ++++ b/include/asm-arm/arch-omap/omap-pm.h +@@ -0,0 +1,300 @@ ++/* ++ * omap-pm.h - OMAP power management interface ++ * ++ * Copyright (C) 2008 Texas Instruments, Inc. ++ * Copyright (C) 2008 Nokia Corporation ++ * Paul Walmsley ++ * ++ * Interface developed by (in alphabetical order): Karthik Dasu, Jouni ++ * Högander, Tony Lindgren, Rajendra Nayak, Sakari Poussa, ++ * Veeramanikandan Raju, Anand Sawant, Igor Stoppa, Paul Walmsley, ++ * Richard Woodruff ++ */ ++ ++#ifndef ASM_ARM_ARCH_OMAP_OMAP_PM_H ++#define ASM_ARM_ARCH_OMAP_OMAP_PM_H ++ ++#include ++#include ++ ++#include "powerdomain.h" ++ ++/** ++ * struct omap_opp - clock frequency-to-OPP ID table for DSP, MPU ++ * @rate: target clock rate ++ * @opp_id: OPP ID ++ * @min_vdd: minimum VDD1 voltage (in millivolts) for this OPP ++ * ++ * Operating performance point data. Can vary by OMAP chip and board. ++ */ ++struct omap_opp { ++ unsigned long rate; ++ u8 opp_id; ++ u16 min_vdd; ++}; ++ ++/* ++ * agent_id values for use with omap_pm_set_min_bus_tput(): ++ * ++ * OCP_INITIATOR_AGENT is only valid for devices that can act as ++ * initiators -- it represents the device's L3 interconnect ++ * connection. OCP_TARGET_AGENT represents the device's L4 ++ * interconnect connection. ++ */ ++#define OCP_TARGET_AGENT 1 ++#define OCP_INITIATOR_AGENT 2 ++ ++/** ++ * omap_pm_if_early_init - OMAP PM init code called before clock fw init ++ * ++ * Initialize anything that must be configured before the clock ++ * framework starts. The "_if_" is to avoid name collisions with the ++ * PM idle-loop code. ++ */ ++int __init omap_pm_if_early_init(void); ++ ++/** ++ * omap_pm_if_init - OMAP PM init code called after clock fw init ++ * @mpu_opp_table: array ptr to struct omap_opp for MPU ++ * @dsp_opp_table: array ptr to struct omap_opp for DSP ++ * ++ * The main initialization code. OPP tables are passed in here. The ++ * "_if_" is to avoid name collisions with the PM idle-loop code. ++ */ ++int __init omap_pm_if_init(struct omap_opp *mpu_opp_table, ++ struct omap_opp *dsp_opp_table); ++ ++/** ++ * omap_pm_if_exit - OMAP PM exit code ++ * ++ * Exit code; currently unused. The "_if_" is to avoid name ++ * collisions with the PM idle-loop code. ++ */ ++void omap_pm_if_exit(void); ++ ++/* ++ * Device-driver-originated constraints (via board-*.c files, platform_data) ++ */ ++ ++ ++/** ++ * omap_pm_set_max_mpu_wakeup_lat - set the maximum MPU wakeup latency ++ * @dev: struct device * requesting the constraint ++ * @t: maximum MPU wakeup latency in microseconds ++ * ++ * Request that the maximum interrupt latency for the MPU to be no ++ * greater than 't' microseconds. "Interrupt latency" in this case is ++ * defined as the elapsed time from the occurrence of a hardware or ++ * timer interrupt to the time when the device driver's interrupt ++ * service routine has been entered by the MPU. ++ * ++ * It is intended that underlying PM code will use this information to ++ * determine what power state to put the MPU powerdomain into, and ++ * possibly the CORE powerdomain as well, since interrupt handling ++ * code currently runs from SDRAM. Advanced PM or board*.c code may ++ * also configure interrupt controller priorities, OCP bus priorities, ++ * CPU speed(s), etc. ++ * ++ * This function will not affect device wakeup latency, e.g., time ++ * elapsed from when a device driver enables a hardware device with ++ * clk_enable(), to when the device is ready for register access or ++ * other use. To control this device wakeup latency, use ++ * set_max_dev_wakeup_lat() ++ * ++ * Multiple calls to set_max_mpu_wakeup_lat() will replace the ++ * previous t value. To remove the latency target for the MPU, call ++ * with t = -1. ++ * ++ * No return value. ++ */ ++void omap_pm_set_max_mpu_wakeup_lat(struct device *dev, long t); ++ ++ ++/** ++ * omap_pm_set_min_bus_tput - set minimum bus throughput needed by device ++ * @dev: struct device * requesting the constraint ++ * @tbus_id: interconnect to operate on (OCP_{INITIATOR,TARGET}_AGENT) ++ * @r: minimum throughput (in KiB/s) ++ * ++ * Request that the minimum data throughput on the OCP interconnect ++ * attached to device 'dev' interconnect agent 'tbus_id' be no less ++ * than 'r' KiB/s. ++ * ++ * It is expected that the OMAP PM or bus code will use this ++ * information to set the interconnect clock to run at the lowest ++ * possible speed that satisfies all current system users. The PM or ++ * bus code will adjust the estimate based on its model of the bus, so ++ * device driver authors should attempt to specify an accurate ++ * quantity for their device use case, and let the PM or bus code ++ * overestimate the numbers as necessary to handle request/response ++ * latency, other competing users on the system, etc. On OMAP2/3, if ++ * a driver requests a minimum L4 interconnect speed constraint, the ++ * code will also need to add an minimum L3 interconnect speed ++ * constraint, ++ * ++ * Multiple calls to set_min_bus_tput() will replace the previous rate ++ * value for this device. To remove the interconnect throughput ++ * restriction for this device, call with r = 0. ++ * ++ * No return value. ++ */ ++void omap_pm_set_min_bus_tput(struct device *dev, u8 agent_id, unsigned long r); ++ ++ ++/** ++ * omap_pm_set_max_dev_wakeup_lat - set the maximum device enable latency ++ * @dev: struct device * ++ * @t: maximum device wakeup latency in microseconds ++ * ++ * Request that the maximum amount of time necessary for a device to ++ * become accessible after its clocks are enabled should be no greater ++ * than 't' microseconds. Specifically, this represents the time from ++ * when a device driver enables device clocks with clk_enable(), to ++ * when the register reads and writes on the device will succeed. ++ * This function should be called before clk_disable() is called, ++ * since the power state transition decision may be made during ++ * clk_disable(). ++ * ++ * It is intended that underlying PM code will use this information to ++ * determine what power state to put the powerdomain enclosing this ++ * device into. ++ * ++ * Multiple calls to set_max_dev_wakeup_lat() will replace the ++ * previous wakeup latency values for this device. To remove the wakeup ++ * latency restriction for this device, call with t = -1. ++ * ++ * No return value. ++ */ ++void omap_pm_set_max_dev_wakeup_lat(struct device *dev, long t); ++ ++ ++/** ++ * omap_pm_set_max_sdma_lat - set the maximum system DMA transfer start latency ++ * @dev: struct device * ++ * @t: maximum DMA transfer start latency in microseconds ++ * ++ * Request that the maximum system DMA transfer start latency for this ++ * device 'dev' should be no greater than 't' microseconds. "DMA ++ * transfer start latency" here is defined as the elapsed time from ++ * when a device (e.g., McBSP) requests that a system DMA transfer ++ * start or continue, to the time at which data starts to flow into ++ * that device from the system DMA controller. ++ * ++ * It is intended that underlying PM code will use this information to ++ * determine what power state to put the CORE powerdomain into. ++ * ++ * Since system DMA transfers may not involve the MPU, this function ++ * will not affect MPU wakeup latency. Use set_max_cpu_lat() to do ++ * so. Similarly, this function will not affect device wakeup latency ++ * -- use set_max_dev_wakeup_lat() to affect that. ++ * ++ * Multiple calls to set_max_sdma_lat() will replace the previous t ++ * value for this device. To remove the maximum DMA latency for this ++ * device, call with t = -1. ++ * ++ * No return value. ++ */ ++void omap_pm_set_max_sdma_lat(struct device *dev, long t); ++ ++ ++/* ++ * DSP Bridge-specific constraints ++ */ ++ ++/** ++ * omap_pm_dsp_get_opp_table - get OPP->DSP clock frequency table ++ * ++ * Intended for use by DSPBridge. Returns an array of OPP->DSP clock ++ * frequency entries. The final item in the array should have .rate = ++ * .opp_id = 0. ++ */ ++const struct omap_opp *omap_pm_dsp_get_opp_table(void); ++ ++/** ++ * omap_pm_dsp_set_min_opp - receive desired OPP target ID from DSP Bridge ++ * @opp_id: target DSP OPP ID ++ * ++ * Set a minimum OPP ID for the DSP. This is intended to be called ++ * only from the DSP Bridge MPU-side driver. Unfortunately, the only ++ * information that code receives from the DSP/BIOS load estimator is the ++ * target OPP ID; hence, this interface. No return value. ++ */ ++void omap_pm_dsp_set_min_opp(u8 opp_id); ++ ++/** ++ * omap_pm_dsp_get_opp - report the current DSP OPP ID ++ * ++ * Report the current OPP for the DSP. Since on OMAP3, the DSP and ++ * MPU share a single voltage domain, the OPP ID returned back may ++ * represent a higher DSP speed than the OPP requested via ++ * omap_pm_dsp_set_min_opp(). ++ * ++ * Returns the current VDD1 OPP ID, or 0 upon error. ++ */ ++u8 omap_pm_dsp_get_opp(void); ++ ++ ++/* ++ * CPUFreq-originated constraint ++ * ++ * In the future, this should be handled by custom OPP clocktype ++ * functions. ++ */ ++ ++/** ++ * omap_pm_cpu_get_freq_table - return a cpufreq_frequency_table array ptr ++ * ++ * Provide a frequency table usable by CPUFreq for the current chip/board. ++ * Returns a pointer to a struct cpufreq_frequency_table array or NULL ++ * upon error. ++ */ ++struct cpufreq_frequency_table **omap_pm_cpu_get_freq_table(void); ++ ++/** ++ * omap_pm_cpu_set_freq - set the current minimum MPU frequency ++ * @f: MPU frequency in Hz ++ * ++ * Set the current minimum CPU frequency. The actual CPU frequency ++ * used could end up higher if the DSP requested a higher OPP. ++ * Intended to be called by plat-omap/cpu_omap.c:omap_target(). No ++ * return value. ++ */ ++void omap_pm_cpu_set_freq(unsigned long f); ++ ++/** ++ * omap_pm_cpu_get_freq - report the current CPU frequency ++ * ++ * Returns the current MPU frequency, or 0 upon error. ++ */ ++unsigned long omap_pm_cpu_get_freq(void); ++ ++ ++/* ++ * Powerdomain usecounting hooks ++ */ ++ ++/** ++ * omap_pm_pwrdm_active - indicate that a power domain has become active ++ * @pwrdm: struct powerdomain * ++ * ++ * Notify the OMAP PM layer that the power domain 'pwrdm' has become active, ++ * presumably due to a device driver enabling an underlying clock. This ++ * function is intended to be called by a clockdomain node in the clock ++ * framework. No return value. ++ */ ++void omap_pm_pwrdm_active(struct powerdomain *pwrdm); ++ ++ ++/** ++ * omap_pm_pwrdm_inactive - indicate that a power domain has become inactive ++ * @pwrdm: struct powerdomain * ++ * ++ * Notify the OMAP PM layer that the power domain 'pwrdm' has become ++ * inactive, presumably due to a device driver disabling an underlying ++ * clock. This function is intended to be called by a clockdomain ++ * node in the clock framework. No return value. ++ */ ++void omap_pm_pwrdm_inactive(struct powerdomain *pwrdm); ++ ++ ++#endif + + +-- +To unsubscribe from this list: send the line "unsubscribe linux-omap" in +the body of a message to majordomo@vger.kernel.org +More majordomo info at http://vger.kernel.org/majordomo-info.html + +--- /tmp/io.c 2008-08-11 15:29:32.000000000 +0200 ++++ git/arch/arm/mach-omap2/io.c 2008-08-11 15:30:20.083198000 +0200 +@@ -38,6 +38,8 @@ + #include + #include "clockdomains.h" + ++#include ++ + /* + * The machine specific code may provide the extra mapping besides the + * default mapping provided here. +@@ -197,9 +199,11 @@ + void __init omap2_init_common_hw(struct omap_sdrc_params *sp) + { + omap2_mux_init(); ++ omap_pm_if_early_init(); + pwrdm_init(powerdomains_omap); + clkdm_init(clockdomains_omap, clkdm_pwrdm_autodeps); + omap2_clk_init(); ++ omap_pm_if_init(NULL, NULL); + omap2_sdrc_init(sp); + gpmc_init(); + } diff --git a/packages/linux/linux-omap2_git.bb b/packages/linux/linux-omap2_git.bb index 5749d4fc0c..8682c33404 100644 --- a/packages/linux/linux-omap2_git.bb +++ b/packages/linux/linux-omap2_git.bb @@ -6,7 +6,7 @@ SRCREV = "d6daf8d8cc5ccf90247def5551ee9c3e8555e848" PV = "2.6.26" #PV = "2.6.26+2.6.27-rc1+${PR}+git${SRCREV}" -PR = "r59" +PR = "r60" SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6.git;protocol=git \ file://defconfig" @@ -37,6 +37,21 @@ SRC_URI_append_beagleboard = " file://no-harry-potter.diff;patch=1 \ file://no-cortex-deadlock.patch;patch=1 \ file://01-make_tick_gptimer_configurable;patch=1 \ file://read_die_ids.patch;patch=1 \ + file://omap23-pm-noop.eml;patch=1 \ + file://01-omappm-srf.eml;patch=1 \ + file://02-omappm-mpu-latency-modeling.eml;patch=1 \ + file://03-omappm-omap3srf.eml;patch=1 \ + file://04-omappm-srf-noop.eml;patch=1 \ + file://05-omappm-virtualclocks.eml;patch=1 \ + file://06-omappm-opp-resource-modeling.eml;patch=1 \ + file://07-omappm-srf-updates.eml;patch=1 \ + file://08-omappm-voltagescaling.eml;patch=1 \ + file://09-omappm-vdd2-scaling.eml;patch=1 \ + file://10-omappm-off-mode.eml;patch=1 \ + file://01-postrate-notifier.eml;patch=1 \ + file://02-postrate-notifier.eml;patch=1 \ + file://01-omap3-cpufreq.eml;patch=1 \ + file://01-beagle-cpufreq.diff;patch=1 \ " SRC_URI_append_omap3evm = " file://no-harry-potter.diff;patch=1 \ -- cgit v1.2.3 From 8044ec1f6a518659108ecf23c7c69d5d3f488ca8 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Mon, 11 Aug 2008 19:00:11 +0000 Subject: sdlquake: add 1.0.9 --- packages/quake/sdlquake/.mtn2git_empty | 0 packages/quake/sdlquake/sdlquake-no-x86-asm.diff | 35 ++++++++++++++++++++++++ packages/quake/sdlquake_1.0.9.bb | 21 ++++++++++++++ 3 files changed, 56 insertions(+) create mode 100644 packages/quake/sdlquake/.mtn2git_empty create mode 100644 packages/quake/sdlquake/sdlquake-no-x86-asm.diff create mode 100644 packages/quake/sdlquake_1.0.9.bb (limited to 'packages') diff --git a/packages/quake/sdlquake/.mtn2git_empty b/packages/quake/sdlquake/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/quake/sdlquake/sdlquake-no-x86-asm.diff b/packages/quake/sdlquake/sdlquake-no-x86-asm.diff new file mode 100644 index 0000000000..e87094b1da --- /dev/null +++ b/packages/quake/sdlquake/sdlquake-no-x86-asm.diff @@ -0,0 +1,35 @@ +--- /tmp/Makefile.am 2008-08-11 20:31:09.000000000 +0200 ++++ sdlquake-1.0.9/Makefile.am 2008-08-11 20:55:00.263198000 +0200 +@@ -33,7 +33,6 @@ + crc.h \ + cvar.c \ + cvar.h \ +- d_copy.S \ + d_edge.c \ + d_fill.c \ + d_iface.h \ +@@ -48,7 +47,6 @@ + d_sprite.c \ + d_surf.c \ + d_zpoint.c \ +- dosasm.S \ + dosisms.h \ + draw.c \ + draw.h \ +@@ -103,7 +101,6 @@ + r_sprite.c \ + r_surf.c \ + r_vars.c \ +- r_varsa.S \ + render.h \ + resource.h \ + sbar.c \ +@@ -136,7 +133,7 @@ + world.h \ + zone.c \ + zone.h \ +- $(X86_SRCS) $(NONX86_SRCS) ++ $(NONX86_SRCS) + + X86_SRCS = \ + snd_mixa.S \ diff --git a/packages/quake/sdlquake_1.0.9.bb b/packages/quake/sdlquake_1.0.9.bb new file mode 100644 index 0000000000..2fe26993f0 --- /dev/null +++ b/packages/quake/sdlquake_1.0.9.bb @@ -0,0 +1,21 @@ +DESCRIPTION = "Quake 1" +SECTION = "x11/games" +PRIORITY = "optional" +DEPENDS = "libsdl-x11 libsdl-mixer libsdl-net zlib libxau" +LICENSE = "GPL" + +SRC_URI = "http://www.libsdl.org/projects/quake/src/sdlquake-${PV}.tar.gz \ + file://sdlquake-no-x86-asm.diff;patch=1 \ + " + +inherit autotools + +# Fix up broken autofoo +do_configure_prepend() { + touch INSTALL NEWS README AUTHORS ChangeLog + echo "AM_PROG_AS" >> configure.in +} + + + + -- cgit v1.2.3 From 431697c77724dc806279f6d5806cbd07d0d943bc Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Mon, 11 Aug 2008 20:01:19 +0000 Subject: libsdl-x11: fix cdrom support and enable it --- packages/libsdl/files/sdl-cdfix.patch | 11 +++++++++++ packages/libsdl/libsdl-x11_1.2.11.bb | 7 ++++--- 2 files changed, 15 insertions(+), 3 deletions(-) create mode 100644 packages/libsdl/files/sdl-cdfix.patch (limited to 'packages') diff --git a/packages/libsdl/files/sdl-cdfix.patch b/packages/libsdl/files/sdl-cdfix.patch new file mode 100644 index 0000000000..a6a36483d4 --- /dev/null +++ b/packages/libsdl/files/sdl-cdfix.patch @@ -0,0 +1,11 @@ +--- /tmp/SDL_syscdrom.c 2008-08-11 21:56:58.000000000 +0200 ++++ SDL-1.2.11/src/cdrom/linux/SDL_syscdrom.c 2008-08-11 21:57:07.813198000 +0200 +@@ -51,6 +51,8 @@ + #ifdef __SVR4 + #include + #endif ++#include ++ + + /* Define this to use the alternative getmntent() code */ + #ifndef __SVR4 diff --git a/packages/libsdl/libsdl-x11_1.2.11.bb b/packages/libsdl/libsdl-x11_1.2.11.bb index 5b49898c01..5a309c57a8 100644 --- a/packages/libsdl/libsdl-x11_1.2.11.bb +++ b/packages/libsdl/libsdl-x11_1.2.11.bb @@ -3,15 +3,16 @@ require libsdl.inc # extra-keys.patch is missing DEFAULT_PREFERENCE = "-1" -PR = "r0" +PR = "r1" SRC_URI = "http://www.libsdl.org/release/SDL-${PV}.tar.gz \ file://acinclude.m4 \ file://configure_tweak.patch;patch=1 \ file://pagesize.patch;patch=1 \ - file://kernel-asm-page.patch;patch=1 " + file://kernel-asm-page.patch;patch=1 \ + file://sdl-cdfix.patch;patch=1 " -EXTRA_OECONF = "--disable-static --disable-debug --disable-cdrom --enable-threads --enable-timers --enable-endian \ +EXTRA_OECONF = "--disable-static --disable-debug --enable-cdrom --enable-threads --enable-timers --enable-endian \ --enable-file --enable-oss --enable-alsa --disable-esd --disable-arts \ --disable-diskaudio --disable-nas --disable-esd-shared --disable-esdtest \ --disable-mintaudio --disable-nasm --enable-video-x11 --disable-video-dga \ -- cgit v1.2.3 From 32cc1d9b121cd57d9fc9278832676e1ea8899b6a Mon Sep 17 00:00:00 2001 From: Paul Eggleton Date: Mon, 11 Aug 2008 22:22:32 +0000 Subject: libopie2: add fix for cursor key rotation on spitz --- packages/libopie/libopie2/spitz_rotate_fix.patch | 23 +++++++++++++++++++++++ packages/libopie/libopie2_1.2.3.bb | 5 +++-- 2 files changed, 26 insertions(+), 2 deletions(-) create mode 100644 packages/libopie/libopie2/spitz_rotate_fix.patch (limited to 'packages') diff --git a/packages/libopie/libopie2/spitz_rotate_fix.patch b/packages/libopie/libopie2/spitz_rotate_fix.patch new file mode 100644 index 0000000000..428ec0d4cf --- /dev/null +++ b/packages/libopie/libopie2/spitz_rotate_fix.patch @@ -0,0 +1,23 @@ +--- libopie2/opiecore/device/odevice_zaurus.cpp 30 Jul 2007 19:10:52 -0000 1.53 ++++ libopie2/opiecore/device/odevice_zaurus.cpp 8 Aug 2008 23:15:15 -0000 +@@ -760,9 +760,18 @@ + case Key_Up : + case Key_Down : + { +- if (rotation()==Rot90) { +- newkeycode = Key_Left + ( keycode - Key_Left + 3 ) % 4; ++ if (d->m_model == Model_Zaurus_SLC3000) { ++ // This ensures that the cursor keys work correctly and that the ++ // side wheel works as expected when the screen is flipped over ++ if (rotation() == Rot270) ++ newkeycode = Key_Left + ( keycode - Key_Left + 1 ) % 4; + } ++ else { ++ if (rotation()==Rot90) ++ newkeycode = Key_Left + ( keycode - Key_Left + 3 ) % 4; ++ } ++ break; ++ + } + break; + diff --git a/packages/libopie/libopie2_1.2.3.bb b/packages/libopie/libopie2_1.2.3.bb index 288b689d52..522fe55f7c 100644 --- a/packages/libopie/libopie2_1.2.3.bb +++ b/packages/libopie/libopie2_1.2.3.bb @@ -1,11 +1,12 @@ require ${PN}.inc -PR = "r4" +PR = "r5" SRC_URI = "${HANDHELDS_CVS};tag=${TAG};module=opie/libopie2 \ file://include.pro \ file://gcc-syntax-fix.patch;patch=1 \ file://h4000_and_default_rot.patch;patch=1 \ - file://ipaq_rotate_fix.patch;patch=1" + file://ipaq_rotate_fix.patch;patch=1 \ + file://spitz_rotate_fix.patch;patch=1" SRC_URI_append_poodle = " file://poodle-2.6-hotkeys.patch;patch=1" -- cgit v1.2.3 From e997b01fc930a17a0172c508e86dceeecc177666 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Mon, 11 Aug 2008 22:43:13 +0000 Subject: udev 124: merge from poky, add blacklist back in till we properly merge with poky * disabled by default, needs testing --- packages/udev/udev-124/.mtn2git_empty | 0 packages/udev/udev-124/flags.patch | 56 +++++++++ packages/udev/udev-124/init | 60 ++++++++++ packages/udev/udev-124/local.rules | 31 +++++ packages/udev/udev-124/noasmlinkage.patch | 45 +++++++ packages/udev/udev-124/permissions.rules | 131 +++++++++++++++++++++ packages/udev/udev-124/run.rules | 14 +++ packages/udev/udev-124/udev.rules | 116 ++++++++++++++++++ .../udevtrigger_add_devname_filtering.patch | 99 ++++++++++++++++ packages/udev/udev-124/vol_id_ld.patch | 17 +++ packages/udev/udev_124.bb | 60 ++++++++++ 11 files changed, 629 insertions(+) create mode 100644 packages/udev/udev-124/.mtn2git_empty create mode 100644 packages/udev/udev-124/flags.patch create mode 100644 packages/udev/udev-124/init create mode 100644 packages/udev/udev-124/local.rules create mode 100644 packages/udev/udev-124/noasmlinkage.patch create mode 100644 packages/udev/udev-124/permissions.rules create mode 100644 packages/udev/udev-124/run.rules create mode 100644 packages/udev/udev-124/udev.rules create mode 100644 packages/udev/udev-124/udevtrigger_add_devname_filtering.patch create mode 100644 packages/udev/udev-124/vol_id_ld.patch create mode 100644 packages/udev/udev_124.bb (limited to 'packages') diff --git a/packages/udev/udev-124/.mtn2git_empty b/packages/udev/udev-124/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/udev/udev-124/flags.patch b/packages/udev/udev-124/flags.patch new file mode 100644 index 0000000000..13f20eb6a8 --- /dev/null +++ b/packages/udev/udev-124/flags.patch @@ -0,0 +1,56 @@ +--- + Makefile | 16 ++++++++-------- + 1 file changed, 8 insertions(+), 8 deletions(-) + +Index: udev-115/Makefile +=================================================================== +--- udev-115.orig/Makefile 2007-08-24 01:29:54.000000000 +0200 ++++ udev-115/Makefile 2007-09-20 17:21:45.000000000 +0200 +@@ -112,39 +112,39 @@ + AR = $(CROSS_COMPILE)ar + RANLIB = $(CROSS_COMPILE)ranlib + +-CFLAGS += -g -Wall -pipe -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 ++override CFLAGS = -g -Wall -pipe -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 + WARNINGS = -Wstrict-prototypes -Wsign-compare -Wshadow \ + -Wchar-subscripts -Wmissing-declarations -Wnested-externs \ + -Wpointer-arith -Wcast-align -Wsign-compare -Wmissing-prototypes +-CFLAGS += $(WARNINGS) ++override CFLAGS += $(WARNINGS) + + LDFLAGS += -Wl,-warn-common,--as-needed + + OPTFLAGS = -Os +-CFLAGS += $(OPTFLAGS) ++override CFLAGS += $(OPTFLAGS) + + ifeq ($(strip $(USE_LOG)),true) +- CFLAGS += -DUSE_LOG ++ override CFLAGS += -DUSE_LOG + endif + + # if DEBUG is enabled, then we do not strip + ifeq ($(strip $(DEBUG)),true) +- CFLAGS += -DDEBUG ++ override CFLAGS += -DDEBUG + endif + + ifeq ($(strip $(USE_GCOV)),true) +- CFLAGS += -fprofile-arcs -ftest-coverage ++ override CFLAGS += -fprofile-arcs -ftest-coverage + LDFLAGS += -fprofile-arcs + endif + + ifeq ($(strip $(USE_SELINUX)),true) + UDEV_OBJS += udev_selinux.o + LIB_OBJS += -lselinux -lsepol +- CFLAGS += -DUSE_SELINUX ++ override CFLAGS += -DUSE_SELINUX + endif + + ifeq ($(strip $(USE_STATIC)),true) +- CFLAGS += -DUSE_STATIC ++ override CFLAGS += -DUSE_STATIC + LDFLAGS += -static + endif + diff --git a/packages/udev/udev-124/init b/packages/udev/udev-124/init new file mode 100644 index 0000000000..b78a07b20f --- /dev/null +++ b/packages/udev/udev-124/init @@ -0,0 +1,60 @@ +#!/bin/sh -e + +### BEGIN INIT INFO +# Provides: udev +# Required-Start: mountvirtfs +# Required-Stop: +# Default-Start: S +# Default-Stop: +# Short-Description: Start udevd, populate /dev and load drivers. +### END INIT INFO + +export TZ=/etc/localtime + +[ -d /sys/class ] || exit 1 +[ -r /proc/mounts ] || exit 1 +[ -x /sbin/udevd ] || exit 1 +[ -f /etc/udev/udev.conf ] && . /etc/udev/udev.conf + +kill_udevd() { + if [ -x /sbin/pidof ]; then + pid=`/sbin/pidof -x udevd` + [ -n "$pid" ] && kill $pid + fi +} + +export ACTION=add +# propagate /dev from /sys +echo -n "Starting udev" + +# mount the tmpfs on /dev, if not already done +LANG=C awk "\$2 == \"/dev\" && \$4 == \"tmpfs\" { exit 1 }" /proc/mounts && { + mount -n -o mode=0755 -t tmpfs none "/dev" + mkdir -m 0755 /dev/pts + mkdir -m 0755 /dev/shm +} + +if [ -e /etc/dev.tar ]; then + (cd /; tar xf /etc/dev.tar) + not_first_boot=1 +fi + +# make_extra_nodes +kill_udevd > "/dev/null" 2>&1 + + # trigger the sorted events + echo -e '\000\000\000\000' > /proc/sys/kernel/hotplug + /sbin/udevd -d + + /sbin/udevadm control env STARTUP=1 + if [ "$not_first_boot" != "" ];then + /sbin/udevadm trigger --subsystem-nomatch=tty --subsystem-nomatch=mem --subsystem-nomatch=vc --subsystem-nomatch=vtconsole --subsystem-nomatch=misc --subsystem-nomatch=dcon --subsystem-nomatch=pci_bus --subsystem-nomatch=graphics --subsystem-nomatch=backlight --subsystem-nomatch=video4linux --subsystem-nomatch=platform + (/sbin/udevadm settle --timeout=3; /sbin/udevadm control env STARTUP=)& + else + /sbin/udevadm trigger + /sbin/udevadm settle + (cd /; tar cf /etc/dev.tar /dev) + fi + +echo +exit 0 diff --git a/packages/udev/udev-124/local.rules b/packages/udev/udev-124/local.rules new file mode 100644 index 0000000000..5b926018f5 --- /dev/null +++ b/packages/udev/udev-124/local.rules @@ -0,0 +1,31 @@ +# There are a number of modifiers that are allowed to be used in some +# of the different fields. They provide the following subsitutions: +# +# %n the "kernel number" of the device. +# For example, 'sda3' has a "kernel number" of '3' +# %e the smallest number for that name which does not matches an existing node +# %k the kernel name for the device +# %M the kernel major number for the device +# %m the kernel minor number for the device +# %b the bus id for the device +# %c the string returned by the PROGRAM +# %s{filename} the content of a sysfs attribute +# %% the '%' char itself +# + +# Media automounting +SUBSYSTEM=="block", ACTION=="add" RUN+="/etc/udev/scripts/mount.sh" +SUBSYSTEM=="block", ACTION=="remove" RUN+="/etc/udev/scripts/mount.sh" + +# Handle network interface setup +SUBSYSTEM=="net", ACTION=="add" RUN+="/etc/udev/scripts/network.sh" +SUBSYSTEM=="net", ACTION=="remove" RUN+="/etc/udev/scripts/network.sh" + +# The first rtc device is symlinked to /dev/rtc +KERNEL=="rtc0", SYMLINK+="rtc" + +# Try and modprobe for drivers for new hardware +ACTION=="add", DEVPATH=="/devices/*", ENV{MODALIAS}=="?*", RUN+="/sbin/modprobe $env{MODALIAS}" + +# Create a symlink to any touchscreen input device +SUBSYSTEM=="input", KERNEL=="event[0-9]*", SYSFS{modalias}=="input:*-e0*,3,*a0,1,*18,*", SYMLINK+="input/touchscreen0" diff --git a/packages/udev/udev-124/noasmlinkage.patch b/packages/udev/udev-124/noasmlinkage.patch new file mode 100644 index 0000000000..d58a7ea4de --- /dev/null +++ b/packages/udev/udev-124/noasmlinkage.patch @@ -0,0 +1,45 @@ +diff -pru udev-124.orig/test-udev.c udev-124/test-udev.c +--- udev-124.orig/test-udev.c 2008-06-12 06:24:30.000000000 +0100 ++++ udev-124/test-udev.c 2008-07-07 14:43:37.000000000 +0100 +@@ -46,7 +46,7 @@ void log_message(int priority, const cha + } + #endif + +-static void asmlinkage sig_handler(int signum) ++static void sig_handler(int signum) + { + switch (signum) { + case SIGALRM: +diff -pru udev-124.orig/udevd.c udev-124/udevd.c +--- udev-124.orig/udevd.c 2008-06-12 06:24:30.000000000 +0100 ++++ udev-124/udevd.c 2008-07-07 14:43:58.000000000 +0100 +@@ -87,7 +87,7 @@ void log_message(int priority, const cha + + #endif + +-static void asmlinkage udev_event_sig_handler(int signum) ++static void udev_event_sig_handler(int signum) + { + if (signum == SIGALRM) + exit(1); +@@ -798,7 +798,7 @@ static struct udevd_uevent_msg *get_netl + return msg; + } + +-static void asmlinkage sig_handler(int signum) ++static void sig_handler(int signum) + { + switch (signum) { + case SIGINT: +diff -pru udev-124.orig/udevmonitor.c udev-124/udevmonitor.c +--- udev-124.orig/udevmonitor.c 2008-06-12 06:24:30.000000000 +0100 ++++ udev-124/udevmonitor.c 2008-07-07 14:44:24.000000000 +0100 +@@ -97,7 +97,7 @@ static int init_uevent_netlink_sock(void + return 0; + } + +-static void asmlinkage sig_handler(int signum) ++static void sig_handler(int signum) + { + if (signum == SIGINT || signum == SIGTERM) + udev_exit = 1; diff --git a/packages/udev/udev-124/permissions.rules b/packages/udev/udev-124/permissions.rules new file mode 100644 index 0000000000..205b733292 --- /dev/null +++ b/packages/udev/udev-124/permissions.rules @@ -0,0 +1,131 @@ +ACTION!="add", GOTO="permissions_end" + +# workarounds needed to synchronize with sysfs +# only needed for kernels < v2.6.18-rc1 +ENV{PHYSDEVPATH}!="?*", ENV{PHYSDEVBUS}=="?*", WAIT_FOR_SYSFS="bus" +SUBSYSTEM=="scsi", KERNEL=="[0-9]*:[0-9]*", WAIT_FOR_SYSFS="ioerr_cnt" +# only needed for kernels < 2.6.16 +SUBSYSTEM=="net", WAIT_FOR_SYSFS="address" +# only needed for kernels < 2.6.17 +SUBSYSTEM=="net", ENV{DRIVER}=="?*", WAIT_FOR_SYSFS="device/driver" + +# devices needed to load the drivers providing them +KERNEL=="tun", OPTIONS+="ignore_remove" +KERNEL=="ppp", OPTIONS+="ignore_remove" +KERNEL=="loop[0-9]*", OPTIONS+="ignore_remove" + +# default permissions for block devices +SUBSYSTEM=="block", GROUP="disk" +# the aacraid driver is broken and reports that disks removable (see #404927) +SUBSYSTEM=="block", ATTRS{removable}=="1", \ + DRIVERS!="aacraid", GROUP="floppy" +# all block devices on these buses are "removable" +SUBSYSTEM=="block", SUBSYSTEMS=="usb|ieee1394|mmc|pcmcia", GROUP="floppy" + +# IDE devices +KERNEL=="hd[a-z]|pcd[0-9]*", DRIVERS=="ide-cdrom|pcd", \ + IMPORT{program}="cdrom_id --export $tempnode" +ENV{ID_CDROM}=="?*", GROUP="cdrom" +KERNEL=="ht[0-9]*", GROUP="tape" +KERNEL=="nht[0-9]*", GROUP="tape" + +# SCSI devices +KERNEL=="sr[0-9]*", IMPORT{program}="cdrom_id --export $tempnode" +SUBSYSTEMS=="scsi", ATTRS{type}=="1", GROUP="tape" +SUBSYSTEMS=="scsi", ATTRS{type}=="3", ATTRS{vendor}=="HP", GROUP="scanner" +SUBSYSTEMS=="scsi", ATTRS{type}=="3", ATTRS{vendor}=="Epson", GROUP="scanner" +SUBSYSTEMS=="scsi", ATTRS{type}=="3", ATTRS{vendor}=="EPSON", GROUP="scanner" +SUBSYSTEMS=="scsi", ATTRS{type}=="4", GROUP="cdrom" +SUBSYSTEMS=="scsi", ATTRS{type}=="5", GROUP="cdrom" +SUBSYSTEMS=="scsi", ATTRS{type}=="6", GROUP="scanner" +SUBSYSTEMS=="scsi", ATTRS{type}=="8", GROUP="tape" + +# USB devices +KERNEL=="legousbtower*", MODE="0666" +KERNEL=="lp[0-9]*", SUBSYSTEMS=="usb", GROUP="lp" + +# usbfs-like devices +SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", \ + MODE="0664" + +# iRiver music players +SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="plugdev", \ + ATTRS{idVendor}=="4102", ATTRS{idProduct}=="10[01][135789]" + +# serial devices +SUBSYSTEM=="tty", GROUP="dialout" +SUBSYSTEM=="capi", GROUP="dialout" +SUBSYSTEM=="slamr", GROUP="dialout" +SUBSYSTEM=="zaptel", GROUP="dialout" + +# vc devices (all members of the tty subsystem) +KERNEL=="ptmx", MODE="0666", GROUP="root" +KERNEL=="console", MODE="0600", GROUP="root" +KERNEL=="tty", MODE="0666", GROUP="root" +KERNEL=="tty[0-9]*", GROUP="root" +KERNEL=="pty*", MODE="0666", GROUP="tty" + +# video devices +SUBSYSTEM=="video4linux", GROUP="video" +SUBSYSTEM=="drm", GROUP="video" +SUBSYSTEM=="dvb", GROUP="video" +SUBSYSTEM=="em8300", GROUP="video" +SUBSYSTEM=="graphics", GROUP="video" +SUBSYSTEM=="nvidia", GROUP="video" + +# misc devices +KERNEL=="random", MODE="0666" +KERNEL=="urandom", MODE="0666" +KERNEL=="mem", MODE="0640", GROUP="kmem" +KERNEL=="kmem", MODE="0640", GROUP="kmem" +KERNEL=="port", MODE="0640", GROUP="kmem" +KERNEL=="full", MODE="0666" +KERNEL=="null", MODE="0666" +KERNEL=="zero", MODE="0666" +KERNEL=="inotify", MODE="0666" +KERNEL=="sgi_fetchop", MODE="0666" +KERNEL=="sonypi", MODE="0666" +KERNEL=="agpgart", GROUP="video" +KERNEL=="nvram", GROUP="nvram" +KERNEL=="rtc|rtc[0-9]*", GROUP="audio" +KERNEL=="tpm*", MODE="0600", OWNER="tss", GROUP="tss" +KERNEL=="fuse", GROUP="fuse" +KERNEL=="kqemu", MODE="0666" +KERNEL=="kvm", GROUP="kvm" +KERNEL=="tun", MODE="0666", + +KERNEL=="cdemu[0-9]*", GROUP="cdrom" +KERNEL=="pktcdvd[0-9]*", GROUP="cdrom" +KERNEL=="pktcdvd", MODE="0644" + +KERNEL=="uverbs*", GROUP="rdma" +KERNEL=="ucm*", GROUP="rdma" +KERNEL=="rdma_ucm", GROUP="rdma" + +# printers and parallel devices +SUBSYSTEM=="printer", GROUP="lp" +SUBSYSTEM=="ppdev", GROUP="lp" +KERNEL=="irlpt*", GROUP="lp" +KERNEL=="pt[0-9]*", GROUP="tape" +KERNEL=="pht[0-9]*", GROUP="tape" + +# sound devices +SUBSYSTEM=="sound", GROUP="audio" + +# ieee1394 devices +KERNEL=="raw1394", GROUP="disk" +KERNEL=="dv1394*", GROUP="video" +KERNEL=="video1394*", GROUP="video" + +# input devices +KERNEL=="event[0-9]*", ATTRS{name}=="*dvb*|*DVB*|* IR *" \ + MODE="0664", GROUP="video" +KERNEL=="js[0-9]*", MODE="0664" +KERNEL=="lirc[0-9]*", GROUP="video" + +# AOE character devices +SUBSYSTEM=="aoe", MODE="0220", GROUP="disk" +SUBSYSTEM=="aoe", KERNEL=="err", MODE="0440" + +LABEL="permissions_end" + diff --git a/packages/udev/udev-124/run.rules b/packages/udev/udev-124/run.rules new file mode 100644 index 0000000000..75d71375bb --- /dev/null +++ b/packages/udev/udev-124/run.rules @@ -0,0 +1,14 @@ +# debugging monitor +RUN+="socket:/org/kernel/udev/monitor" + +# run a command on remove events +ACTION=="remove", ENV{REMOVE_CMD}!="", RUN+="$env{REMOVE_CMD}" + +# ignore the events generated by virtual consoles +KERNEL=="ptmx", OPTIONS+="last_rule" +KERNEL=="console", OPTIONS+="last_rule" +KERNEL=="tty" , OPTIONS+="last_rule" +KERNEL=="tty[0-9]*", OPTIONS+="last_rule" +KERNEL=="pty*", OPTIONS+="last_rule" +SUBSYSTEM=="vc", OPTIONS+="last_rule" + diff --git a/packages/udev/udev-124/udev.rules b/packages/udev/udev-124/udev.rules new file mode 100644 index 0000000000..443315ea53 --- /dev/null +++ b/packages/udev/udev-124/udev.rules @@ -0,0 +1,116 @@ +# There are a number of modifiers that are allowed to be used in some +# of the different fields. They provide the following subsitutions: +# +# %n the "kernel number" of the device. +# For example, 'sda3' has a "kernel number" of '3' +# %e the smallest number for that name which does not matches an existing node +# %k the kernel name for the device +# %M the kernel major number for the device +# %m the kernel minor number for the device +# %b the bus id for the device +# %c the string returned by the PROGRAM +# %s{filename} the content of a sysfs attribute +# %% the '%' char itself +# + +# workaround for devices which do not report media changes +SUBSYSTEMS=="ide", KERNEL=="hd[a-z]", ATTR{removable}=="1", \ + ENV{ID_MODEL}=="IOMEGA_ZIP*", NAME="%k", OPTIONS+="all_partitions" +SUBSYSTEMS=="ide", KERNEL=="hd[a-z]", ATTRS{media}=="floppy", \ + OPTIONS+="all_partitions" + +# SCSI devices +SUBSYSTEMS=="scsi", KERNEL=="sr[0-9]*", NAME="scd%n", SYMLINK+="sr%n" + +# USB devices +SUBSYSTEMS=="usb", KERNEL=="auer[0-9]*", NAME="usb/%k" +SUBSYSTEMS=="usb", KERNEL=="cpad[0-9]*", NAME="usb/%k" +SUBSYSTEMS=="usb", KERNEL=="dabusb*", NAME="usb/%k" +SUBSYSTEMS=="usb", KERNEL=="hiddev*", NAME="usb/%k" +SUBSYSTEMS=="usb", KERNEL=="legousbtower*", NAME="usb/%k" +SUBSYSTEMS=="usb", KERNEL=="lp[0-9]*", NAME="usb/%k" +SUBSYSTEMS=="usb", KERNEL=="ttyUSB*", \ + ATTRS{product}=="Palm Handheld*|Handspring Visor|palmOne Handheld", \ + SYMLINK+="pilot" + +# usbfs-like devices +SUBSYSTEM=="usb_device", PROGRAM="/bin/sh -c 'K=%k; K=$${K#usbdev}; printf bus/usb/%%03i/%%03i $${K%%%%.*} $${K#*.}'", ACTION=="add", \ + NAME="%c" +SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", NAME="bus/usb/$env{BUSNUM}/$env{DEVNUM}" + +# serial devices +KERNEL=="capi", NAME="capi20", SYMLINK+="isdn/capi20" +KERNEL=="capi[0-9]*", NAME="capi/%n" + +# video devices +KERNEL=="dvb*", PROGRAM="/bin/sh -c 'K=%k; K=$${K#dvb}; printf dvb/adapter%%i/%%s $${K%%%%.*} $${K#*.}", ACTION=="add", \ + NAME="%c" +KERNEL=="card[0-9]*", NAME="dri/%k" + +# misc devices +KERNEL=="hw_random", NAME="hwrng" +KERNEL=="tun", NAME="net/%k" +KERNEL=="evtchn", NAME="xen/%k" + +KERNEL=="cdemu[0-9]*", NAME="cdemu/%n" +KERNEL=="pktcdvd[0-9]*", NAME="pktcdvd/%n" +KERNEL=="pktcdvd", NAME="pktcdvd/control" + +KERNEL=="cpu[0-9]*", NAME="cpu/%n/cpuid" +KERNEL=="msr[0-9]*", NAME="cpu/%n/msr" +KERNEL=="microcode", NAME="cpu/microcode" + +KERNEL=="umad*", NAME="infiniband/%k" +KERNEL=="issm*", NAME="infiniband/%k" +KERNEL=="uverbs*", NAME="infiniband/%k" +KERNEL=="ucm*", NAME="infiniband/%k" +KERNEL=="rdma_ucm", NAME="infiniband/%k" + +# ALSA devices +KERNEL=="controlC[0-9]*", NAME="snd/%k" +KERNEL=="hwC[D0-9]*", NAME="snd/%k" +KERNEL=="pcmC[D0-9cp]*", NAME="snd/%k" +KERNEL=="midiC[D0-9]*", NAME="snd/%k" +KERNEL=="timer", NAME="snd/%k" +KERNEL=="seq", NAME="snd/%k" + +# ieee1394 devices +KERNEL=="dv1394*", NAME="dv1394/%n" +KERNEL=="video1394*", NAME="video1394/%n" + +# input devices +KERNEL=="mice", NAME="input/%k" +KERNEL=="mouse[0-9]*", NAME="input/%k" +KERNEL=="event[0-9]*", NAME="input/%k" +KERNEL=="js[0-9]*", NAME="input/%k" +KERNEL=="ts[0-9]*", NAME="input/%k" +KERNEL=="uinput", NAME="input/%k" + +# Zaptel +KERNEL=="zapctl", NAME="zap/ctl" +KERNEL=="zaptimer", NAME="zap/timer" +KERNEL=="zapchannel", NAME="zap/channel" +KERNEL=="zappseudo", NAME="zap/pseudo" +KERNEL=="zap[0-9]*", NAME="zap/%n" + +# AOE character devices +SUBSYSTEM=="aoe", KERNEL=="discover", NAME="etherd/%k" +SUBSYSTEM=="aoe", KERNEL=="err", NAME="etherd/%k" +SUBSYSTEM=="aoe", KERNEL=="interfaces", NAME="etherd/%k" +SUBSYSTEM=="aoe", KERNEL=="revalidate", NAME="etherd/%k" + +# device mapper creates its own device nodes, so ignore these +KERNEL=="dm-[0-9]*", OPTIONS+="ignore_device" +KERNEL=="device-mapper", NAME="mapper/control" + +KERNEL=="rfcomm[0-9]*", NAME="%k", GROUP="users", MODE="0660" + +# Firmware Helper +ACTION=="add", SUBSYSTEM=="firmware", RUN+="/lib/udev/firmware_helper" + +# Samsung UARTS +KERNEL=="s3c2410_serial[0-9]", NAME="ttySAC%n" + +# MXC UARTs +KERNEL=="ttymxc[0-4]", NAME="ttymxc%n" + diff --git a/packages/udev/udev-124/udevtrigger_add_devname_filtering.patch b/packages/udev/udev-124/udevtrigger_add_devname_filtering.patch new file mode 100644 index 0000000000..5182542461 --- /dev/null +++ b/packages/udev/udev-124/udevtrigger_add_devname_filtering.patch @@ -0,0 +1,99 @@ +diff -pru udev-124.orig/udevtrigger.c udev-124/udevtrigger.c +--- udev-124.orig/udevtrigger.c 2008-06-12 06:24:30.000000000 +0100 ++++ udev-124/udevtrigger.c 2008-07-07 15:10:09.000000000 +0100 +@@ -42,6 +42,8 @@ static int dry_run; + LIST_HEAD(device_list); + LIST_HEAD(filter_subsystem_match_list); + LIST_HEAD(filter_subsystem_nomatch_list); ++LIST_HEAD(filter_kernel_match_list); ++LIST_HEAD(filter_kernel_nomatch_list); + LIST_HEAD(filter_attr_match_list); + LIST_HEAD(filter_attr_nomatch_list); + static int sock = -1; +@@ -331,6 +333,26 @@ static int attr_match(const char *path, + return 0; + } + ++static int kernel_filtered(const char *kernel) ++{ ++ struct name_entry *loop_name; ++ ++ /* skip devices matching the prohibited kernel device names */ ++ list_for_each_entry(loop_name, &filter_kernel_nomatch_list, node) ++ if (fnmatch(loop_name->name, kernel, 0) == 0) ++ return 1; ++ ++ /* skip devices not matching the listed kernel device names */ ++ if (!list_empty(&filter_kernel_match_list)) { ++ list_for_each_entry(loop_name, &filter_kernel_match_list, node) ++ if (fnmatch(loop_name->name, kernel, 0) == 0) ++ return 0; ++ return 1; ++ } ++ ++ return 0; ++} ++ + static int attr_filtered(const char *path) + { + struct name_entry *loop_name; +@@ -409,6 +431,9 @@ static void scan_subsystem(const char *s + if (dent2->d_name[0] == '.') + continue; + ++ if (kernel_filtered(dent2->d_name)) ++ continue; ++ + strlcpy(dirname2, dirname, sizeof(dirname2)); + strlcat(dirname2, "/", sizeof(dirname2)); + strlcat(dirname2, dent2->d_name, sizeof(dirname2)); +@@ -465,6 +490,9 @@ static void scan_block(void) + if (!strcmp(dent2->d_name,"device")) + continue; + ++ if (kernel_filtered(dent2->d_name)) ++ continue; ++ + strlcpy(dirname2, dirname, sizeof(dirname2)); + strlcat(dirname2, "/", sizeof(dirname2)); + strlcat(dirname2, dent2->d_name, sizeof(dirname2)); +@@ -576,6 +604,8 @@ int udevtrigger(int argc, char *argv[], + { "subsystem-nomatch", 1, NULL, 'S' }, + { "attr-match", 1, NULL, 'a' }, + { "attr-nomatch", 1, NULL, 'A' }, ++ { "kernel-match", 1, NULL, 'k' }, ++ { "kernel-nomatch", 1, NULL, 'K' }, + { "env", 1, NULL, 'e' }, + {} + }; +@@ -622,6 +652,12 @@ int udevtrigger(int argc, char *argv[], + case 'A': + name_list_add(&filter_attr_nomatch_list, optarg, 0); + break; ++ case 'k': ++ name_list_add(&filter_kernel_match_list, optarg, 0); ++ break; ++ case 'K': ++ name_list_add(&filter_kernel_nomatch_list, optarg, 0); ++ break; + case 'h': + printf("Usage: udevadm trigger OPTIONS\n" + " --verbose print the list of devices while running\n" +@@ -632,6 +668,8 @@ int udevtrigger(int argc, char *argv[], + " --env== pass an additional key (works only with --socket=)\n" + " --subsystem-match= trigger devices from a matching subystem\n" + " --subsystem-nomatch= exclude devices from a matching subystem\n" ++ " --kernel-match= trigger devices from a matching kernel device name\n" ++ " --kernel-nomatch= exclude devices from a matching kernel device name\n" + " --attr-match=]> trigger devices with a matching sysfs\n" + " attribute\n" + " --attr-nomatch=]> exclude devices with a matching sysfs\n" +@@ -701,6 +739,8 @@ int udevtrigger(int argc, char *argv[], + exit: + name_list_cleanup(&filter_subsystem_match_list); + name_list_cleanup(&filter_subsystem_nomatch_list); ++ name_list_cleanup(&filter_kernel_match_list); ++ name_list_cleanup(&filter_kernel_nomatch_list); + name_list_cleanup(&filter_attr_match_list); + name_list_cleanup(&filter_attr_nomatch_list); + diff --git a/packages/udev/udev-124/vol_id_ld.patch b/packages/udev/udev-124/vol_id_ld.patch new file mode 100644 index 0000000000..11126eef8d --- /dev/null +++ b/packages/udev/udev-124/vol_id_ld.patch @@ -0,0 +1,17 @@ +--- + extras/volume_id/Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +Index: udev-115/extras/volume_id/Makefile +=================================================================== +--- udev-115.orig/extras/volume_id/Makefile 2007-09-20 18:17:59.000000000 +0200 ++++ udev-115/extras/volume_id/Makefile 2007-09-20 18:18:08.000000000 +0200 +@@ -44,7 +44,7 @@ + ifeq ($(strip $(VOLUME_ID_STATIC)),true) + $(Q) $(LD) $(LDFLAGS) -o $@ $@.o $(LIBUDEV) lib/libvolume_id.a $(LIB_OBJS) + else +- $(Q) $(LD) $(LDFLAGS) -o $@ $@.o $(LIBUDEV) -Llib -lvolume_id $(LIB_OBJS) ++ $(Q) $(LD) -Llib $(LDFLAGS) -o $@ $@.o $(LIBUDEV) -lvolume_id $(LIB_OBJS) + endif + + # man pages diff --git a/packages/udev/udev_124.bb b/packages/udev/udev_124.bb new file mode 100644 index 0000000000..338d7f1528 --- /dev/null +++ b/packages/udev/udev_124.bb @@ -0,0 +1,60 @@ +DESCRIPTION = "udev is a daemon which dynamically creates and removes device nodes from \ +/dev/, handles hotplug events and loads drivers at boot time. It replaces \ +the hotplug package and requires a kernel not older than 2.6.12." +RPROVIDES_${PN} = "hotplug" + +PR = "r6" + +SRC_URI = "http://kernel.org/pub/linux/utils/kernel/hotplug/udev-${PV}.tar.gz \ + file://noasmlinkage.patch;patch=1 \ + file://flags.patch;patch=1 \ + file://vol_id_ld.patch;patch=1 \ + file://udevtrigger_add_devname_filtering.patch;patch=1 \ + file://mount.blacklist \ + file://run.rules \ + " + +SRC_URI_append_h2200 = " file://50-hostap_cs.rules " +PACKAGE_ARCH_h2200 = "h2200" + +require udev.inc + +DEFAULT_PREFERENCE = "-999" + +INITSCRIPT_PARAMS = "start 03 S ." + +FILES_${PN} += "${base_libdir}/udev/*" +FILES_${PN}-dbg += "${base_libdir}/udev/.debug" +UDEV_EXTRAS = "extras/firmware/ extras/scsi_id/ extras/volume_id/" +EXTRA_OEMAKE += "libudevdir=/lib/udev libdir=${base_libdir} prefix=" + +do_install () { + install -d ${D}${usrsbindir} \ + ${D}${sbindir} + oe_runmake 'DESTDIR=${D}' INSTALL=install install + install -d ${D}${sysconfdir}/init.d + install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/udev + + install -d ${D}${sysconfdir}/udev/rules.d/ + + install -m 0644 ${WORKDIR}/mount.blacklist ${D}${sysconfdir}/udev/ + install -m 0644 ${WORKDIR}/local.rules ${D}${sysconfdir}/udev/rules.d/local.rules + install -m 0644 ${WORKDIR}/permissions.rules ${D}${sysconfdir}/udev/rules.d/permissions.rules + install -m 0644 ${WORKDIR}/run.rules ${D}${sysconfdir}/udev/rules.d/run.rules + install -m 0644 ${WORKDIR}/udev.rules ${D}${sysconfdir}/udev/rules.d/udev.rules + install -m 0644 ${WORKDIR}/links.conf ${D}${sysconfdir}/udev/links.conf + if [ "${UDEV_DEVFS_RULES}" = "1" ]; then + install -m 0644 ${WORKDIR}/devfs-udev.rules ${D}${sysconfdir}/udev/rules.d/devfs-udev.rules + fi + + install -d ${D}${sysconfdir}/udev/scripts/ + + install -m 0755 ${WORKDIR}/mount.sh ${D}${sysconfdir}/udev/scripts/mount.sh + install -m 0755 ${WORKDIR}/network.sh ${D}${sysconfdir}/udev/scripts + + install -d ${D}${base_libdir}/udev/ +} + +do_install_append_h2200() { + install -m 0644 ${WORKDIR}/50-hostap_cs.rules ${D}${sysconfdir}/udev/rules.d/50-hostap_cs.rules +} -- cgit v1.2.3 From 2c7a34ee951837319fdeeeb346958786714c4390 Mon Sep 17 00:00:00 2001 From: Robert Schuster Date: Tue, 12 Aug 2008 07:55:49 +0000 Subject: uclibc 0.9.29: Enable UCLIBC_HAS_PROGRAM_INVOCATION_NAME in uClibc.distro. --- packages/uclibc/uclibc-0.9.29/uClibc.distro | 2 +- packages/uclibc/uclibc_0.9.29.bb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'packages') diff --git a/packages/uclibc/uclibc-0.9.29/uClibc.distro b/packages/uclibc/uclibc-0.9.29/uClibc.distro index 1bd3bece28..022d2474d1 100644 --- a/packages/uclibc/uclibc-0.9.29/uClibc.distro +++ b/packages/uclibc/uclibc-0.9.29/uClibc.distro @@ -28,7 +28,7 @@ COMPAT_ATEXIT=y UCLIBC_SUSV3_LEGACY=y UCLIBC_SUSV3_LEGACY_MACROS=y UCLIBC_HAS_SHADOW=y -# UCLIBC_HAS_PROGRAM_INVOCATION_NAME is not set +UCLIBC_HAS_PROGRAM_INVOCATION_NAME=y UCLIBC_HAS___PROGNAME=y UNIX98PTY_ONLY=y ASSUME_DEVPTS=y diff --git a/packages/uclibc/uclibc_0.9.29.bb b/packages/uclibc/uclibc_0.9.29.bb index ad62481800..fc06c28f67 100644 --- a/packages/uclibc/uclibc_0.9.29.bb +++ b/packages/uclibc/uclibc_0.9.29.bb @@ -7,7 +7,7 @@ # on whether the base patches apply to the selected (SRCDATE) svn release. # UCLIBC_BASE ?= "0.9.29" -PR = "r21" +PR = "r22" DEFAULT_PREFERENCE = "1" require uclibc.inc -- cgit v1.2.3 From 71fd6ece5546e5077eaeb9f665ef23ffe60fa161 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Tue, 12 Aug 2008 09:26:57 +0000 Subject: freedoom: update to 0.6.2 --- packages/freedoom/freedoom_0.6.2.bb | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 packages/freedoom/freedoom_0.6.2.bb (limited to 'packages') diff --git a/packages/freedoom/freedoom_0.6.2.bb b/packages/freedoom/freedoom_0.6.2.bb new file mode 100644 index 0000000000..0a3be04410 --- /dev/null +++ b/packages/freedoom/freedoom_0.6.2.bb @@ -0,0 +1,27 @@ +SECTION = "games" +DESCRIPTION = "The Freedoom project aims at collaboratively creating a Free IWAD file.\ + Combined with the Free source code, this results in a complete game \ + based on the Doom engine which is Free Software." +HOMEPAGE = "http://freedoom.sourceforge.net/" +PRIORITY = "optional" +LICENSE = "GPL" + +SRC_URI = "${SOURCEFORGE_MIRROR}/freedoom/freedoom-iwad-${PV}.zip" + +PACKAGE_ARCH = "all" +FILES_${PN} = "${datadir}/games/doom/*" +FILES_${PN}-doc = "${datadir}/doc/freedoom/*" + +do_install() { + install -d ${D}/${datadir}/games/doom + install -d ${D}/${datadir}/doc/freedoom + + install -m 0644 ${WORKDIR}/freedoom-iwad-${PV}/doom2.wad ${D}/${datadir}/games/doom/ + install -m 0644 ${WORKDIR}/freedoom-iwad-${PV}/* ${D}/${datadir}/doc/freedoom + rm ${D}/${datadir}/doc/freedoom/*.wad + + + + +} + -- cgit v1.2.3 From 8a6746d403668ef348e20b46f7250d8f8adce477 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Tue, 12 Aug 2008 10:35:18 +0000 Subject: prboom: add 2.4.7 --- packages/prboom/prboom_2.4.7.bb | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 packages/prboom/prboom_2.4.7.bb (limited to 'packages') diff --git a/packages/prboom/prboom_2.4.7.bb b/packages/prboom/prboom_2.4.7.bb new file mode 100644 index 0000000000..b9f4b5cbe1 --- /dev/null +++ b/packages/prboom/prboom_2.4.7.bb @@ -0,0 +1,22 @@ +DESCRIPTION = "A Doom Clone based on SDL" +SECTION = "games" +PRIORITY = "optional" +DEPENDS = "virtual/libsdl libsdl-mixer libsdl-net" +LICENSE = "GPL" + +SRC_URI = "${SOURCEFORGE_MIRROR}/prboom/prboom-${PV}.tar.gz \ + " + +inherit autotools + +EXTRA_OECONF = " --disable-gl --disable-cpu-opt --without-x --disable-sdltest" + +do_install() { + install -d ${D}${bindir} \ + ${D}${datadir}/games/doom + + install -m 0755 src/prboom ${D}${bindir}/prboom + install -m 0644 data/prboom.wad ${D}${datadir}/games/doom/ +} + +FILES_${PN} += "${datadir}/games/doom/prboom.wad" -- cgit v1.2.3 From 4f6d439e5ed579fc14526fc7a9db84f818afe619 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Tue, 12 Aug 2008 12:07:04 +0000 Subject: gnome-python-desktop: add 2.23.0 --- packages/gnome/gnome-python-desktop/.mtn2git_empty | 0 packages/gnome/gnome-python-desktop_2.23.0.bb | 21 +++++++++++++++++++++ 2 files changed, 21 insertions(+) create mode 100644 packages/gnome/gnome-python-desktop/.mtn2git_empty create mode 100644 packages/gnome/gnome-python-desktop_2.23.0.bb (limited to 'packages') diff --git a/packages/gnome/gnome-python-desktop/.mtn2git_empty b/packages/gnome/gnome-python-desktop/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/gnome/gnome-python-desktop_2.23.0.bb b/packages/gnome/gnome-python-desktop_2.23.0.bb new file mode 100644 index 0000000000..931e1be342 --- /dev/null +++ b/packages/gnome/gnome-python-desktop_2.23.0.bb @@ -0,0 +1,21 @@ +LICENSE = "GPL/LGPL" +DEPENDS = "totem-pl-parser libgtop gnome-panel gnome-desktop eds-dbus python-pygtk" + +inherit gnome distutils-base + +SRC_URI += "file://acinclude.m4" + +do_configure_prepend() { + install -m 0644 ${WORKDIR}/acinclude.m4 ${S}/ +} + +do_configure_prepend() { + sed -i -e s:'`$PKG_CONFIG --variable=defsdir pygtk-2.0`':\"${STAGING_DATADIR}/pygtk/2.0/defs\":g ${S}/configure.ac +} + +AUTOTOOLS_STAGE_PKGCONFIG = "1" +do_stage() { + autotools_stage_all +} + +FILES_${PN}-dev += "${datadir}/pygtk" -- cgit v1.2.3 From b6689671fff08379055f9faffdad3197aafdbafe Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Tue, 12 Aug 2008 12:45:11 +0000 Subject: libggz: add 0.0.14.1 --- packages/ggz/.mtn2git_empty | 0 packages/ggz/libggz_0.0.14.1.bb | 15 +++++++++++++++ 2 files changed, 15 insertions(+) create mode 100644 packages/ggz/.mtn2git_empty create mode 100644 packages/ggz/libggz_0.0.14.1.bb (limited to 'packages') diff --git a/packages/ggz/.mtn2git_empty b/packages/ggz/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/ggz/libggz_0.0.14.1.bb b/packages/ggz/libggz_0.0.14.1.bb new file mode 100644 index 0000000000..ff96bd09af --- /dev/null +++ b/packages/ggz/libggz_0.0.14.1.bb @@ -0,0 +1,15 @@ +DESCRIPTION = "GGZ Gaming Zone lib" +LICENSE = "LGPLv2" +DEPENDS = "gnutls libgcrypt" + +SRC_URI = "http://ftp.belnet.be/packages/ggzgamingzone/ggz/${PV}/${PN}-${PV}.tar.gz" + +inherit autotools + +AUTOTOOLS_STAGE_PKGCONFIG = "1" + +do_stage() { + autotools_stage_all +} + + -- cgit v1.2.3 From dc47544ef298d089dd815bebdb14d9b9ced7637e Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Tue, 12 Aug 2008 13:01:19 +0000 Subject: prboom: recommend freedoom --- packages/prboom/prboom_2.4.7.bb | 3 +++ 1 file changed, 3 insertions(+) (limited to 'packages') diff --git a/packages/prboom/prboom_2.4.7.bb b/packages/prboom/prboom_2.4.7.bb index b9f4b5cbe1..f775855d93 100644 --- a/packages/prboom/prboom_2.4.7.bb +++ b/packages/prboom/prboom_2.4.7.bb @@ -4,6 +4,9 @@ PRIORITY = "optional" DEPENDS = "virtual/libsdl libsdl-mixer libsdl-net" LICENSE = "GPL" +PR = "r1" +RRECOMMENDS = "freedoom" + SRC_URI = "${SOURCEFORGE_MIRROR}/prboom/prboom-${PV}.tar.gz \ " -- cgit v1.2.3 From 5501bf760b33f3cdd0cccc5a413e5fd8540ad3c9 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Tue, 12 Aug 2008 13:03:17 +0000 Subject: ggz-client-libs: add 0.0.14.1 --- packages/ggz/ggz-client-libs_0.0.14.1.bb | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 packages/ggz/ggz-client-libs_0.0.14.1.bb (limited to 'packages') diff --git a/packages/ggz/ggz-client-libs_0.0.14.1.bb b/packages/ggz/ggz-client-libs_0.0.14.1.bb new file mode 100644 index 0000000000..df691dc7de --- /dev/null +++ b/packages/ggz/ggz-client-libs_0.0.14.1.bb @@ -0,0 +1,25 @@ +DESCRIPTION = " Client libraries for GamingZone" +LICENSE = "LGPLv2" +DEPENDS = "libggz" + +SRC_URI = "http://ftp.belnet.be/packages/ggzgamingzone/ggz/${PV}/${PN}-${PV}.tar.gz" + +inherit autotools + +EXTRA_OECONF = "--with-libggz-includes=${STAGING_INCDIR} \ + --with-libggz-libraries=${STAGING_LIBDIR} \ + " + +do_configure_append() { + for i in $(find ${S} -name "Makefile") ; do + sed -i -e s:'-I /usr/include -I /usr/local/include'::g $i + done +} + +AUTOTOOLS_STAGE_PKGCONFIG = "1" + +do_stage() { + autotools_stage_all +} + + -- cgit v1.2.3 From d3c22d9541b36a0853eb4c3013b1c9a59ded0585 Mon Sep 17 00:00:00 2001 From: Michael Lauer Date: Tue, 12 Aug 2008 14:05:17 +0000 Subject: add ncurses development kit 5.0 --- packages/cdk/.mtn2git_empty | 0 packages/cdk/cdk_5.0-20060507.bb | 21 +++++++++++++++++++++ 2 files changed, 21 insertions(+) create mode 100644 packages/cdk/.mtn2git_empty create mode 100644 packages/cdk/cdk_5.0-20060507.bb (limited to 'packages') diff --git a/packages/cdk/.mtn2git_empty b/packages/cdk/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/cdk/cdk_5.0-20060507.bb b/packages/cdk/cdk_5.0-20060507.bb new file mode 100644 index 0000000000..f3287c7b25 --- /dev/null +++ b/packages/cdk/cdk_5.0-20060507.bb @@ -0,0 +1,21 @@ +DESCRIPTION = "Curses Development Kit" +HOMEPAGE = "http://invisible-island.net/cdk/" +SECTION = "devel/libs" +LICENSE = "MIT" + +SRC_URI = "ftp://invisible-island.net/cdk/cdk-${PV}.tgz" + +inherit autotools + +EXTRA_OEMAKE += 'DOCUMENT_DIR="${D}${datadir}/doc/cdk"' + +# FIXME +do_configure() { + gnu-configize + oe_runconf +} + +do_stage() { + autotools_stage_all +} + -- cgit v1.2.3 From 1bc8b5c01598dc5e86689d1bdc3042c3a06b2c64 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Tue, 12 Aug 2008 14:19:32 +0000 Subject: guile: add 1.8.5 --- packages/guile/guile_1.8.5.bb | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 packages/guile/guile_1.8.5.bb (limited to 'packages') diff --git a/packages/guile/guile_1.8.5.bb b/packages/guile/guile_1.8.5.bb new file mode 100644 index 0000000000..0fd648398a --- /dev/null +++ b/packages/guile/guile_1.8.5.bb @@ -0,0 +1,32 @@ +DESCRIPTION = "Guile is an interpreter for the Scheme programming language, \ +packaged as a library which can be incorporated into your programs." +HOMEPAGE = "http://www.gnu.org/software/guile/guile.html" +SECTION = "devel/scheme" +DEPENDS = "guile-native" +LICENSE = "GPL" + +SRC_URI = "http://ftp.gnu.org/pub/gnu/guile/guile-${PV}.tar.gz \ + file://configure-fix.patch;patch=1 " + +inherit autotools + +acpaths = "-I ${S}/guile-config" + +EXTRA_OECONF = " \ + --without-threads \ + --without-included-ltdl \ + " + +do_compile() { + (cd libguile; oe_runmake CC="${BUILD_CC}" CFLAGS="${BUILD_CFLAGS}" LDFLAGS="${BUILD_LDFLAGS}" guile_filter_doc_snarfage) + oe_runmake preinstguile="`which guile`" + + sed -i -e s:${STAGING_DIR_TARGET}::g \ + -e s:/${TARGET_SYS}::g \ + guile-1.8.pc +} + +do_stage() { + autotools_stage_all +} + -- cgit v1.2.3 From 9581813672f12f114fbdcd8f37aab298a8c3e7ff Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Tue, 12 Aug 2008 14:25:37 +0000 Subject: guile: inherit binconfig as well --- packages/guile/guile_1.8.5.bb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'packages') diff --git a/packages/guile/guile_1.8.5.bb b/packages/guile/guile_1.8.5.bb index 0fd648398a..fa6e696896 100644 --- a/packages/guile/guile_1.8.5.bb +++ b/packages/guile/guile_1.8.5.bb @@ -5,10 +5,12 @@ SECTION = "devel/scheme" DEPENDS = "guile-native" LICENSE = "GPL" +PR = "r1" + SRC_URI = "http://ftp.gnu.org/pub/gnu/guile/guile-${PV}.tar.gz \ file://configure-fix.patch;patch=1 " -inherit autotools +inherit autotools binconfig acpaths = "-I ${S}/guile-config" -- cgit v1.2.3 From f40c2a0be0ccc9e5655feb5051815ec6887bdc47 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Tue, 12 Aug 2008 14:32:57 +0000 Subject: gnome-games: build aisleriot since we have a working guile now --- packages/gnome/gnome-games_2.23.6.bb | 38 ++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 packages/gnome/gnome-games_2.23.6.bb (limited to 'packages') diff --git a/packages/gnome/gnome-games_2.23.6.bb b/packages/gnome/gnome-games_2.23.6.bb new file mode 100644 index 0000000000..61e145a549 --- /dev/null +++ b/packages/gnome/gnome-games_2.23.6.bb @@ -0,0 +1,38 @@ +LICENSE = "GPL" +DEPENDS = "libggz ggz-client-libs python-pygtk gtk+ libgnome libgnomeui librsvg gnome-vfs gconf libglade gnome-common" + +PR = "r1" + +inherit gnome distutils-base gconf + +EXTRA_OECONF = "--with-libggz-includes=${STAGING_INCDIR} \ + --with-libggz-libraries=${STAGING_LIBDIR} \ + --with-ggzmod-includes=${STAGING_INCDIR} \ + --with-ggzmod-libraries=${STAGING_LIBDIR} \ + --enable-scalable \ + " + +do_configure_prepend() { + for i in $(find ${S} -name "Makefile.am") ; do + sed -i -e s:help::g $i + done +} + + +FILES_${PN}-doc += " ${datadir}/gnome/help" +FILES_${PN}-dbg += " ${bindir}/.debug ${libdir}/gnome-games/.debug" + +FILES_${PN} += "/var/games \ + ${datadir}/applications \ + ${datadir}/g* \ + ${datadir}/ggz \ + ${datadir}/icons \ + ${datadir}/pixmaps \ + ${sysconfdir}" + +PACKAGES =+ "gnome-games-gnometris " +FILES_gnome-games-gnometris = "${bindir}/gnometris ${datadir}/pixmaps/gnometris ${datadir}/pixmaps/gnome-gtetris.png ${datadir}/applications/gnometris.desktop ${sysconfdir}/gconf/schemas/gnometris.schemas" + +PACKAGES =+ "gnome-games-gnomine" +FILES_gnome-games-gnomine = "${bindir}/gnomine ${datadir}/pixmaps/gnomine ${datadir}/pixmaps/gnome-gnomine.png ${datadir}/applications/gnomine.desktop ${sysconfdir}/gconf/schemas/gnomine.schemas" + -- cgit v1.2.3 From 1dddcef37a89676bccd3e7c1bdb852dd002dbef4 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Tue, 12 Aug 2008 15:41:20 +0000 Subject: gnome-panel: depend on startup-notification --- packages/gnome/gnome-panel_2.18.1.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'packages') diff --git a/packages/gnome/gnome-panel_2.18.1.bb b/packages/gnome/gnome-panel_2.18.1.bb index 59c6f3e6e0..933be7f811 100644 --- a/packages/gnome/gnome-panel_2.18.1.bb +++ b/packages/gnome/gnome-panel_2.18.1.bb @@ -1,5 +1,5 @@ LICENSE = "GPL" -DEPENDS = "libwnck orbit2 gtk+ libgnome libgnomeui gnome-desktop libglade gnome-menus" +DEPENDS = "startup-notification libwnck orbit2 gtk+ libgnome libgnomeui gnome-desktop libglade gnome-menus" PR = "r1" -- cgit v1.2.3 From 58215644bf2644bf6c0aeaf32805ce3e35d858fa Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Tue, 12 Aug 2008 18:24:20 +0000 Subject: beagleboard demo image: add gnome-games so people can play solitaire at boring trade shows ;) --- packages/images/beagleboard-demo-image.bb | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'packages') diff --git a/packages/images/beagleboard-demo-image.bb b/packages/images/beagleboard-demo-image.bb index f8000ccdd5..f741e20d45 100644 --- a/packages/images/beagleboard-demo-image.bb +++ b/packages/images/beagleboard-demo-image.bb @@ -1,6 +1,6 @@ # Demo image for beagleboard -XSERVER = "xserver-xorg \ +XSERVER ?= "xserver-xorg \ xf86-input-evdev \ xf86-input-mouse \ xf86-video-fbdev \ @@ -20,13 +20,13 @@ IMAGE_INSTALL = "\ angstrom-gpe-task-settings \ ${ANGSTROM_EXTRA_INSTALL} \ angstrom-zeroconf-audio \ - angstrom-led-config \ - gpe-scap \ + angstrom-led-config \ + gpe-scap \ psplash \ e-wm exhibit \ xterm xmms epiphany-firefox-replacement \ swfdec-mozilla \ - hicolor-icon-theme gnome-icon-theme \ + hicolor-icon-theme gnome-icon-theme \ jaaa nmap iperf gnuplot \ abiword \ # gnumeric \ @@ -35,6 +35,7 @@ IMAGE_INSTALL = "\ pidgin \ # irssi \ mplayer omapfbplay \ + gnome-games \ " IMAGE_PREPROCESS_COMMAND = "create_etc_timestamp" -- cgit v1.2.3 From 036620b7a92514cde4dc00d017fc22313a555617 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Tue, 12 Aug 2008 21:37:56 +0000 Subject: xorg-xserver: it needs hal at build and runtime, so add proper (R)DEPENDS --- packages/xorg-xserver/xorg-xserver-common.inc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'packages') diff --git a/packages/xorg-xserver/xorg-xserver-common.inc b/packages/xorg-xserver/xorg-xserver-common.inc index bd191eadfe..8e7c5d7798 100644 --- a/packages/xorg-xserver/xorg-xserver-common.inc +++ b/packages/xorg-xserver/xorg-xserver-common.inc @@ -4,7 +4,7 @@ LICENSE = "MIT-X" PROVIDES = "virtual/xserver" -DEPENDS = "fontconfig freetype flex-native lbxutil kbproto \ +DEPENDS = "hal fontconfig freetype flex-native lbxutil kbproto \ xf86driproto drm glproto randrproto renderproto fixesproto damageproto \ xcmiscproto xextproto xproto xf86miscproto xf86vidmodeproto xf86bigfontproto \ scrnsaverproto bigreqsproto resourceproto fontsproto inputproto \ @@ -13,7 +13,7 @@ resourceproto xineramaproto xtrans evieext libxkbfile libxfont libxau \ libfontenc libxdmcp libxxf86vm libxaw libxmu libxt libxpm libxext libx11 \ libxkbui libxxf86misc libxi libdmx libxtst libxres mesa" -RDEPENDS_${PN} = "rgb xorg-minimal-fonts" +RDEPENDS_${PN} = "hal rgb xorg-minimal-fonts" XORG_PN = "xorg-server" SRC_URI = "${XORG_MIRROR}/individual/xserver/${XORG_PN}-${PV}.tar.bz2 \ -- cgit v1.2.3 From 6ab3c066f223574bab801aced8327b7a9a1c1130 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Tue, 12 Aug 2008 21:55:26 +0000 Subject: xorg-minimal-fonts: add symlink for Xorg compat --- packages/xorg-font/xorg-minimal-fonts.bb | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'packages') diff --git a/packages/xorg-font/xorg-minimal-fonts.bb b/packages/xorg-font/xorg-minimal-fonts.bb index cef0ed53b8..d91c6d772d 100644 --- a/packages/xorg-font/xorg-minimal-fonts.bb +++ b/packages/xorg-font/xorg-minimal-fonts.bb @@ -2,12 +2,17 @@ HOMEPAGE = "http://www.x.org" SECTION = "x11/fonts" LICENSE = "MIT-X" +PR = "r1" + SRC_URI = "file://misc" do_install() { install -d ${D}/${datadir}/fonts/X11/misc install -m 0644 ${WORKDIR}/misc/* ${D}/${datadir}/fonts/X11/misc/ + install -d ${D}/${libdir}/X11 + ln -sf ${datadir}/fonts/X11/ ${D}/${libdir}/X11/fonts -s + } PACKAGE_ARCH = "all" -FILES_${PN} = "${datadir}/fonts/X11/" +FILES_${PN} = "${libdir}/X11/ ${datadir}/fonts/X11/" -- cgit v1.2.3 From c116fe18ee878a449a73e9df38090a60cbf6a084 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Tue, 12 Aug 2008 22:37:09 +0000 Subject: totem: add 2.23.4 --- packages/totem/totem_2.23.4.bb | 27 +++++++++++++++++++++++---- 1 file changed, 23 insertions(+), 4 deletions(-) (limited to 'packages') diff --git a/packages/totem/totem_2.23.4.bb b/packages/totem/totem_2.23.4.bb index 60d23073a8..f2e945fd87 100644 --- a/packages/totem/totem_2.23.4.bb +++ b/packages/totem/totem_2.23.4.bb @@ -6,11 +6,30 @@ DESCRIPTION = "A GTK2 based media player" HOMEPAGE = "http://www.gnome.org/projects/totem/" LICENSE = "GPL" -PR = "r2" +PR = "r3" -DEPENDS = " totem-pl-parser gtk+ dbus bluez-libs libglade gconf libxml2 gst-ffmpeg gst-plugins-bad gst-plugins-base python" +DEPENDS = " totem-pl-parser gtk+ dbus bluez-libs libglade gconf libxml2 gst-ffmpeg gst-plugins-bad gst-plugins-base" RDEPENDS_${PN} += "iso-codes" -RRECOMMENDS_${PN} += "gst-plugin-playbin gst-plugin-gconfelements gst-plugin-decodebin gst-plugin-decodebin2 gst-ffmpeg gst-plugin-audioresample gst-plugin-ximagesink gst-plugin-xvimagesink gst-plugin-alsa" +RRECOMMENDS_${PN} += "gst-plugin-playbin \ + gst-plugin-gconfelements \ + gst-plugin-decodebin \ + gst-plugin-decodebin2 \ + gst-ffmpeg \ + gst-plugin-audioresample \ + gst-plugin-ximagesink \ + gst-plugin-xvimagesink \ + gst-plugin-alsa \ + gst-plugin-avi \ + gst-plugin-ffmpegcolorspace \ + gst-plugin-flvdemux \ + gst-plugin-nuvdemux \ + gst-plugin-videoscale \ + gst-plugin-a52dec \ + gst-plugin-mpegaudioparse \ + gst-plugin-ossaudio \ + gst-plugin-pulse \ + gst-plugin-autodetect \ + " inherit gnome @@ -23,7 +42,7 @@ EXTRA_OECONF=" --disable-schemas-install \ --enable-gstreamer \ --enable-browser-plugins \ --disable-run-in-source-tree \ - --enable-python \ + --disable-python \ --disable-vala \ --with-dbus \ " -- cgit v1.2.3 From 72963c237a9e150ff44a2cec6333e876935222b9 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Tue, 12 Aug 2008 22:38:48 +0000 Subject: libsigc++ : add 2.2.2 --- packages/libsigc++-2.0/libsigc++-2.0_2.2.2.bb | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 packages/libsigc++-2.0/libsigc++-2.0_2.2.2.bb (limited to 'packages') diff --git a/packages/libsigc++-2.0/libsigc++-2.0_2.2.2.bb b/packages/libsigc++-2.0/libsigc++-2.0_2.2.2.bb new file mode 100644 index 0000000000..61d34840c9 --- /dev/null +++ b/packages/libsigc++-2.0/libsigc++-2.0_2.2.2.bb @@ -0,0 +1,21 @@ +DESCRIPTION = "A library for loose coupling of C++ method calls" +SECTION = "libs" +PRIORITY = "optional" +LICENSE = "GPL LGPL" +SRC_URI = "ftp://ftp.gnome.org/pub/GNOME/sources/libsigc++/2.2/libsigc++-${PV}.tar.gz \ + " + +S = "${WORKDIR}/libsigc++-${PV}" + +inherit autotools + +EXTRA_AUTORECONF = "--exclude=autoheader" + +FILES_${PN}-dev += "${libdir}/sigc++-*/" + +AUTOTOOLS_STAGE_PKGCONFIG = "1" + +do_stage() { + autotools_stage_all +} + -- cgit v1.2.3 From 1cdbb0088be96990a02066c9d939f664ad4a9693 Mon Sep 17 00:00:00 2001 From: Stanislav Brabec Date: Wed, 13 Aug 2008 07:50:25 +0000 Subject: Enabled cp2101 USB serial: * required for many GPS devices and track loggers (BT747, QStarz,...) * enabled for devices that support Garmin GPS --- packages/linux/linux-rp-2.6.26/defconfig-akita | 2 +- packages/linux/linux-rp-2.6.26/defconfig-bootcdx86 | 2 +- packages/linux/linux-rp-2.6.26/defconfig-c7x0 | 2 +- packages/linux/linux-rp-2.6.26/defconfig-hx2000 | 2 +- packages/linux/linux-rp-2.6.26/defconfig-poodle | 2 +- packages/linux/linux-rp-2.6.26/defconfig-qemuarm | 2 +- packages/linux/linux-rp-2.6.26/defconfig-qemux86 | 2 +- packages/linux/linux-rp-2.6.26/defconfig-spitz | 2 +- packages/linux/linux-rp-2.6.26/defconfig-zylonite | 2 +- 9 files changed, 9 insertions(+), 9 deletions(-) (limited to 'packages') diff --git a/packages/linux/linux-rp-2.6.26/defconfig-akita b/packages/linux/linux-rp-2.6.26/defconfig-akita index e630a9abff..27f5dcb781 100644 --- a/packages/linux/linux-rp-2.6.26/defconfig-akita +++ b/packages/linux/linux-rp-2.6.26/defconfig-akita @@ -1255,7 +1255,7 @@ CONFIG_USB_SERIAL_BELKIN=m # CONFIG_USB_SERIAL_CH341 is not set # CONFIG_USB_SERIAL_WHITEHEAT is not set CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m -# CONFIG_USB_SERIAL_CP2101 is not set +CONFIG_USB_SERIAL_CP2101=m CONFIG_USB_SERIAL_CYPRESS_M8=m CONFIG_USB_SERIAL_EMPEG=m CONFIG_USB_SERIAL_FTDI_SIO=m diff --git a/packages/linux/linux-rp-2.6.26/defconfig-bootcdx86 b/packages/linux/linux-rp-2.6.26/defconfig-bootcdx86 index 35e9b5cd22..397468a366 100644 --- a/packages/linux/linux-rp-2.6.26/defconfig-bootcdx86 +++ b/packages/linux/linux-rp-2.6.26/defconfig-bootcdx86 @@ -1612,7 +1612,7 @@ CONFIG_USB_SERIAL_BELKIN=m # CONFIG_USB_SERIAL_CH341 is not set # CONFIG_USB_SERIAL_WHITEHEAT is not set CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m -# CONFIG_USB_SERIAL_CP2101 is not set +CONFIG_USB_SERIAL_CP2101=m CONFIG_USB_SERIAL_CYPRESS_M8=m CONFIG_USB_SERIAL_EMPEG=m CONFIG_USB_SERIAL_FTDI_SIO=m diff --git a/packages/linux/linux-rp-2.6.26/defconfig-c7x0 b/packages/linux/linux-rp-2.6.26/defconfig-c7x0 index 6c188e7b57..4c3cbf499c 100644 --- a/packages/linux/linux-rp-2.6.26/defconfig-c7x0 +++ b/packages/linux/linux-rp-2.6.26/defconfig-c7x0 @@ -1260,7 +1260,7 @@ CONFIG_USB_SERIAL_BELKIN=m # CONFIG_USB_SERIAL_CH341 is not set # CONFIG_USB_SERIAL_WHITEHEAT is not set CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m -# CONFIG_USB_SERIAL_CP2101 is not set +CONFIG_USB_SERIAL_CP2101=m CONFIG_USB_SERIAL_CYPRESS_M8=m CONFIG_USB_SERIAL_EMPEG=m CONFIG_USB_SERIAL_FTDI_SIO=m diff --git a/packages/linux/linux-rp-2.6.26/defconfig-hx2000 b/packages/linux/linux-rp-2.6.26/defconfig-hx2000 index 0f2557c0f7..d023ffecac 100644 --- a/packages/linux/linux-rp-2.6.26/defconfig-hx2000 +++ b/packages/linux/linux-rp-2.6.26/defconfig-hx2000 @@ -1249,7 +1249,7 @@ CONFIG_USB_SERIAL_BELKIN=m # CONFIG_USB_SERIAL_CH341 is not set # CONFIG_USB_SERIAL_WHITEHEAT is not set CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m -# CONFIG_USB_SERIAL_CP2101 is not set +CONFIG_USB_SERIAL_CP2101=m CONFIG_USB_SERIAL_CYPRESS_M8=m CONFIG_USB_SERIAL_EMPEG=m CONFIG_USB_SERIAL_FTDI_SIO=m diff --git a/packages/linux/linux-rp-2.6.26/defconfig-poodle b/packages/linux/linux-rp-2.6.26/defconfig-poodle index 7d41252b15..4d7acb382f 100644 --- a/packages/linux/linux-rp-2.6.26/defconfig-poodle +++ b/packages/linux/linux-rp-2.6.26/defconfig-poodle @@ -1270,7 +1270,7 @@ CONFIG_USB_SERIAL_BELKIN=m # CONFIG_USB_SERIAL_CH341 is not set # CONFIG_USB_SERIAL_WHITEHEAT is not set CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m -# CONFIG_USB_SERIAL_CP2101 is not set +CONFIG_USB_SERIAL_CP2101=m CONFIG_USB_SERIAL_CYPRESS_M8=m CONFIG_USB_SERIAL_EMPEG=m CONFIG_USB_SERIAL_FTDI_SIO=m diff --git a/packages/linux/linux-rp-2.6.26/defconfig-qemuarm b/packages/linux/linux-rp-2.6.26/defconfig-qemuarm index e636b6c671..ae7ef52d31 100644 --- a/packages/linux/linux-rp-2.6.26/defconfig-qemuarm +++ b/packages/linux/linux-rp-2.6.26/defconfig-qemuarm @@ -1155,7 +1155,7 @@ CONFIG_USB_SERIAL_BELKIN=m # CONFIG_USB_SERIAL_CH341 is not set # CONFIG_USB_SERIAL_WHITEHEAT is not set CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m -# CONFIG_USB_SERIAL_CP2101 is not set +CONFIG_USB_SERIAL_CP2101=m CONFIG_USB_SERIAL_CYPRESS_M8=m CONFIG_USB_SERIAL_EMPEG=m CONFIG_USB_SERIAL_FTDI_SIO=m diff --git a/packages/linux/linux-rp-2.6.26/defconfig-qemux86 b/packages/linux/linux-rp-2.6.26/defconfig-qemux86 index 42f6740201..975dbdd85b 100644 --- a/packages/linux/linux-rp-2.6.26/defconfig-qemux86 +++ b/packages/linux/linux-rp-2.6.26/defconfig-qemux86 @@ -1611,7 +1611,7 @@ CONFIG_USB_SERIAL_BELKIN=m # CONFIG_USB_SERIAL_CH341 is not set # CONFIG_USB_SERIAL_WHITEHEAT is not set CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m -# CONFIG_USB_SERIAL_CP2101 is not set +CONFIG_USB_SERIAL_CP2101=m CONFIG_USB_SERIAL_CYPRESS_M8=m CONFIG_USB_SERIAL_EMPEG=m CONFIG_USB_SERIAL_FTDI_SIO=m diff --git a/packages/linux/linux-rp-2.6.26/defconfig-spitz b/packages/linux/linux-rp-2.6.26/defconfig-spitz index 9c8f0ae8a1..5b5db16979 100644 --- a/packages/linux/linux-rp-2.6.26/defconfig-spitz +++ b/packages/linux/linux-rp-2.6.26/defconfig-spitz @@ -1318,7 +1318,7 @@ CONFIG_USB_SERIAL_BELKIN=m # CONFIG_USB_SERIAL_CH341 is not set # CONFIG_USB_SERIAL_WHITEHEAT is not set CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m -# CONFIG_USB_SERIAL_CP2101 is not set +CONFIG_USB_SERIAL_CP2101=m CONFIG_USB_SERIAL_CYPRESS_M8=m CONFIG_USB_SERIAL_EMPEG=m CONFIG_USB_SERIAL_FTDI_SIO=m diff --git a/packages/linux/linux-rp-2.6.26/defconfig-zylonite b/packages/linux/linux-rp-2.6.26/defconfig-zylonite index cc2fc482ae..bdf6a3be8a 100644 --- a/packages/linux/linux-rp-2.6.26/defconfig-zylonite +++ b/packages/linux/linux-rp-2.6.26/defconfig-zylonite @@ -1257,7 +1257,7 @@ CONFIG_USB_SERIAL_BELKIN=m # CONFIG_USB_SERIAL_CH341 is not set # CONFIG_USB_SERIAL_WHITEHEAT is not set CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m -# CONFIG_USB_SERIAL_CP2101 is not set +CONFIG_USB_SERIAL_CP2101=m CONFIG_USB_SERIAL_CYPRESS_M8=m CONFIG_USB_SERIAL_EMPEG=m CONFIG_USB_SERIAL_FTDI_SIO=m -- cgit v1.2.3 From 58d228481ef248dd2cd996f36b95628c2aa78a3b Mon Sep 17 00:00:00 2001 From: Michael Lauer Date: Wed, 13 Aug 2008 08:39:49 +0000 Subject: add portaudio v19. svn version can be controlled via sane-srcrevs.inc NOTE: need to reenable building the examples --- packages/portaudio/portaudio-v19_20071207.bb | 27 --------- packages/portaudio/portaudio-v19_svn.bb | 29 ++++++++++ packages/portaudio/portaudio_0.0.19.bb | 87 ---------------------------- 3 files changed, 29 insertions(+), 114 deletions(-) delete mode 100644 packages/portaudio/portaudio-v19_20071207.bb create mode 100644 packages/portaudio/portaudio-v19_svn.bb delete mode 100644 packages/portaudio/portaudio_0.0.19.bb (limited to 'packages') diff --git a/packages/portaudio/portaudio-v19_20071207.bb b/packages/portaudio/portaudio-v19_20071207.bb deleted file mode 100644 index f8de2d741d..0000000000 --- a/packages/portaudio/portaudio-v19_20071207.bb +++ /dev/null @@ -1,27 +0,0 @@ -#! /bin/sh -# -# Copyright Matthias Hentges (c) 2008 -# License: MIT (see http://www.opensource.org/licenses/mit-license.php -# for a copy of the license) -# -# Filename: portaudio-v19_20071207.bb -# Date: 20080104 (YMD) - -DESCRIPTION = "portaudio is a portable cross-platform Audio API" -SECTION = "base" -LICENSE = "GPL" - -PR = "r0" - -###################################################################################### - -SRC_URI = "http://www.portaudio.com/archives/pa_stable_v19_${PV}.tar.gz" - -S = "${WORKDIR}/portaudio" - -inherit autotools - -do_stage() { - install -m 0644 ${S}/include/portaudio.h ${STAGING_INCDIR}/ - oe_libinstall -C lib -so libportaudio ${STAGING_LIBDIR}/ -} diff --git a/packages/portaudio/portaudio-v19_svn.bb b/packages/portaudio/portaudio-v19_svn.bb new file mode 100644 index 0000000000..8fe48f8efe --- /dev/null +++ b/packages/portaudio/portaudio-v19_svn.bb @@ -0,0 +1,29 @@ +DESCRIPTION = "A portable audio library" +SECTION = "libs/multimedia" +PRIORITY = "optional" +LICENSE = "GPL" +PV = "v19+svnr${SRCREV}" +PR = "r0" + +SRC_URI = "svn://www.portaudio.com/repos/portaudio;module=trunk;proto=https" +S = "${WORKDIR}/trunk" + +inherit autotools + +TESTS = " pa_devs patest1 patest_hang patest_many patest_prime patest_sine patest_stop patest_write_sine \ +pa_fuzz patest_buffer patest_in_overflow patest_maxsines patest_read_record patest_sine8 patest_sync \ +pa_minlat patest_callbackstop patest_latency patest_multi_sine patest_record patest_sine_formats patest_toomanysines \ +paqa_devs patest_clip patest_leftright patest_out_underflow patest_ringmix patest_sine_time patest_underflow \ +paqa_errs patest_dither patest_longsine patest_pink patest_saw patest_start_stop patest_wire" + +# DEFINES = PA_USE_OSS=1 HAVE_LIBPTHREAD=1 +# DEFINES += PA_LITTLE_ENDIAN + +# INCLUDEPATH = ../pa_common + +do_stage() { + autotools_stage_all +} + +PACKAGES += "portaudio-examples" +FILES_portaudio-examples = "${bindir}" diff --git a/packages/portaudio/portaudio_0.0.19.bb b/packages/portaudio/portaudio_0.0.19.bb deleted file mode 100644 index 748519f5b1..0000000000 --- a/packages/portaudio/portaudio_0.0.19.bb +++ /dev/null @@ -1,87 +0,0 @@ -DESCRIPTION = "A portable audio library" -SECTION = "libs" -PRIORITY = "optional" -LICENSE = "GPL" -PV = "1:0.0.19+cvs${SRCDATE}" -PR = "r1" - -SRC_URI = "http://www.portaudio.com/archives/pa_snapshot_v19.tar.gz" -S = "${WORKDIR}/portaudio" - -inherit qmake - -TESTS = " pa_devs patest1 patest_hang patest_many patest_prime patest_sine patest_stop patest_write_sine \ -pa_fuzz patest_buffer patest_in_overflow patest_maxsines patest_read_record patest_sine8 patest_sync \ -pa_minlat patest_callbackstop patest_latency patest_multi_sine patest_record patest_sine_formats patest_toomanysines \ -paqa_devs patest_clip patest_leftright patest_out_underflow patest_ringmix patest_sine_time patest_underflow \ -paqa_errs patest_dither patest_longsine patest_pink patest_saw patest_start_stop patest_wire" - -do_configure_prepend() { - echo "TEMPLATE = subdirs" >portaudio.pro - echo "SUBDIRS = lib tests" >>portaudio.pro - - mkdir -p lib - cat <lib/lib.pro -TEMPLATE = lib -CONFIG = console debug warn_on -TARGET = portaudio -VERSION = 0.0.19 -DESTDIR = . -DEFINES = PA_USE_OSS=1 HAVE_LIBPTHREAD=1 -DEFINES += PA_LITTLE_ENDIAN - -INCLUDEPATH = ../pa_common - -SOURCES = \ - ../pa_common/pa_allocation.c \ - ../pa_common/pa_converters.c \ - ../pa_common/pa_cpuload.c \ - ../pa_common/pa_dither.c \ - ../pa_common/pa_front.c \ - ../pa_common/pa_process.c \ - ../pa_common/pa_skeleton.c \ - ../pa_common/pa_stream.c \ - ../pa_common/pa_trace.c \ -\ - ../pa_unix_oss/pa_unix_oss.c \ - ../pa_unix/pa_unix_hostapis.c \ - ../pa_unix/pa_unix_util.c -EOF - - mkdir -p tests - echo "TEMPLATE = subdirs" >tests/tests.pro - echo "SUBDIRS = \\" >>tests/tests.pro - - for test in ${TESTS} - do - mkdir -p tests/$test - cat <tests/$test/$test.pro -TEMPLATE = app -CONFIG = console debug warn_on thread -DESTDIR = ../../bin -INCLUDEPATH = ../../pa_common/ -LIBS = -L../../lib -lportaudio -lm -SOURCES = ../../pa_tests/$test.c -EOF - echo "$test \\" >>tests/tests.pro - done - echo >>tests/tests.pro -} - -do_stage() { - oe_libinstall -so -C lib libportaudio ${STAGING_LIBDIR} - install -m 0644 pa_common/portaudio.h ${STAGING_INCDIR}/portaudio.h -} - -do_install() { - install -d ${D}${libdir} - install -d ${D}${bindir} - install -d ${D}${includedir} - oe_libinstall -so -C lib libportaudio ${D}${libdir} - install -m 0644 pa_common/portaudio.h ${D}${includedir} - install -m 0755 bin/* ${D}${bindir}/ -} - -PACKAGES = "${PN}-dbg libportaudio0 portaudio-dev portaudio-examples" -FILES_libportaudio0 = "${libdir}" -FILES_portaudio-examples = "${bindir}" -- cgit v1.2.3 From 27ef4f645ac40f9b3762d18f454be388d593d747 Mon Sep 17 00:00:00 2001 From: Stanislav Brabec Date: Wed, 13 Aug 2008 10:59:59 +0000 Subject: gpsdrive updated to version 1.3.5: * new formats: GlobalSat DG-100, Navilink GPS support, MTK Data Logger, Nokia LMX, Swiss Map 50 xol, NMEA GISTeq strain. * new features: Garmin HC supported, Garmin GPI proximity alerts, Lowrance waypoint comments, VCF coords in ADR for iPhone, timestamps in KML Placemarks, Opencaching.de GPX, TomTom geocaching, KML writer for geocaches rewritten, KML track/route writer direction of motion, GPX and CSV Geocache archive/availability, discard filter support for minimum number of satellites. * fixes: Google Maps reader, longitude and latitude in tomtom_in, Garmin GDB Category option, timestamps on xcsv formats, realtime KML GPS jitter suppress, GPX links handled in tracks and routes. --- packages/gpsbabel/gpsbabel_1.3.3.bb | 20 -------------------- packages/gpsbabel/gpsbabel_1.3.5.bb | 20 ++++++++++++++++++++ 2 files changed, 20 insertions(+), 20 deletions(-) delete mode 100644 packages/gpsbabel/gpsbabel_1.3.3.bb create mode 100644 packages/gpsbabel/gpsbabel_1.3.5.bb (limited to 'packages') diff --git a/packages/gpsbabel/gpsbabel_1.3.3.bb b/packages/gpsbabel/gpsbabel_1.3.3.bb deleted file mode 100644 index b5ff6a8510..0000000000 --- a/packages/gpsbabel/gpsbabel_1.3.3.bb +++ /dev/null @@ -1,20 +0,0 @@ -SECTION = "console/utils" -DESCRIPTION = "GPS data converter" -DEPENDS = "expat libusb-compat" -HOMEPAGE = "http://gpsbabel.sf.net" -LICENSE = "GPL" - -PR = "r1" - -SRC_URI = "${SOURCEFORGE_MIRROR}/gpsbabel/gpsbabel-${PV}.tar.gz" - -inherit autotools pkgconfig - -do_compile () { - oe_runmake EXTRA_CFLAGS="-I${STAGING_INCDIR} -L${STAGING_LIBDIR}" -} - -do_install () { - install -d ${D}${bindir} - install -m 0744 gpsbabel ${D}${bindir} -} diff --git a/packages/gpsbabel/gpsbabel_1.3.5.bb b/packages/gpsbabel/gpsbabel_1.3.5.bb new file mode 100644 index 0000000000..c46b9df81d --- /dev/null +++ b/packages/gpsbabel/gpsbabel_1.3.5.bb @@ -0,0 +1,20 @@ +SECTION = "console/utils" +DESCRIPTION = "GPS data converter" +DEPENDS = "expat libusb-compat" +HOMEPAGE = "http://gpsbabel.sf.net" +LICENSE = "GPL" + +PR = "r1" + +SRC_URI = "http://www.gpsbabel.org/plan9.php?dl=gpsbabel-${PV}.tar.gz" + +inherit autotools pkgconfig + +do_compile () { + oe_runmake EXTRA_CFLAGS="-I${STAGING_INCDIR} -L${STAGING_LIBDIR}" +} + +do_install () { + install -d ${D}${bindir} + install -m 0744 gpsbabel ${D}${bindir} +} -- cgit v1.2.3 From 00a6e61251ca4d086170ef7df8adb4c6f2f72689 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Wed, 13 Aug 2008 12:13:19 +0000 Subject: busybox: RRECOMMEND libgcc since avr32 toolchains don't build it --- packages/busybox/busybox.inc | 2 +- packages/busybox/busybox_1.9.2.bb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'packages') diff --git a/packages/busybox/busybox.inc b/packages/busybox/busybox.inc index 04decf61b2..cc196ad767 100644 --- a/packages/busybox/busybox.inc +++ b/packages/busybox/busybox.inc @@ -35,7 +35,7 @@ PACKAGES =+ "${PN}-httpd ${PN}-udhcpd" # We need this RRECOMMENDS because libc dlopens libgcc # and shlib mechanism can not detect it because its not # listed in the NEEDED field. -RDEPENDS += "libgcc" +RRECOMMENDS += "libgcc" FILES_${PN}-httpd = "${sysconfdir}/init.d/busybox-httpd /srv/www" FILES_${PN}-udhcpd = "${sysconfdir}/init.d/busybox-udhcpd" diff --git a/packages/busybox/busybox_1.9.2.bb b/packages/busybox/busybox_1.9.2.bb index c9440e7b4f..37cd2a86be 100644 --- a/packages/busybox/busybox_1.9.2.bb +++ b/packages/busybox/busybox_1.9.2.bb @@ -1,5 +1,5 @@ require busybox.inc -PR = "r1" +PR = "r2" SRC_URI = "http://www.busybox.net/downloads/busybox-${PV}.tar.gz \ file://udhcpscript.patch;patch=1 \ -- cgit v1.2.3 From 4acf5f7f80476332ce559060194561b4be78a893 Mon Sep 17 00:00:00 2001 From: Rolf Leggewie Date: Wed, 13 Aug 2008 13:08:27 +0000 Subject: lzma: update SRC_URI. closes 4494. * point to sf.net mirrors for download * introduce PVNODOT local variable to enable easier upgrade to new releases * update checksums.ini --- packages/lzma/lzma-native_4.17.bb | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'packages') diff --git a/packages/lzma/lzma-native_4.17.bb b/packages/lzma/lzma-native_4.17.bb index 1ccf005182..24664b32e4 100644 --- a/packages/lzma/lzma-native_4.17.bb +++ b/packages/lzma/lzma-native_4.17.bb @@ -2,9 +2,10 @@ DESCRIPTION = "LZMA is a general compression method. LZMA provides high compress HOMEPAGE = "http://www.7-zip.org/" LICENSE = "LGPL" DEPENDS = "zlib-native" -PR = "r2" +PR = "r3" -SRC_URI = "http://www.7-zip.org/dl/lzma417.tar.bz2 \ +PVNODOT = "${@bb.data.getVar('PV',d,1).split('.')[0]}${@bb.data.getVar('PV',d,1).split('.')[1]}" +SRC_URI = "${SOURCEFORGE_MIRROR}/sevenzip/lzma${PVNODOT}.tar.bz2 \ file://lzma-406-zlib-stream.patch;patch=1;pnum=2" S = "${WORKDIR}/SRC" -- cgit v1.2.3 From db85f26152da4c6c04b967978e94fa534d045d8a Mon Sep 17 00:00:00 2001 From: Robert Schuster Date: Wed, 13 Aug 2008 14:12:14 +0000 Subject: phoneme-advanced-foundation: New recipe. --- packages/phoneme/.mtn2git_empty | 0 packages/phoneme/files/.mtn2git_empty | 0 packages/phoneme/files/phoneme-makefile-fix.patch | 144 +++++++++++++++++++ .../phoneme/phoneme-advanced-foundation_0.0.b73.bb | 26 ++++ packages/phoneme/phoneme-advanced.inc | 160 +++++++++++++++++++++ 5 files changed, 330 insertions(+) create mode 100644 packages/phoneme/.mtn2git_empty create mode 100644 packages/phoneme/files/.mtn2git_empty create mode 100644 packages/phoneme/files/phoneme-makefile-fix.patch create mode 100644 packages/phoneme/phoneme-advanced-foundation_0.0.b73.bb create mode 100644 packages/phoneme/phoneme-advanced.inc (limited to 'packages') diff --git a/packages/phoneme/.mtn2git_empty b/packages/phoneme/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/phoneme/files/.mtn2git_empty b/packages/phoneme/files/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/phoneme/files/phoneme-makefile-fix.patch b/packages/phoneme/files/phoneme-makefile-fix.patch new file mode 100644 index 0000000000..9dc80428f1 --- /dev/null +++ b/packages/phoneme/files/phoneme-makefile-fix.patch @@ -0,0 +1,144 @@ +Index: cdc/build/share/rules_zoneinfo.mk +=================================================================== +--- cdc/build/share/rules_zoneinfo.mk.orig ++++ cdc/build/share/rules_zoneinfo.mk +@@ -45,7 +45,7 @@ $(ZONEINFO_CLASSES_DIR): + .compile.classlist: + $(AT)if [ -s $(ZONEINFO_CLASSES_DIR)/.classes.list ] ; then \ + echo "Compiling zic classes... "; \ +- $(JAVAC_CMD) \ ++ $(JAVAC_CMD) -sourcepath $(CVM_SHAREROOT)/classes \ + -d $(ZONEINFO_CLASSES_DIR) \ + @$(ZONEINFO_CLASSES_DIR)/.classes.list ; \ + fi +Index: cdc/build/share/jcc.mk +=================================================================== +--- cdc/build/share/jcc.mk.orig ++++ cdc/build/share/jcc.mk +@@ -93,7 +93,7 @@ $(CVM_GENOPCODE_DEPEND) :: $(CVM_JCC_SRC + $(CVM_JCC_SRCPATH)/JCCMessage.properties + @echo "... $@" + $(AT)CLASSPATH=$(CVM_JCC_SRCPATH); export CLASSPATH; \ +- $(CVM_JAVAC) $(JAVAC_OPTIONS) -d $(CVM_JCC_CLASSPATH) \ ++ $(CVM_JAVAC) $(JAVAC_OPTIONS) -sourcepath $(CVM_JCC_SRCPATH) -d $(CVM_JCC_CLASSPATH) \ + $(subst /,$(CVM_FILESEP),$(CVM_JCC_SRCPATH)/GenOpcodes.java) + $(AT)rm -f $(CVM_JCC_CLASSPATH)/JCCMessage.properties; \ + cp $(CVM_JCC_SRCPATH)/JCCMessage.properties $(CVM_JCC_CLASSPATH)/JCCMessage.properties +@@ -253,7 +253,7 @@ $(CVM_JCC_DEPEND) :: $(CVM_JCC_SRCPATH)/ + $(CVM_JCC_SRCPATH)/JCCMessage.properties + @echo "... $@" + @CLASSPATH=$(CVM_JCC_CLASSPATH)$(PS)$(CVM_JCC_SRCPATH)$(PS)$(CVM_DERIVEDROOT)/javavm/runtime; export CLASSPATH; \ +- $(CVM_JAVAC) $(JAVAC_OPTIONS) -d $(CVM_JCC_CLASSPATH) \ ++ $(CVM_JAVAC) $(JAVAC_OPTIONS) -classpath $(CVM_JCC_CLASSPATH)$(PS)$(CVM_JCC_SRCPATH)$(PS)$(CVM_DERIVEDROOT)/javavm/runtime -d $(CVM_JCC_CLASSPATH) \ + $(CVM_JCC_CLASSES) + @rm -f $(CVM_JCC_CLASSPATH)/JCCMessage.properties; \ + cp $(CVM_JCC_SRCPATH)/JCCMessage.properties $(CVM_JCC_CLASSPATH)/JCCMessage.properties +Index: cdc/build/share/defs.mk +=================================================================== +--- cdc/build/share/defs.mk.orig ++++ cdc/build/share/defs.mk +@@ -1187,7 +1187,7 @@ BUNDLE_PRODUCT_NAME = $(subst $(TM),$(e + BUNDLE_VERSION = $(subst -,_,$(J2ME_BUILD_VERSION_STRING)) + BUNDLE_TARGET = $(subst -,_,$(CVM_TARGET)) + +-BINARY_BUNDLE_NAME = \ ++BINARY_BUNDLE_NAME ?= \ + $(BUNDLE_PRODUCT_NAME)-$(BUNDLE_VERSION)-$(BUNDLE_TARGET)-bin + BINARY_BUNDLE_DIRNAME = $(BINARY_BUNDLE_NAME) + +@@ -2153,11 +2153,11 @@ endif + + # Note, ALL_INCLUDE_FLAGS flags is setup in rules.mk so + # abs2rel only needs to be called on it once. +-CPPFLAGS += $(CVM_DEFINES) $(ALL_INCLUDE_FLAGS) +-CFLAGS_SPEED = $(CFLAGS) $(CCFLAGS_SPEED) $(CPPFLAGS) +-CFLAGS_SPACE = $(CFLAGS) $(CCFLAGS_SPACE) $(CPPFLAGS) +-CFLAGS_LOOP = $(CFLAGS) $(CCFLAGS_LOOP) $(CPPFLAGS) +-CFLAGS_FDLIB = $(CFLAGS) $(CCFLAGS_FDLIB) $(CPPFLAGS) ++CVM_CPPFLAGS += $(CVM_DEFINES) $(ALL_INCLUDE_FLAGS) ++CFLAGS_SPEED = $(CFLAGS) $(CCFLAGS_SPEED) $(CVM_CPPFLAGS) ++CFLAGS_SPACE = $(CFLAGS) $(CCFLAGS_SPACE) $(CVM_CPPFLAGS) ++CFLAGS_LOOP = $(CFLAGS) $(CCFLAGS_LOOP) $(CVM_CPPFLAGS) ++CFLAGS_FDLIB = $(CFLAGS) $(CCFLAGS_FDLIB) $(CVM_CPPFLAGS) + CFLAGS_JCS = + + LINKFLAGS += -g -Wl,-export-dynamic $(LINK_ARCH_FLAGS) +@@ -2165,13 +2165,13 @@ LINKLIBS += -lpthread -ldl $(LINK_A + LINKLIBS_JCS += + + SO_CCFLAGS = $(CCFLAGS_SPEED) +-SO_CFLAGS = $(CFLAGS) $(SO_CCFLAGS) $(CPPFLAGS) ++SO_CFLAGS = $(CFLAGS) $(SO_CCFLAGS) $(CVM_CPPFLAGS) + SO_LINKFLAGS = $(LINKFLAGS) -shared + + # + # commands for running the tools + # +-ASM_CMD = $(AT)$(TARGET_AS) $(ASM_FLAGS) -D_ASM $(CPPFLAGS) \ ++ASM_CMD = $(AT)$(TARGET_AS) $(ASM_FLAGS) -D_ASM $(CVM_CPPFLAGS) \ + -o $@ $(call abs2rel,$<) + + # compileCCC(flags, objfile, srcfiles) +Index: cdc/build/share/rules.mk +=================================================================== +--- cdc/build/share/rules.mk.orig ++++ cdc/build/share/rules.mk +@@ -521,7 +521,7 @@ endif + # As a performance improvement, evaluate some flags in case + # they contain shell commands. + # FIXME: Disabled because this causes GCI build failures +-#$(J2ME_CLASSLIB):: CPPFLAGS := $(CPPFLAGS) ++#$(J2ME_CLASSLIB):: CVM_CPPFLAGS := $(CVM_CPPFLAGS) + + $(J2ME_CLASSLIB):: initbuild + $(J2ME_CLASSLIB):: btclasses $(CVM_BUILDTIME_CLASSESZIP) +@@ -708,14 +708,14 @@ $(CVM_OBJDIR)/executejava.o: $(CVM_DERIV + # command to use to generate dependency makefiles if requested + ifeq ($(GENERATEMAKEFILES), true) + GENERATEMAKEFILES_CMD = \ +- @$(TARGET_CC) $(CCDEPEND) $(CC_ARCH_FLAGS) $(CPPFLAGS) $< \ ++ @$(TARGET_CC) $(CCDEPEND) $(CC_ARCH_FLAGS) $(CVM_CPPFLAGS) $< \ + 2> /dev/null | sed 's!$*\.o!$(dir $@)&!g' > $(@:.o=.d) + endif + + # command to use to generate stack map analysis files if requested + ifeq ($(CVM_CSTACKANALYSIS), true) + CSTACKANALYSIS_CMD = \ +- $(AT)$(TARGET_CC) -S $(CCFLAGS) $(CPPFLAGS) -o $(@:.o=.asm) $< ++ $(AT)$(TARGET_CC) -S $(CCFLAGS) $(CVM_CPPFLAGS) -o $(@:.o=.asm) $< + endif + + # +@@ -751,7 +753,7 @@ $(CVM_OBJDIR)/%.o: %.S + @echo "as $<" + $(ASM_CMD) + ifeq ($(GENERATEMAKEFILES), true) +- @$(TARGET_CC) $(ASM_ARCH_FLAGS) $(CCDEPEND) $(CPPFLAGS) $< \ ++ @$(TARGET_CC) $(ASM_ARCH_FLAGS) $(CCDEPEND) $(CVM_CPPFLAGS) $< \ + 2> /dev/null | sed 's!$*\.o!$(dir $@)&!g' > $(@:.o=.d) + endif + ifeq ($(CVM_CSTACKANALYSIS), true) +@@ -772,7 +774,7 @@ $(CVM_FDLIB_FILES): $(CVM_OBJDIR)/%.o: $ + @echo "cc $<" + $(CC_CMD_FDLIB) + ifeq ($(GENERATEMAKEFILES), true) +- @$(TARGET_CC) $(CC_ARCH_FLAGS) $(CCDEPEND) $(CPPFLAGS) $< \ ++ @$(TARGET_CC) $(CC_ARCH_FLAGS) $(CCDEPEND) $(CVM_CPPFLAGS) $< \ + 2> /dev/null | sed 's!$*\.o!$(dir $@)&!g' > $(@:.o=.d) + endif + +Index: cdc/src/linux-arm/javavm/runtime/segvhandler_arch.c +=================================================================== +--- cdc/src/linux-arm/javavm/runtime/segvhandler_arch.c.orig ++++ cdc/src/linux-arm/javavm/runtime/segvhandler_arch.c +@@ -41,8 +41,8 @@ + #include + #include + /* avoid conflicting ucontext definitions */ +-#define ucontext asm_ucontext +-#include ++/*#define ucontext asm_ucontext*/ ++#include + #include + + #define MAXSIGNUM 32 diff --git a/packages/phoneme/phoneme-advanced-foundation_0.0.b73.bb b/packages/phoneme/phoneme-advanced-foundation_0.0.b73.bb new file mode 100644 index 0000000000..59dbfb7a3b --- /dev/null +++ b/packages/phoneme/phoneme-advanced-foundation_0.0.b73.bb @@ -0,0 +1,26 @@ +require phoneme-advanced.inc + +BUILDREV = "b73" +SRCREV = "11560" + +SRC_URI += "file://phoneme-makefile-fix.patch;patch=1;pnum=0" + +FILES_${PN} += "\ + ${COMMON_DIR}/bin/cvm \ + ${COMMON_DIR}/lib/btclasses.zip \ + ${COMMON_DIR}/lib/content-types.properties \ + ${COMMON_DIR}/lib/foundation.jar \ + ${COMMON_DIR}/lib/security/java.security \ + ${COMMON_DIR}/lib/security/java.policy \ + ${COMMON_DIR}/lib/zi/Asia/Novosibirsk \ + ${COMMON_DIR}/lib/zi/Asia/Calcutta \ + ${COMMON_DIR}/lib/zi/ZoneInfoMappings \ + ${COMMON_DIR}/lib/zi/GMT \ + ${COMMON_DIR}/lib/zi/America/Los_Angeles \ + ${COMMON_DIR}/democlasses.jar \ + ${COMMON_DIR}/testclasses.zip \ + ${COMMON_DIR}/legal/license.txt \ + ${COMMON_DIR}/legal/thirdpartylicensereadme.txt \ + ${COMMON_DIR}/legal/copyright.txt \ +" + diff --git a/packages/phoneme/phoneme-advanced.inc b/packages/phoneme/phoneme-advanced.inc new file mode 100644 index 0000000000..aad82cfe42 --- /dev/null +++ b/packages/phoneme/phoneme-advanced.inc @@ -0,0 +1,160 @@ +DESCRIPTION = "A free CDC JavaVM and class library from Sun Microsystems." +LICENSE = "GPLv2" +HOMEPAGE = "https://phoneme.dev.java.net" +AUTHOR = "Sun Microsystems, Inc." + +DEPENDS = "classpath-native virtual/javac-native linux-libc-headers" + +inherit java update-alternatives + +# The PhoneME Advanced build system is documented here: http://java.sun.com/javame/reference/docs/cdc_build_system.pdf +# NOTE: We need to provide an empty password. pswd='' seems not to be the correct way. +SRC_URI = "\ + svn://phoneme.dev.java.net/svn/phoneme/builds/phoneme_advanced-mr2-dev-${BUILDREV};module=cdc;proto=https;localdir=cdc;user=guest;pswd='' \ + svn://phoneme.dev.java.net/svn/phoneme/builds/phoneme_advanced-mr2-dev-${BUILDREV};module=tools;proto=https;localdir=tools;user=guest;pswd='' \ + svn://phoneme.dev.java.net/svn/phoneme;module=legal;localdir=legal;proto=https;user=guest;pswd='' \ + " + +PROVIDES = "virtual/java-cdc java-cdc-runtime" +PRIORITY = "optional" +SECTION = "interpreters" + +# PhoneME builds currently cannot be parallel +PARALLEL_MAKE = "" + +S = "${WORKDIR}" + +BUILDREV = ${@bb.fatal('BUILDREV is not defined in this phoneme-advanced recipe!')} +SRCREV = ${@bb.fatal('SRCREV is not defined in this phoneme-advanced recipe!')} + +COMMON_DIR = "${libdir_jvm}/${PN}" + +do_compile() { + set_arch + oe_runmake -C cdc/build/linux-$ARCH-generic bin +} + +do_install() { + install -d ${D}/${libdir_jvm} + + unzip cdc/install/${PN}.zip -d ${D}/${libdir_jvm} + + # Additional link named cvm + install -d ${D}/${bindir} + ln -sf ${libdir_jvm}/${PN}/bin/cvm ${D}${bindir}/cvm +} + +do_configure() { + set_arch + test ! -d cdc/build/linux-$ARCH-generic && mkdir -p cdc/build/linux-$ARCH-generic + cd cdc/build/linux-$ARCH-generic + + echo "Configuring PhoneME Advanced build" + # At the moment we do not support anything else than the foundation + #profiles. + pmo_start J2ME_CLASSLIB foundation + + # Dispatch to arch-specific functions. + oe_phoneme_config$ARCH + + oe_phoneme_configbase + + pmo "# Misc locations and file names." + pmo BINARY_BUNDLE_NAME ${PN} + pmo BINARY_BUNDLE_APPEND_REVISION false + pmo JAVAME_LEGAL_DIR ${WORKDIR}/legal + + pmo "# Java toolchain binaries" + pmo JDK_HOME $JAVA_HOME + pmo CVM_TARGET_TOOLS_PREFIX ${CROSS_DIR}/bin/ + pmo CVM_JAVA java + pmo CVM_JAVAC javac + pmo CVM_JAVADOC true + pmo CVM_JAVAH gjavah + pmo CVM_JAR gjar + pmo CVM_INCLUDE_DIR ${STAGING_INCDIR}/classpath + + pmo JAVAC_OPTIONS -nowarn + + pmo "# Host C/C++ toolchain binaries" + pmo HOST_CC "${BUILD_CC}" + pmo HOST_CC_PATH "${BUILD_CC}" + pmo HOST_CCC "${BUILD_CXX}" + pmo HOST_PATH "${BUILD_CXX}" + pmo HOST_LD "${BUILD_LD}" + pmo HOST_RANLIB "${BUILD_RANLIB}" + + pmo "# C/C++ toolchain binaries" + pmo TARGET_CC "${CC}" + pmo TARGET_CC_PATH "${CC}" + pmo CCFLAGS "${CFLAGS}" + pmo TARGET_CCC "${CXX}" + pmo TARGET_PATH "${CXX}" + pmo CCCFLAGS "${CXXFLAGS}" + pmo TARGET_AR "${AR}" + pmo TARGET_LD "${CC}" + pmo TARGET_RANLIB "${RANLIB}" + + pmo USE_GCC2 false + + pmo "include ../share/top.mk" +} + +pmo_start() { + echo "$1 = $2" > GNUmakefile + echo "$1 = $2" +} + +pmo() { + if [ "$2" ] + then + echo "$1 = $2" >> GNUmakefile + echo "$1 = $2" + else + echo "$1" >> GNUmakefile + echo "$1" + fi +} + +set_arch() { + case ${TARGET_ARCH} in + arm*) ARCH=arm ;; + i*86*) ARCH=x86 ;; + mips*) ARCH=mips ;; + powerpc*) ARCH=powerpc ;; + sparc*) ARCH=sparc ;; + x86_64*) ARCH=x86 ;; + *) die "Sorry, your target architecture is not supported!" ;; + esac +} + +# Default non-arch specific configuration +oe_phoneme_configbase() { + pmo CVM_DEBUG false + pmo CVM_JIT true +} + +# Default arch specific configurations +oe_phoneme_configarm() { + tf=true + if [ Xoabi = X${ARM_ABI} ] + then + tf=false + fi + + pmo USE_AAPCS $tf +} + +oe_phoneme_configx86() { + # Taken from linux-x86-generic/GNUmakefile + pmo CVM_JIT_REGISTER_LOCALS false +} + +ALTERNATIVE_NAME = "java-cdc" +ALTERNATIVE_LINK = "${bindir}/${ALTERNATIVE_NAME}" +ALTERNATIVE_PATH = "${libdir}/jvm/${PN}/bin/cvm" +ALTERNATIVE_PRIORITY = "10" + +FILES_${PN} = "${bindir}" +FILES_${PN}-dbg += "${COMMON_DIR}/bin/.debug/cvm" + -- cgit v1.2.3 From e3c68ca5b35a68ba64500e89b141b360b3dc6bba Mon Sep 17 00:00:00 2001 From: Michael Lauer Date: Wed, 13 Aug 2008 15:47:38 +0000 Subject: add python-ptrace, a debugger written in python. closes #4496 --- packages/python/python-ptrace_0.3.2.bb | 10 ++++++++++ packages/tasks/task-python-everything.bb | 3 ++- 2 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 packages/python/python-ptrace_0.3.2.bb (limited to 'packages') diff --git a/packages/python/python-ptrace_0.3.2.bb b/packages/python/python-ptrace_0.3.2.bb new file mode 100644 index 0000000000..a039476c39 --- /dev/null +++ b/packages/python/python-ptrace_0.3.2.bb @@ -0,0 +1,10 @@ +DESCRIPTION = "python-ptrace is a debugger using ptrace." +HOMEPAGE = "http://fusil.hachoir.org/trac/wiki/python-ptrace" +SECTION = "devel/python" +LICENSE = "GPLv2" +PR = "ml0" + +SRC_URI = "http://pypi.python.org/packages/source/p/ptrace/ptrace-${PV}.tar.gz" +S = "${WORKDIR}/ptrace-${PV}" + +inherit distutils diff --git a/packages/tasks/task-python-everything.bb b/packages/tasks/task-python-everything.bb index f6aec948bd..08915c033f 100644 --- a/packages/tasks/task-python-everything.bb +++ b/packages/tasks/task-python-everything.bb @@ -1,7 +1,7 @@ DESCRIPTION= "Everything Python" HOMEPAGE = "http://www.vanille.de/projects/python.spy" LICENSE = "MIT" -PR = "ml32" +PR = "ml33" RDEPENDS = "\ python-ao \ @@ -39,6 +39,7 @@ RDEPENDS = "\ python-ogg \ python-opendir \ python-pexpect \ + python-ptrace \ python-pyalsa \ python-pyalsaaudio \ python-pybluez \ -- cgit v1.2.3 From 2babd942267e00b6565562ede1ea1e91ebb85ed8 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Wed, 13 Aug 2008 18:20:35 +0000 Subject: midori: add 0.0.19 --- packages/gtk-webcore/midori_0.0.19.bb | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 packages/gtk-webcore/midori_0.0.19.bb (limited to 'packages') diff --git a/packages/gtk-webcore/midori_0.0.19.bb b/packages/gtk-webcore/midori_0.0.19.bb new file mode 100644 index 0000000000..ec81d7fd23 --- /dev/null +++ b/packages/gtk-webcore/midori_0.0.19.bb @@ -0,0 +1,5 @@ +require midori.inc + +SRC_URI = "http://software.twotoasts.de/media/midori/midori-${PV}.tar.bz2" + + -- cgit v1.2.3 From ac79b51ec2d8cae059f63f4c87090d8e38e94f47 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Wed, 13 Aug 2008 19:21:22 +0000 Subject: classpath: classpath non-native needs the libtool rpath hack as well --- packages/classpath/classpath.inc | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'packages') diff --git a/packages/classpath/classpath.inc b/packages/classpath/classpath.inc index cfb9f1c089..cee09857e4 100644 --- a/packages/classpath/classpath.inc +++ b/packages/classpath/classpath.inc @@ -30,6 +30,14 @@ EXTRA_OECONF = "\ inherit autotools +# hack to get config.rpath in, it comes from gettext +do_configure_prepend () { + + ${@['','cp ${STAGING_DATADIR_NATIVE}/automake-1.10/config.rpath ${S}'][bb.data.getVar('PREFERRED_VERSION_automake-native',d,1) == '1.10']} + +} + + do_stage() { install -d ${STAGING_INCDIR}/classpath install -m 0644 include/jni* ${STAGING_INCDIR}/classpath -- cgit v1.2.3 From 43bba2940f132d48f9069ce29881fc098348e3cd Mon Sep 17 00:00:00 2001 From: Henning Heinold Date: Wed, 13 Aug 2008 21:05:14 +0000 Subject: rdesktop: update to version 1.6.0 * fixes partly bug 4376 --- packages/rdesktop/rdesktop_1.6.0.bb | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 packages/rdesktop/rdesktop_1.6.0.bb (limited to 'packages') diff --git a/packages/rdesktop/rdesktop_1.6.0.bb b/packages/rdesktop/rdesktop_1.6.0.bb new file mode 100644 index 0000000000..b5337f9e83 --- /dev/null +++ b/packages/rdesktop/rdesktop_1.6.0.bb @@ -0,0 +1,13 @@ +DESCRIPTION = "Rdesktop rdp client for X" +DEPENDS = "virtual/libx11 openssl" +HOMEPAGE = "http://www.rdesktop.org" +SECTION = "x11/network" +LICENSE = "GPL" +PV = "1.6.0" +PR = "r0" + +SRC_URI = "${SOURCEFORGE_MIRROR}/rdesktop/rdesktop-${PV}.tar.gz" + +inherit autotools + +EXTRA_OECONF = "--with-openssl=${STAGING_EXECPREFIXDIR} " -- cgit v1.2.3 From 4307dcb4ece06caddec55dd5996731c1baca424f Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Wed, 13 Aug 2008 21:45:11 +0000 Subject: linux omap2 git: add patch to fix musb dma --- .../linux-omap2-git/beagleboard/musb-dmafix.patch | 275 +++++++++++++++++++++ packages/linux/linux-omap2_git.bb | 3 +- 2 files changed, 277 insertions(+), 1 deletion(-) create mode 100644 packages/linux/linux-omap2-git/beagleboard/musb-dmafix.patch (limited to 'packages') diff --git a/packages/linux/linux-omap2-git/beagleboard/musb-dmafix.patch b/packages/linux/linux-omap2-git/beagleboard/musb-dmafix.patch new file mode 100644 index 0000000000..968cc6cf73 --- /dev/null +++ b/packages/linux/linux-omap2-git/beagleboard/musb-dmafix.patch @@ -0,0 +1,275 @@ +From: Gadiyar, Anand +Date: Wed, 13 Aug 2008 07:05:29 +0000 (+0530) +Subject: MUSB: Workaround for simultaneous TX and RX usage +X-Git-Url: http://git.mansr.com/?p=linux-omap;a=commitdiff_plain;h=2e6aa4efb0e14c51ff0427927b1b38136911fa93 + +MUSB: Workaround for simultaneous TX and RX usage + +MUSB: Workaround for simultaneous TX and RX usage + +MUSB RTL V1.4 has a hardware issue which results in a DMA controller +hang when TX and RX DMA channels are simultaneously enabled. This +affects at least OMAP2430 and OMAP34XX. + +Since RX transfers are in Mode 0 and anyway result in one DMA interrupt +per packet, we can use System DMA to unload the RX fifos. MUSB DMA can +be used for all TX channels as before. + +Tested with full-duplex TX and RX transfers using g_ether. Runs for 24 +hours without a hang. Without this patch, the hang occurs within minutes. + +This issue was first reported by Jon Hunter on [1] + +[1] http://marc.info/?l=linux-omap&m=119634480534453&w=2 + +Signed-off-by: Anand Gadiyar +--- + +diff --git a/drivers/usb/musb/Kconfig b/drivers/usb/musb/Kconfig +index a485a86..8583e54 100644 +--- a/drivers/usb/musb/Kconfig ++++ b/drivers/usb/musb/Kconfig +@@ -150,6 +150,14 @@ config USB_INVENTRA_DMA + help + Enable DMA transfers using Mentor's engine. + ++config MUSB_USE_SYSTEM_DMA_RX ++ bool 'Use System DMA for RX endpoints' ++ depends on USB_MUSB_HDRC && USB_INVENTRA_DMA ++ help ++ MUSB RTL version 1.4 has a hardware issue when TX and RX DMA ++ channels are simultaneously enabled. To work around this issue, ++ you can choose to use System DMA for RX channels. ++ + config USB_TI_CPPI_DMA + bool + depends on USB_MUSB_HDRC && !MUSB_PIO_ONLY +diff --git a/drivers/usb/musb/musbhsdma.c b/drivers/usb/musb/musbhsdma.c +index 32bb1e2..d1c1ea0 100644 +--- a/drivers/usb/musb/musbhsdma.c ++++ b/drivers/usb/musb/musbhsdma.c +@@ -34,6 +34,7 @@ + #include + #include + #include "musb_core.h" ++#include + + #if defined(CONFIG_ARCH_OMAP2430) || defined(CONFIG_ARCH_OMAP3430) + #include "omap2430.h" +@@ -64,6 +65,9 @@ + + #define MUSB_HSDMA_CHANNELS 8 + ++#define MUSB_FIFO_ADDRESS(epnum) \ ++ ((unsigned long) (OMAP_HSOTG_BASE + MUSB_FIFO_OFFSET(epnum))) ++ + struct musb_dma_controller; + + struct musb_dma_channel { +@@ -75,6 +79,8 @@ struct musb_dma_channel { + u8 bIndex; + u8 epnum; + u8 transmit; ++ ++ int sysdma_channel; + }; + + struct musb_dma_controller { +@@ -93,6 +99,42 @@ static int dma_controller_start(struct dma_controller *c) + return 0; + } + ++#ifdef CONFIG_MUSB_USE_SYSTEM_DMA_RX ++static void musb_sysdma_completion(int lch, u16 ch_status, void *data) ++{ ++ u32 dwAddress; ++ unsigned long flags; ++ ++ struct dma_channel *pChannel; ++ ++ struct musb_dma_channel *pImplChannel = ++ (struct musb_dma_channel *) data; ++ struct musb_dma_controller *controller = pImplChannel->controller; ++ struct musb *musb = controller->pDmaPrivate; ++ pChannel = &pImplChannel->Channel; ++ ++ DBG(2, "lch = 0x%d, ch_status = 0x%x\n", lch, ch_status); ++ spin_lock_irqsave(&musb->lock, flags); ++ ++ dwAddress = (u32) omap_get_dma_dst_pos(pImplChannel->sysdma_channel); ++ pChannel->actual_len = dwAddress - pImplChannel->dwStartAddress; ++ ++ DBG(2, "ch %p, 0x%x -> 0x%x (%d / %d) %s\n", ++ pChannel, pImplChannel->dwStartAddress, dwAddress, ++ pChannel->actual_len, pImplChannel->len, ++ (pChannel->actual_len < pImplChannel->len) ? ++ "=> reconfig 0": "=> complete"); ++ ++ pChannel->status = MUSB_DMA_STATUS_FREE; ++ musb_dma_completion(musb, pImplChannel->epnum, pImplChannel->transmit); ++ ++ spin_unlock_irqrestore(&musb->lock, flags); ++ return; ++} ++#else ++#define musb_sysdma_completion NULL ++#endif ++ + static void dma_channel_release(struct dma_channel *pChannel); + + static int dma_controller_stop(struct dma_controller *c) +@@ -144,6 +186,29 @@ static struct dma_channel *dma_channel_allocate(struct dma_controller *c, + /* Tx => mode 1; Rx => mode 0 */ + pChannel->desired_mode = transmit; + pChannel->actual_len = 0; ++ pImplChannel->sysdma_channel = -1; ++ ++#ifdef CONFIG_MUSB_USE_SYSTEM_DMA_RX ++ if (!transmit) { ++ int ret; ++ ret = omap_request_dma(OMAP24XX_DMA_NO_DEVICE, ++ "MUSB SysDMA", musb_sysdma_completion, ++ (void *) pImplChannel, ++ &(pImplChannel->sysdma_channel)); ++ ++ if (ret) { ++ printk(KERN_ERR "request_dma failed:" ++ " %d\n", ret); ++ controller->bmUsedChannels &= ++ ~(1 << bBit); ++ pChannel->status = ++ MUSB_DMA_STATUS_UNKNOWN; ++ pImplChannel->sysdma_channel = -1; ++ pChannel = NULL; ++ } ++ } ++#endif ++ + break; + } + } +@@ -163,6 +228,12 @@ static void dma_channel_release(struct dma_channel *pChannel) + ~(1 << pImplChannel->bIndex); + + pChannel->status = MUSB_DMA_STATUS_UNKNOWN; ++ ++ if (pImplChannel->sysdma_channel != -1) { ++ omap_stop_dma(pImplChannel->sysdma_channel); ++ omap_free_dma(pImplChannel->sysdma_channel); ++ pImplChannel->sysdma_channel = -1; ++ } + } + + static void configure_channel(struct dma_channel *pChannel, +@@ -179,41 +250,69 @@ static void configure_channel(struct dma_channel *pChannel, + DBG(4, "%p, pkt_sz %d, addr 0x%x, len %d, mode %d\n", + pChannel, packet_sz, dma_addr, len, mode); + +- if (mode) { +- csr |= 1 << MUSB_HSDMA_MODE1_SHIFT; +- BUG_ON(len < packet_sz); ++ if (pImplChannel->sysdma_channel != -1) { ++ /* System DMA */ ++ /* RX: set src = FIFO */ ++ ++ omap_set_dma_transfer_params(pImplChannel->sysdma_channel, ++ OMAP_DMA_DATA_TYPE_S8, ++ len, 1, /* One frame */ ++ OMAP_DMA_SYNC_ELEMENT, ++ OMAP24XX_DMA_NO_DEVICE, ++ 0); /* Src Sync */ ++ ++ omap_set_dma_src_params(pImplChannel->sysdma_channel, 0, ++ OMAP_DMA_AMODE_CONSTANT, ++ MUSB_FIFO_ADDRESS(pImplChannel->epnum), ++ 0, 0); + +- if (packet_sz >= 64) { +- csr |= MUSB_HSDMA_BURSTMODE_INCR16 ++ omap_set_dma_dest_params(pImplChannel->sysdma_channel, 0, ++ OMAP_DMA_AMODE_POST_INC, dma_addr, ++ 0, 0); ++ ++ omap_set_dma_dest_data_pack(pImplChannel->sysdma_channel, 1); ++ omap_set_dma_dest_burst_mode(pImplChannel->sysdma_channel, ++ OMAP_DMA_DATA_BURST_16); ++ ++ omap_start_dma(pImplChannel->sysdma_channel); ++ ++ } else { /* Mentor DMA */ ++ if (mode) { ++ csr |= 1 << MUSB_HSDMA_MODE1_SHIFT; ++ BUG_ON(len < packet_sz); ++ ++ if (packet_sz >= 64) { ++ csr |= MUSB_HSDMA_BURSTMODE_INCR16 + << MUSB_HSDMA_BURSTMODE_SHIFT; +- } else if (packet_sz >= 32) { +- csr |= MUSB_HSDMA_BURSTMODE_INCR8 ++ } else if (packet_sz >= 32) { ++ csr |= MUSB_HSDMA_BURSTMODE_INCR8 + << MUSB_HSDMA_BURSTMODE_SHIFT; +- } else if (packet_sz >= 16) { +- csr |= MUSB_HSDMA_BURSTMODE_INCR4 ++ } else if (packet_sz >= 16) { ++ csr |= MUSB_HSDMA_BURSTMODE_INCR4 + << MUSB_HSDMA_BURSTMODE_SHIFT; ++ } + } +- } + +- csr |= (pImplChannel->epnum << MUSB_HSDMA_ENDPOINT_SHIFT) +- | (1 << MUSB_HSDMA_ENABLE_SHIFT) +- | (1 << MUSB_HSDMA_IRQENABLE_SHIFT) +- | (pImplChannel->transmit +- ? (1 << MUSB_HSDMA_TRANSMIT_SHIFT) +- : 0); +- +- /* address/count */ +- musb_writel(mbase, +- MUSB_HSDMA_CHANNEL_OFFSET(bChannel, MUSB_HSDMA_ADDRESS), +- dma_addr); +- musb_writel(mbase, +- MUSB_HSDMA_CHANNEL_OFFSET(bChannel, MUSB_HSDMA_COUNT), +- len); +- +- /* control (this should start things) */ +- musb_writew(mbase, +- MUSB_HSDMA_CHANNEL_OFFSET(bChannel, MUSB_HSDMA_CONTROL), +- csr); ++ csr |= (pImplChannel->epnum << MUSB_HSDMA_ENDPOINT_SHIFT) ++ | (1 << MUSB_HSDMA_ENABLE_SHIFT) ++ | (1 << MUSB_HSDMA_IRQENABLE_SHIFT) ++ | (pImplChannel->transmit ++ ? (1 << MUSB_HSDMA_TRANSMIT_SHIFT) ++ : 0); ++ ++ /* address/count */ ++ musb_writel(mbase, ++ MUSB_HSDMA_CHANNEL_OFFSET(bChannel, MUSB_HSDMA_ADDRESS), ++ dma_addr); ++ musb_writel(mbase, ++ MUSB_HSDMA_CHANNEL_OFFSET(bChannel, MUSB_HSDMA_COUNT), ++ len); ++ ++ /* control (this should start things) */ ++ musb_writew(mbase, ++ MUSB_HSDMA_CHANNEL_OFFSET(bChannel, MUSB_HSDMA_CONTROL), ++ csr); ++ } /* Mentor DMA */ + } + + static int dma_channel_program(struct dma_channel *pChannel, +@@ -265,6 +364,12 @@ static int dma_channel_abort(struct dma_channel *pChannel) + MUSB_EP_OFFSET(pImplChannel->epnum, MUSB_TXCSR), + csr); + } else { ++ if (pImplChannel->sysdma_channel != -1) { ++ omap_stop_dma(pImplChannel->sysdma_channel); ++ omap_free_dma(pImplChannel->sysdma_channel); ++ pImplChannel->sysdma_channel = -1; ++ } ++ + csr = musb_readw(mbase, + MUSB_EP_OFFSET(pImplChannel->epnum, MUSB_RXCSR)); + csr &= ~(MUSB_RXCSR_AUTOCLEAR | diff --git a/packages/linux/linux-omap2_git.bb b/packages/linux/linux-omap2_git.bb index 8682c33404..f032f076e8 100644 --- a/packages/linux/linux-omap2_git.bb +++ b/packages/linux/linux-omap2_git.bb @@ -6,7 +6,7 @@ SRCREV = "d6daf8d8cc5ccf90247def5551ee9c3e8555e848" PV = "2.6.26" #PV = "2.6.26+2.6.27-rc1+${PR}+git${SRCREV}" -PR = "r60" +PR = "r61" SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6.git;protocol=git \ file://defconfig" @@ -52,6 +52,7 @@ SRC_URI_append_beagleboard = " file://no-harry-potter.diff;patch=1 \ file://02-postrate-notifier.eml;patch=1 \ file://01-omap3-cpufreq.eml;patch=1 \ file://01-beagle-cpufreq.diff;patch=1 \ + file://musb-dmafix.patch;patch=1 \ " SRC_URI_append_omap3evm = " file://no-harry-potter.diff;patch=1 \ -- cgit v1.2.3 From 3fb15bea58c24989ae479b9e0017367ec3f548f4 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Thu, 14 Aug 2008 08:47:23 +0000 Subject: povray: update to 3.7.0 beta 25b --- .../povray-3.6.1+3.7.0-beta25b/.mtn2git_empty | 0 .../configure-cross-hack.patch | 42 +++++++++++++ .../povray/povray-3.6.1+3.7.0-beta25b/gcc43.diff | 70 ++++++++++++++++++++++ packages/povray/povray_3.6.1+3.7.0-beta25b.bb | 42 +++++++++++++ 4 files changed, 154 insertions(+) create mode 100644 packages/povray/povray-3.6.1+3.7.0-beta25b/.mtn2git_empty create mode 100644 packages/povray/povray-3.6.1+3.7.0-beta25b/configure-cross-hack.patch create mode 100644 packages/povray/povray-3.6.1+3.7.0-beta25b/gcc43.diff create mode 100644 packages/povray/povray_3.6.1+3.7.0-beta25b.bb (limited to 'packages') diff --git a/packages/povray/povray-3.6.1+3.7.0-beta25b/.mtn2git_empty b/packages/povray/povray-3.6.1+3.7.0-beta25b/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/povray/povray-3.6.1+3.7.0-beta25b/configure-cross-hack.patch b/packages/povray/povray-3.6.1+3.7.0-beta25b/configure-cross-hack.patch new file mode 100644 index 0000000000..e0803bafac --- /dev/null +++ b/packages/povray/povray-3.6.1+3.7.0-beta25b/configure-cross-hack.patch @@ -0,0 +1,42 @@ +--- /tmp/configure.ac 2008-08-14 01:13:37.000000000 +0200 ++++ povray-3.7.0.beta.25b/configure.ac 2008-08-14 01:17:56.253198000 +0200 +@@ -357,8 +357,6 @@ + AC_MSG_RESULT([yes]) + AX_CHECK_LIB([z], [$required_libz_version], [z], [zlibVersion], [zlib.h], [zlibVersion()], [$with_zlib]) + if test x"$ax_check_lib" != x"ok"; then +- AC_MSG_ERROR([cannot find a suitable ZLIB library]) +- else + pov_libz=ok + fi + fi +@@ -373,8 +371,6 @@ + AC_MSG_RESULT([yes]) + AX_CHECK_LIB([png], [$required_libpng_version], [png12 png], [png_get_libpng_ver], [png.h], [png_get_libpng_ver(NULL)], [$with_libpng]) + if test x"$ax_check_lib" != x"ok"; then +- AC_MSG_ERROR([cannot find a suitable PNG library]) +- else + pov_libpng=ok + fi + fi +@@ -390,11 +386,9 @@ + AC_MSG_RESULT([yes]) + AX_CHECK_LIBJPEG([$required_libjpeg_version], [$with_libjpeg]) + if test x"$ax_check_libjpeg" != x"ok"; then +- AC_MSG_ERROR([cannot find a suitable JPEG library]) +- else + # create jversion.h in builddir + test -d "./source" || mkdir ./source +- echo "#define JVERSION \"${ax_check_libjpeg_version}\"" > ./source/jversion.h ++ echo "#define JVERSION \"62\"" > ./source/jversion.h + pov_libjpeg=ok + fi + fi +@@ -409,8 +403,6 @@ + AC_MSG_RESULT([yes]) + AX_CHECK_LIBTIFF([$required_libtiff_version], [$with_libtiff]) + if test x"$ax_check_libtiff" != x"ok"; then +- AC_MSG_ERROR([cannot find a suitable TIFF library]) +- else + pov_libtiff=ok + fi + fi diff --git a/packages/povray/povray-3.6.1+3.7.0-beta25b/gcc43.diff b/packages/povray/povray-3.6.1+3.7.0-beta25b/gcc43.diff new file mode 100644 index 0000000000..696dfb471f --- /dev/null +++ b/packages/povray/povray-3.6.1+3.7.0-beta25b/gcc43.diff @@ -0,0 +1,70 @@ +--- /tmp/processoptions.cpp 2008-08-14 01:47:37.000000000 +0200 ++++ povray-3.7.0.beta.25b/source/base/processoptions.cpp 2008-08-14 01:48:23.853198000 +0200 +@@ -90,6 +90,7 @@ + * + *********************************************************************************/ + ++#include + #include + #include + +--- /tmp/fileinputoutput.cpp 2008-08-14 01:49:16.000000000 +0200 ++++ povray-3.7.0.beta.25b/source/base/fileinputoutput.cpp 2008-08-14 01:49:33.043198000 +0200 +@@ -90,6 +90,7 @@ + * + *********************************************************************************/ + ++#include + #include + #include + +--- /tmp/textstreambuffer.cpp 2008-08-14 01:52:07.000000000 +0200 ++++ povray-3.7.0.beta.25b/source/base/textstreambuffer.cpp 2008-08-14 01:52:21.693198000 +0200 +@@ -90,6 +90,7 @@ + * + *********************************************************************************/ + ++#include + #include + + #include "configbase.h" +--- /tmp/fileinputoutput.h 2008-08-14 01:53:49.000000000 +0200 ++++ povray-3.7.0.beta.25b/source/base/fileinputoutput.h 2008-08-14 01:54:07.213198000 +0200 +@@ -96,6 +96,7 @@ + #include "base/types.h" + #include "base/path.h" + ++#include + #include + + namespace pov_base +--- /tmp/configbase.h 2008-08-14 01:57:58.000000000 +0200 ++++ povray-3.7.0.beta.25b/source/base/configbase.h 2008-08-14 01:58:12.373198000 +0200 +@@ -95,6 +95,7 @@ + #ifndef CONFIGBASE_H + #define CONFIGBASE_H + ++#include + #include "syspovconfigbase.h" + + #ifndef DBL +--- /tmp/unixoptions.cpp 2008-08-14 02:02:52.000000000 +0200 ++++ povray-3.7.0.beta.25b/vfe/unix/unixoptions.cpp 2008-08-14 10:22:09.073198000 +0200 +@@ -454,13 +454,16 @@ + char *errormsg = + "Cannot determine the current working directory.\n" + "Check that the PWD environment variable does exist and is valid.\n"; ++ int no_error_call = 1; + if(no_error_call) + { + fprintf(stderr, "%s: %s\n", PACKAGE, errormsg); + exit(EXIT_FAILURE); + } ++#ifdef USE_ERROR + else +- Error("%s", errormsg); ++ std::Error("%s", errormsg); ++#endif + } + #endif + diff --git a/packages/povray/povray_3.6.1+3.7.0-beta25b.bb b/packages/povray/povray_3.6.1+3.7.0-beta25b.bb new file mode 100644 index 0000000000..6c1cf5fa05 --- /dev/null +++ b/packages/povray/povray_3.6.1+3.7.0-beta25b.bb @@ -0,0 +1,42 @@ +DESCRIPTION = "The Persistence of Vision Raytracer is a high-quality, totally free tool for creating stunning three-dimensional graphics. " +HOMEPAGE = "http://www.povray.org" +SECTION = "console/graphics" +#Make this a weak assigment to allow branding of the povray binary +LICENSE = "povray" +DEPENDS = "virtual/libx11 boost zlib jpeg libpng tiff" +RDEPENDS = "" + +#We apply a patch that subverts the checks for jpeg, zlib, png and tiff because we know OE has the required versions, but it is still a hack. +SRC_URI = "http://www.povray.org/redirect/www.povray.org/beta/source/povray-src-3.7.0.beta.25b.tar.bz2 \ + file://configure-cross-hack.patch;patch=1 \ + file://gcc43.diff;patch=1 \ + " + +S = "${WORKDIR}/povray-3.7.0.beta.25b" + +inherit autotools pkgconfig + +#PARALLEL_MAKE = "" + +EXTRA_OECONF = " --with-boost-thread=boost_thread-mt \ + COMPILED_BY=${MAINTAINER} " + +PACKAGES += "${PN}-scenes ${PN}-ini ${PN}-icons ${PN}-scripts ${PN}-includes" + +PACKAGE_ARCH_${PN}-doc = "all" + +PACKAGE_ARCH_${PN}-scenes = "all" +FILES_${PN}-scenes = "${datadir}/povray-3.7/scenes" + +PACKAGE_ARCH_${PN}-ini = "all" +FILES_${PN}-ini = "${datadir}/povray-3.7/ini" + +PACKAGE_ARCH_${PN}-icons = "all" +FILES_${PN}-icons = "${datadir}/povray-3.7/icons" + +PACKAGE_ARCH_${PN}-scripts = "all" +FILES_${PN}-scripts = "${datadir}/povray-3.7/scripts" + +PACKAGE_ARCH_${PN}-includes = "all" +FILES_${PN}-includes = "${datadir}/povray-3.7/include" + -- cgit v1.2.3 From 55dec8439dcc00e8ff535797712a6101b2ee3503 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Thu, 14 Aug 2008 10:44:15 +0000 Subject: pixman: add 0.11.8 and apply ARM patch from https://bugs.freedesktop.org/show_bug.cgi?id=13445 --- packages/xorg-lib/pixman/.mtn2git_empty | 0 packages/xorg-lib/pixman/pixman-arm.patch | 310 ++++++++++++++++++++++++++++++ packages/xorg-lib/pixman_0.11.8.bb | 18 ++ 3 files changed, 328 insertions(+) create mode 100644 packages/xorg-lib/pixman/.mtn2git_empty create mode 100644 packages/xorg-lib/pixman/pixman-arm.patch create mode 100644 packages/xorg-lib/pixman_0.11.8.bb (limited to 'packages') diff --git a/packages/xorg-lib/pixman/.mtn2git_empty b/packages/xorg-lib/pixman/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/xorg-lib/pixman/pixman-arm.patch b/packages/xorg-lib/pixman/pixman-arm.patch new file mode 100644 index 0000000000..224b612548 --- /dev/null +++ b/packages/xorg-lib/pixman/pixman-arm.patch @@ -0,0 +1,310 @@ +commit 23a7d5dea599efec1f459bac64cf9edc4bd5ae11 +Author: Ilpo Ruotsalainen +Date: Thu Nov 29 12:29:59 2007 +0000 + + Implement ARM optimized version of fill routines. + +diff --git a/configure.ac b/configure.ac +index 22a91ef..3ac2a40 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -148,6 +148,32 @@ fi + AM_CONDITIONAL(USE_SSE, test $have_sse_intrinsics = yes) + + dnl ======================================================== ++ ++dnl Test for architechture specific optimizations for this platform ++ ++AC_MSG_CHECKING(for architechture specific optimizations) ++ ++use_arch_opts=no ++ ++case "$host_cpu" in ++arm) ++ if test "$GCC" = "yes" ; then ++ use_arch_opts=yes ++ ARCH_OPT_SOURCES='pixman-arch-arm.lo' ++ fi ++ ;; ++esac ++ ++AC_MSG_RESULT($use_arch_opts) ++ ++if test $use_arch_opts = yes ; then ++ AC_DEFINE(USE_ARCH_OPTS, 1, [use architechture specific optimizations]) ++fi ++ ++AC_SUBST([ARCH_OPT_SOURCES]) ++AM_CONDITIONAL(USE_ARCH_OPTS, test $use_arch_opts = yes) ++ ++dnl ======================================================== + AC_SUBST(MMX_CFLAGS) + + PKG_CHECK_MODULES(GTK, [gtk+-2.0], [HAVE_GTK=yes], [HAVE_GTK=no]) +diff --git a/pixman/Makefile.am b/pixman/Makefile.am +index 66283a2..dab6363 100644 +--- a/pixman/Makefile.am ++++ b/pixman/Makefile.am +@@ -20,6 +20,11 @@ libpixman_1_la_SOURCES = \ + libpixmanincludedir = $(includedir)/pixman-1/ + libpixmaninclude_HEADERS = pixman.h + ++if USE_ARCH_OPTS ++libpixman_1_la_LIBADD += $(ARCH_OPT_SOURCES) ++libpixman_1_la_DEPENDENCIES = $(ARCH_OPT_SOURCES) ++endif ++ + # mmx code + if USE_MMX + noinst_LTLIBRARIES = libpixman-mmx.la +diff --git a/pixman/pixman-arch-arm.c b/pixman/pixman-arch-arm.c +new file mode 100644 +index 0000000..655092c +--- /dev/null ++++ b/pixman/pixman-arch-arm.c +@@ -0,0 +1,205 @@ ++/* ++ * Copyright © 2007 Movial Creative Technologies Inc ++ * ++ * Permission to use, copy, modify, distribute, and sell this software and its ++ * documentation for any purpose is hereby granted without fee, provided that ++ * the above copyright notice appear in all copies and that both that ++ * copyright notice and this permission notice appear in supporting ++ * documentation. ++ * ++ * THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS ++ * SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND ++ * FITNESS, IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY ++ * SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ++ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ++ * AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING ++ * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS ++ * SOFTWARE. ++ * ++ * Author: Ilpo Ruotsalainen ++ */ ++ ++#ifdef HAVE_CONFIG_H ++#include ++#endif ++ ++#include "pixman.h" ++#include "pixman-private.h" ++ ++static void ++pixman_fill8 (uint32_t *bits, ++ int stride, ++ int x, ++ int y, ++ int width, ++ int height, ++ uint32_t xor) ++{ ++ int byte_stride = stride * sizeof (uint32_t); ++ uint8_t *dst = (uint8_t *) bits; ++ uint8_t v = xor & 0xff; ++ ++ xor = v | (v << 8); ++ xor |= xor << 16; ++ ++ dst = dst + y * byte_stride + x; ++ ++ while (height--) ++ { ++ uint32_t dummy1, dummy2; ++ ++ asm volatile( ++ /* Check if the fill width is very small */ ++ " cmp %0, #8\n" ++ " bcc 2f\n" ++ /* Output single pixels until aligned to word boundary */ ++ "1: tst %1, #3\n" ++ " strneb %4, [%1], #1\n" ++ " subne %0, %0, #1\n" ++ " bne 1b\n" ++ /* Output up to 16 pixels per iteration */ ++ "1: subs %0, %0, #8\n" ++ " strcs %4, [%1], #4\n" ++ " strcs %4, [%1], #4\n" ++ " subcss %0, %0, #8\n" ++ " strcs %4, [%1], #4\n" ++ " strcs %4, [%1], #4\n" ++ " bcs 1b\n" ++ /* Finish up any remaining pixels */ ++ " and %0, %0, #7\n" ++ "2: subs %0, %0, #1\n" ++ " strcsb %4, [%1], #1\n" ++ " subcss %0, %0, #1\n" ++ " strcsb %4, [%1], #1\n" ++ " bcs 2b\n" ++ : "=r" (dummy1), "=r" (dummy2) ++ : "0" (width), "1" (dst), "r" (xor) ++ : "cc", "memory" ++ ); ++ ++ dst += byte_stride; ++ } ++} ++ ++static void ++pixman_fill16 (uint32_t *bits, ++ int stride, ++ int x, ++ int y, ++ int width, ++ int height, ++ uint32_t xor) ++{ ++ int short_stride = (stride * sizeof (uint32_t)) / sizeof (uint16_t); ++ uint16_t *dst = (uint16_t *)bits; ++ uint16_t v = xor & 0xffff; ++ ++ xor = v | v << 16; ++ ++ dst = dst + y * short_stride + x; ++ ++ while (height--) ++ { ++ uint32_t dummy1, dummy2; ++ ++ asm volatile( ++ /* Check if the fill width is very small */ ++ " cmp %0, #4\n" ++ " bcc 2f\n" ++ /* Output single pixels until aligned to word boundary */ ++ "1: tst %1, #2\n" ++ " strneh %4, [%1], #2\n" ++ " subne %0, %0, #1\n" ++ " bne 1b\n" ++ /* Output up to 8 pixels per iteration */ ++ "1: subs %0, %0, #4\n" ++ " strcs %4, [%1], #4\n" ++ " strcs %4, [%1], #4\n" ++ " subcss %0, %0, #4\n" ++ " strcs %4, [%1], #4\n" ++ " strcs %4, [%1], #4\n" ++ " bcs 1b\n" ++ /* Finish up any remaining pixels */ ++ " and %0, %0, #3\n" ++ "2: subs %0, %0, #1\n" ++ " strcsh %4, [%1], #2\n" ++ " bcs 2b\n" ++ : "=r" (dummy1), "=r" (dummy2) ++ : "0" (width), "1" (dst), "r" (xor) ++ : "cc", "memory" ++ ); ++ ++ dst += short_stride; ++ } ++} ++ ++static void ++pixman_fill32 (uint32_t *bits, ++ int stride, ++ int x, ++ int y, ++ int width, ++ int height, ++ uint32_t xor) ++{ ++ bits = bits + y * stride + x; ++ ++ while (height--) ++ { ++ uint32_t dummy1, dummy2; ++ ++ asm volatile( ++ /* Check if the fill width is very small */ ++ " cmp %0, #2\n" ++ " bcc 2f\n" ++ /* Output up to 4 pixels per iteration */ ++ "1: subs %0, %0, #2\n" ++ " strcs %4, [%1], #4\n" ++ " strcs %4, [%1], #4\n" ++ " subcss %0, %0, #2\n" ++ " strcs %4, [%1], #4\n" ++ " strcs %4, [%1], #4\n" ++ " bcs 1b\n" ++ /* Output last pixel if necessary */ ++ "2: tst %0, #1\n" ++ " strne %4, [%1], #4\n" ++ : "=r" (dummy1), "=r" (dummy2) ++ : "0" (width), "1" (bits), "r" (xor) ++ : "cc", "memory" ++ ); ++ ++ bits += stride; ++ } ++} ++ ++pixman_bool_t ++pixman_fill (uint32_t *bits, ++ int stride, ++ int bpp, ++ int x, ++ int y, ++ int width, ++ int height, ++ uint32_t xor) ++{ ++ switch (bpp) ++ { ++ case 8: ++ pixman_fill8 (bits, stride, x, y, width, height, xor); ++ break; ++ ++ case 16: ++ pixman_fill16 (bits, stride, x, y, width, height, xor); ++ break; ++ ++ case 32: ++ pixman_fill32 (bits, stride, x, y, width, height, xor); ++ break; ++ ++ default: ++ return FALSE; ++ break; ++ } ++ ++ return TRUE; ++} +diff --git a/pixman/pixman-arch.h b/pixman/pixman-arch.h +new file mode 100644 +index 0000000..1eee9d3 +--- /dev/null ++++ b/pixman/pixman-arch.h +@@ -0,0 +1,7 @@ ++#ifdef USE_ARCH_OPTS ++ ++#ifdef __arm__ ++#define USE_ARCH_FILL ++#endif ++ ++#endif +--- /tmp/pixman-utils.c 2008-08-14 12:38:44.000000000 +0200 ++++ pixman-0.11.8/pixman/pixman-utils.c 2008-08-14 12:40:03.503198000 +0200 +@@ -28,6 +28,7 @@ + #include + + #include "pixman-private.h" ++#include "pixman-arch.h" + #include "pixman-mmx.h" + + PIXMAN_EXPORT pixman_bool_t +@@ -84,6 +85,7 @@ + return FALSE; + } + ++#ifndef USE_ARCH_FILL + static void + pixman_fill8 (uint32_t *bits, + int stride, +@@ -197,7 +199,7 @@ + + return TRUE; + } +- ++#endif + + /* + * Compute the smallest value no less than y which is on a diff --git a/packages/xorg-lib/pixman_0.11.8.bb b/packages/xorg-lib/pixman_0.11.8.bb new file mode 100644 index 0000000000..8e4bd8cff3 --- /dev/null +++ b/packages/xorg-lib/pixman_0.11.8.bb @@ -0,0 +1,18 @@ +SECTION = "libs" +PRIORITY = "optional" +DESCRIPTION = "Low-level pixel manipulation library." +LICENSE = "X11" + +DEFAULT_PREFERENCE = "-1" + +SRC_URI = "http://cairographics.org/releases/pixman-${PV}.tar.gz \ + file://pixman-arm.patch;patch=1 \ + " + +inherit autotools + +AUTOTOOLS_STAGE_PKGCONFIG = "1" +do_stage () { + autotools_stage_all +} + -- cgit v1.2.3 From d9f74caa0e0c56350c915b0747f4c512ad29f986 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Thu, 14 Aug 2008 11:14:11 +0000 Subject: povray: make go a bit faster on armv7a --- packages/povray/povray_3.6.1+3.7.0-beta25b.bb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'packages') diff --git a/packages/povray/povray_3.6.1+3.7.0-beta25b.bb b/packages/povray/povray_3.6.1+3.7.0-beta25b.bb index 6c1cf5fa05..eee01e13ed 100644 --- a/packages/povray/povray_3.6.1+3.7.0-beta25b.bb +++ b/packages/povray/povray_3.6.1+3.7.0-beta25b.bb @@ -1,10 +1,10 @@ DESCRIPTION = "The Persistence of Vision Raytracer is a high-quality, totally free tool for creating stunning three-dimensional graphics. " HOMEPAGE = "http://www.povray.org" SECTION = "console/graphics" -#Make this a weak assigment to allow branding of the povray binary LICENSE = "povray" DEPENDS = "virtual/libx11 boost zlib jpeg libpng tiff" -RDEPENDS = "" + +PR = "r1" #We apply a patch that subverts the checks for jpeg, zlib, png and tiff because we know OE has the required versions, but it is still a hack. SRC_URI = "http://www.povray.org/redirect/www.povray.org/beta/source/povray-src-3.7.0.beta.25b.tar.bz2 \ @@ -16,11 +16,11 @@ S = "${WORKDIR}/povray-3.7.0.beta.25b" inherit autotools pkgconfig -#PARALLEL_MAKE = "" - EXTRA_OECONF = " --with-boost-thread=boost_thread-mt \ COMPILED_BY=${MAINTAINER} " +FULL_OPTIMIZATION_armv7a = "-fexpensive-optimizations -frename-registers -fomit-frame-pointer -O3 -ftree-vectorize -ffast-math -fno-math-errno " + PACKAGES += "${PN}-scenes ${PN}-ini ${PN}-icons ${PN}-scripts ${PN}-includes" PACKAGE_ARCH_${PN}-doc = "all" -- cgit v1.2.3 From 5d2dec611e840cc62e0f03cf977ee93b4aca3983 Mon Sep 17 00:00:00 2001 From: Rolf Leggewie Date: Thu, 14 Aug 2008 14:11:00 +0000 Subject: openmoko-appmanager2: replace ipkg with opkg in depends and fix FTBFS. --- packages/openmoko2/openmoko-appmanager2_svn.bb | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'packages') diff --git a/packages/openmoko2/openmoko-appmanager2_svn.bb b/packages/openmoko2/openmoko-appmanager2_svn.bb index c299564205..fe5e227d8f 100644 --- a/packages/openmoko2/openmoko-appmanager2_svn.bb +++ b/packages/openmoko2/openmoko-appmanager2_svn.bb @@ -1,10 +1,9 @@ DESCRIPTION = "The Openmoko Application Manager" SECTION = "openmoko/applications" -DEPENDS = "libmokoui2 libmokojournal2 startup-notification dbus-glib libice libsm ipkg" +DEPENDS = "libmokoui2 libmokojournal2 startup-notification dbus-glib libice libsm opkg" PV = "0.1.0+svnr${SRCREV}" -PR = "r1" +PR = "r2" inherit openmoko2 FILES_${PN} += "/usr/share/openmoko-appmanager" - -- cgit v1.2.3 From 52f33062c8855975ea6858df388e76e9eb2c9752 Mon Sep 17 00:00:00 2001 From: Rolf Leggewie Date: Thu, 14 Aug 2008 15:22:41 +0000 Subject: nandlogical: according to hrw, nandlogical can be used for all Z except collie. COMPATIBLE_MACHINE = "(poodle|c7x0|akita|spitz|tosa)" should represent that. --- packages/nandlogical/nandlogical_1.0.0.bb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'packages') diff --git a/packages/nandlogical/nandlogical_1.0.0.bb b/packages/nandlogical/nandlogical_1.0.0.bb index 7d8fc04b4e..a868576add 100644 --- a/packages/nandlogical/nandlogical_1.0.0.bb +++ b/packages/nandlogical/nandlogical_1.0.0.bb @@ -1,8 +1,8 @@ DESCRIPTION = "Nandlogical for Sharp mtd1" LICENSE = "GPL" DEPENDS = "mtd-utils" -COMPATIBLE_MACHINE = "(c7x0)" -PR = "r0" +COMPATIBLE_MACHINE = "(poodle|c7x0|akita|spitz|tosa)" +PR = "r1" SRC_URI = "file://nandlogical.c" -- cgit v1.2.3 From 7713aa12b2cf98e263201b70868006682c96efb5 Mon Sep 17 00:00:00 2001 From: Rolf Leggewie Date: Thu, 14 Aug 2008 16:57:55 +0000 Subject: guile: drop nonworking version 1.6.4 and its patches and close 3503. --- packages/guile/files/configure-lossage.patch | 28 ------ packages/guile/files/gcc4.patch | 16 ---- packages/guile/guile_1.6.4.bb | 132 --------------------------- 3 files changed, 176 deletions(-) delete mode 100644 packages/guile/files/configure-lossage.patch delete mode 100644 packages/guile/files/gcc4.patch delete mode 100644 packages/guile/guile_1.6.4.bb (limited to 'packages') diff --git a/packages/guile/files/configure-lossage.patch b/packages/guile/files/configure-lossage.patch deleted file mode 100644 index da1d0de6e7..0000000000 --- a/packages/guile/files/configure-lossage.patch +++ /dev/null @@ -1,28 +0,0 @@ - -# -# Patch managed by http://www.holgerschurig.de/patcher.html -# - ---- guile-1.6.4/configure.in~configure-lossage -+++ guile-1.6.4/configure.in -@@ -462,7 +462,9 @@ - # explicitly to LIBOBJS to make sure that it is translated to - # `alloca.lo' for libtool later on. This can and should be done more cleanly. - AC_FUNC_ALLOCA --if test "$ALLOCA" = "alloca.o"; then AC_LIBOBJ([alloca]); fi -+if test "$ALLOCA" = "alloca.o"; then -+ AC_LIBOBJ([alloca]) -+fi - - AC_CHECK_MEMBERS([struct stat.st_rdev]) - AC_CHECK_MEMBERS([struct stat.st_blksize]) ---- guile-1.6.4/guile-readline/configure.in~configure-lossage -+++ guile-1.6.4/guile-readline/configure.in -@@ -2,6 +2,7 @@ - - AC_INIT - AC_CONFIG_SRCDIR([readline.c]) -+AC_CONFIG_AUX_DIR([..]) - . $srcdir/../GUILE-VERSION - PACKAGE=guile-readline - AM_INIT_AUTOMAKE($PACKAGE, $VERSION, no-define) diff --git a/packages/guile/files/gcc4.patch b/packages/guile/files/gcc4.patch deleted file mode 100644 index 2168683ad5..0000000000 --- a/packages/guile/files/gcc4.patch +++ /dev/null @@ -1,16 +0,0 @@ - -# -# Signed off by Michael 'Mickey' Lauer -# - ---- guile-1.6.4/libguile/guile.c~gcc4 -+++ guile-1.6.4/libguile/guile.c -@@ -88,7 +88,7 @@ - { - #ifdef DYNAMIC_LINKING - /* libtool automagically inserts this variable into your executable... */ -- extern const scm_lt_dlsymlist lt_preloaded_symbols[]; -+ extern const scm_lt_dlsymlist *lt_preloaded_symbols; - scm_lt_dlpreload_default (lt_preloaded_symbols); - #endif - scm_boot_guile (argc, argv, inner_main, 0); diff --git a/packages/guile/guile_1.6.4.bb b/packages/guile/guile_1.6.4.bb deleted file mode 100644 index 092a44c27d..0000000000 --- a/packages/guile/guile_1.6.4.bb +++ /dev/null @@ -1,132 +0,0 @@ -DESCRIPTION = "Guile is an interpreter for the Scheme programming language, \ -packaged as a library which can be incorporated into your programs." -HOMEPAGE = "http://www.gnu.org/software/guile/guile.html" -SECTION = "devel/scheme" -DEPENDS = "guile-native" -LICENSE = "GPL" -PR = "r1" - -SRC_URI = "http://ftp.gnu.org/pub/gnu/guile/guile-${PV}.tar.gz \ - file://configure-lossage.patch;patch=1 \ - file://gcc4.patch;patch=1" - -inherit autotools - -acpaths = "-I ${S}/guile-config" - -do_compile() { - (cd libguile; oe_runmake CC="${BUILD_CC}" CFLAGS="${BUILD_CFLAGS}" LDFLAGS="${BUILD_LDFLAGS}" guile_filter_doc_snarfage) - oe_runmake preinstguile="`which guile`" -} - -LIBGUILE_HEADERS = "\ -__scm.h \ -alist.h \ -arbiters.h \ -async.h \ -backtrace.h \ -boolean.h \ -chars.h \ -continuations.h \ -coop-defs.h \ -debug-malloc.h \ -debug.h \ -deprecation.h \ -dynl.h \ -dynwind.h \ -environments.h \ -eq.h \ -error.h \ -eval.h \ -evalext.h \ -extensions.h \ -feature.h \ -filesys.h \ -fluids.h \ -fports.h \ -gc.h \ -gdb_interface.h \ -gdbint.h \ -goops.h \ -gsubr.h \ -guardians.h \ -hash.h \ -hashtab.h \ -hooks.h \ -init.h \ -ioext.h \ -iselect.h \ -keywords.h \ -lang.h \ -list.h \ -load.h \ -macros.h \ -mallocs.h \ -modules.h \ -net_db.h \ -numbers.h \ -objects.h \ -objprop.h \ -options.h \ -pairs.h \ -ports.h \ -posix.h \ -print.h \ -procprop.h \ -procs.h \ -properties.h \ -ramap.h \ -random.h \ -rdelim.h \ -read.h \ -regex-posix.h \ -root.h \ -rw.h \ -scmconfig.h \ -scmsigs.h \ -script.h \ -simpos.h \ -smob.h \ -snarf.h \ -socket.h \ -sort.h \ -srcprop.h \ -stackchk.h \ -stacks.h \ -stime.h \ -strings.h \ -strop.h \ -strorder.h \ -strports.h \ -struct.h \ -symbols.h \ -tags.h \ -threads.h \ -throw.h \ -unif.h \ -validate.h \ -values.h \ -variable.h \ -vectors.h \ -version.h \ -vports.h \ -weaks.h \ -" - -do_stage() { - install -d ${STAGING_INCDIR}/libguile - for i in ${LIBGUILE_HEADERS}; do - install -m 0644 libguile/$i ${STAGING_INCDIR}/libguile/$i - done - install -m 0644 libguile.h ${STAGING_INCDIR}/libguile.h - install -d ${STAGING_INCDIR}/guile - install -m 0644 libguile/gh.h ${STAGING_INCDIR}/guile/ - install -d ${STAGING_INCDIR}/guile/srfi - install -d ${STAGING_INCDIR}/guile-readline - install -m 0644 guile-readline/readline.h ${STAGING_INCDIR}/guile-readline/ - install -d ${STAGING_DATADIR}/aclocal - install -m 0644 guile-config/guile.m4 ${STAGING_DATADIR}/aclocal - oe_libinstall -C libguile -so -a libguile ${STAGING_LIBDIR} - oe_libinstall -C guile-readline -so -a libguilereadline-v-12 ${STAGING_LIBDIR} - oe_libinstall -C libguile-ltdl -so -a libguile-ltdl ${STAGING_LIBDIR} -} -- cgit v1.2.3