[Bug 1869] Full port to the Milkymist One

bugzilla-daemon at rtems.org bugzilla-daemon at rtems.org
Tue Aug 2 14:05:28 UTC 2011


https://www.rtems.org/bugzilla/show_bug.cgi?id=1869

--- Comment #7 from Joel Sherrill <joel.sherrill at oarcorp.com> 2011-08-02 09:05:27 CDT ---
(In reply to comment #6)
> Thanks for the speedy merge!

Didn't impact anything but lm32 BSPs so if they continue to compile without
more warnings, it wasn't controversial. :)

> Most of the check_bsp errors you mentioned are from the initial LM32 EVR port
> and were already there before this patch (or any form of specific Milkymist SoC
> support). I'll send you a patch against them anyway...

check_bsp is a work in process.  It is intended to catch a lot of the tedious
things before there is a visual inspection.  If you have suggestions or
improvements, please feel free to make them.

FWIW I renamed it check_submission.  It can now check either a BSP (-b) or a
test (-t) and applies some common rules along with area specific rules.

> The two warnings about "printf" correspond in fact to uses of sprintf(). Is it
> incorrect to call sprintf() from a driver? What is the recommended way to
> format strings in drivers?

I think sprintf is acceptable.  This is a pattern matching issue in check_bsp.

> Also, you forgot little bits of the patch:
> * delete c/src/lib/libbsp/lm32/shared/milkymist_networking/mm_crc32.c (this is
> dead/duplicate code)

Done.  Removing files is easy to miss when merging large patches.

> * move the contents of c/src/lib/libbsp/lm32/README into
> c/src/lib/libbsp/lm32/lm32_evr/README (the text there is specific to the LM32
> EVR and not to LM32 processors in general)

Removed.  lm32_evr had all text plus more info.

> * I also have removed set_vector() (and setvec.c), since we use
> rtems_interrupt_catch() and I remember reading somewhere that set_vector() was
> deprecated. Correct me if I am wrong.

This depends.  set_vector() is required for simple vectored architectures. If
you are installing via rtems_interrupt_catch(), then it is simple vectored.

Architectures which always have programmable interrupt controllers (PIC) like
PowerPC, x86, and ARM use the PIC model.  

The file irq.h in shared is normally found on PIC architectures.  So it should
be removed.  I don't know if it is used.

Summary... setvector() stays.. irq.h should go.

I think I have corrected these issues except for set_vector() and irq.h.  If I
haven't just update the PR as needed.

-- 
Configure bugmail: https://www.rtems.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the bugs mailing list