|
[RFC] Real-time interrupts
Maybe we should preserve that property then. It also looks like __attribute__((interrupt)) isn't common to all arches. Maybe we need something like: void my_isr(void) { IRQ_HEADER(); <service the inte
Maybe we should preserve that property then. It also looks like __attribute__((interrupt)) isn't common to all arches. Maybe we need something like: void my_isr(void) { IRQ_HEADER(); <service the inte
|
By
Boie, Andrew P
· #3864
·
|
|
[RFC] Real-time interrupts
I think this would be something desirable across arches yes. It would essentially put the ISR directly in the vector table. I imagine the IRQ_CONNECT_DIRECT() feature would have the following characte
I think this would be something desirable across arches yes. It would essentially put the ISR directly in the vector table. I imagine the IRQ_CONNECT_DIRECT() feature would have the following characte
|
By
Boie, Andrew P
· #3862
·
|
|
Nanokernel stack border protection
Yeah it's probably a dealbreaker. In C you can take the address of some stack variable and pass it to another function, stack references seem to really need to be on the data segment. Oh well. I think
Yeah it's probably a dealbreaker. In C you can take the address of some stack variable and pass it to another function, stack references seem to really need to be on the data segment. Oh well. I think
|
By
Boie, Andrew P
· #3821
·
|
|
Nanokernel stack border protection
Disregard, this landed directly in my inbox, we're actually talking about kernel LIFOs. We could add checking to LIFOs, but this adds additional overhead. For LIFO use-cases where we always know how d
Disregard, this landed directly in my inbox, we're actually talking about kernel LIFOs. We could add checking to LIFOs, but this adds additional overhead. For LIFO use-cases where we always know how d
|
By
Boie, Andrew P
· #3820
·
|
|
Nanokernel stack border protection
This is cool, I think we should implement this for ARM targets. I will file a user story. Thinking out loud for x86: If I understand correctly, push/pop operations work on whatever memory segment is i
This is cool, I think we should implement this for ARM targets. I will file a user story. Thinking out loud for x86: If I understand correctly, push/pop operations work on whatever memory segment is i
|
By
Boie, Andrew P
· #3819
·
|
|
Nanokernel stack border protection
How do you propose to implement returning an error code to the user? This isn't the heap... Andrew Sent: Sunday, September 25, 2016 3:32 AM To: Boie, Andrew P <andrew.p.boie(a)intel.com> Cc: devel(a)l
How do you propose to implement returning an error code to the user? This isn't the heap... Andrew Sent: Sunday, September 25, 2016 3:32 AM To: Boie, Andrew P <andrew.p.boie(a)intel.com> Cc: devel(a)l
|
By
Boie, Andrew P
· #3817
·
|
|
Nanokernel stack border protection
How would you propose to implement such a border protection? Andrew
How would you propose to implement such a border protection? Andrew
|
By
Boie, Andrew P
· #3802
·
|
|
[RFC] Ring buffers
I agree with Andy for reasons above, plus if you *did* move it, it would be subject to our deprecation policy (maintain both APIs for two releases with the old one marked __deprecated). Andrew
I agree with Andy for reasons above, plus if you *did* move it, it would be subject to our deprecation policy (maintain both APIs for two releases with the old one marked __deprecated). Andrew
|
By
Boie, Andrew P
· #3798
·
|
|
[RFC] Ring buffers
I contend this doesn't belong in the base ring buffer implementation either. I feel you are assuming that this policy of waiting is appropriate for all situations and I disagree. Ring buffers aren't j
I contend this doesn't belong in the base ring buffer implementation either. I feel you are assuming that this policy of waiting is appropriate for all situations and I disagree. Ring buffers aren't j
|
By
Boie, Andrew P
· #3795
·
|
|
[RFC] Ring buffers
Just to qualify this -- if you wanted to create a general purpose kernel object type that builds on what is in ring_buffer.h, I would not be opposed. But I want the existing definition left as-is as i
Just to qualify this -- if you wanted to create a general purpose kernel object type that builds on what is in ring_buffer.h, I would not be opposed. But I want the existing definition left as-is as i
|
By
Boie, Andrew P
· #3790
·
|
|
[RFC] Ring buffers
NACK, for reasons below. The header is currently in misc/ring_buffer.h. This is available to applications, why do you want to move it? Why do you think the names need to be changed? No, don't bake thi
NACK, for reasons below. The header is currently in misc/ring_buffer.h. This is available to applications, why do you want to move it? Why do you think the names need to be changed? No, don't bake thi
|
By
Boie, Andrew P
· #3791
·
|
|
Timer utility function to use single timer
+1 on deprecation! Andrew
+1 on deprecation! Andrew
|
By
Boie, Andrew P
· #3786
·
|
|
RFC: Extension to External Interrupt API
Originally Vinayak sent a patch to change ARM's irq_enable() not to unpend any pending interrupts when enabling the channel. It was -1 as we didn't want to change the semantics of the kernel API to pr
Originally Vinayak sent a patch to change ARM's irq_enable() not to unpend any pending interrupts when enabling the channel. It was -1 as we didn't want to change the semantics of the kernel API to pr
|
By
Boie, Andrew P
· #3729
·
|
|
Exception debugging with qemu_x86/gdb
relevant guest exception handling, but that apparently not happen. I'm not sure how we could get QEMU's stubs in Zephyr's IDT to be honest. It may be the case that we could do some work on the Zephyr
relevant guest exception handling, but that apparently not happen. I'm not sure how we could get QEMU's stubs in Zephyr's IDT to be honest. It may be the case that we could do some work on the Zephyr
|
By
Boie, Andrew P
· #3726
·
|
|
RFC: Extension to External Interrupt API
Historical note: originally, any given arch had just one interrupt controller implementation written (APIC for x86, NVIC for ARM, etc) so it was not separated out and was tightly coupled with the arch
Historical note: originally, any given arch had just one interrupt controller implementation written (APIC for x86, NVIC for ARM, etc) so it was not separated out and was tightly coupled with the arch
|
By
Boie, Andrew P
· #3725
·
|
|
Porting to ARM M0, M0+
Should be the end of November. We are on a 3 month release cycle. Work is done out in the open, just clone the 'master' branch of the Zephyr git tree if you want to see the latest and greatest. Andrew
Should be the end of November. We are on a 3 month release cycle. Work is done out in the open, just clone the 'master' branch of the Zephyr git tree if you want to see the latest and greatest. Andrew
|
By
Boie, Andrew P
· #3706
·
|
|
RFC: Extension to External Interrupt API
Fine w/this. OK with this, what's the use-case though? NACK. This isn't easily portable to other arches. You brought this up as a candidate to replace irq_offload(), but irq_offload() only exists as a
Fine w/this. OK with this, what's the use-case though? NACK. This isn't easily portable to other arches. You brought this up as a candidate to replace irq_offload(), but irq_offload() only exists as a
|
By
Boie, Andrew P
· #3703
·
|
|
Porting to ARM M0, M0+
If you rebase to 1.5.0 we changed ARM to use the GCC compiler builtins for atomic operations. There's also a C implementation, look for atomic_c.c Andrew
If you rebase to 1.5.0 we changed ARM to use the GCC compiler builtins for atomic operations. There's also a C implementation, look for atomic_c.c Andrew
|
By
Boie, Andrew P
· #3660
·
|
|
deprecated issue after push to gerrit - need some help
? Any idea why the checking doesn't "catch" the "problem"? Because it's perfectly valid C code. Doxygen's C parser is suboptimal and freaks out if you try to do function annotations. Which is how addi
? Any idea why the checking doesn't "catch" the "problem"? Because it's perfectly valid C code. Doxygen's C parser is suboptimal and freaks out if you try to do function annotations. Which is how addi
|
By
Boie, Andrew P
· #3647
·
|
|
deprecated issue after push to gerrit - need some help
Edit doc/doxygen.config, look for PREDEFINED, add "__deprecated=" to the list. This causes Doxygen to treat __deprecated as a predefined macro which expands to nothing. Andrew
Edit doc/doxygen.config, look for PREDEFINED, add "__deprecated=" to the list. This causes Doxygen to treat __deprecated as a predefined macro which expands to nothing. Andrew
|
By
Boie, Andrew P
· #3644
·
|