Submit Search
Upload
Learning AOSP - Android Linux Device Driver
•
Download as PPT, PDF
•
1 like
•
4,491 views
Nanik Tolaram
Follow
Presentation for Android Australia Sydney group on 22/August/2013 at fishburners.org
Read less
Read more
Technology
Report
Share
Report
Share
1 of 12
Download now
Recommended
"Learning AOSP" - Android Hardware Abstraction Layer (HAL)
"Learning AOSP" - Android Hardware Abstraction Layer (HAL)
Nanik Tolaram
Android OTA updates
Android OTA updates
Gary Bisson
Embedded Android : System Development - Part II (Linux device drivers)
Embedded Android : System Development - Part II (Linux device drivers)
Emertxe Information Technologies Pvt Ltd
Android Things : Building Embedded Devices
Android Things : Building Embedded Devices
Emertxe Information Technologies Pvt Ltd
Embedded Android : System Development - Part III
Embedded Android : System Development - Part III
Emertxe Information Technologies Pvt Ltd
Learning AOSP - Android Booting Process
Learning AOSP - Android Booting Process
Nanik Tolaram
Embedded Android : System Development - Part I
Embedded Android : System Development - Part I
Emertxe Information Technologies Pvt Ltd
Booting Android: bootloaders, fastboot and boot images
Booting Android: bootloaders, fastboot and boot images
Chris Simmonds
Recommended
"Learning AOSP" - Android Hardware Abstraction Layer (HAL)
"Learning AOSP" - Android Hardware Abstraction Layer (HAL)
Nanik Tolaram
Android OTA updates
Android OTA updates
Gary Bisson
Embedded Android : System Development - Part II (Linux device drivers)
Embedded Android : System Development - Part II (Linux device drivers)
Emertxe Information Technologies Pvt Ltd
Android Things : Building Embedded Devices
Android Things : Building Embedded Devices
Emertxe Information Technologies Pvt Ltd
Embedded Android : System Development - Part III
Embedded Android : System Development - Part III
Emertxe Information Technologies Pvt Ltd
Learning AOSP - Android Booting Process
Learning AOSP - Android Booting Process
Nanik Tolaram
Embedded Android : System Development - Part I
Embedded Android : System Development - Part I
Emertxe Information Technologies Pvt Ltd
Booting Android: bootloaders, fastboot and boot images
Booting Android: bootloaders, fastboot and boot images
Chris Simmonds
Embedded Android : System Development - Part II (HAL)
Embedded Android : System Development - Part II (HAL)
Emertxe Information Technologies Pvt Ltd
Android's HIDL: Treble in the HAL
Android's HIDL: Treble in the HAL
Opersys inc.
Native Android Userspace part of the Embedded Android Workshop at Linaro Conn...
Native Android Userspace part of the Embedded Android Workshop at Linaro Conn...
Opersys inc.
Embedded Android Workshop
Embedded Android Workshop
Opersys inc.
Embedded Android Workshop with Pie
Embedded Android Workshop with Pie
Opersys inc.
Embedded Android : System Development - Part IV
Embedded Android : System Development - Part IV
Emertxe Information Technologies Pvt Ltd
Android Boot Time Optimization
Android Boot Time Optimization
Kan-Ru Chen
Android Internals
Android Internals
Opersys inc.
Android booting sequece and setup and debugging
Android booting sequece and setup and debugging
Utkarsh Mankad
Using and Customizing the Android Framework / part 4 of Embedded Android Work...
Using and Customizing the Android Framework / part 4 of Embedded Android Work...
Opersys inc.
Android device driver structure introduction
Android device driver structure introduction
William Liang
Embedded Android : System Development - Part III (Audio / Video HAL)
Embedded Android : System Development - Part III (Audio / Video HAL)
Emertxe Information Technologies Pvt Ltd
Android Treble: Blessing or Trouble?
Android Treble: Blessing or Trouble?
Opersys inc.
Embedded Android : System Development - Part IV (Android System Services)
Embedded Android : System Development - Part IV (Android System Services)
Emertxe Information Technologies Pvt Ltd
Binder: Android IPC
Binder: Android IPC
Shaul Rosenzwieg
Q4.11: Porting Android to new Platforms
Q4.11: Porting Android to new Platforms
Linaro
Android Internals
Android Internals
Opersys inc.
Android for Embedded Linux Developers
Android for Embedded Linux Developers
Opersys inc.
Android Storage - Vold
Android Storage - Vold
William Lee
Android crash debugging
Android crash debugging
Ashish Agrawal
Android HAL Introduction: libhardware and its legacy
Android HAL Introduction: libhardware and its legacy
Jollen Chen
Accessing Hardware on Android
Accessing Hardware on Android
Gary Bisson
More Related Content
What's hot
Embedded Android : System Development - Part II (HAL)
Embedded Android : System Development - Part II (HAL)
Emertxe Information Technologies Pvt Ltd
Android's HIDL: Treble in the HAL
Android's HIDL: Treble in the HAL
Opersys inc.
Native Android Userspace part of the Embedded Android Workshop at Linaro Conn...
Native Android Userspace part of the Embedded Android Workshop at Linaro Conn...
Opersys inc.
Embedded Android Workshop
Embedded Android Workshop
Opersys inc.
Embedded Android Workshop with Pie
Embedded Android Workshop with Pie
Opersys inc.
Embedded Android : System Development - Part IV
Embedded Android : System Development - Part IV
Emertxe Information Technologies Pvt Ltd
Android Boot Time Optimization
Android Boot Time Optimization
Kan-Ru Chen
Android Internals
Android Internals
Opersys inc.
Android booting sequece and setup and debugging
Android booting sequece and setup and debugging
Utkarsh Mankad
Using and Customizing the Android Framework / part 4 of Embedded Android Work...
Using and Customizing the Android Framework / part 4 of Embedded Android Work...
Opersys inc.
Android device driver structure introduction
Android device driver structure introduction
William Liang
Embedded Android : System Development - Part III (Audio / Video HAL)
Embedded Android : System Development - Part III (Audio / Video HAL)
Emertxe Information Technologies Pvt Ltd
Android Treble: Blessing or Trouble?
Android Treble: Blessing or Trouble?
Opersys inc.
Embedded Android : System Development - Part IV (Android System Services)
Embedded Android : System Development - Part IV (Android System Services)
Emertxe Information Technologies Pvt Ltd
Binder: Android IPC
Binder: Android IPC
Shaul Rosenzwieg
Q4.11: Porting Android to new Platforms
Q4.11: Porting Android to new Platforms
Linaro
Android Internals
Android Internals
Opersys inc.
Android for Embedded Linux Developers
Android for Embedded Linux Developers
Opersys inc.
Android Storage - Vold
Android Storage - Vold
William Lee
Android crash debugging
Android crash debugging
Ashish Agrawal
What's hot
(20)
Embedded Android : System Development - Part II (HAL)
Embedded Android : System Development - Part II (HAL)
Android's HIDL: Treble in the HAL
Android's HIDL: Treble in the HAL
Native Android Userspace part of the Embedded Android Workshop at Linaro Conn...
Native Android Userspace part of the Embedded Android Workshop at Linaro Conn...
Embedded Android Workshop
Embedded Android Workshop
Embedded Android Workshop with Pie
Embedded Android Workshop with Pie
Embedded Android : System Development - Part IV
Embedded Android : System Development - Part IV
Android Boot Time Optimization
Android Boot Time Optimization
Android Internals
Android Internals
Android booting sequece and setup and debugging
Android booting sequece and setup and debugging
Using and Customizing the Android Framework / part 4 of Embedded Android Work...
Using and Customizing the Android Framework / part 4 of Embedded Android Work...
Android device driver structure introduction
Android device driver structure introduction
Embedded Android : System Development - Part III (Audio / Video HAL)
Embedded Android : System Development - Part III (Audio / Video HAL)
Android Treble: Blessing or Trouble?
Android Treble: Blessing or Trouble?
Embedded Android : System Development - Part IV (Android System Services)
Embedded Android : System Development - Part IV (Android System Services)
Binder: Android IPC
Binder: Android IPC
Q4.11: Porting Android to new Platforms
Q4.11: Porting Android to new Platforms
Android Internals
Android Internals
Android for Embedded Linux Developers
Android for Embedded Linux Developers
Android Storage - Vold
Android Storage - Vold
Android crash debugging
Android crash debugging
Viewers also liked
Android HAL Introduction: libhardware and its legacy
Android HAL Introduction: libhardware and its legacy
Jollen Chen
Accessing Hardware on Android
Accessing Hardware on Android
Gary Bisson
Hardware Abstraction Layer
Hardware Abstraction Layer
Teh Kian Cheng
Android のusb support
Android のusb support
magoroku Yamamoto
Android usbの基本
Android usbの基本
Hiasyoshi Suehiro
Device for Android
Device for Android
dynamis
nl80211 and libnl
nl80211 and libnl
awkman
Zeelogic android-training-2013
Zeelogic android-training-2013
Zeelogic Solu
MMC Booklet
MMC Booklet
SoulCityItsReal
Diving inside Android Wifi
Diving inside Android Wifi
Nanik Tolaram
Android Custom Kernel/ROM design
Android Custom Kernel/ROM design
Muhammad Najmi Ahmad Zabidi
Linux-without-a-bootloader
Linux-without-a-bootloader
Nishanth Menon
Aosp+
Aosp+
jpuderer
Linux SD/MMC device driver
Linux SD/MMC device driver
艾鍗科技
Embedded Android Workshop with Marshmallow
Embedded Android Workshop with Marshmallow
Opersys inc.
An introduction to the linux kernel and device drivers (NTU CSIE 2016.03)
An introduction to the linux kernel and device drivers (NTU CSIE 2016.03)
William Liang
Q4.11: Introduction to eMMC
Q4.11: Introduction to eMMC
Linaro
Data Structures & Algorithm design using C
Data Structures & Algorithm design using C
Emertxe Information Technologies Pvt Ltd
Embedded C - Optimization techniques
Embedded C - Optimization techniques
Emertxe Information Technologies Pvt Ltd
ICT+UD 융합작품 개발문서(스마트디바이스지능통신)
ICT+UD 융합작품 개발문서(스마트디바이스지능통신)
Yong Heui Cho
Viewers also liked
(20)
Android HAL Introduction: libhardware and its legacy
Android HAL Introduction: libhardware and its legacy
Accessing Hardware on Android
Accessing Hardware on Android
Hardware Abstraction Layer
Hardware Abstraction Layer
Android のusb support
Android のusb support
Android usbの基本
Android usbの基本
Device for Android
Device for Android
nl80211 and libnl
nl80211 and libnl
Zeelogic android-training-2013
Zeelogic android-training-2013
MMC Booklet
MMC Booklet
Diving inside Android Wifi
Diving inside Android Wifi
Android Custom Kernel/ROM design
Android Custom Kernel/ROM design
Linux-without-a-bootloader
Linux-without-a-bootloader
Aosp+
Aosp+
Linux SD/MMC device driver
Linux SD/MMC device driver
Embedded Android Workshop with Marshmallow
Embedded Android Workshop with Marshmallow
An introduction to the linux kernel and device drivers (NTU CSIE 2016.03)
An introduction to the linux kernel and device drivers (NTU CSIE 2016.03)
Q4.11: Introduction to eMMC
Q4.11: Introduction to eMMC
Data Structures & Algorithm design using C
Data Structures & Algorithm design using C
Embedded C - Optimization techniques
Embedded C - Optimization techniques
ICT+UD 융합작품 개발문서(스마트디바이스지능통신)
ICT+UD 융합작품 개발문서(스마트디바이스지능통신)
Similar to Learning AOSP - Android Linux Device Driver
Android OS Porting: Introduction
Android OS Porting: Introduction
Jollen Chen
Android internals
Android internals
rabah3
Oracle prm dul, jvm and os
Oracle prm dul, jvm and os
maclean liu
OWF12/PAUG Conf Days Alternative to google's android emulator, daniel fages, ...
OWF12/PAUG Conf Days Alternative to google's android emulator, daniel fages, ...
Paris Open Source Summit
Droidcon 2013 France - Android Platform Anatomy
Droidcon 2013 France - Android Platform Anatomy
Benjamin Zores
Platform Disk Support 2
Platform Disk Support 2
Aero Plane
Android training course
Android training course
Adarsh Pandey
Android porting for dummies @droidconin 2011
Android porting for dummies @droidconin 2011
pundiramit
Android on Intel Architecture: ROM Cooking Tutorial
Android on Intel Architecture: ROM Cooking Tutorial
Ron Munitz
Android Attacks
Android Attacks
Michael Scovetta
Building
Building
Satpal Parmar
Android Logging System
Android Logging System
William Lee
Bringing up Android on your favorite X86 Workstation or VM (AnDevCon Boston, ...
Bringing up Android on your favorite X86 Workstation or VM (AnDevCon Boston, ...
Ron Munitz
Inside Android's UI / ABS 2013
Inside Android's UI / ABS 2013
Opersys inc.
Learning AOSP - Building AOSP for Nexus 7
Learning AOSP - Building AOSP for Nexus 7
Nanik Tolaram
Android tools for testers
Android tools for testers
Maksim Kovalev
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
Embarcadero Technologies
Android
Android
Nishant Jain
Memory Management in Android
Memory Management in Android
Opersys inc.
Hardening solaris
Hardening solaris
Femi Adeyemi
Similar to Learning AOSP - Android Linux Device Driver
(20)
Android OS Porting: Introduction
Android OS Porting: Introduction
Android internals
Android internals
Oracle prm dul, jvm and os
Oracle prm dul, jvm and os
OWF12/PAUG Conf Days Alternative to google's android emulator, daniel fages, ...
OWF12/PAUG Conf Days Alternative to google's android emulator, daniel fages, ...
Droidcon 2013 France - Android Platform Anatomy
Droidcon 2013 France - Android Platform Anatomy
Platform Disk Support 2
Platform Disk Support 2
Android training course
Android training course
Android porting for dummies @droidconin 2011
Android porting for dummies @droidconin 2011
Android on Intel Architecture: ROM Cooking Tutorial
Android on Intel Architecture: ROM Cooking Tutorial
Android Attacks
Android Attacks
Building
Building
Android Logging System
Android Logging System
Bringing up Android on your favorite X86 Workstation or VM (AnDevCon Boston, ...
Bringing up Android on your favorite X86 Workstation or VM (AnDevCon Boston, ...
Inside Android's UI / ABS 2013
Inside Android's UI / ABS 2013
Learning AOSP - Building AOSP for Nexus 7
Learning AOSP - Building AOSP for Nexus 7
Android tools for testers
Android tools for testers
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
Android
Android
Memory Management in Android
Memory Management in Android
Hardening solaris
Hardening solaris
More from Nanik Tolaram
Barcelona Meetup Presentation
Barcelona Meetup Presentation
Nanik Tolaram
Android Source Code
Android Source Code
Nanik Tolaram
Android Internal Services
Android Internal Services
Nanik Tolaram
ODROID Magazine June 2015
ODROID Magazine June 2015
Nanik Tolaram
ODROID Magazine January 2015
ODROID Magazine January 2015
Nanik Tolaram
ODROID Magazine December 2014
ODROID Magazine December 2014
Nanik Tolaram
Peeking into Android Source
Peeking into Android Source
Nanik Tolaram
ODROID Magazine September 2014
ODROID Magazine September 2014
Nanik Tolaram
Building Android Devices
Building Android Devices
Nanik Tolaram
ODROID Magazine August 2014
ODROID Magazine August 2014
Nanik Tolaram
Android Wear Presentation
Android Wear Presentation
Nanik Tolaram
ODROID Magazine June 2014
ODROID Magazine June 2014
Nanik Tolaram
ODROID Magazine May 2014
ODROID Magazine May 2014
Nanik Tolaram
Odroid Magazine March 2014
Odroid Magazine March 2014
Nanik Tolaram
ODROID Magazine April 2014
ODROID Magazine April 2014
Nanik Tolaram
More from Nanik Tolaram
(15)
Barcelona Meetup Presentation
Barcelona Meetup Presentation
Android Source Code
Android Source Code
Android Internal Services
Android Internal Services
ODROID Magazine June 2015
ODROID Magazine June 2015
ODROID Magazine January 2015
ODROID Magazine January 2015
ODROID Magazine December 2014
ODROID Magazine December 2014
Peeking into Android Source
Peeking into Android Source
ODROID Magazine September 2014
ODROID Magazine September 2014
Building Android Devices
Building Android Devices
ODROID Magazine August 2014
ODROID Magazine August 2014
Android Wear Presentation
Android Wear Presentation
ODROID Magazine June 2014
ODROID Magazine June 2014
ODROID Magazine May 2014
ODROID Magazine May 2014
Odroid Magazine March 2014
Odroid Magazine March 2014
ODROID Magazine April 2014
ODROID Magazine April 2014
Recently uploaded
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
Alex Barbosa Coqueiro
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
UiPathCommunity
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
Enterprise Knowledge
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
Alfredo García Lavilla
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
Miki Katsuragi
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
Curtis Poe
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
Fwdays
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
Sergiu Bodiu
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
Commit University
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
comworks
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
Sri Ambati
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
gvaughan
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
Fwdays
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
Alan Dix
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
NavinnSomaal
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Zilliz
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
Rizwan Syed
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
Slibray Presentation
How to write a Business Continuity Plan
How to write a Business Continuity Plan
Databarracks
Recently uploaded
(20)
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
How to write a Business Continuity Plan
How to write a Business Continuity Plan
Learning AOSP - Android Linux Device Driver
1.
Learning AOSP Android Linux
Device Drivers 22nd August 2013 August 2013 @nanikjava ozandroid.info bit.ly/12r7yOr
2.
ANDROID & LINUX
3.
ANDROID LINUX DRIVERS
Android core low level Software & Hardware drivers (mostly software) Minimum tasks performed Access via framework layer or library
4.
MAINLINE VS VENDOR
LINUX v3.3 driver merge (excl wakelock) v3.5 wakelock merge Patch prior to v3.5 (different directory) Vendor “normally” releases Linux kernel
5.
ANDROID DRIVERS ashmem (mm/ashmem.c) binder
(drivers/staging/android/binder.c) lowmemorykiller (drivers/staging/android/lowmemorykiller.c) ram_console (drivers/staging/android/ram_console.c) timed_gpio (drivers/staging/android/timed_gpio.c) usb – otg, adb, gadget, accessories, etc (drivers/usb/gadget) logger (drivers/staging/android/logger.c) alarm (drivers/staging/android/alarm.c) wakelock (kernel/power/wakelock.c)
6.
LAYERS INTERACTION
7.
BINDER Kernel drivers/staging/binder.c Framework frameworks/base/core/java/android/os/Binder.java frameworks/base/core/jni/android_util_Binder.java frameworks/native/cmds/servicemanager/binder.c frameworks/native/cmds/servicemanager/service_manager.c Virtual Filesystem /sys/kernel/debug/binder →
debugging /dev/binder → used internally by framework
8.
Kernel drivers/staging/android/logger.c Framework frameworks/base/core/java/android/util/Log.java frameworks/base/core/jni/android_util_Log.cpp system/core/liblog/logd_write.c Virtual Filesystem /dev/events /dev/main /dev/radio /dev/system LOGGER
9.
USB
10.
LINUX CONFIG CONFIG_ANDROID=y
CONFIG_ANDROID_BINDER_IPC=y CONFIG_ASHMEM=y CONFIG_ANDROID_LOGGER=y CONFIG_ANDROID_TIMED_OUTPUT=y CONFIG_ANDROID_LOW_MEMORY_KILLER=y
11.
BENEFITS Troubleshooting/Debugging Extending
framework and/or services Helped in writing native code
12.
RESOURCES source.android.com androidxref.com
Source code
Download now