Friday 7 December 2012

.3 Release | Compileable Source Code!


I am happy to say that my driver code can successfully build on an Arm A9 Device!.

I have not tested the release on a mali device, but am looking forward to doing so! I will probably be getting my hands on an Android Mk803 in the next coming weeks and continue my work with it. As class time has ran out, I had a pleasure working through the bugs, fixes, and issues, with only my Professors and Classmates to thank.

I have uploaded three files for download.

  1. malidriver.tar.gz (Driver source code with UMPLOCK fix/patched)
  2. mali-includes.tar.gz (Compiled Library files for inclusion into your /usr/include/ folder)
  3. malilibs.tar.gz (More mali requirements, which needed to be compiled and issued a make install)
Some libraries were required for me to install during this process.
I had to get:

  • xorg-x11-util-macros.noarch & xorg-x11-server-devel.armv5tel
  • groupinstall "X Software Development"
I issued the Following commands to make the drivers:

As soon as i get my hands on the mk803, I will be posting more updates on my progress in getting X to work on it!

Tuesday 4 December 2012

More Progress!

It seems that I have solved the error I was running into. It seems that i was missing libraries for Mali and UMP !

Hence this error:
/bin/ld: cannot find -lMali
/bin/ld: cannot find -lUMP
But alas! I found this git hub!
https://github.com/linux-sunxi/mali-libs
So i did a git clone on the above hub, and tried to make it with:
make VERSION=r3p0 ABI=armhf framebuffer
 and got permission errors!
install: cannot create regular file `/usr/lib/libUMP.so': Permission denied
install: cannot create regular file `/usr/lib/libMali.so': Permission denied
So i did an evil thing, and re-ran the above command with sudo. This was the output i got..

Seemed right to me. So i went back to trying to compile the mali driver and finally got some promising output [below]. I am just waiting for confirmation of it being positive or negative! I hope to post more this week!


Some updates!

Well I seem to have been getting some progress while my posts have been not increasing.

I would like to thank Chris Tyler and Raymond Chan for their endlesss motivation, which always drives me to get further and do more!

So with my motivation to get by, I ended up finding a post by Sven from Miniand Tech, in where he was running into the same problem i was having. I found his guide quite helpful! But it wasn't so easy! With the help of Andrei Martinenco, I have gotten past some key errors. I had some C mistakes in one of my libraries that were needed for compiling the Mali driver. In my previous error, I kept running into the following:

fatal error: umplock/umplock_ioctl.h: No such file or directory
The guide pointed me into creating the umplock directory and the .h file above! With andrei's help my final umplock_ioctl.h file looked like this!


I am now running into another problem [below] which i am working on fixing at the moment.


This is significant progress! And Chris Tyler did tell me that he has a mali board now, but with only 3 days left, I don't think i will be able to do testing as he mentioned getting it too boot might be difficult. But i hope to get an rpm packaged and handed to Chris Tyler and Raymond Chan in hopes of helping someone in future completion!

Wednesday 21 November 2012

Samsung's 8 core arm!

I just ran across an article on talking about Samsungs new 8 core processor.

Its new board im guessing since they usually release origien style boards, is going to sport a A15 quad core processor for its main handling of processes, with a 2nd cortex A-7 for kicking in when it needs too.
This looks like an exciting release, and gives us a little peek to maybe what the next Galaxy or Nexus may sport!! These are exciting times, we went from revolutionizing computers to their limits, and that can never really be reached because of the evolution of technology goes as far as the mind, but what's interesting to see here is that we can see the evolution of mobile devices is accelerating quickly, I wouldn't be surprised if it surpassed desktop computing in power very soon!

Progress! .2 in the making.

A great progress has been made! But still, no release of a package or compiled code just yet. I have just gotten farther down the compile. I have figured out my previous error, and it turned out i didn't have the complete list of required libraries, "ump/ump.h: " .

So i compiled those! but i used my local system, and just downloaded the dev libraries for ARMv5 support as the system im currently working on the trimslice is a v5.

Here i found the the UMP required files!

http://www.malideveloper.com/developer-resources/drivers/open-source-mali-gpus-ump-user-space-drivers-source-code.php


But in trying to compile them, i had to install a bunch of more libraries/programs required for building!

So this is where i decided to build it locally as i mentioned above!
I found that fedora has a CROSS compile repo! This was amazing to find. Here whats I did to set that up!


-cd /etc/yum/repos.d/

-wget http://ftp.linux.org.uk/pub/linux/arm/fedora/cross/cross.repo
-yum install armv5tel-redhat-linux-gnueabi-gcc

