New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ADI: Add ARMC6 compatible code #5627

Merged
merged 3 commits into from Dec 12, 2017

Conversation

Projects
None yet
4 participants
@li-ho

li-ho commented Nov 30, 2017

Description

Apply changes to be compatible for IAR 7 and 8, GCC 4, 5 and 6, ARM 5 and 6 tool chain.
Enable EV_COG_AD4050LZ FPU option.
GreenTea Full pass for EV_COG_AD3029LZ and EV_COG_AD4050LZ single boards.

Status

READY

Migrations

NO

Related PRs

feature-armc6 | #5560
master | #5541
master | #5144
master | #5137

@li-ho li-ho referenced this pull request Nov 30, 2017

Closed

ADI: compatible code for iar, gcc_arm, armc6 #5560

1 of 1 task complete
@theotherjimmy

This comment has been minimized.

Contributor

theotherjimmy commented Nov 30, 2017

Please change the base branch the old PR instead of opening a new one

@li-ho

This comment has been minimized.

li-ho commented Nov 30, 2017

The old pr is #5541. It's closed and cannot be reopened.

@theotherjimmy

This comment has been minimized.

Contributor

theotherjimmy commented Dec 1, 2017

Well, I suppose we'll have to live with this PR then.

@li-ho

This comment has been minimized.

li-ho commented Dec 1, 2017

The error in continuous-integration/jenkins/pr-head cannot be seen, therefore, I have no idea about what to fix.

Edmund Hsu
Update trng_api.c
 - Maintain compatible code for ARM 5 and ARM 6 while default alignment
   settings differ.
 - Instance memory containing memory pointers must be 4 byte aligned for
   all compilers regardless compilers' settings.
 - uint32_t is recommended to replace uint8_t for instance memory
   declaration because uint32_t guarantee 4 byte alignment.
@0xc0170

This comment has been minimized.

Member

0xc0170 commented Dec 1, 2017

The error in continuous-integration/jenkins/pr-head cannot be seen, therefore, I have no idea about what to fix.

Restarted, there was a plugin exception this time.

@0xc0170

0xc0170 approved these changes Dec 1, 2017

@0xc0170 0xc0170 added needs: CI and removed needs: review labels Dec 1, 2017

@0xc0170

This comment has been minimized.

Member

0xc0170 commented Dec 1, 2017

/morph build

@mbed-ci

This comment has been minimized.

mbed-ci commented Dec 1, 2017

@li-ho

This comment has been minimized.

li-ho commented Dec 4, 2017

I notice that gpio_api.c, gpio_dev_mem.c, gpio_irq_api.c, i2c_api.c, rtc_api.c and spi_api.c use uint8_t to declare instance memory. These instance memory should be re-declared by using uint32_t. Should this be a separate PR or do-it-now?

@0xc0170

This comment has been minimized.

Member

0xc0170 commented Dec 4, 2017

I notice that gpio_api.c, gpio_dev_mem.c, gpio_irq_api.c, i2c_api.c, rtc_api.c and spi_api.c use uint8_t to declare instance memory. These instance memory should be re-declared by using uint32_t. Should this be a separate PR or do-it-now?

Depends on what is the scope of this PR. I would say to add ARMC6 compatible code. So this bugfix can be a separate patch

@li-ho

This comment has been minimized.

li-ho commented Dec 4, 2017

The scope of this PR is to compile and run GreenTea testing for 7 mentioned tool chains and any single EV_COG_ADx0xxLZ board. SPI, I2C, GPIO api code can be compiled, but cannot be verified without an extra add-on board.

@li-ho li-ho changed the title from ADI: backward compatible code for iar, gcc, arm to ADI: Add ARMC6 code and maintain backward compatibility Dec 5, 2017

@li-ho li-ho changed the title from ADI: Add ARMC6 code and maintain backward compatibility to ADI: Add ARMC6 compatible code Dec 5, 2017

@0xc0170

This comment has been minimized.

Member

0xc0170 commented Dec 5, 2017

@li-ho Let us know once this pull request is ready for review (all work complete)

Edmund Hsu
Realign ADuCM4x50 and ADuCM302x instance memory blocks
  Ensure all instance memory blocks meet 4 byte alignment requirement
  without relying on compiler's or liker's optional settings:
  - gpioMemory[]                                    for adi_gpio_Init()
  - aRtcDevMem0[]                                   for adi_rtc_Open()
  - i2c_Mem[] or I2C_Mem[]                          for adi_i2c_Open()
  - spi_Mem0[], spi_Mem1[], spi_Mem2[] or SPI_Mem[] for adi_spi_Open()
@li-ho

This comment has been minimized.

li-ho commented Dec 7, 2017

There are 6 successful checks and 4 unfinished ones. It's ready. Please review.

@0xc0170

0xc0170 approved these changes Dec 7, 2017

@0xc0170

This comment has been minimized.

Member

0xc0170 commented Dec 7, 2017

/morph build

@mbed-ci

This comment has been minimized.

mbed-ci commented Dec 7, 2017

Build : SUCCESS

Build number : 661
Build artifacts/logs : http://mbed-os.s3-website-eu-west-1.amazonaws.com/?prefix=builds/5627/

Triggering tests

/morph test
/morph uvisor-test
/morph export-build

@mbed-ci

This comment has been minimized.

@mbed-ci

This comment has been minimized.

@0xc0170 0xc0170 merged commit 2eaa32f into ARMmbed:master Dec 12, 2017

10 checks passed

AWS-CI uVisor Build & Test Success
Details
ci-morph-build build completed
Details
ci-morph-exporter build completed
Details
ci-morph-test test completed
Details
continuous-integration/jenkins/pr-head This commit looks good
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
travis-ci/events Local events testing has passed
Details
travis-ci/littlefs Local littlefs testing has passed
Details
travis-ci/mbed2 Local mbed2 testing has passed
Details
travis-ci/tools Local tools testing has passed
Details

@li-ho li-ho deleted the li-ho:ev_cog_armc6 branch Dec 13, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment