Linux support for Samsung S3C2510A Processor
Dear All, Does Linux kernel supports the Samsung S3C2510A processor? Why am I asking this question is, when I looked into the arch/arm/ directory I did not find any thing which is related to Samsung S3C2510A processor. There are other directories like mach-s3c24xx and mach-s3c64xx directories, but not mach-s3c25xx. I checked this in 2.6.37 kernel version which is a stable one. Please sugget me. Thanks and Regards, Madhavi M. ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Re: Thread scheduling in 2.6 kernels
What is the preemptive level you have set for your kernel, As mentioned in my first mail, I have set the following options: - Preemption Model option as - Preemptible Kernel (Low-Latency Desktop). This, I think, means that even the kernel can be preempted (involuntarily) - Preempt The Big Kernel Lock Check that one, and find out from your third party who provided scheduler, the algorithm, and how it modifies the nice values. The scheduler being used here is Con Kolivas' Staircase Deadline scheduler. It uses a priority matrix, where each process is placed at it's static prio position in the matrix. Here's a short desc of the SD desgin (taken from patch file) +Design description +== + +SD works off the principle of providing each task a quota of runtime that it is +allowed to run at a number of priority levels determined by its static priority +(ie. its nice level). If the task uses up its quota it has its priority +decremented to the next level determined by a priority matrix. Once every +runtime quota has been consumed of every priority level, a task is queued on the +expired array. When no other tasks exist with quota, the expired array is +activated and fresh quotas are handed out. This is all done in O(1). If the thread scheduling policy was set to SCHED_OTHER than the third party scheduler is been used. If you set thread schd policy to I'm not sure what you mean here? SCHED_OTHER is the default sched policy used for normal process' (unless explicitly changed). I think irrespective of what sched policy is being set, there's only 1 scheduler available for use, i.e in my case, the SD scheduler. CMIIW. SCHED_FIFO for both decoder and rendering thread and set rendering thread to higher priority it will do for you. The other decoder thread can be in busy loop. Why do not create a notifier for decoder thread, so that it will wake up only when data is available. Well, i tried something similar and that seemed to work fairly well! I set the scheduling policy of the decoder thread to SCHED_BATCH. Now I'm observing that the main render/GUI thread completes its animation and then the decoder gets a chance to run (batch mode processing). We're not busy-looping. Rather we're making the decoder thread wait on a job-queue. It'll sleep as long as the job-queue is empty. Also, you need to tune your thread nr time and policies based on bit rate of data you are rendering. If you can run in interims of bit rate time both the threads, rendering and decoding, that creates a smooth picture. Thats the catch. Don't quite follow you here...what is nr time ? I don't quite understand what is the significance of bit rate for static images? Also note that these images (JPEG) are quite small in dimensions (~ 200 x 150). The memory bandwidth available from the main memory (DRAM) to the video-rendering subsystem is quite high (~2.6Gbps), so that won't be a bottleneck. For me the trick to solving this issue was to NOT do decoding while the animation was going on. Even a single decode op use to make the animation suffer as it had fairly strict timing requirement (not hard real-time, but close). So forcing the decoder thread to sort-of pause on decoding while animation is in progress, helped. Are you using multi core to do the job or single core. Single core. The processor has multi-threading support but that support is disabled in the kernel config. Since this was something set by the vendor, I'm not changing it. Thanks, -mandeep --Sri. On Thu, Feb 24, 2011 at 8:47 AM, Mandeep Sandhu mandeepsandhu@gmail.com wrote: Quite long questions you have below...but I'll try to summarize and answer I did try to be as concise as possible! :) Btw, your problem description is greatI believe it helps (at least /me) to get a sense what you gonna do, what you've done and how it really works. A nice example for every one of us Thanks We're working in an MIPS based embedded system, running a fairly old OK, I take a bold note here. I only have in touch with x86 32 bit, so what I am going to say might be completely wrong it is brought to MIPS realm. No probs...even I'm no expert in MIPS (rather my first time with MIPS as well!:)) The only thing that I found which _might_ be pertinent to our discussion was that the multi-threading option for MIPS was disabled (MIPS MT options (Disable multithreading support.) ). Since this is a vendor provided config option I have not changed it. So no processor MT support for apps. Linux 2.6.22 kernel (with vendor provided BSP). We write UI I remember vaguely that CFS (Complete Fair Scheduler) was improved somewhere after 2.6.22 version...I couldn't recall exactly what changes they are... The vendor provided linux kernel has the Staircase Deadline scheduler patched into it...so no CFS here... In fact, the latest 200 lines famous patch also affect how scheduling works... Yeah I read about it (thoug
Re: make with argument 0 is failing some where
On Sat, Sep 18, 2010 at 6:06 PM, Tapas Mishra mightydre...@gmail.com wrote: On Sun, Sep 12, 2010 at 10:56 AM, Tapas Mishra mightydre...@gmail.com wrote: For the sake of simplicity I am rewriting all the steps that I did Step 1) copied the config from /boot to $HOME/linux-2.6 Step 2) yes ' ' | make O=$HOME/btc oldconfig Step 3) make O=$HOME/btc got errors make O=$HOME/btc Ok finally I have been able to fix this. To do so what I was trying I executed make mrproper at two places one is $HOME/linux-2.6 and another was $HOME/btc now I was in Step 1) cd $HOME/linux-2.6 Step 2) make mrproper Step 3) cd $HOME/btc Step 4) make $O=$HOME/btc mrproper Step 5) cd $HOME/linux-2.6 Step 6) copied the config from /boot to $HOME/linux-2.6 Step 7) yes ' ' | make O=$HOME/btc oldconfig upto here is all Ok. Next step is Step 8) make mrproper Step 9) cd $HOME/btc Step 10) make O=$HOME/btc and then make with all modules install and rest of the stuff had worked. -- Though It is an old thread but I wanted to update today I needed it because of a similar error. In above step 8 and step 6 are wrong.When you do a make mrproper to which ever directory you basically are deleting the config generated or you saved. That means if you did following 1) Download the kernel and untar 2) cp /boot/config-whatever /to/directory/which/will/be/argument/of/O then 3) make O=$HOME/btc mrproper then you deleted the config in step 2. Also for make O=$HOME/btc menuconfig to work .config should be in $HOME/btc and not in $HOME/linux-2.6 as I mentioned above in step6.That was a mistake. ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Re: Errors in booting a new image built
Hi Sada On Sun, Feb 27, 2011 at 10:03 PM, SADA SIVA REDDY S sadasiva.re...@gmail.com wrote: Hi All, I am trying to setup linux development environment. You could also try Robert P J Day's excellent guide to this (which uses Ubuntu as an example): http://crashcourse.ca/introduction-linux-kernel-programming/lesson-1-building-and-running-new-linux-kernel I use this formula I picked up from his course on my Ubuntu boxes and it's always worked for me: $ make then $ sudo make modules_install $ sudo make install $ sudo update-initramfs -c -k 2.6.35-crash+ $ sudo update-grub Replace 2.6.35-crash+ with the name of your kernel. BTW if you want to sign up for Robert's course I can recommend it as I found it very helpful. Although many of the lessons (like this kernel installing one) are free (thanks Rob). I can second Javier's recommendation of Linux kernel in a nutshell which is really a little manual for making and customizing a kernel (not a guide to the kernel itself as the title suggests). It'll help you cut out a lot of the crud you don't need in your config and possibly also help you discover some stuff you didn't know about that you _do_ want. Cheers Julie ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Re: Problem with PCI Driver on Ubuntu 10.10 i386
On Wed, Feb 23, 2011 at 5:19 PM, Adhyas Avasthi adh...@gmail.com wrote: these values are specific to PCI device which is already on your system? Finally please include MODULE_LICENSE(GPL); to remove the taint errors. Yes, as I said, I created a dummy PCI device on qemu Virtual Machine framework. These are the vendor and device IDs I have given to the device. Take a look at the lspci detailed output which will show you the PCI configuration registers on the device. Let me add the MODULE_LICENSE and see if that helps, though I doubt if it would help resolve my problem. Do you have any other ideas as well? Thanks, Adhyas Hi, Is your problem got resolved? -- Regards, Murali N ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Re: To schedule a process?
Hi Kashish, This is not an kernel question,so next time don't put these type of question on kernel mailing list. Thanks Sanjeev On Sun, Feb 27, 2011 at 8:46 PM, kashish bhatia kooles...@gmail.com wrote: Suppose if I wrote a simpl, c program but I want to execute this program everyday at a specific time ( say at 12 p.m) . Is there any command by which I can schedule the execution of any process(a.out in this case)? -- Regards, Kashish ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
interrupting the compile process and restart from where I stopped
Hi, is there a way I can interrupt the ongoing kernel compile process and power off my machine and when I can get back to it then restart from where I had stopped the kernel compilation which I had interrupted. ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Re: Regarding threaded irq
Hi Anish On Mon, Feb 28, 2011 at 5:53 PM, anish singh anish198519851...@gmail.comwrote: I have a touch driver which is not yet using threded_irq.So i am planning to change it to use threaded_irq. In the current handler they are first disabling the irq line and then calling the single threaded workqueue to do the rest of the task and when the task is completed i.e. in the end of workqueue function they are enabling the irq line. So my question is if i change it to use threaded_irq.In the handler should i also enable or disable the irq as is done in the case of present handler OR i don't need to do this step? ---i think IRQF_ONESHOT will do this for me right? There could be a very good reason, why IRQ were disabled at entry and re-enabled at exit in workqueue. For example if, workqueue is acquiring the spinlock and which is expected to be acquired by ISR also. Probably you should reason why irq were disabled/enabled in work queue and redesign your threded_irq accordingly I want this threaded handler to be executing as soon as possible as i want the latency between the touch by the user and response to be minimum.Is there any way to achieve this? FYI... handler contains some I2C transfer + reporting co-ordinates to Input core. Does the above usecase justify changing to threaded_irq?? ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies Regards Spinlock ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Re: Regarding threaded irq
On Tue, Mar 1, 2011 at 2:11 PM, spinlock cp spinlock...@gmail.com wrote: Hi Anish On Mon, Feb 28, 2011 at 5:53 PM, anish singh anish198519851...@gmail.com wrote: I have a touch driver which is not yet using threded_irq.So i am planning to change it to use threaded_irq. In the current handler they are first disabling the irq line and then calling the single threaded workqueue to do the rest of the task and when the task is completed i.e. in the end of workqueue function they are enabling the irq line. So my question is if i change it to use threaded_irq.In the handler should i also enable or disable the irq as is done in the case of present handler OR i don't need to do this step? ---i think IRQF_ONESHOT will do this for me right? There could be a very good reason, why IRQ were disabled at entry and re-enabled at exit in workqueue. For example if, workqueue is acquiring the spinlock and which is expected to be acquired by ISR also. Probably you should reason why irq were disabled/enabled in work queue and redesign your threded_irq accordingly IRQ line is disabled as we can't don't support nested interrupt for our touch interrupt handler.I think threaded_irq with flag IRQF_ONESHOT will do this for me? I want this threaded handler to be executing as soon as possible as i want the latency between the touch by the user and response to be minimum.Is there any way to achieve this? FYI... handler contains some I2C transfer + reporting co-ordinates to Input core. Does the above usecase justify changing to threaded_irq?? You didn't answer this question. ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies Regards Spinlock ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Re: To schedule a process?
Hi Sanjeev, On Mon, Feb 28, 2011 at 9:21 PM, sanjeev sharma sanjeevsharmae...@gmail.com wrote: Hi Kashish, This is not an kernel question,so next time don't put these type of question on kernel mailing list. Well if you don't whether its kernel related or not, it's kind of hard to decide if it belongs on the kernel newbies list. Sure you know - since you know the answer. The OP obviously didn't know. So lighten up - this is after all a newbies list. One of my favorite sayings: There are no such things as stupid questions - only stupid answers. Dave Hylands ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Re: interrupting the compile process and restart from where I stopped
On Tue, Mar 01, 2011 at 10:04:23AM +0530, Tapas Mishra wrote: Hi, is there a way I can interrupt the ongoing kernel compile process and power off my machine and when I can get back to it then restart from where I had stopped the kernel compilation which I had interrupted. Hit ctrl-c to stop the build. Then go back to the directory and type 'make' like before, it will pick up where it left off. Hope this helps, greg k-h ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Re: To schedule a process?
On Tue, Mar 1, 2011 at 12:35, Dave Hylands dhyla...@gmail.com wrote: Hi Sanjeev, On Mon, Feb 28, 2011 at 9:21 PM, sanjeev sharma sanjeevsharmae...@gmail.com wrote: Hi Kashish, This is not an kernel question,so next time don't put these type of question on kernel mailing list. Well if you don't whether its kernel related or not, it's kind of hard to decide if it belongs on the kernel newbies list. in this case, the original poster should made it clear, in which way he/she wants this thing done. So, I disagree it's about know or doesn't know. If he/she asks, he/she surely know something after all, he/she is 100% aware what kernelnewbies is when he/she subscribed to this list, right? After all, what Sanjeev said is still polite. He doesn't bark or yell...just informing. Which one is polite anyway, ignoring (then the poster doesn't realize his/her mistake) or tell him/her that he/she is wrong in polite manner? I pick the second -- regards, Mulyadi Santosa Freelance Linux trainer and consultant blog: the-hydra.blogspot.com training: mulyaditraining.blogspot.com ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies