Porting custom audio codec in Linux BSP

For ALSA based drivers

This article explains about porting custom ALSA based audio codec driver in Linux BSP. I have taken audio codec wm8960 and NXP’s IMX7 processor as an example. The source code for this linux BSP is available here under GNU General Public License. Advanced Linux Sound Architecture (ALSA) Advanced Linux Sound Architecture (ALSA) is a software framework and part of the Linux kernel that provides an application programming interface (API) for sound card device drivers. [Read More]

Encoding a raw YUV video file into H.264/MP4 file using ffmpeg

ffmpeg is basically a very fast video and audio converter. It can grab from a live audio/video source. It can also convert between arbitrary sample rates and resize video on the fly with a high quality polyphase filter. ffmpeg reads from an arbitrary number of input “files” and writes to an arbitrary number of output “files”, which are specified by a plain output url. How to install it in linux? [Read More]

Serial UART Basics

Comparsion in Windows,Linux and Android platform

Introduction A serial port is a serial communication interface through which information transfers in or out one bit at a time. This article explains implementation serial port communication application in different platforms android, Linux and Windows. Serial UART test application The below section explains basic steps in writing serial port applications in Linux, Windows and android (command line application). Linux and Android Like all devices, UNIX provides access to serial ports via device files. [Read More]

Fix for bluetooth deadlock issue in Linux kernel 3.10.45 and lower

For those who are using Linux kernel version 3.10.45 and earlier version, they may have face issues in Bluetooth. The issue is, any Bluetooth related operation may cause the entire kernel/OS to hand infinitely. The issue is because of deadlock condition in the Bluetooth HCI driver. Kernel.org fixed this issue from kernel version 3.10.46 and below is the link for patch. Below is the patch link for this fix in Linux kernel version 3. [Read More]

Finding all IP address connected in a Home network

There are few situation in office, we need to find out user of an IP address or know IP address of others in your network for the purpose like using SSH and SCP. In such a case, you can use the below steps from Linux terminal: you can get the details of them (with host-name and IP address) by, $ avahi-browse -rt _workstation._tcp The above command will list only the computers in your network which uses avahi-daemon (DNS-SD). [Read More]

GVIM Customizations

Here are the few tips for configuring GVIM to support, Opening multiple files as tab in same GVIM instance To make Windows shortcut keys (Cut, copy , past. etc) work in GVIM. Opening multiple files as tab in same GVIM instance Whenever you a open file from command line using gvim, it will always open that file in a new window. Switching between many windows may be difficult for few. [Read More]

Solution for "make menuconfig" Error in Linux PC

Are you facing below error message when giving “make menuconfig” command during your kernel development? $ make menuconfig HOSTLD scripts/kconfig/mconf scripts/kconfig/mconf.o: In function `show_help': mconf.c:(.text+0x8a4): undefined reference to `stdscr' scripts/kconfig/lxdialog/checklist.o: In function `print_arrows': checklist.c:(.text+0x2c): undefined reference to `wmove' checklist.c:(.text+0x4c): undefined reference to `acs_map' checklist.c:(.text+0x54): undefined reference to `waddch' checklist.c:(.text+0x66): undefined reference to `waddnstr' checklist.c:(.text+0x76): undefined reference to `wmove' checklist.c:(.text+0xa0): undefined reference to `acs_map' checklist.c:(.text+0xa8): undefined reference to `waddch' checklist.c:(.text+0xe3): undefined reference to `acs_map' checklist. [Read More]