The resulting installed bin files after the tool chain install were: 


One thing i found interesting was that when i tried installing the above software on the trimslice, it wouldnt install all the packages listed above but only about half of them, so i found compiling on the local system much more easier, but it may not be the right way as it was easy. Too easy and linux dont mix -_-

So now that the compile of the above requirements went through, I was able to get the UMP include files that i Needed, the UMP .so file that i needed for reference in the mali build process.

I uploaded those files below!
https://docs.google.com/open?id=0B9v3xSUsibd8YkNNNTk3b1NYRkk

https://docs.google.com/open?id=0B9v3xSUsibd8dkZScktGdUo2NWM

So now I am currently still trying to build mali (remotely) as now more requirements have come up to display!

There is only one month left to produce some kind of release, and I am feeling that I may not be able to test the driver, but I would like to aim for a driver that doesn't have to be tested, but just compiled, and given to someone that would dive deeper if they have the time.

 Source Tarball's I'm using for reference!

MALI UMP 
EXA/DRI2 and X11 Display Drivers

I am using a trim slice, and the instructions to reach my state were:

  1. Extracted the x11 driver and UMP tarballs onto the trim slice.
  2. Exec the build.sh file in the X11 driver folder to expand the make directory.
  3. executed : yum install @development-tools
  4. Could not compile UMP on TrimSlice So did it on local machine.
  5. ON LOCAL MACHINE
  6.  -cd /etc/yum/repos.d/
    -wget http://ftp.linux.org.uk/pub/linux/arm/fedora/cross/cross.repo
    -yum install armv5tel-redhat-linux-gnueabi-gcc
  7. Compiled UMP locally and SCP'd to trimslice to /usr/include
  8. Got past first error, missing UMP headers, But now getting the error atop!
 

Wednesday 14 November 2012

More Mali Issues

After running into the problems, 2 posts ago, i dove deeper into research and joined the #mali channel to find some insight on which paths i should take to tackle the problem of getting a successful compiling from source. But that came to an end, because apparently the lima driver is not ready for end users, which is what my project is targeting. I was referenced to the x11 driver page on malideveloper.

http://www.malideveloper.com/files/DX910-SW-99003-r3p1-01rel1.tgz

The compile issue has ran into this problem:


I definitely think this issue has something to do with the build requirements below:


I've tried researching these topics, but haven't really found much end to the problem. I Made sure all the dev libraries were installed, but from there on out, i'm pretty clueless how to go on from here. I will have to try to speak to some mali devs to find out some more light on the subject.

Wednesday 7 November 2012

SBR600 | .1 Presentation

So Today's the presentation day of my .1 milestone. I am very excited to tell the class on my progress. I am slightly disappointed that I slacked a bit on talking to Chris Tyler on getting my hands on hardware, but alas its been done now and my remote access is on the way! I hope to get my package compiled and sent into fedora for review by the .2 milestone! I have also left my presentation on the bottom of this post for anyone that's interested!

I am going to be working on a TrimSlice until the school gets their hands on a board that has a Mali GPU. The trim slice is going to be exciting to work with. I have been thinking of getting one myself as a media server for the house. It has top of line hardware for it's class, sporting a Tegra 2 chip alike the Asus transformers!

.1 Presentation

Wednesday 31 October 2012

The Waterfox Project!

Just wanted to leave a quick post here about a new browser i've been using. Ever since firefox was getting updated, i seemed to get a lot of crashes. So I switched to Google Chrome on my desktop, and found it to great successs! I had a better browsing experience, absolutely no more crashes and a much more efficient way to browse the internet. Until ..... Waterfox!!


I have found this browser over 1000% better then chrome and firefox. It loads up SUPER fast. Loads pages MUCH faster. It proves to really get your socks off. It supports all current extensions for firefox unlike other firefox variants! ONE THING THOUGH. It's a windows software!

Take care!

SBR600 Update!

So i have found the gitorious page where the official open source mali drivers have been posted.
One thing tho, they are geared to work in the Android environment.

https://gitorious.org/lima

Upon downloading the master.tar.gz file, i expanded it and got the source code. I attempted to compile it as is, and ran into some errors because i do not have the Android SDK.

