Nexus S Camera HAL Source Code? - Nexus S Q&A, Help & Troubleshooting

I'm working on a project where I need to modify the driver for the Nexus S front facing Camera. The driver source code is implemented in drivers/media/video/s5ka3dfx.c. From looking at the driver implementation, it appears the driver is conforming to the V4L2 API. However, it is unclear to me how the driver interfaces with the rest of the Android stack. Somethere there needs to be a Hardware Abstraction Layer, containing the implmentation of the pure virtual CameraHardwareInterface class (which is declared in "platform_frameworks_base/include/CameraHardwareInterface.h").
I have been unsuccessful in finding the source code for this Hardware Abstraction Layer. Since the android source page is dreaming of electric sheep at the moment, does anyone know of any alternative locations to find the source code for the Nexus S Camera HAL?

Related

Modifying a native shared library

Hi,
I'm trying to modify the internal native Skia libraries and I'm facing some difficulties. Below is related to Donut r2 (branch donut-release2).
I cloned the relevant branch of Skia and the projects it depends on from the git repository. Initially I tried cloning and modifying the build.git project, but I couldn't figure out how to force it into building specific projects instead of the whole platform.
Then I built manually with the NDK, but this didn't make it because the Skia project requires pthread library (strange, thought thread functions are in libcutils in Android...). When commenting out the -ldpthread in the make, the built library is about 5 times normal size, strangely, and doesn't work (NOTE that I haven't applied any modifications yet).
Can you please help me? I need to make a valid stock-identical build of the Skia shared libraries libsgl.so and libskiagl.so in order to apply modifications to the source..
Thank you

[SOURCECODE] Galaxy Fit S5670 GB SOUCECODE

HEllo people,
For people who have been looking for the source code of this phone recently,but are unable to download it due to the registration process at opensource.samsung.com, I am mirroring the source code! Download and Enjoy!
Source Code (127.18 MB)
PLEASE NOTE->
I will not be responsible for any bricking of the device while modification and/or addition of values to the Source Code or the Kernel.
What is Source Code?
In computer science, source code is text written using the format and syntax of the programming language that it is being written in. Such a language is specially designed to facilitate the work of computer programmers, who specify the actions to be performed by a computer mostly by writing source code, which can then be automatically translated to binary machine code that the computer can directly read and execute. An interpreter translates to machine code and executes it on the fly, while a compiler only translates to machine code that it stores as executable files; these can then be executed as a separate step.
Most computer applications are distributed in a form that includes executable files, but not their source code, which is useful to a user, programmer, or system administrator who wishes to modify the program or understand how it works.
The source code which constitutes a program is usually held in one or more text files stored on a computer's hard disk; usually these files are carefully arranged into a directory tree, known as a source tree. Source code can also be stored in a database (as is common for stored procedures) or elsewhere.
Source code also appears in books and other media; often in the form of small code snippets, but occasionally complete code bases; a well-known case is the source code of PGP.
The notion of source code may also be taken more broadly, to include machine code and notations in graphical languages, neither of which are textual in nature. An example from an article presented on the annual IEEE conference on Source Code Analysis and Manipulation:[1]
For the purpose of clarity ‘source code’ is taken to mean any fully executable description of a software system. It is therefore so construed as to include machine code, very high level languages and executable graphical representations of systems.[2]
The code base of a programming project is the larger collection of all the source code of all the computer programs which make up the project.
It has become common practice to maintain code bases in version control systems.
-> The Kernel and Source code is as seen on Samsung's website
-> Uploaded here in order to avoid regestration process on the website
-> Do NOT download this if you are not sure of what it is or how to edit these
-> Also, Do download if:
-You are planning to develop a kernel
-For Stable CM7 or Future releases
-You are studying the Code
- Bug fixing
- You are learning Kernel dev.
- You belong to the Kernel DEV. TEam of Fit!
------------------------------
CLICK ON TEH THANKS BUTTON, IT DOES NOT EXPLODE!!!
Can I change kernel is Windows or what?
No kernel developing is not supported in windows you need linux you need linux or mac os
omarhasan76 said:
No kernel developing is not supported in windows you need linux you need linux or mac os
Click to expand...
Click to collapse
VMWare or Virtual PC does the job.
Yes, Yes it does! You dont need to install Linux!
ya but its the same thing installing linux or using virtual machine
omarhasan76 said:
ya but its the same thing installing linux or using virtual machine
Click to expand...
Click to collapse
I meant the same.....
Which version/baseband ?
hey this source code is for galaxy ace gt s5830
i guess and not for fit ??

[C++] Compiling OpenCL application to native ARM ELF using Debian

Hello,
I am posting to begin a thread regarding the native compilation and execution of OpenCL code on an ARM Android device, namely the HTC One M8.
I have used the app Linux Deploy to install a Debian desktop environment alongside Android, sharing the same Linux kernel but supplying different runtime libraries. Additionally, I have installed gcc/g++, Code::Blocks, and the OpenCL ICD and header files necessary to compile a native binary.
My intent is to continue developing a graphics render algorithm, but if I can get a working Android binary from g++ on a GNU toolchain, I would be happy to share generalized source code so that others can do the same with some simplicity.
Currently, I have success compiling a binary with shared libraries for GNU/Linux, but it does not detect the OpenCL devices on my system. I tried statically linking my application, but it refuses to link OpenCL statically.
The way I see it, there are two ways to solve my problem:
1) I assume Debian cannot see devices due to a driver issue, but I could be wrong, and I don't believe appropriate GNU drivers exist at this time. (Please correct me in a response if you know this to be false.) I have talked briefly with some of the folks from the Freedreno project, and it seems the OpenCL compiler is the biggest missing piece between the driver and the hardware. Unfortunately, I do not know if a working driver would even solve the issue in my case.
2) Compile binary with Android shared libraries. This may be most easily done with Eclipse, but I prefer Code::Blocks, so if the libraries could be linked in, then it may be trivial to change IDEs. I suppose it depends entirely on how the NDK handles compilation.
Option 2 is most likely the best course of action. I intend to publish my progress in milestones. Discuss.
XDA:DevDB Information
PLoW, Device Specific App for the Verizon HTC One (M8)
Contributors
Agenthex, agenthex
Version Information
Status: Testing
Created 2015-01-03
Last Updated 2015-01-03
Answer to your question = Mint 17.1 Works for me and this should be in general as this has nothing that you created.

Configstore HAL in Android Porting Architecture

I am currently working on porting Android O to a new chipset.
When I was understanding the porting architecture section of AOSP form source.android.com website I had some doubts for which I need some clarity
1. Is it good enough to use the default implementation of Configstore HAL itself for Porting? Or under which situations we should make changes to ConfigStore HAL?
2. Why is it common to all modules. i.e why Configstore HAL is not specific to a module like audio, bluetooth, camera etc.
3. Why does Configstore HAL has the implementation only for SurfaceFlinger?
4. Is there any device specific implementation for Configstore HAL?

Camera2 API

How to get Camera2 API on OnePlus One (bacon) ?
This includes changes in different abstraction levels in android: Driver part, kernel part (yes?), HAL part. But HAL itself has closed code, and can't be modified without source access. To do changes in HAL needed for Camera 2 API, we need source codes. But HAL's are always closed compiled binary blobs, provided by manufacturer.
So, no way my friend.

Categories

Resources