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.
Related
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
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?
The general idea is to free the kernel from needing the source for every build.
The kernel currently uses DTB, but even that is included in the kernel source.
make tegra11_android_defconfig -j$CPU_JOB_NUM ARCH=arm CROSS_COMPILE=$TOOLCHAIN_PREFIX
make tegra114-roth.dtb -j$CPU_JOB_NUM ARCH=arm CROSS_COMPILE=$TOOLCHAIN_PREFIX
make -j$CPU_JOB_NUM ARCH=arm CROSS_COMPILE=$TOOLCHAIN_PREFIX
This has not been verified without the source already downloaded, but the general idea is to move toward being able to produce kernel packages with just the kernel repository.
https://github.com/StarKissed/roth-kernel-starkissed
Had to fix some make issues running a mac, but I'm hoping to have a build out soon.
Many of the changes come from Tegra 3, due to the lack of Tegra 4 devices, and will have to be tuned. This may lead to some initial instability.
The source was temporarily made private until it is fit to compile. This was done to prevent erroneous reports that it's broken when the issues are known and just require the time to address them.
Are you going to compile custom kernels and release them to public?
Antara33 said:
Are you going to compile custom kernels and release them to public?
Click to expand...
Click to collapse
When I get time. Right now there is a little too much going on already.
The source and commands may work but with using a Mac, even a source build results in loops, so I have to resolve that before saying it does the same thing.
After an interesting conversation, the mpdecision idea is pointless. I bought into the belief that it might be interesting to test an alternative, but the shield thermal control has been extremely well-designed.
The primary focus will be simply unlocking additional kernel features, such as extended ntfs support and alternate tcp settings along with integrating and updating the kernel to current Linux revisions.
twistedumbrella said:
The source and commands may work but with using a Mac, even a source build results in loops, so I have to resolve that before saying it does the same thing.
After an interesting conversation, the mpdecision idea is pointless. I bought into the belief that it might be interesting to test an alternative, but the shield thermal control has been extremely well-designed.
The primary focus will be simply unlocking additional kernel features, such as extended ntfs support and alternate tcp settings along with integrating and updating the kernel to current Linux revisions.
Click to expand...
Click to collapse
Any word on what's the status here? Why does the kernel source require the full source anyways?
I'm just looking to be able to build the vanilla kernel with no hacks, I just want to compile extra modules for the kernel where I need them
vostok4 said:
Any word on what's the status here? Why does the kernel source require the full source anyways?
I'm just looking to be able to build the vanilla kernel with no hacks, I just want to compile extra modules for the kernel where I need them
Click to expand...
Click to collapse
I had a recent realization after working with the Note 4 that should allow me to build the stuff needed to compile kernels without the source. I just have to verify I can make it a distributable file and we should be good.
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.
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?