From a347cdae2db58120b85ca75bccd3b2b9c323213e Mon Sep 17 00:00:00 2001 From: codeworkx Date: Thu, 16 Aug 2012 14:23:30 +0200 Subject: removed tvoutdummy, updated uevent, cleanup Change-Id: Iaed4163b44079acf0dfb693cabc6e676799ff83b --- BoardConfig.mk | 11 +-- TVOutDummy/Android.mk | 40 --------- TVOutDummy/Barrier.h | 55 ------------ TVOutDummy/ISecTVOut.cpp | 111 ----------------------- TVOutDummy/ISecTVOut.h | 74 ---------------- TVOutDummy/MessageQueue.cpp | 197 ----------------------------------------- TVOutDummy/MessageQueue.h | 126 -------------------------- TVOutDummy/SecTVOutService.cpp | 168 ----------------------------------- TVOutDummy/SecTVOutService.h | 94 -------------------- TVOutDummy/main.cpp | 11 --- configs/gps.xml | 2 +- i9300.mk | 3 +- init.smdk4x12.rc | 12 ++- ueventd.smdk4x12.rc | 94 ++++++++++++++------ 14 files changed, 79 insertions(+), 919 deletions(-) delete mode 100644 TVOutDummy/Android.mk delete mode 100644 TVOutDummy/Barrier.h delete mode 100644 TVOutDummy/ISecTVOut.cpp delete mode 100644 TVOutDummy/ISecTVOut.h delete mode 100644 TVOutDummy/MessageQueue.cpp delete mode 100644 TVOutDummy/MessageQueue.h delete mode 100644 TVOutDummy/SecTVOutService.cpp delete mode 100644 TVOutDummy/SecTVOutService.h delete mode 100644 TVOutDummy/main.cpp diff --git a/BoardConfig.mk b/BoardConfig.mk index 3bf30e6..cbfff37 100644 --- a/BoardConfig.mk +++ b/BoardConfig.mk @@ -79,17 +79,14 @@ COMMON_GLOBAL_CFLAGS += -DSEC_HWJPEG_G2D ENABLE_WEBGL := true # Audio -BOARD_USE_SAMSUNG_SEPARATEDSTREAM := true BOARD_USES_LIBMEDIA_WITH_AUDIOPARAMETER := true # HWComposer BOARD_USES_HWCOMPOSER := true -#BOARD_USE_SECTVOUT := true -#BOARD_USES_FIMGAPI := true -#BOARD_USES_HDMI_SUBTITLES := false -#BOARD_USES_HDMI := true -#BOARD_HDMI_STD := STD_1080P -#BOARD_HDMI_DDC_CH := DDC_CH_I2C_2 + +# TVOut & HDMI +BOARD_USE_SECTVOUT := true +BOARD_USES_SKTEXTBOX := true # Camera BOARD_USES_PROPRIETARY_LIBCAMERA := true diff --git a/TVOutDummy/Android.mk b/TVOutDummy/Android.mk deleted file mode 100644 index 1e74174..0000000 --- a/TVOutDummy/Android.mk +++ /dev/null @@ -1,40 +0,0 @@ -# Copyright (C) 2008 The Android Open Source Project -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -LOCAL_PATH:= $(call my-dir) - -# -# libTVOut -# - -include $(CLEAR_VARS) -LOCAL_MODULE_TAGS := optional -LOCAL_PRELINK_MODULE := false - -LOCAL_SRC_FILES := \ - SecTVOutService.cpp \ - MessageQueue.cpp \ - main.cpp -# ISecTVOut.cpp \ - -LOCAL_C_INCLUDES := \ - -LOCAL_SHARED_LIBRARIES := \ - libbinder \ - libutils \ - libcutils - -LOCAL_MODULE := TVOutDummy -include $(BUILD_EXECUTABLE) - diff --git a/TVOutDummy/Barrier.h b/TVOutDummy/Barrier.h deleted file mode 100644 index 6f8507e..0000000 --- a/TVOutDummy/Barrier.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright (C) 2007 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef ANDROID_BARRIER_H -#define ANDROID_BARRIER_H - -#include -#include -#include - -namespace android { - -class Barrier -{ -public: - inline Barrier() : state(CLOSED) { } - inline ~Barrier() { } - void open() { - Mutex::Autolock _l(lock); - state = OPENED; - cv.broadcast(); - } - void close() { - Mutex::Autolock _l(lock); - state = CLOSED; - } - void wait() const { - Mutex::Autolock _l(lock); - while (state == CLOSED) { - cv.wait(lock); - } - } -private: - enum { OPENED, CLOSED }; - mutable Mutex lock; - mutable Condition cv; - volatile int state; -}; - -}; // namespace android - -#endif // ANDROID_BARRIER_H diff --git a/TVOutDummy/ISecTVOut.cpp b/TVOutDummy/ISecTVOut.cpp deleted file mode 100644 index a013bf1..0000000 --- a/TVOutDummy/ISecTVOut.cpp +++ /dev/null @@ -1,111 +0,0 @@ -/* -** -** Copyright 2008, The Android Open Source Project -** Copyright 2010, Samsung Electronics Co. LTD -** -** Licensed under the Apache License, Version 2.0 (the "License"); -** you may not use this file except in compliance with the License. -** You may obtain a copy of the License at -** -** http://www.apache.org/licenses/LICENSE-2.0 -** -** Unless required by applicable law or agreed to in writing, software -** distributed under the License is distributed on an "AS IS" BASIS, -** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -** See the License for the specific language governing permissions and -** limitations under the License. -*/ - -/* -** -** @author Taikyung, Yu(taikyung.yu@samsung.com) -** @date 2011-07-06 -*/ - -#include -#include -#include -#include -#include "ISecTVOut.h" - -namespace android { - - enum { - SET_HDMI_STATUS = IBinder::FIRST_CALL_TRANSACTION, - SET_HDMI_MODE, - SET_HDMI_RESOLUTION, - SET_HDMI_HDCP, - SET_HDMI_ROTATE, - SET_HDMI_HWCLAYER, - BLIT_2_HDMI - }; - - void BpSecTVOut::setHdmiCableStatus(uint32_t status) - { - Parcel data, reply; - data.writeInt32(status); - remote()->transact(SET_HDMI_STATUS, data, &reply); - } - - void BpSecTVOut::setHdmiMode(uint32_t mode) - { - Parcel data, reply; - data.writeInt32(mode); - remote()->transact(SET_HDMI_MODE, data, &reply); - } - - void BpSecTVOut::setHdmiResolution(uint32_t resolution) - { - Parcel data, reply; - data.writeInt32(resolution); - remote()->transact(SET_HDMI_RESOLUTION, data, &reply); - } - - void BpSecTVOut::setHdmiHdcp(uint32_t resolution) - { - Parcel data, reply; - data.writeInt32(resolution); - remote()->transact(SET_HDMI_HDCP, data, &reply); - } - - void BpSecTVOut::setHdmiRotate(uint32_t rotVal, uint32_t hwcLayer) - { - Parcel data, reply; - data.writeInt32(rotVal); - data.writeInt32(hwcLayer); - remote()->transact(SET_HDMI_ROTATE, data, &reply); - } - - void BpSecTVOut::setHdmiHwcLayer(uint32_t hwcLayer) - { - Parcel data, reply; - data.writeInt32(hwcLayer); - remote()->transact(SET_HDMI_HWCLAYER, data, &reply); - } - - void BpSecTVOut::blit2Hdmi(uint32_t w, uint32_t h, - uint32_t colorFormat, - uint32_t physYAddr, - uint32_t physCbAddr, - uint32_t physCrAddr, - uint32_t dstX, - uint32_t dstY, - uint32_t hdmiLayer, - uint32_t num_of_hwc_layer) - { - Parcel data, reply; - data.writeInt32(w); - data.writeInt32(h); - data.writeInt32(colorFormat); - data.writeInt32(physYAddr); - data.writeInt32(physCbAddr); - data.writeInt32(physCrAddr); - data.writeInt32(dstX); - data.writeInt32(dstY); - data.writeInt32(hdmiLayer); - data.writeInt32(num_of_hwc_layer); - remote()->transact(BLIT_2_HDMI, data, &reply); - } - - IMPLEMENT_META_INTERFACE(SecTVOut, "android.os.ISecTVOut"); -}; diff --git a/TVOutDummy/ISecTVOut.h b/TVOutDummy/ISecTVOut.h deleted file mode 100644 index 5506b57..0000000 --- a/TVOutDummy/ISecTVOut.h +++ /dev/null @@ -1,74 +0,0 @@ -/* -** -** Copyright 2008, The Android Open Source Project -** Copyright 2010, Samsung Electronics Co. LTD -** -** Licensed under the Apache License, Version 2.0 (the "License"); -** you may not use this file except in compliance with the License. -** You may obtain a copy of the License at -** -** http://www.apache.org/licenses/LICENSE-2.0 -** -** Unless required by applicable law or agreed to in writing, software -** distributed under the License is distributed on an "AS IS" BASIS, -** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -** See the License for the specific language governing permissions and -** limitations under the License. -*/ - -/* -** -** @author Taikyung, Yu(taikyung.yu@samsung.com) -** @date 2011-07-06 -*/ - -#ifndef ISECTVOUT_H -#define ISECTVOUT_H -#include -#include -#include - -namespace android { - class ISecTVOut: public IInterface - { - public: - DECLARE_META_INTERFACE(SecTVOut); - virtual void setHdmiCableStatus(uint32_t status) = 0; - virtual void setHdmiMode(uint32_t mode) = 0; - virtual void setHdmiResolution(uint32_t resolution) = 0; - virtual void setHdmiHdcp(uint32_t enHdcp) = 0; - virtual void setHdmiRotate(uint32_t rotVal, uint32_t hwcLayer) = 0; - virtual void setHdmiHwcLayer(uint32_t hwcLayer) = 0; - virtual void blit2Hdmi(uint32_t w, uint32_t h, - uint32_t colorFormat, - uint32_t physYAddr, - uint32_t physCbAddr, - uint32_t physCrAddr, - uint32_t dstX, - uint32_t dstY, - uint32_t hdmiLayer, - uint32_t num_of_hwc_layer) = 0; - }; - //-------------------------------------------------------------- - class BpSecTVOut: public BpInterface - { - public: - BpSecTVOut(const sp& impl): BpInterface(impl){} - virtual void setHdmiCableStatus(uint32_t status); - virtual void setHdmiMode(uint32_t mode); - virtual void setHdmiResolution(uint32_t resolution); - virtual void setHdmiHdcp(uint32_t enHdcp); - virtual void setHdmiRotate(uint32_t rotVal, uint32_t hwcLayer); - virtual void setHdmiHwcLayer(uint32_t hwcLayer); - virtual void blit2Hdmi(uint32_t w, uint32_t h, - uint32_t colorFormat, - uint32_t physYAddr, - uint32_t physCbAddr, - uint32_t physCrAddr, - uint32_t dstX, - uint32_t dstY, - uint32_t hdmiLayer, - uint32_t num_of_hwc_layer); - }; -}; -#endif diff --git a/TVOutDummy/MessageQueue.cpp b/TVOutDummy/MessageQueue.cpp deleted file mode 100644 index 9441019..0000000 --- a/TVOutDummy/MessageQueue.cpp +++ /dev/null @@ -1,197 +0,0 @@ -/* - * Copyright (C) 2009 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#include -#include -#include - -#include -#include -#include -#include - -#include "MessageQueue.h" - -namespace android { - -// --------------------------------------------------------------------------- - -void MessageList::insert(const sp& node) -{ - LIST::iterator cur(mList.begin()); - LIST::iterator end(mList.end()); - while (cur != end) { - if (*node < **cur) { - mList.insert(cur, node); - return; - } - ++cur; - } - mList.insert(++end, node); -} - -void MessageList::remove(MessageList::LIST::iterator pos) -{ - mList.erase(pos); -} - -// --------------------------------------------------------------------------- - -MessageQueue::MessageQueue() - : mInvalidate(false) -{ - mInvalidateMessage = new MessageBase(INVALIDATE); -} - -MessageQueue::~MessageQueue() -{ -} - -sp MessageQueue::waitMessage(nsecs_t timeout) -{ - sp result; - - bool again; - do { - const nsecs_t timeoutTime = systemTime() + timeout; - while (true) { - Mutex::Autolock _l(mLock); - nsecs_t now = systemTime(); - nsecs_t nextEventTime = -1; - - LIST::iterator cur(mMessages.begin()); - if (cur != mMessages.end()) { - result = *cur; - } - - if (result != 0) { - if (result->when <= now) { - // there is a message to deliver - mMessages.remove(cur); - break; - } - nextEventTime = result->when; - result = 0; - } - - // see if we have an invalidate message - if (mInvalidate) { - mInvalidate = false; - mInvalidateMessage->when = now; - result = mInvalidateMessage; - break; - } - - if (timeout >= 0) { - if (timeoutTime < now) { - // we timed-out, return a NULL message - result = 0; - break; - } - if (nextEventTime > 0) { - if (nextEventTime > timeoutTime) { - nextEventTime = timeoutTime; - } - } else { - nextEventTime = timeoutTime; - } - } - - if (nextEventTime >= 0) { - //ALOGD("nextEventTime = %lld ms", nextEventTime); - if (nextEventTime > 0) { - // we're about to wait, flush the binder command buffer - IPCThreadState::self()->flushCommands(); - const nsecs_t reltime = nextEventTime - systemTime(); - if (reltime > 0) { - mCondition.waitRelative(mLock, reltime); - } - } - } else { - //ALOGD("going to wait"); - // we're about to wait, flush the binder command buffer - IPCThreadState::self()->flushCommands(); - mCondition.wait(mLock); - } - } - // here we're not holding the lock anymore - - if (result == 0) - break; - - again = result->handler(); - if (again) { - // the message has been processed. release our reference to it - // without holding the lock. - result->notify(); - result = 0; - } - - } while (again); - - return result; -} - -status_t MessageQueue::postMessage( - const sp& message, nsecs_t relTime, uint32_t flags) -{ - return queueMessage(message, relTime, flags); -} - -status_t MessageQueue::invalidate() { - Mutex::Autolock _l(mLock); - mInvalidate = true; - mCondition.signal(); - return NO_ERROR; -} - -status_t MessageQueue::queueMessage( - const sp& message, nsecs_t relTime, uint32_t flags) -{ - Mutex::Autolock _l(mLock); - message->when = systemTime() + relTime; - mMessages.insert(message); - - //ALOGD("MessageQueue::queueMessage time = %lld ms", message->when); - //dumpLocked(message); - - mCondition.signal(); - return NO_ERROR; -} - -void MessageQueue::dump(const sp& message) -{ - Mutex::Autolock _l(mLock); - dumpLocked(message); -} - -void MessageQueue::dumpLocked(const sp& message) -{ - LIST::const_iterator cur(mMessages.begin()); - LIST::const_iterator end(mMessages.end()); - int c = 0; - while (cur != end) { - const char tick = (*cur == message) ? '>' : ' '; - ALOGD("%c %d: msg{.what=%08x, when=%lld}", - tick, c, (*cur)->what, (*cur)->when); - ++cur; - c++; - } -} - -// --------------------------------------------------------------------------- - -}; // namespace android diff --git a/TVOutDummy/MessageQueue.h b/TVOutDummy/MessageQueue.h deleted file mode 100644 index 890f809..0000000 --- a/TVOutDummy/MessageQueue.h +++ /dev/null @@ -1,126 +0,0 @@ -/* - * Copyright (C) 2009 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef ANDROID_MESSAGE_QUEUE_H -#define ANDROID_MESSAGE_QUEUE_H - -#include -#include -#include - -#include -#include -#include - -#include "Barrier.h" - -namespace android { - -// --------------------------------------------------------------------------- - -class MessageBase; - -class MessageList -{ - List< sp > mList; - typedef List< sp > LIST; -public: - inline LIST::iterator begin() { return mList.begin(); } - inline LIST::const_iterator begin() const { return mList.begin(); } - inline LIST::iterator end() { return mList.end(); } - inline LIST::const_iterator end() const { return mList.end(); } - inline bool isEmpty() const { return mList.empty(); } - void insert(const sp& node); - void remove(LIST::iterator pos); -}; - -// ============================================================================ - -class MessageBase : - public LightRefBase -{ -public: - nsecs_t when; - uint32_t what; - int32_t arg0; - - MessageBase() : when(0), what(0), arg0(0) { } - MessageBase(uint32_t what, int32_t arg0=0) - : when(0), what(what), arg0(arg0) { } - - // return true if message has a handler - virtual bool handler() { return false; } - - // waits for the handler to be processed - void wait() const { barrier.wait(); } - - // releases all waiters. this is done automatically if - // handler returns true - void notify() const { barrier.open(); } - -protected: - virtual ~MessageBase() { } - -private: - mutable Barrier barrier; - friend class LightRefBase; -}; - -inline bool operator < (const MessageBase& lhs, const MessageBase& rhs) { - return lhs.when < rhs.when; -} - -// --------------------------------------------------------------------------- - -class MessageQueue -{ - typedef List< sp > LIST; -public: - - MessageQueue(); - ~MessageQueue(); - - // pre-defined messages - enum { - INVALIDATE = '_upd' - }; - - sp waitMessage(nsecs_t timeout = -1); - - status_t postMessage(const sp& message, - nsecs_t reltime=0, uint32_t flags = 0); - - status_t invalidate(); - - void dump(const sp& message); - -private: - status_t queueMessage(const sp& message, - nsecs_t reltime, uint32_t flags); - void dumpLocked(const sp& message); - - Mutex mLock; - Condition mCondition; - MessageList mMessages; - bool mInvalidate; - sp mInvalidateMessage; -}; - -// --------------------------------------------------------------------------- - -}; // namespace android - -#endif /* ANDROID_MESSAGE_QUEUE_H */ diff --git a/TVOutDummy/SecTVOutService.cpp b/TVOutDummy/SecTVOutService.cpp deleted file mode 100644 index 490f888..0000000 --- a/TVOutDummy/SecTVOutService.cpp +++ /dev/null @@ -1,168 +0,0 @@ -/* -** -** Copyright 2008, The Android Open Source Project -** Copyright 2010, Samsung Electronics Co. LTD -** -** Licensed under the Apache License, Version 2.0 (the "License"); -** you may not use this file except in compliance with the License. -** You may obtain a copy of the License at -** -** http://www.apache.org/licenses/LICENSE-2.0 -** -** Unless required by applicable law or agreed to in writing, software -** distributed under the License is distributed on an "AS IS" BASIS, -** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -** See the License for the specific language governing permissions and -** limitations under the License. -*/ - -/* -** -** @author Taikyung, Yu(taikyung.yu@samsung.com) -** @date 2011-07-06 -*/ - -#define ALOG_TAG "SecTVOutService" - -#include -#include -#include -#include -#include -#include "SecTVOutService.h" -#include - -namespace android { -#define DEFAULT_LCD_WIDTH 800 -#define DEFAULT_LCD_HEIGHT 480 - -#define DIRECT_VIDEO_RENDERING (1) -#define DIRECT_UI_RENDERING (0) - - enum { - SET_HDMI_STATUS = IBinder::FIRST_CALL_TRANSACTION, - SET_HDMI_MODE, - SET_HDMI_RESOLUTION, - SET_HDMI_HDCP, - SET_HDMI_ROTATE, - SET_HDMI_HWCLAYER, - BLIT_2_HDMI - }; - - int SecTVOutService::instantiate() - { - ALOGD("SKURWYSYN, SecTVOutService instantiate!"); - int r = defaultServiceManager()->addService(String16( "SecTVOutService"), new SecTVOutService ()); - ALOGD("SecTVOutService r=%d", r); - - return r; - } - - SecTVOutService::SecTVOutService () { - ALOGV("SecTVOutService created"); - mHdmiCableInserted = false; - } - - void SecTVOutService::setLCDsize(void) { - } - - SecTVOutService::~SecTVOutService () { - ALOGV ("SecTVOutService destroyed"); - } - - status_t SecTVOutService::onTransact(uint32_t code, const Parcel & data, Parcel * reply, uint32_t flags) - { - switch (code) { - case SET_HDMI_STATUS: { - int status = data.readInt32(); - setHdmiStatus(status); - } break; - - case SET_HDMI_MODE: { - int mode = data.readInt32(); - setHdmiMode(mode); - } break; - - case SET_HDMI_RESOLUTION: { - int resolution = data.readInt32(); - setHdmiResolution(resolution); - } break; - - case SET_HDMI_HDCP: { - int enHdcp = data.readInt32(); - setHdmiHdcp(enHdcp); - } break; - - case SET_HDMI_ROTATE: { - int rotVal = data.readInt32(); - int hwcLayer = data.readInt32(); - setHdmiRotate(rotVal, hwcLayer); - } break; - - case SET_HDMI_HWCLAYER: { - int hwcLayer = data.readInt32(); - setHdmiHwcLayer((uint32_t)hwcLayer); - } break; - - case BLIT_2_HDMI: { - uint32_t w = data.readInt32(); - uint32_t h = data.readInt32(); - uint32_t colorFormat = data.readInt32(); - uint32_t physYAddr = data.readInt32(); - uint32_t physCbAddr = data.readInt32(); - uint32_t physCrAddr = data.readInt32(); - uint32_t dstX = data.readInt32(); - uint32_t dstY = data.readInt32(); - uint32_t hdmiLayer = data.readInt32(); - uint32_t num_of_hwc_layer = data.readInt32(); - - blit2Hdmi(w, h, colorFormat, physYAddr, physCbAddr, physCrAddr, dstX, dstY, hdmiLayer, num_of_hwc_layer); - } break; - - default : - ALOGE ( "onTransact::default"); - return BBinder::onTransact (code, data, reply, flags); - } - - return NO_ERROR; - } - - void SecTVOutService::setHdmiStatus(uint32_t status) - { - - } - - void SecTVOutService::setHdmiMode(uint32_t mode) - { - } - - void SecTVOutService::setHdmiResolution(uint32_t resolution) - { - } - - void SecTVOutService::setHdmiHdcp(uint32_t hdcp_en) - { - } - - void SecTVOutService::setHdmiRotate(uint32_t rotVal, uint32_t hwcLayer) - { - } - - void SecTVOutService::setHdmiHwcLayer(uint32_t hwcLayer) - { - } - - void SecTVOutService::blit2Hdmi(uint32_t w, uint32_t h, uint32_t colorFormat, - uint32_t pPhyYAddr, uint32_t pPhyCbAddr, uint32_t pPhyCrAddr, - uint32_t dstX, uint32_t dstY, - uint32_t hdmiMode, - uint32_t num_of_hwc_layer) - { - } - - bool SecTVOutService::hdmiCableInserted(void) - { - return mHdmiCableInserted; - } - -} diff --git a/TVOutDummy/SecTVOutService.h b/TVOutDummy/SecTVOutService.h deleted file mode 100644 index 11e10d5..0000000 --- a/TVOutDummy/SecTVOutService.h +++ /dev/null @@ -1,94 +0,0 @@ -/* -** -** Copyright 2008, The Android Open Source Project -** Copyright 2010, Samsung Electronics Co. LTD -** -** Licensed under the Apache License, Version 2.0 (the "License"); -** you may not use this file except in compliance with the License. -** You may obtain a copy of the License at -** -** http://www.apache.org/licenses/LICENSE-2.0 -** -** Unless required by applicable law or agreed to in writing, software -** distributed under the License is distributed on an "AS IS" BASIS, -** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -** See the License for the specific language governing permissions and -** limitations under the License. -*/ - -/* -** -** @author Taikyung, Yu(taikyung.yu@samsung.com) -** @date 2011-07-06 -*/ - -#ifndef SECTVOUTSERVICE_H -#define SECTVOUTSERVICE_H - -#include -#include -#include -#include - -#include "ISecTVOut.h" -#include "MessageQueue.h" - -namespace android { -//#define CHECK_VIDEO_TIME -//#define CHECK_UI_TIME - - class SecTVOutService : public BBinder - { - public : - enum { - HDMI_MODE_NONE = 0, - HDMI_MODE_UI, - HDMI_MODE_VIDEO, - }; - - mutable Mutex mLock; - - class HDMIFlushThread : public Thread { - SecTVOutService *mTVOutService; - public: - HDMIFlushThread(SecTVOutService *service): - Thread(false), - mTVOutService(service) { } - virtual void onFirstRef() { - run("HDMIFlushThread", PRIORITY_URGENT_DISPLAY); - } - virtual bool threadLoop() { - return false; - } - }; - - mutable MessageQueue mHdmiEventQueue; - bool mExitHdmiFlushThread; - - SecTVOutService(); - static int instantiate (); - virtual status_t onTransact(uint32_t, const Parcel &, Parcel *, uint32_t); - virtual ~SecTVOutService (); - - virtual void setHdmiStatus(uint32_t status); - virtual void setHdmiMode(uint32_t mode); - virtual void setHdmiResolution(uint32_t resolution); - virtual void setHdmiHdcp(uint32_t enHdcp); - virtual void setHdmiRotate(uint32_t rotVal, uint32_t hwcLayer); - virtual void setHdmiHwcLayer(uint32_t hwcLayer); - virtual void blit2Hdmi(uint32_t w, uint32_t h, - uint32_t colorFormat, - uint32_t pPhyYAddr, uint32_t pPhyCbAddr, uint32_t pPhyCrAddr, - uint32_t dstX, uint32_t dstY, - uint32_t hdmiMode, uint32_t num_of_hwc_layer); - bool hdmiCableInserted(void); - void setLCDsize(void); - - private: - bool mHdmiCableInserted; - int mUILayerMode; - uint32_t mLCD_width, mLCD_height; - uint32_t mHwcLayer; - }; -}; -#endif diff --git a/TVOutDummy/main.cpp b/TVOutDummy/main.cpp deleted file mode 100644 index d0a7497..0000000 --- a/TVOutDummy/main.cpp +++ /dev/null @@ -1,11 +0,0 @@ -#include "SecTVOutService.h" -#include - -int main() { - android::SecTVOutService::instantiate(); - - // let it run for some time (1 sec) - usleep(1000000); - - return 0; -} diff --git a/configs/gps.xml b/configs/gps.xml index 1e8786e..0289635 100644 --- a/configs/gps.xml +++ b/configs/gps.xml @@ -7,7 +7,7 @@ gpioNStdbyPath="/sys/class/sec/gps/GPS_PWR_EN/value" gpioNResetPath="/sys/class/sec/gps/GPS_nRST/value" gpioDelayMs="250" - acNvStoDir="/data/gps/" + acNvStoDir="/data/" FactoryTestFilePath="/data/" acLogDirectory="/sdcard/gps/broadcom/" diff --git a/i9300.mk b/i9300.mk index dfa478f..35e85e4 100644 --- a/i9300.mk +++ b/i9300.mk @@ -83,8 +83,7 @@ PRODUCT_PACKAGES := \ macloader \ SamsungServiceMode \ tinymix \ - Torch \ - TVOutDummy + Torch # HAL PRODUCT_PACKAGES += \ diff --git a/init.smdk4x12.rc b/init.smdk4x12.rc index 775a77e..ea1bab6 100755 --- a/init.smdk4x12.rc +++ b/init.smdk4x12.rc @@ -505,12 +505,10 @@ service dmb /system/bin/dmbserver group radio inet misc audio camera graphics net_bt net_bt_admin sdcard_rw # TVout -#service TvoutService_C /system/bin/bintvoutservice -# class main -# user system -# group graphics - -service SecTVOutService /system/bin/TVOutDummy +service TvoutService_C /system/bin/bintvoutservice class main + user system group graphics - oneshot + +on property:ro.tvout.enable=false + stop TvoutService_C diff --git a/ueventd.smdk4x12.rc b/ueventd.smdk4x12.rc index 7c9a221..70c913b 100644 --- a/ueventd.smdk4x12.rc +++ b/ueventd.smdk4x12.rc @@ -1,39 +1,81 @@ /dev/mali 0666 system system /dev/ump 0666 system graphics -/dev/exynos-mem 0666 system graphics /dev/ion 0666 system system -/dev/s3c-mem 0666 system graphics -/dev/s3c-mfc 0666 system graphics -/dev/s5p-mfc 0666 system graphics -/dev/video0 0666 system camera +/dev/exynos-mem 0666 system graphics + +/dev/media0 0660 system system +/dev/media1 0660 system camera +/dev/media2 0660 system camera +/dev/v4l-subdev0 0660 system system +/dev/v4l-subdev1 0660 system system +/dev/v4l-subdev3 0660 system system +/dev/v4l-subdev4 0660 system system +/dev/v4l-subdev5 0660 system system +/dev/v4l-subdev6 0660 system system +/dev/v4l-subdev7 0660 system system +/dev/v4l-subdev8 0660 system system +/dev/v4l-subdev9 0660 system system +/dev/v4l-subdev10 0660 system system +/dev/v4l-subdev11 0660 system system +/dev/v4l-subdev12 0660 system system +/dev/v4l-subdev13 0660 system system +/dev/v4l-subdev14 0660 system system +/dev/v4l-subdev15 0660 system system +/dev/v4l-subdev16 0660 system system +/dev/v4l-subdev17 0660 system system + +/dev/video0 0666 system m2m /dev/video1 0666 system camera -/dev/video2 0666 system camera -/dev/video3 0666 system camera -/dev/video4 0666 system camera +/dev/video2 0666 system m2m +/dev/video3 0666 system m2m +/dev/video4 0666 system m2m /dev/video11 0666 system system /dev/video12 0666 system system /dev/video16 0666 system system /dev/video20 0666 system system -/dev/pmem 0660 system graphics -/dev/pmem_cam 0660 system camera -/dev/i2c-16 0666 system system -/dev/i2c-5 0666 system system -/dev/CEC 0666 system system -/dev/HPD 0666 system system +/dev/video6 0660 media graphics +/dev/video7 0660 media graphics + +/dev/video11 0666 system graphics +/dev/video12 0660 system camera + +/dev/video16 0660 system system +/dev/video17 0660 system system +/dev/video18 0660 system system +/dev/video19 0660 system system + +# Rotator +/dev/video21 0660 system system + +/dev/video23 0660 system system +/dev/video24 0660 system system +/dev/video25 0660 system camera +/dev/video26 0666 media m2m +/dev/video29 0666 media m2m +/dev/video32 0660 media m2m + +/dev/video33 0660 system system +/dev/video34 0660 system system + +/dev/video40 0660 system camera +/dev/video41 0660 system camera +/dev/video42 0660 system camera +/dev/video43 0660 system camera + +/dev/i2c-2 0660 system system +/dev/i2c-5 0660 system system +/dev/CEC 0660 system system +/dev/HPD 0660 system system /dev/fimg2d 0666 system graphics /dev/fmradio 0660 system audio -/dev/srp 0660 system audio -/dev/umts* 0660 system radio -/dev/lte* 0660 system radio -/dev/cdma* 0660 system radio -/dev/link_pm 0660 system radio -/dev/block/mmcblk0p4 0660 system root -/dev/block/mmcblk0p7 0660 system radio -/dev/ttyUSB0 0666 system system -/dev/ttySAC* 0660 root system +#ALP Audio +/dev/srp 0660 system audio -/dev/input/* 0666 root input +/dev/s3c-mfc 0666 system graphics +/dev/s5p-mfc 0666 system graphics -# for wifi -/dev/rfkill 0666 system system +/dev/umts* 0660 system radio +/dev/ttyUSB0 0666 system system +/dev/usb/lp* 0660 system usb +/dev/block/mmcblk0p4 0660 system system -- cgit v1.1