make all -C limare
make[1]: Entering directory `/home/ahmad/Downloads/lima-lima/limare'
make all -C lib
make[2]: Entering directory `/home/ahmad/Downloads/lima-lima/limare/lib'
~/android/toolchain//bin/arm-linux-androideabi-gcc -O0 -g -Wall -I../../include   -c -o bmp.o bmp.c
/bin/sh: /home/ahmad/android/toolchain//bin/arm-linux-androideabi-gcc: No such file or directory
make[2]: *** [bmp.o] Error 127
make[2]: Leaving directory `/home/ahmad/Downloads/lima-lima/limare/lib'
make[1]: *** [lib] Error 2
make[1]: Leaving directory `/home/ahmad/Downloads/lima-lima/limare'
make: *** [limare] Error 2
I will have to look more into getting this to work on the Fedora Environment. I hope to get more progress within the week! Because the .1 version presentation is going to be on November 7th! Hope to blog soon!

Friday 26 October 2012

New board from Samsung!

Sem-related to my SBR600 Project regarding the Mali drivers, Samsung just released the Arndale Package-A Boards! I am excited to the Mali GPU being used in this next board release! Hopefully one day i can see my package being used on such hardware!

FSOSS 2012

Well what a day it was. Unfortunately I couldn't stay for the last 3 talks, but I made the best of the first 3.

I first attended the LTSP talk. This talk was very informative to how LTSP worked, and how its helping countries which aren't too wealthy get technology up and going. I believe we can see a lot more of these kind of settings in the future, such as classrooms with very efficient systems, and much more centralized control for administration and monitoring of activity. Elementary schools can adopt this technology to make sure that students at a young age can have a safe browsing experience and computer usages.

The second talk I attended was the Automation of Video Editing. I thought it was brilliant how Raul Suarez had designed scripts to automate repetitive tasks in video editing. I can see this used in broadcast environments, and really opened my eyes up to how we can automate even more.

Finally the Open Source Career's presentation by Robert Russel was quite informative. I learned quite a bit about how to approach finding a job now, and the correct attitude to have towards it. It has really motivated me to be more enthusiastic out on future endeavours.

I wonder what next year holds!

Tuesday 23 October 2012

Python: A neat little addition!

In diving into the python lab, I have kind of fallen in love. Python is a very easy language to learn, in minutes i was understanding import functions and loops. I hear that it is very important to have python under your belt which makes me glad that I liked it.

script.py  Ran this with 644 u+x permissions.

As for a project update, I have begun attempting to compile the mali drivers which i have found online! I have posted research links on my project page: Here

Hope to update more !

Wednesday 3 October 2012

Repo Man!

I finally got around to getting my repo fully completed. Professor Chris Tyler in our last class stated that using the --secret-keys option with the gpg export command would actually be exporting your private key and use that to sign your RPM's. Which is what i was doing unfortunately, and caused me the inability to install my RPM's from my repo because of the error: Package could not be installed, this RPM is not signed.

This drove me insane, so thanks a lot Chris Tyler for your assistance!

My repo is up and running at: http://matrix.senecac.on.ca/~ataychouri/rpms/
my repo file looks like this: http://pastebin.com/raw.php?i=HeiipR2W
my RPM release package: http://matrix.senecac.on.ca/~ataychouri/rpms/ahmad-0.0.1-1.fc17.x86_64.rpm

And to make sure i only used my own repo when testing the progress i always issused these switches with my yum command: yum install --disablerepo=\* --enablerepo=ahmad gzip

I hope to be throwing in weekly updates from now on regarding my Project for SBR. I hope to be doing the Lima drivers for the Mali cards in the snowball and oriegen boards. Hope to see you guys soon!

Monday 24 September 2012

Permissions, why u so important!

Ah!!!! I spent all weekend struggling with the koji setup, and today my classmate Daniel pointed out a big derp in my environment! The folder where the certificate from FAS2 that should be saved in ~/.fedora.cert/ were incorrect, and even changing them to the defaults didn't work. a Rename to the folder, and letting it recreate itself worked like a charm.

The mock lab went by flawlessly. I ran into no errors. I still went over the logs and really liked how it records everything that happens in the mock build process. I feel that this allows maximum troubleshooting for software packagers, and aim's to provide efficiency in problem solving. As well makes interacting with the community easier. I used my previous posts SRPMS, so no upload was necessary. Mock took a total time of 20 minutes!

I sucessfully started building on koji, and have a few packages in queue. The query for my users history of builds is currently taking time to load, and i hope to post a link to my history ASAP! I will come with a new blog post as soon as i can, and off to the repo lab!!!

UPDATE: http://koji.fedoraproject.org/koji/tasks?owner=damha&state=active&view=tree&method=all&order=-id

Wednesday 19 September 2012

Arnd Bergmann on the Status of Arm!

