From: Michal Simek <monstr@monstr.eu>
To: Thomas Gleixner <tglx@linutronix.de>
Cc: LKML <linux-kernel@vger.kernel.org>,
john.williams@petalogix.com, John Stultz <johnstul@us.ibm.com>
Subject: Re: [PATCH 08/57] microblaze_v7: Interrupt handling, timer support, selfmod code
Date: Fri, 20 Mar 2009 12:59:51 +0100 [thread overview]
Message-ID: <49C38537.4050401@monstr.eu> (raw)
In-Reply-To: <alpine.LFD.2.00.0903201233460.29264@localhost.localdomain>
Thomas Gleixner wrote:
> On Fri, 20 Mar 2009, Michal Simek wrote:
>>> 2) a clock event device which has CLOCK_EVT_FEAT_PERIODIC flag set.
>> You meant ONESHOT feature, right?
>
> Sure :)
>
>> # cat /proc/timer_list
>> Timer List Version: v0.4
>> HRTIMER_MAX_CLOCK_BASES: 2
>> now at 17205889582 nsecs
>>
>> cpu: 0
>> clock 0:
>> .base: 9027a4d0
>> .index: 0
>> .resolution: 1 nsecs
>> .get_time: ktime_get_real
>> .offset: 0 nsecs
>> active timers:
>> clock 1:
>> .base: 9027a4fc
>> .index: 1
>> .resolution: 1 nsecs
>> .get_time: ktime_get
>> .offset: 0 nsecs
>> active timers:
>> #0: per_cpu__tick_cpu_sched, tick_sched_timer, S:01, <800005a6>, swapper/1
>> # expires at 17210000000-17210000000 nsecs [in 4110418 to 4110418 nsecs]
>> #1: <9f2d3a48>, hrtimer_wakeup, S:01, <9f2d3a48>, inetd/54
>> # expires at 17430563969-17431563926 nsecs [in 224674387 to 225674344 nsecs]
>> #2: <9e127a48>, hrtimer_wakeup, S:01, <9e127a48>, thttpd/50
>> # expires at 129748538823-129848538823 nsecs [in 112542649241 to 112642649241
>> nsecs]
>> .expires_next : 17210000000 nsecs
>> .hres_active : 1
>
> Looks good. Now you can enable CONFIG_NOHZ as well. :) That needs just
> the following extras in your idle loop:
>
> --> tick_nohz_stop_sched_tick(1);
> while (!need_resched())
> idle();
> --> tick_nohz_restart_sched_tick();
>
Yes, it is already in cpu_idle function. ->arch/microblaze/kernel/process.c file
Seems that work too. Look below. I am going to take a look at __do_IRQ issue.
Thanks,
Michal
> Thanks,
>
> tglx
early_printk_console is enabled at 0x84000000
Ramdisk addr 0x90c80040, FDT 0x90780000
Found romfs @ 0x90c80040 (0x001bf000)
#### klimit 902f7000 ####
Moving 0x001bf000 bytes from 0x90c80040 to 0x902f62ac
New klimit: 0x904b6000
Found FDT at 0x90780000
Linux version 2.6.29-rc8-00473-g1219507-dirty (monstr@monstr.eu) (gcc version
3.4.1 ( PetaLinux 0.20 Build -rc1 050607 )) #51 Fri Mar 20 12:56:11 CET 2009
setup_cpuinfo: initialising
setup_cpuinfo: Using full CPU PVR support
setup_memory: Main mem: 0x90000000-0xa0000000, size 0x10000000
setup_memory: kernel addr=0x90000000-0x904b6000 size=0x004b6000
setup_memory: max_mapnr: 0x10000
setup_memory: min_low_pfn: 0x90000
setup_memory: max_low_pfn: 0xa0000
On node 0 totalpages: 65536
free_area_init_node: node 0, pgdat 902852f4, node_mem_map 904b6000
Normal zone: 512 pages used for memmap
Normal zone: 0 pages reserved
Normal zone: 65024 pages, LIFO batch:15
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 65024
Kernel command line: console=ttyUL0,115200 highres=on
xlnx,xps-intc-1.00.a #0 at 0x81800000, num_irq=9, edge=0x100
PID hash table entries: 1024 (order: 10, 4096 bytes)
xlnx,xps-timer-1.00.a #0 at 0x83c00000, irq=3
Heartbeat GPIO at 0x81400000
microblaze_timer_set_mode: shutdown
microblaze_timer_set_mode: periodic
Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
Memory: 254848k/262144k available
ODEBUG: selftest passed
Calibrating delay loop... 61.44 BogoMIPS (lpj=307200)
Mount-cache hash table entries: 512
net_namespace: 544 bytes
NET: Registered protocol family 16
bio: create slab <bio-0> at 0
microblaze_timer_set_mode: oneshot
Switched to high resolution mode on CPU 0
NET: Registered protocol family 2
IP route cache hash table entries: 2048 (order: 1, 8192 bytes)
TCP established hash table entries: 8192 (order: 4, 65536 bytes)
TCP bind hash table entries: 8192 (order: 3, 32768 bytes)
TCP: Hash tables configured (established 8192 bind 8192)
TCP reno registered
NET: Registered protocol family 1
msgmni has been set to 498
io scheduler noop registered
io scheduler anticipatory registered
io scheduler deadline registered
io scheduler cfq registered (default)
84000000.serial: ttyUL0 at MMIO 0x84000003 (irq = 8) is a uartlite
console [ttyUL0] enabled
brd: module loaded
nbd: registered device at major 43
uclinux[mtd]: RAM probe address=0x902f62ac size=0x1bf000
Creating 1 MTD partitions on "RAM":
0x000000000000-0x0000001bf000 : "ROMfs"
uclinux[mtd]: set ROMfs to be root filesystem index=0
TCP cubic registered
NET: Registered protocol family 17
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
VFS: Mounted root (romfs filesystem) readonly on device 31:0.
Freeing unused kernel memory: 96k freed
Mounting proc:
Mounting var:
Populating /var:
Running local start scripts.
Mounting /etc/config:
Populating /etc/config:
flatfsd: Nonexistent or bad flatfs (-48), creating new one...
flatfsd: Failed to write flatfs (-48): No such device
flatfsd: Created 6 configuration files (310 bytes)
Mounting sysfs:
Setting hostname:
Setting up interface lo:
Setting up interface eth0:
SIOCSIFADDR: No such device
Starting thttpd:
uclinux login: root
Password:
# ls
bin dev etc home lib mnt proc sys tmp usr var
# uptime
00:00:19 up 0 min, load average: 0.21, 0.04, 0.01
# uptime
00:00:20 up 0 min, load average: 0.19, 0.04, 0.01
# uptime
00:00:21 up 0 min, load average: 0.19, 0.04, 0.01
# gunzip < /proc/config.gz
#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.29-rc8
# Fri Mar 20 12:52:15 2009
#
CONFIG_MICROBLAZE=y
# CONFIG_SWAP is not set
CONFIG_RWSEM_GENERIC_SPINLOCK=y
# CONFIG_ARCH_HAS_ILOG2_U32 is not set
# CONFIG_ARCH_HAS_ILOG2_U64 is not set
CONFIG_GENERIC_FIND_NEXT_BIT=y
CONFIG_GENERIC_HWEIGHT=y
CONFIG_GENERIC_HARDIRQS=y
CONFIG_GENERIC_IRQ_PROBE=y
CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_GENERIC_TIME=y
# CONFIG_GENERIC_TIME_VSYSCALL is not set
CONFIG_GENERIC_CLOCKEVENTS=y
# CONFIG_PCI is not set
# CONFIG_NO_DMA is not set
...
#
# Processor type and features
#
CONFIG_TICK_ONESHOT=y
CONFIG_NO_HZ=y
CONFIG_HIGH_RES_TIMERS=y
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
CONFIG_PREEMPT_NONE=y
# CONFIG_PREEMPT_VOLUNTARY is not set
# CONFIG_PREEMPT is not set
CONFIG_HZ_100=y
# CONFIG_HZ_250 is not set
# CONFIG_HZ_300 is not set
# CONFIG_HZ_1000 is not set
CONFIG_HZ=100
CONFIG_SCHED_HRTICK=y
next prev parent reply other threads:[~2009-03-20 12:00 UTC|newest]
Thread overview: 120+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-03-18 20:30 Microblaze linux support monstr
2009-03-18 20:30 ` [PATCH 01/57] microblaze_v7: Kconfig patches monstr
2009-03-18 20:30 ` [PATCH 02/57] microblaze_v7: Makefiles for Microblaze cpu monstr
2009-03-18 20:30 ` [PATCH 03/57] microblaze_v7: Cpuinfo handling monstr
2009-03-18 20:30 ` [PATCH 04/57] microblaze_v7: Open firmware files monstr
2009-03-23 18:51 ` Arnd Bergmann
2009-03-23 18:51 ` Arnd Bergmann
2009-03-23 20:44 ` Michal Simek
2009-03-23 20:53 ` Anton Vorontsov
2009-03-23 20:53 ` Anton Vorontsov
2009-03-26 0:01 ` Benjamin Herrenschmidt
2009-03-26 0:01 ` Benjamin Herrenschmidt
2009-03-24 11:17 ` Michal Simek
2009-03-24 11:17 ` Michal Simek
2009-03-18 20:30 ` [PATCH 05/57] microblaze_v7: Platorm bus registration monstr
2009-03-18 20:30 ` [PATCH 06/57] microblaze_v7: exception handling monstr
2009-03-18 20:30 ` [PATCH 07/57] microblaze_v7: Signal support monstr
2009-03-23 19:35 ` Arnd Bergmann
2009-03-24 11:14 ` Michal Simek
2009-03-18 20:30 ` [PATCH 08/57] microblaze_v7: Interrupt handling, timer support, selfmod code monstr
2009-03-19 15:49 ` Thomas Gleixner
2009-03-19 20:28 ` Michal Simek
2009-03-19 21:47 ` Thomas Gleixner
2009-03-20 2:24 ` John Stultz
2009-03-20 7:27 ` Michal Simek
2009-03-20 20:40 ` john stultz
2009-03-21 10:38 ` Michal Simek
2009-03-21 11:14 ` Thomas Gleixner
2009-03-21 11:57 ` Michal Simek
2009-03-21 12:05 ` Thomas Gleixner
2009-03-21 12:07 ` Michal Simek
2009-03-20 6:38 ` Michal Simek
2009-03-20 10:07 ` Thomas Gleixner
2009-03-20 9:26 ` Michal Simek
2009-03-20 9:58 ` Thomas Gleixner
2009-03-20 10:37 ` Michal Simek
2009-03-20 10:49 ` Thomas Gleixner
2009-03-20 11:28 ` Michal Simek
2009-03-20 11:41 ` Thomas Gleixner
2009-03-20 11:59 ` Michal Simek [this message]
2009-03-20 14:08 ` Michal Simek
2009-03-20 14:12 ` Thomas Gleixner
2009-03-20 14:27 ` Michal Simek
2009-03-18 20:30 ` [PATCH 09/57] microblaze_v7: cache support monstr
2009-03-18 20:30 ` [PATCH 10/57] microblaze_v7: Generic dts file for platforms monstr
2009-03-18 20:30 ` [PATCH 11/57] microblaze_v7: kernel modules support monstr
2009-03-18 20:30 ` [PATCH 12/57] microblaze_v7: lmb include file monstr
2009-03-18 20:30 ` [PATCH 13/57] microblaze_v7: PVR support, cpuinfo support monstr
2009-03-18 20:30 ` [PATCH 14/57] microblaze_v7: defconfig file monstr
2009-03-18 20:30 ` [PATCH 15/57] microblaze_v7: assembler files head.S, entry-nommu.S, syscall_table.S monstr
2009-03-18 20:30 ` [PATCH 16/57] microblaze_v7: vmlinux.lds.S - linker script monstr
2009-03-18 20:30 ` [PATCH 17/57] microblaze_v7: supported function for memory - kernel/lib monstr
2009-03-18 20:30 ` [PATCH 18/57] microblaze_v7: checksum support monstr
2009-03-18 20:30 ` [PATCH 19/57] microblaze_v7: early_printk support monstr
2009-03-18 20:30 ` [PATCH 20/57] microblaze_v7: uaccess files monstr
2009-03-18 20:30 ` [PATCH 21/57] microblaze_v7: heartbeat file monstr
2009-03-18 20:30 ` [PATCH 22/57] microblaze_v7: setup.c, setup.h - system setting monstr
2009-03-18 20:30 ` [PATCH 23/57] microblaze_v7: asm-offsets monstr
2009-03-18 20:30 ` [PATCH 24/57] microblaze_v7: process and init task function monstr
2009-03-18 20:30 ` [PATCH 25/57] microblaze_v7: delay.h, timex.h monstr
2009-03-18 20:30 ` [PATCH 26/57] microblaze_v7: ptrace support monstr
2009-03-18 20:30 ` [PATCH 27/57] microblaze_v7: IPC support monstr
2009-03-18 20:30 ` [PATCH 28/57] microblaze_v7: traps support monstr
2009-03-18 20:30 ` [PATCH 29/57] microblaze_v7: memory inicialization, MMU, TLB monstr
2009-03-18 20:30 ` [PATCH 30/57] microblaze_v7: page.h, segment.h, unaligned.h monstr
2009-03-18 20:30 ` [PATCH 31/57] microblaze_v7: includes SHM*, msgbuf monstr
2009-03-18 20:30 ` [PATCH 32/57] microblaze_v7: bug headers files monstr
2009-03-18 20:31 ` [PATCH 33/57] microblaze_v7: definitions of types monstr
2009-03-18 20:31 ` [PATCH 34/57] microblaze_v7: ioctl support monstr
2009-03-18 20:31 ` [PATCH 35/57] microblaze_v7: io.h IO operations monstr
2009-03-18 20:31 ` [PATCH 36/57] microblaze_v7: headers for executables format FLAT, ELF monstr
2009-03-18 20:31 ` [PATCH 37/57] microblaze_v7: dma support monstr
2009-03-18 20:31 ` [PATCH 38/57] microblaze_v7: headers for irq monstr
2009-03-18 20:31 ` [PATCH 39/57] microblaze_v7: atomic.h bitops.h swab.h byteorder.h monstr
2009-03-18 20:31 ` [PATCH 40/57] microblaze_v7: headers pgalloc.h pgtable.h monstr
2009-03-18 20:31 ` [PATCH 41/57] microblaze_v7: system.h processor.h monstr
2009-03-18 20:31 ` [PATCH 42/57] microblaze_v7: clinkage.h linkage.h sections.h kmap_types.h monstr
2009-03-18 20:31 ` [PATCH 43/57] microblaze_v7: stats headers monstr
2009-03-18 20:31 ` [PATCH 44/57] microblaze_v7: termbits.h termios.h monstr
2009-03-23 19:37 ` Arnd Bergmann
2009-03-24 11:20 ` Michal Simek
2009-03-24 13:57 ` Arnd Bergmann
2009-03-24 14:06 ` John Williams
2009-03-24 14:44 ` Michal Simek
2009-03-18 20:31 ` [PATCH 45/57] microblaze_v7: sigcontext.h siginfo.h monstr
2009-03-18 20:31 ` [PATCH 46/57] microblaze_v7: headers simple files - empty or redirect to asm-generic monstr
2009-03-18 20:31 ` [PATCH 47/57] microblaze_v7: namei.h monstr
2009-03-18 20:31 ` [PATCH 48/57] microblaze_v7: headers files entry.h current.h mman.h registers.h sembuf.h monstr
2009-03-18 20:31 ` [PATCH 49/57] microblaze_v7: device.h param.h topology.h monstr
2009-03-18 20:31 ` [PATCH 50/57] microblaze_v7: pool.h socket.h monstr
2009-03-18 20:31 ` [PATCH 51/57] microblaze_v7: fcntl.h sockios.h ucontext.h monstr
2009-03-18 20:31 ` [PATCH 52/57] microblaze_v7: unistd.h monstr
2009-03-18 20:31 ` [PATCH 53/57] microblaze_v7: string.h thread_info.h monstr
2009-03-18 20:31 ` [PATCH 54/57] microblaze_v7: Kbuild file monstr
2009-03-18 20:31 ` [PATCH 55/57] microblaze_v7: pci headers monstr
2009-03-18 20:31 ` [PATCH 56/57] microblaze_v7: syscalls.h monstr
2009-03-18 20:31 ` [PATCH 57/57] microblaze_v7: Uartlite for Microblaze monstr
2009-03-24 16:03 ` Michal Simek
2009-03-24 16:03 ` Michal Simek
2009-03-24 16:22 ` John Williams
2009-03-24 16:22 ` John Williams
2009-03-24 16:47 ` Peter Korsgaard
2009-03-25 15:42 ` [PATCH 01/57] microblaze_v7: Kconfig patches Arnd Bergmann
2009-03-25 16:10 ` Michal Simek
2009-03-19 7:22 ` Microblaze linux support Ingo Molnar
2009-03-19 9:42 ` Michal Simek
2009-03-19 10:21 ` Ingo Molnar
2009-03-19 10:26 ` Michal Simek
2009-03-19 10:47 ` Jaswinder Singh Rajput
2009-03-19 11:10 ` Michal Simek
2009-03-19 10:50 ` Ingo Molnar
2009-03-19 10:52 ` Michal Simek
2009-03-19 11:00 ` Ingo Molnar
2009-03-19 11:04 ` Michal Simek
2009-03-19 20:35 ` Randy Dunlap
2009-03-19 20:41 ` Michal Simek
2009-03-24 15:26 ` Michal Simek
2009-03-24 15:33 ` John Linn
2009-03-24 15:42 ` Michal Simek
2009-03-24 17:46 ` [microblaze-uclinux] " Stephen Neuendorffer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=49C38537.4050401@monstr.eu \
--to=monstr@monstr.eu \
--cc=john.williams@petalogix.com \
--cc=johnstul@us.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=tglx@linutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.