Skip to content

Commit

Permalink
include/configs/zynq-common: Add variable to support all versions of …
Browse files Browse the repository at this point in the history
…Pluto

Signed-off-by: Michael Hennerich <[email protected]>
  • Loading branch information
mhennerich committed Apr 6, 2017
1 parent 1373a64 commit 26e73f4
Showing 1 changed file with 4 additions and 3 deletions.
7 changes: 4 additions & 3 deletions include/configs/zynq-common.h
Original file line number Diff line number Diff line change
Expand Up @@ -256,6 +256,7 @@
"fdt_high=0x20000000\0" \
"initrd_high=0x20000000\0" \
"bootenv=uEnv.txt\0" \
"maxcpus=1\0" \
"clear_reset_cause=mw f8000008 df0d && mw f8000258 00400000 && mw f8000004 767b\0" \
"loadbootenv=load mmc 0 ${loadbootenv_addr} ${bootenv}\0" \
"importbootenv=echo Importing environment from SD ...; " \
Expand Down Expand Up @@ -288,14 +289,14 @@
"if run adi_loadvals; then " \
"echo Loaded AD936x refclk frequency and model into devicetree; " \
"fi; " \
"envversion;setenv bootargs console=ttyPS0,115200 maxcpus=1 rootfstype=ramfs root=/dev/ram0 rw earlyprintk uboot=\"${uboot-version}\" && " \
"envversion;setenv bootargs console=ttyPS0,115200 maxcpus=${maxcpus} rootfstype=ramfs root=/dev/ram0 rw earlyprintk uboot=\"${uboot-version}\" && " \
"bootm ${fit_load_address}#${fit_config}\0" \
"qspiboot_verbose=adi_hwref;echo Copying Linux from QSPI flash to RAM... && " \
"run read_sf && " \
"if run adi_loadvals; then " \
"echo Loaded AD936x refclk frequency and model into devicetree; " \
"fi; " \
"envversion;setenv bootargs console=ttyPS0,115200 maxcpus=1 rootfstype=ramfs root=/dev/ram0 rw earlyprintk uboot=\"${uboot-version}\" && " \
"envversion;setenv bootargs console=ttyPS0,115200 maxcpus=${maxcpus} rootfstype=ramfs root=/dev/ram0 rw earlyprintk uboot=\"${uboot-version}\" && " \
"bootm ${fit_load_address}#${fit_config} || echo BOOT failed entering DFU mode ... && run dfu_sf \0" \
"qspiboot=set stdout nulldev;adi_hwref;test -n $PlutoRevA || gpio input 14 && set stdout serial@e0001000 && run dfu_sf; " \
"set stdout serial@e0001000;" \
Expand All @@ -305,7 +306,7 @@
"itest *f8000258 == 480002 && run clear_reset_cause && exit; " \
"echo Booting silently && set stdout nulldev; " \
"run read_sf && run adi_loadvals; " \
"envversion;setenv bootargs console=ttyPS0,115200 maxcpus=1 rootfstype=ramfs root=/dev/ram0 rw quiet loglevel=4 uboot=\"${uboot-version}\" && " \
"envversion;setenv bootargs console=ttyPS0,115200 maxcpus=${maxcpus} rootfstype=ramfs root=/dev/ram0 rw quiet loglevel=4 uboot=\"${uboot-version}\" && " \
"bootm ${fit_load_address}#${fit_config} || set stdout serial@e0001000;echo BOOT failed entering DFU mode ... && run dfu_sf \0" \
"jtagboot=env default -a;sf probe && sf protect unlock 0 100000 && run dfu_sf; \0" \
"uenvboot=" \
Expand Down

3 comments on commit 26e73f4

@bogdanr
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why do we actually need this variable?

@rgetz
Copy link

@rgetz rgetz commented on 26e73f4 Oct 21, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

When we build Rev A, the single core version was not available. Rev B and all production versions uses a single core version.

Using the variable allows people with a dual core device to use it.

There are also commercial vendors who are basing their designs off Pluto, and using much of the same software, and they are using a dual core version, to get more processing power. This allows them to have minimal changes between u-boot versions.

@rgetz
Copy link

@rgetz rgetz commented on 26e73f4 Oct 22, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I should also mention - we are using the XC7Z010-1CLG225C4334 [1] (the 4334 on the end of the part number indicates single core). This part was available before the official/public single core versions - Z-7007S, Z-7012S, Z-7014S.

We decided to stick with the XC7Z010-1CLG225C4334, since the FPGA was a little larger than the Z-7007S; and it was cheaper than the Z-7012S.

We only enable one core - since that is all we pay for, and that is what the datasheet of the 4334 suffix says.

  • Robin

[1] the BOM at https://wiki.analog.com/university/tools/pluto/hacking/hardware needs to be updated with the right part number. I didn't notice is was wrong until now.

Please sign in to comment.