I just found this talk about the current state of Linux on the Arm architecture. Definitely an interesting watch for our upcoming project selection!

Tuesday 18 September 2012

Fixes Fixes Fixes!

I managed to fix all of my errors on both packages and used another package because inetutils was giving me too much of a hardtime for my timeframe. So i picked up grep!

 GREP

My grep spec file ended up looking like this! 
The biggest trouble i had with this particular package was the language files and translations for the man pages. I finally got to talk to Professor Chris Tyler over IRC and he lead me to the Packaging:Guidelines#Handling_Locale_Files Post where i read about a macro called find_lang.

In my spec file i used:
%find_lang grep%files -f grep.lang
Which in turn solved 43 warnings! This grabbed all my lang files and properly put then in the right places.

Heres my uploaded Grep spec file and created RPM  grep.spec grep-2.9-1.fc17.x86_64.rpm

GZIP

Here are my updated spec and rpm files to download as well! I am very glad i got these working, and i am now VERY excited to do the koji and mock labs! 

Monday 17 September 2012

Keyboard Map Fix for Pipe key!

I was having trouble using my pipe key on my machine because everytime i would press it, a greater than sign would come up. Upon HOURS of searching, i finally found a fix.

  1. Go into your Users home directory, and create a new file called: .Xmodmap 
  2. Add the following lines to the file
