od Exbi-Tech
Powered by Blogger.
alt text

Nexus 7

Google s Nexus 7.

more
alt text

Android 4.1

Explore whats new.

more
alt text

Raspberry Pi

An ARM GNU/Linux box for $25. Take a byte!

more
alt text

OMAP™ 5 Platform

The OMAP 5 platform includes applications processors with supporting wireless connectivity, power management, battery management and audio management devices for next-generation Smartphones, Tablets, and other mobile devices.

more

Top Stories

Install/Compile Linux Kernel 3.0 In Ubuntu

  • Sunday, 10 July 2011
  • by
  • exbitech

  • An RC for the Linux Kernel 3.0 was recently released. The change in the version number is mostly to mark the 3rd decade of the Linux Kernel, it doesn't bring any major changes. Still, why not try to setup the new version on your system?

    Here is the terminal commands


    Downloading kernel

    # cd /tmp
    # wget http://www.kernel.org/pub/linux/kernel/v3.0/testing/linux-3.0-rc6.tar.bz2

    # tar -xvjf linux-3.0-rc6.tar.bz2 -C /usr/src
    # cd /usr/src/linux-3.0-rc6

    Configure kernel
    Before you configure kernel make sure you have development tools
    (gcc compilers and related tools) are installed on your system.

    This step may save you time, if you want to reuse the old settings.
    Whenever you install the kernel, generally you put the config file
    in /boot. So, you can use the existing version of config file:

    # mv /usr/src/linux-3.0-rc6/.config  /usr/src/linux-3.0-rc6/.config.save
    # cp /boot/config-`uname -r`  /usr/src/linux-3.0-rc6/.config

    Now you can start kernel configuration by typing any one of the command:

    # make menuconfig - Text based color menus, radiolists & dialogs.
    This option also useful on remote server if you
    wanna compile kernel remotely.
    # make xconfig - X windows (Qt) based configuration tool, works best under KDE desktop
    # make gconfig - X windows (Gtk) based configuration tool, works best under Gnome
    Dekstop.

    *** End of the configuration.
    *** Execute 'make' to start the build or try 'make help'.


    Give a unique name to your new Kernel -
    Edit /usr/src/linux-3.0-rc6/Makefile and change EXTRAVERSION

    Once you have finished, save and exit. It is now time to compile.
    However to speed up the build if you have a dual core processor type,

    export CONCURRENCY_LEVEL=3
    The general rule is 1 + the number of processor cores.

    Compile kernel

    # make -j4

    Start compiling to kernel modules:

    # make modules
    # make modules_install

    ***** Not recommended Goto "Follow this" *****


    # make install


    It will install three files into /boot directory as well as modification to 
    your kernel grub configuration file:


    System.map-3.0.0-rc6 
    config-3.0.0-rc6
    vmlinuz-3.0.0-rc6

    ***** End *****

    ***** Follow this *****
    cp ./arch/x86/boot/bzImage /boot/vmlinuz-3.0.0-rc6
    cp System.map /boot/System.map-3.0.0-rc6

    Create an initrd image
    # cd /boot
    # update-initramfs -c -k 3.0.0-rc6

    Finally we need to add the initramfs image to the grub.cfg
    file located at /boot/grub/grub.cfg

    # update-grub

    Now just reboot and your new kernel should automatically load.
    Read More...

    Video Capability of TI OMAP 4 and 5

  • Thursday, 7 July 2011
  • by
  • exbitech

  • The last OMAP 4 is OMAP 4470, which is offering dual ARM Cortex-M3 CPU cores running at up to 1.8GHz. TI claimed that OMAP 4470's overall graphics performance on the new SoC is 250 percent better than the OMAP4430 which runs in the RIM's BlackBerry PlayBook tablet. The OMAP 4 uses the IVA 3 multimedia accelerator which supports:
    • Full HD 1080p30 multi-standard video encode/decode
    • Hardwired codecs deliver high performance at low power levels
    • Programmable DSP provides flexibility for future codecs VTC 1080p30
    • Provides support for high definition stereoscopic 3D encode/decode (OMAP4430: 720p, OMAP4460/4470: 1080p)
    Ittiam demonstrated the OMAP 4 was capable of driving 4-way 720p video conferencing and high quality peer-to-peer 720p class HD video conferencing.
    The OMAP 5 will have Quad-core, two high-powered CPU cores, up to 2GHz, and two lowly tickers, which are to carry out the mundane tasks to save on battery life. It will use the IVA 3 HD multimedia accelerator and supports
    • Full HD 1080p60 multi-standard video encode/decode
    • Hardwired codecs deliver high performance at low power levels
    • Programmable DSP provides flexibility for future codecs
    • Provides support for high definition stereoscopic 3D encode/decode at 1080p30
    TI will also add some value for image processing, such as gesture recognition for commanding your device, as well as great DSP engines for photography. Special care is paid to the camera department in OMAP 5 as well, with built-in chips for what TI calls "computational photography", using the powerful silicon to compensate for motion blur, camera shake, and bring about enhanced HDR, as well as real-time face recognition. Object and text recognition are also taken to the next level, which should bring along some promising augmented reality apps.
    Read More...

    Install PAE kernel

  • Wednesday, 6 July 2011
  • by
  • exbitech

  • Physical Address Extension or  PAE as it is generally called, is a technology which allows 32 bit operating systems to use up to 64 Gb of memory (RAM), something which is normally achieved by switching to a 64 bit system.

    Read more about it HERE

    If your Linux box has 4GB RAM or above, you need to install PAE kernel


    On RHEL / CentOS

    yum install kernel-PAE


    Ubuntu

    Ubuntu 10.04 – Lucid Lynx and newer iterations automatically installs the PAE kernel if it detects more than 3G of memory. If you need to install it manually

    sudo aptitude install linux-generic-pae linux-headers-generic-pae

    Once installed ensure that the grub has the pae kernel as the default and then reboot your machine.
    Read More...

    Linux USB structure

  • Monday, 20 June 2011
  • by
  • exbitech
  • Linux USB device driver sits above USB core( USB controller) and read device.


    A USB endpoint has 4 types: control, interrupt, bulk, ISOCHRONOUS.

    struct usb_host_endpoint contains struct usb_endpoint_descriptor, which contains: bEndpointAddress( IN, OUT),bmAttributes
    (endpoint type),wMaxPacketSize, bInterval (in my subsequent I plan to use an endpoint of this to tell camera take an image!)

    A USB interface has several endpoints, is a logic connection. One USB driver only has one USB interface.

    A USB configuration has multiple USB interfaces.

    USB mouse example: http://hi.baidu.com/obeyrules/blog/item/a01e85816a8a279bf603a6c0.html

    How to write Linux USB device driver article: http://www.linuxjournal.com/article/4786
    Read More...

    Writing Device Drivers in Linux

  • Wednesday, 15 June 2011
  • by
  • exbitech


  • A device driver often called a driver for short, is a computer program that enables another program typically an operating system (OS) (e.g., Windows, Linux, FreeBSD) to interact with a hardware device.

    Device Drivers can be classified into
    Statically linked driver
    Where object code is linked with the kernel. The code of the device driver is physically contained in the kernel and therefore loaded in memory when system boots.
    Dynamically linked driver
    Whose object code is not linked with the kernel. The code of such device driver is not contained in the kernel, and the device driver is loaded and unloaded as and when required.
    By compiling the driver into an object format that the kernel can load whenever access to specific device is required. Kernel code that can be automatically loaded into kernel is known as loadable kernel module.
    Read More...
     
    Copyright (c) 2011 Exbi Tech
    Twitter Bird Gadget