keycode 94 = backslash bar
keycode 77 = Insert
keycode 118 = Num_Lock
clear mod2
add mod2 = Num_Lock
Save the file and log out and log back in. Your pipe key should now be working. I hope everyone finds this usefull!
 
 
                    

            Sunday 16 September 2012

            Another week, Another Build

            SO after the lab got cleaned up, I attempted to build my packages, gzip and inetutils. I began by creating my rpm build tree, and made sure sure all dev tools were installed.

            Gzip

            My first attempt at building gzip came out with this response:
            gzip initial build errors

            Upon a quick google query on this error, i realized i left the %files section of the .spec file empty. i attempted to just dump the file listing above, into the spec file and added one extra line under the %files line:
            %defattr(-,root,root,-)
            After adding the files under the %files section, I remembered the macro'a, and made sure to use them where applicable.
            The final gzip spec file looked like this.  gzip.spec
            rpmlint outputs:  gzip-1.5-1.fc17.x86_64.rpm gzip-1.5-1.fc17.src.rpm gzip.spec
            File uploads: gzip-1.5-1.fc17.x86_64.rpm gzip-1.5-1.fc17.src.rpm gzip.spec

            inetutils

            This time I had more of a sense of what i was doing and ran into no build errors this time. I made sure the %files and %info section were properly filled out this time and used more macros then the previous gzip build i did. 

            I did receive a bunch of errror and warnings here, but I will be addressing them later this evening or tomorrow morning. 

            My final spec file for inetutils at the moment looks like this : inetutils.spec


            I hope to practice building packages and making spec files more this coming week, I feel it is terribly important to master this!


            Saturday 15 September 2012

            CPR for your Computer!

            I just found this Linux OS aimed for troubleshooting your Windows Machines! Definitely something i recommend adding to your ISO collections!

            Trinity Rescue Kit | CPR for your computer

            Heres the features listed on their site!
            -easily reset windows passwords with the improved winpass tool
            -simple and easy menu interface
            -5 different virusscan products integrated in a single uniform commandline with online update capability
            -full ntfs write support thanks to ntfs-3g
            -winclean, a utility that cleans up all sorts of unnecessary temporary files on your computer.
            -clone computers over the network via multicast.
            -wide range of hardware support (kernel 2.6.35 )
            -contributed backup utility called "pi", to automate local machine backups
            -easy script to find and mount all local filesystems
            -self update capability to include and update all virusscanners + local changes you made to TRK.
            -full proxyserver support.
            -run a samba fileserver (windows like filesharing)
            -run a ssh server
            -recovery and undeletion of files with utilities and procedures
            -recovery of lost partitions
            -evacuation of dying disks
            -full read/write and rpm support
            -UTF-8 international character support (select keyboard language from the scrollable textmenu at startup)
            -2 rootkit detection uitilities
            -most software updated to recent versions
            -literally thousands of changes and bugfixes since version 3.3
            -elaborated documentation, including manpages for all commands (also TRK 's own)

            Wednesday 12 September 2012

            Raspberry Pi Super-Computer Guide!

            NOW this is something I would love to do myself. I have been reading this tutorial and it makes me excited!
            The guide provided helps you make a 2 node setup, or a 64 node setup!

            http://www.southampton.ac.uk/~sjc/raspberrypi/
            http://www.southampton.ac.uk/~sjc/raspberrypi/Raspberry_Pi_supercomputer_11Sept2012.pdf

            Building from source

            I began last night picking 2 GNU packages to build, and ran into tons of problems because of missing packages. Here are some of the errors I ran into.

            Error 1 : [From package gnufdisk]
            configure: error: GNU Fdisk headers are missing, install headers and try again.
            configure: error: ./configure failed for backend
            Error 2: [From package icecat]
             configure: error: Library requirements (gtk+-2.0 >= 2.10.0 gtk+-unix-print-2.0 glib-2.0 gobject-2.0 gdk-x11-2.0) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them.

            Error 3: [from package complexity]
            ./configure: line 11685: autoopts-config: command not found
            configure: error: libopts was not found
            I finally got 2 packages to properly configure, and make and run from binary. I built gzip, and inetutils. Both hyperlinks are my compiled applications, and for inetutils i only uploaded, ifconfig.

            The thing that i noted was that the configure time was the longest. But its what makes me LIKE the build process more, because of how it checks everything that is required to run before actually attempting to compile.

            Sample program outputs: gzip, inetutils

            Tuesday 11 September 2012

            First week into play!

            So I am a week into the course, and got Fedora 17 installed, and figured I would post some Applications that I have been using to make my linux experience smooth and fun.

            • Terminator - A great terminal and efficient workplace, that allows you to slice up your teriminal horizontally or vertically to more screens!
            • Konversation - A feature rich IRC client. Don't forget to automate the msg nickserv to identify yourself!
            • GNOME-Tweak-Tool - This tool adds an advanced options in your application menu. It gives you Desktop, Shell, Window and more customizations for your fedora system.
            • I would be adding blogilo to this list, but found it far too buggy to reccomend, and THIS is a rewritten blogpost because blogilo ate up the previous one i wrote -_-;;;;;
             Other applications I included in my setup are, Skype, SoulSeek, GIMP, and youtube-dl. Soulseek is a p2p sharing application mostly for music, gimp for editing images quickly for posts, Skype for communication, and youtube-dl because I prefer saving videos in HD format to watch later on my television.

            Upon using my machine for a couple days, I found out from a source on fedora IRC that Google has newly redesigned their repo setup apparently and everytime i attempted to call yum, i would get the following error:

            #Loaded plugins: langpacks, presto, refresh-packagekit, tidy-cache
            #http://dl.google.com/linux/rpm/stable/x86_64/repodata/repomd.xml: 
            [Errno 14] HTTP  Error 404 - Not Found : http://dl.google.com/linux/ 
            rpm/stable/x86_64/repodata/repomd.xml
            #Trying other mirror.
            #Error: failure: repodata/repomd.xml from Google: [Errno 256] No more 
             mirrors to try.
            I found a temporary work around for this problem, but would like to get the machine working back without the additional command. To get by this error if one runs into it, just disable the repo thats currently giving you trouble. For instance Google is giving me an error right now, so to get by i run the following with my yum command:
            yum [option] --disablerepo=Google[or other problematic repo] [package name]
             My final note is how to Install Flash on your Fedora 17 Machine. People have been asking me, and I constantly have to remind myself, so I will add it below for any heads curious or need a quick reminder!

              rpm -ivh http://linuxdownload.adobe.com/adobe-release/adobe-release-x86_64-1.0-1.noarch.rpm
               rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-adobe-linux
             yum check-update
                yum install flash-plugin nspluginwrapper als-plugins-pulseaudio libcurl
                yum install flash-plugin nspluginwrapper alsa-plugins-pulseaudio libcurl

            Sunday 9 September 2012

            Greetings And Salutations

            Greetings and Salutations!
            My name is Ahmad Taychouri [020939096] and am currently in my Final Semester Seneca College for Computer Systems Technology. I am excited to be taking the SBR600 course with Chris Tyler and Raymond Chan. I hope to see a future in Linux development and be apart of a future big release!

            I have looked into Raspberry Pi and am highly interested in acquiring one for a home media centre. I am thinking of using XBMC to run the media software and sharing needs. It's phenomenal how small and powerful technology has come, and its amazing that I have the opportunity to help make it better. I can see this piece of software evolving more and being a base model for lots of gadgets to come.

            In this Blog I hope to document all my progress within my project progression and course completion. I hope to continue with it afterwards as a digital diary of my Linux pilgrimage.

            My page: Here!
            My Email:taychouri.ahmad@gmail.com
            IRC: damha @ freenode

            My first IRC msg!