Pages:
Author

Topic: Hacking The KNC Firmware: Overclocking - page 58. (Read 144377 times)

hero member
Activity: 784
Merit: 504
Dream become broken often
December 23, 2013, 01:17:53 AM
Thxs to this thread and alittle help on IRC...I turned up my jup. to around 630-650gh/s on poolside Smiley thxs tolip great job and my HW errors down to .5%
sr. member
Activity: 462
Merit: 250
December 23, 2013, 12:28:24 AM
i don't mind using vi at all.. but you can just winscp the files to a pc and use crimson edit or whatever and send the file back...keep multiple copies of all the different changes saved and quickly switch from each one.   Also, store them all in /config right on the miner as well.



hero member
Activity: 635
Merit: 500
December 22, 2013, 06:00:54 PM

Good points.
I am no Linux guru, but back in 2011 when I was GPU mining I managed to run a headless Ubuntu rig with no prior unix experience. Most of it is having good computer skills in general and using Google.
Until today I've never used vi, but again using Google I got all the required information: hint use xxdd to delete a specific number of lines - example 85dd to delete 85 lines.


Until you gotta explain:
"Oh, actually, hit escape, then type : , Then type 85dd"

You're dealing with a ton of people who have never done any gpu or cpu mining, when it comes to KNC owners. The promise of the plug-n-play 400GHs miner lured plenty of newbs into the mix.

I think you're smart to help people one-on-one, since each person is going to be running a different desktop OS to access the miner, and that can have a huge impact on how you do things. A one-size-fits-all overclocking system is gonna lead to a lot of people wishing they had never learned what SSH was.

On another topic: What's the rumor mill say about Jupiters opening up for sale again? I got some more BTC I wanna spend.

Skeptic

You have some good points in your post. I can agree with some of them.

I was talking with Cyper on irc. We was talking about this tuning suite. If you look inside the other firmwares you can't find these strings to adjust the clock. Only in tuning suite. Some time ago I told 'Orama to tell Knc to make a tuning for the miners. Told him "If you won't do will do somebody else. It would be better from who build the machine"

I think they put this string for the guys who knows what are they doing. They didn't put on the web interface becuase the didn't wanted a lot of fried boards for RMA.

Now you have the option to overclock (half offical) but if you do you woid your warranty.

If you know what I mean...
newbie
Activity: 32
Merit: 0
December 22, 2013, 04:57:10 PM
I've labbed around with this modification and a 8VRM November Saturn - 99-E FW.
It did not blew up and it certenly had an impact on the hashrate.

I tried differend combos, everyone resulting in a lower hashrate than OEM config.
This is the OEM conf:
Quote
        if [ -n "$good_ports" ] ; then
                for p in $good_ports ; do
                        # re-enable all cores
                        i=0
                        while [[ $i -lt 192 ]] ; do
                                i2cset -y 2 0x2$p $i 1
                                i=$((i+1))
                        done
                        spi_ena=$(( spi_ena | (1 << $p) ))
                done
        fi
And this is cgminer screen from OE conf: (340+ Gh/s)


This is the changes:
Quote
        if [ -n "$good_ports" ] ; then
                for p in $good_ports ; do
 # Re-enable PLL
                        i2cset -y 2 0x71 1 $((p+1))
                        for c in 0 1 2 3 ; do
                                cmd=$(printf "0x84,0x%02X,0,0" $c)
                                spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null
                                cmd=$(printf "0x86,0x%02X,0x02,0x11" $c)

if [ $p -eq 0 ]
then
       if [ $c -eq 0 ]
       then
               cmd=$(printf "0x86,0x%02X,0x02,0x11" $c)
       fi
       if [ $c -eq 1 ]
       then
               cmd=$(printf "0x86,0x%02X,0x02,0x11" $c)
       fi
       if [ $c -eq 2 ]
       then
               cmd=$(printf "0x86,0x%02X,0x02,0x11" $c)
       fi
       if [ $c -eq 3 ]
       then
               cmd=$(printf "0x86,0x%02X,0x02,0x11" $c)
       fi
fi

if [ $p -eq 4 ]
then
       if [ $c -eq 0 ]
       then
               cmd=$(printf "0x86,0x%02X,0x01,0xF1" $c)
       fi
       if [ $c -eq 1 ]
       then
               cmd=$(printf "0x86,0x%02X,0x02,0x11" $c)
       fi
       if [ $c -eq 2 ]
       then
               cmd=$(printf "0x86,0x%02X,0x02,0x11" $c)
       fi
       if [ $c -eq 3 ]
       then
               cmd=$(printf "0x86,0x%02X,0x02,0x11" $c)
       fi
fi

                                spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null
                                cmd=$(printf "0x85,0x%02X,0,0" $c)
                                spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null
                        done
                        # re-enable all cores
                        i=0
                        while [[ $i -lt 192 ]] ; do
                                i2cset -y 2 0x2$p $i 1
                                i=$((i+1))
                        done
                        spi_ena=$(( spi_ena | (1 << $p) ))
                done
        fi
The best combo I've come up with is:
All cores on p0 = 211
+
cores on p4 = 231
This settings go more or less straight to 333Gh/s and stays ULTRA stable there. Not seen anything like this before. Just som HWs in the beginning, and some singles after that.

It affects power usage very little, if anything at all. Temps are the same.

If using 211 is will go to 300Gh/s

Looked through the thread and it seems like someone was using 1F1, what does this corresponds to?

Don't wanna try more right now, loosing to much hash rate when labbing around with this Sad
member
Activity: 91
Merit: 10
December 22, 2013, 02:39:08 PM

Good points.
I am no Linux guru, but back in 2011 when I was GPU mining I managed to run a headless Ubuntu rig with no prior unix experience. Most of it is having good computer skills in general and using Google.
Until today I've never used vi, but again using Google I got all the required information: hint use xxdd to delete a specific number of lines - example 85dd to delete 85 lines.


Until you gotta explain:
"Oh, actually, hit escape, then type : , Then type 85dd"

You're dealing with a ton of people who have never done any gpu or cpu mining, when it comes to KNC owners. The promise of the plug-n-play 400GHs miner lured plenty of newbs into the mix.

I think you're smart to help people one-on-one, since each person is going to be running a different desktop OS to access the miner, and that can have a huge impact on how you do things. A one-size-fits-all overclocking system is gonna lead to a lot of people wishing they had never learned what SSH was.

On another topic: What's the rumor mill say about Jupiters opening up for sale again? I got some more BTC I wanna spend.
hero member
Activity: 574
Merit: 500
1.21 GIGA WATTS
December 22, 2013, 02:35:11 PM
here's an idea.

if someone with the knowledge could backup/dump the firmware on a working miner (or use downloadable firmware version) to see if you can successfully revive/restore a bricked miner.  Then write a detailed (dumb proof) tutorial on how to restore the bricked miner (really it's restoring a beaglebone, not a miner).

then a detailed tutorial on overclocking can be written and used by anyone willing to take the risk to try.

Who's has the knowledge and is up for the task? 

I'm sure there be a few of us happy to donate if this were to happen.  no?  I would  Wink


hero member
Activity: 812
Merit: 502
December 22, 2013, 01:48:19 PM

As far as helping people overclock their KNC rigs, it's probably a wash. So few people have the skills to follow really simple command line instructions, I figure an overclocking guide will brick as many machines as it overclocks! What percentage of the average public has ever used a non-gui based text editor? Try to explain vi to them!

Next, throw some cryptic pseudo-MS-DOS (I know it's the other way around) shit like manually copying files and changing directories. Did you know the slashes / \ go the opposite directions in windows and unix? And in Unix directories can have a . in the middle of it's name? Holy crap, that alone is gonna screw half the people right there.

So you changed my mind, PLEASE WRITE AN OVERCLOCKING GUIDE. Gonna fuck some shit up, yes we are.

-Dana

Good points.
I am no Linux guru, but back in 2011 when I was GPU mining I managed to run a headless Ubuntu rig with no prior unix experience. Most of it is having good computer skills in general and using Google.
Until today I've never used vi, but again using Google I got all the required information: hint use xxdd to delete a specific number of lines - example 85dd to delete 85 lines.
hero member
Activity: 812
Merit: 502
December 22, 2013, 01:06:55 PM
I think I managed to make it work. Please have a look at my code and tell me if it is OK:

This code is for overclocking each individual die on each board to 850Mhz, so 16 total individual settings for boards at position 0, 1, 2, 3: http://pastebin.com/dSWrP4jF

It works, so I assume it is all good.

I think I understand it better now, so I will probably write a very detailed tutorial tomorrow for people who are not sure what they are doing. But first I will try to switch to BFGMiner to better fine tuning.



Looks good. But please, don't help add a couple hundred THs to the network by being the hero and writing an overclocking tutorial!

Anyway, you can change each individual die to whatever clock speed you want with your code. It's great for people who have issues with bad boards, but simply changing the preceeding 0x86 register will cover 95% of the people who have no bad dies without over complicating things:

Quote
if [ -n "$good_ports" ] ; then
                for p in $good_ports ; do
                        # Re-enable PLL
                        i2cset -y 2 0x71 1 $((p+1))
                        for c in 0 1 2 3 ; do
                                cmd=$(printf "0x84,0x%02X,0,0" $c)
                                spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null
                                cmd=$(printf "0x86,0x%02X,0x02,0x11" $c)



True that. I will refrain from making it easy for the average joe then.

Btw what are your observations in regards to unhappy dies?
One of my miners clocked with 201 is showing this: http://i.imgur.com/NSl59Iz.png

Shall I increase the voltage at the Advanced tab, then /config/zzz.sh restart or try first with more/less OC?



@CYPER
Please DO write a very detailed tutorial for people who are not sure what they are doing?
I made a contribution to tolip_wen for his shared work
and will do the same for you and as well encourage others to as well.
None of us would be here without some help from someone else at some point.
Thanks

I would rather help individual people in person like ElGabo did, than write a tutorial Smiley
Find me on Skype and I can help when I am free.
member
Activity: 78
Merit: 10
December 22, 2013, 12:48:59 PM
I think I managed to make it work. Please have a look at my code and tell me if it is OK:

This code is for overclocking each individual die on each board to 850Mhz, so 16 total individual settings for boards at position 0, 1, 2, 3: http://pastebin.com/dSWrP4jF

It works, so I assume it is all good.

I think I understand it better now, so I will probably write a very detailed tutorial tomorrow for people who are not sure what they are doing. But first I will try to switch to BFGMiner to better fine tuning.



Looks good. But please, don't help add a couple hundred THs to the network by being the hero and writing an overclocking tutorial!

Anyway, you can change each individual die to whatever clock speed you want with your code. It's great for people who have issues with bad boards, but simply changing the preceeding 0x86 register will cover 95% of the people who have no bad dies without over complicating things:

Quote
if [ -n "$good_ports" ] ; then
                for p in $good_ports ; do
                        # Re-enable PLL
                        i2cset -y 2 0x71 1 $((p+1))
                        for c in 0 1 2 3 ; do
                                cmd=$(printf "0x84,0x%02X,0,0" $c)
                                spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null
                                cmd=$(printf "0x86,0x%02X,0x02,0x11" $c)



True that. I will refrain from making it easy for the average joe then.

Btw what are your observations in regards to unhappy dies?
One of my miners clocked with 201 is showing this: http://i.imgur.com/NSl59Iz.png

Shall I increase the voltage at the Advanced tab, then /config/zzz.sh restart or try first with more/less OC?



@CYPER
Please DO write a very detailed tutorial for people who are not sure what they are doing?
I made a contribution to tolip_wen for his shared work
and will do the same for you and as well encourage others to as well.
None of us would be here without some help from someone else at some point.
Thanks
member
Activity: 78
Merit: 10
December 22, 2013, 12:28:46 PM
I highly appreciate the efforts of tolip_wen
and beyond words sent some BTC to his address:
13362fxFAdrhagmCvSmFy4WoHrNRPG2V57
I encourage all to contribute something as tolip_wen
has sacrificed mining time developing these tweaks
and the least we can do is give back some of our oc bonus we have because of him.




member
Activity: 91
Merit: 10
December 22, 2013, 11:24:27 AM

And the guy in Iceland isn't going to overclock his rigs?

I've never been impressed with big farms. They do extremely well for a short period of time, but then difficulty and technology catch up quickly. ASICMiner went from being the big dog in the room to being a drop in the bucket. Big farms mean big money investors who don't want to hear about having to re-invest in more equipment, or learn about difficulty increases and exchange rates, they want more money each week, and every week.

"What do you mean the difficulty went from 900 Million to 1.2 Billion and the exchange dropped from $1200 to $650?!?! Where's my damn money?!"

You and I can much more easily absorb the week to week changes of bitcoin, where large farms have angry investors that want more money, not less money each week.

As far as helping people overclock their KNC rigs, it's probably a wash. So few people have the skills to follow really simple command line instructions, I figure an overclocking guide will brick as many machines as it overclocks! What percentage of the average public has ever used a non-gui based text editor? Try to explain vi to them!

Next, throw some cryptic pseudo-MS-DOS (I know it's the other way around) shit like manually copying files and changing directories. Did you know the slashes / \ go the opposite directions in windows and unix? And in Unix directories can have a . in the middle of it's name? Holy crap, that alone is gonna screw half the people right there.

So you changed my mind, PLEASE WRITE AN OVERCLOCKING GUIDE. Gonna fuck some shit up, yes we are.

-Dana
hero member
Activity: 635
Merit: 500
December 22, 2013, 05:48:02 AM



Looks good. But please, don't help add a couple hundred THs to the network by being the hero and writing an overclocking tutorial!

Anyway, you can change each individual die to whatever clock speed you want with your code. It's great for people who have issues with bad boards, but simply changing the preceeding 0x86 register will cover 95% of the people who have no bad dies without over complicating things:

Quote
if [ -n "$good_ports" ] ; then
                for p in $good_ports ; do
                        # Re-enable PLL
                        i2cset -y 2 0x71 1 $((p+1))
                        for c in 0 1 2 3 ; do
                                cmd=$(printf "0x84,0x%02X,0,0" $c)
                                spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null
                                cmd=$(printf "0x86,0x%02X,0x02,0x11" $c)



Sorry but a bit off topic

Skeptic

I think we're not enemies here. We're the small guys with a few machines trying to make some profit. We could help each other. This waht is this forum for.

Our enemies are Asicminer and this shit now in Iceland and all the big mining farms.

End off topic
member
Activity: 91
Merit: 10
December 21, 2013, 02:30:58 PM
201 isn't that fast. The only time I've seen cgminer spit out errors like that was with voltage problems. I leave the SPI voltage at 1.95v and all the dies at -.1121v then fine tune the dies by turning the clock speeds down below factory on the bad dies and cranking them up on the good dies using cgminer.sh.

I leave my advanced tab untouched, with 1.95v and all the stock settings. I have been doing all tuning through the cgminer.sh clock speeds and having great results. CGminer 3.8.2 says I am getting 100GHs+ over factory, with about 125W extra consumed. Not terribly efficient (tell that to BFL!), but it pays for itself handsomely. What would I pay for a 100GHs miner on fleecebay right now? $4000 if I were lucky?

"Hey Mom, I just found $4000 worth of hashing!," I exclaimed.

"I thought I told you to stop smoking that stuff in the house!" she scolded me.
hero member
Activity: 812
Merit: 502
December 21, 2013, 02:12:06 PM
I think I managed to make it work. Please have a look at my code and tell me if it is OK:

This code is for overclocking each individual die on each board to 850Mhz, so 16 total individual settings for boards at position 0, 1, 2, 3: http://pastebin.com/dSWrP4jF

It works, so I assume it is all good.

I think I understand it better now, so I will probably write a very detailed tutorial tomorrow for people who are not sure what they are doing. But first I will try to switch to BFGMiner to better fine tuning.



Looks good. But please, don't help add a couple hundred THs to the network by being the hero and writing an overclocking tutorial!

Anyway, you can change each individual die to whatever clock speed you want with your code. It's great for people who have issues with bad boards, but simply changing the preceeding 0x86 register will cover 95% of the people who have no bad dies without over complicating things:

Quote
if [ -n "$good_ports" ] ; then
                for p in $good_ports ; do
                        # Re-enable PLL
                        i2cset -y 2 0x71 1 $((p+1))
                        for c in 0 1 2 3 ; do
                                cmd=$(printf "0x84,0x%02X,0,0" $c)
                                spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null
                                cmd=$(printf "0x86,0x%02X,0x02,0x11" $c)



True that. I will refrain from making it easy for the average joe then.

Btw what are your observations in regards to unhappy dies?
One of my miners clocked with 201 is showing this: http://i.imgur.com/NSl59Iz.png

Shall I increase the voltage at the Advanced tab, then /config/zzz.sh restart or try first with more/less OC?


member
Activity: 91
Merit: 10
December 21, 2013, 01:56:34 PM
I think I managed to make it work. Please have a look at my code and tell me if it is OK:

This code is for overclocking each individual die on each board to 850Mhz, so 16 total individual settings for boards at position 0, 1, 2, 3: http://pastebin.com/dSWrP4jF

It works, so I assume it is all good.

I think I understand it better now, so I will probably write a very detailed tutorial tomorrow for people who are not sure what they are doing. But first I will try to switch to BFGMiner to better fine tuning.



Looks good. But please, don't help add a couple hundred THs to the network by being the hero and writing an overclocking tutorial!

Anyway, you can change each individual die to whatever clock speed you want with your code. It's great for people who have issues with bad boards, but simply changing the preceeding 0x86 register will cover 95% of the people who have no bad dies without over complicating things:

Quote
if [ -n "$good_ports" ] ; then
                for p in $good_ports ; do
                        # Re-enable PLL
                        i2cset -y 2 0x71 1 $((p+1))
                        for c in 0 1 2 3 ; do
                                cmd=$(printf "0x84,0x%02X,0,0" $c)
                                spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null
                                cmd=$(printf "0x86,0x%02X,0x02,0x11" $c)

hero member
Activity: 812
Merit: 502
December 21, 2013, 01:05:28 PM
I think I managed to make it work. Please have a look at my code and tell me if it is OK:

This code is for overclocking each individual die on each board to 850Mhz, so 16 total individual settings for boards at position 0, 1, 2, 3: http://pastebin.com/dSWrP4jF

It works, so I assume it is all good.

I think I understand it better now, so I will probably write a very detailed tutorial tomorrow for people who are not sure what they are doing. But first I will try to switch to BFGMiner to better fine tuning.

member
Activity: 91
Merit: 10
December 21, 2013, 12:26:04 PM
member
Activity: 91
Merit: 10
December 21, 2013, 12:01:51 PM
OK, I get what each variable means and how to manipulate it, I'm just not sure the proper way to insert the code into cgminer.sh in order to implement it. Could you give us a sample of working code with a little more reference code on each end to help us newbs through this? I guess the correct term is syntax. I understand the code (kinda) I just need to know the proper syntax so that I can insert my own version into cgminer.sh.

Thanks!


A newer better code example is here

https://bitcointalksearch.org/topic/m.4010530


What you quoted was from earlier in the process and only addresses one die.


Thanks a ton!

I was able to tune my two die-0 boards so that the other dies on those boards don't freak out. Before this nonsense I was getting 480Ghs at the pool, now I am seeing 590 Ghs. I suspect a Jupiter with 16 good dies should easily get to 635 Ghs.
hero member
Activity: 812
Merit: 502
December 21, 2013, 11:07:45 AM
Btw why I can't find the strings for tuning each chip/die individually in either cgminer.sh or zzz.sh?

This is all that is inside:

Code:
                done
        done

        for p in 0 1 2 3 4 5 ; do
                i2cset -y 2 0x71 1 $((p+1))
                good_flag=0
                ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,3,0,0,0,0,0,0 | tail -c 13)"
                if [ "x$ar" = "x00 30 A0 01" ] ; then
                        good_flag=1
                fi
                ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,2,0,0,0,0,0,0 | tail -c 13)"
                if [ "x$ar" = "x00 30 A0 01" ] ; then
                        good_flag=1
                fi
                ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,1,0,0,0,0,0,0 | tail -c 13)"
                if [ "x$ar" = "x00 30 A0 01" ] ; then
                        good_flag=1
                fi
                ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,0,0,0,0,0,0,0 | tail -c 13)"
                if [ "x$ar" = "x00 30 A0 01" ] ; then
                        good_flag=1
                fi

                if [ "$good_flag" = "1" ] ; then
                        good_ports=$good_ports" $p"
                else
                        bad_ports=$bad_ports" $p"
                fi
        done

        if [ -n "$good_ports" ] ; then
                for p in $good_ports ; do
                        # Re-enable PLL
                        i2cset -y 2 0x71 1 $((p+1))
                        for c in 0 1 2 3 ; do
                                cmd=$(printf "0x84,0x%02X,0,0" $c)
                                spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null
                                cmd=$(printf "0x86,0x%02X,0x01,0xF1" $c)
                                spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null
                                cmd=$(printf "0x85,0x%02X,0,0" $c)
                                spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null
                        done

                        # re-enable all cores
                        i=0
                        while [[ $i -lt 192 ]] ; do
                                i2cset -y 2 0x2$p $i 1
                                i=$((i+1))
                        done
                        spi_ena=$(( spi_ena | (1 << $p) ))
                done
        fi
        if [ -n "$bad_ports" ] ; then
                for p in $bad_ports ; do
root@Jupiter-6:/config# /config/zzz.sh restart
Restarting Cgminer daemon: cgminer.
root@Jupiter-6:/config# screen -r
[detached]
root@Jupiter-6:/config# vi /etc/init.d/cgminer.sh
#!/bin/sh

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/bin/cgminer
NAME=cgminer
DESC="Cgminer daemon"

set -e

test -x "$DAEMON" || exit 0

do_start() {
        # Stop SPI poller
        spi_ena=0
        i2cset -y 2 0x71 2 $spi_ena

        good_ports=""
        bad_ports=""

        # CLear faults in megadlynx's
        for b in 3 4 5 6 7 8 ; do
                for d in 0 1 2 3 4 5 6 7 ; do
                        i2cset -y $b 0x1$d 3 >/dev/null 2>&1 || true
                done
        done

        for p in 0 1 2 3 4 5 ; do
                i2cset -y 2 0x71 1 $((p+1))
                good_flag=0
                ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,3,0,0,0,0,0,0 | tail -c 13)"
                if [ "x$ar" = "x00 30 A0 01" ] ; then
                        good_flag=1
                fi
                ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,2,0,0,0,0,0,0 | tail -c 13)"
                if [ "x$ar" = "x00 30 A0 01" ] ; then
                        good_flag=1
                fi
                ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,1,0,0,0,0,0,0 | tail -c 13)"
                if [ "x$ar" = "x00 30 A0 01" ] ; then
                        good_flag=1
                fi
                ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,0,0,0,0,0,0,0 | tail -c 13)"
                if [ "x$ar" = "x00 30 A0 01" ] ; then
                        good_flag=1
                fi

                if [ "$good_flag" = "1" ] ; then
                        good_ports=$good_ports" $p"
                else
                        bad_ports=$bad_ports" $p"
                fi
        done

        if [ -n "$good_ports" ] ; then
root@Jupiter-6:/config# screen -r
[detached]
root@Jupiter-6:/config# vi /config/zzz.sh
                fi
                ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,2,0,0,0,0,0,0 | tail -c 13)"
                if [ "x$ar" = "x00 30 A0 01" ] ; then
                        good_flag=1
                fi
                ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,1,0,0,0,0,0,0 | tail -c 13)"
                if [ "x$ar" = "x00 30 A0 01" ] ; then
                        good_flag=1
                fi
                ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,0,0,0,0,0,0,0 | tail -c 13)"
                if [ "x$ar" = "x00 30 A0 01" ] ; then
                        good_flag=1
                fi

                if [ "$good_flag" = "1" ] ; then
                        good_ports=$good_ports" $p"
                else
                        bad_ports=$bad_ports" $p"
                fi
        done

        if [ -n "$good_ports" ] ; then
                for p in $good_ports ; do
                        # Re-enable PLL
                        i2cset -y 2 0x71 1 $((p+1))
                        for c in 0 1 2 3 ; do
                                cmd=$(printf "0x84,0x%02X,0,0" $c)
                                spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null
                                cmd=$(printf "0x86,0x%02X,0x01,0xF1" $c)
                                spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null
                                cmd=$(printf "0x85,0x%02X,0,0" $c)
                                spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null
                        done

                        # re-enable all cores
                        i=0
                        while [[ $i -lt 192 ]] ; do
                                i2cset -y 2 0x2$p $i 1
                                i=$((i+1))
                        done
                        spi_ena=$(( spi_ena | (1 << $p) ))
                done
        fi
        if [ -n "$bad_ports" ] ; then
                for p in $bad_ports ; do
                        # Disable PLL
                        i2cset -y 2 0x71 1 $((p+1))
                        for c in 0 1 2 3 ; do
                                cmd=$(printf "0x84,0x%02X,0,0" $c)
                                spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null
                        done

                        # disable all cores
                        i=0
- /config/zzz.sh 61/131 46%
hero member
Activity: 812
Merit: 502
December 21, 2013, 11:04:37 AM
Is there a sed command that goes higher than 7%?

No, because the next value in line is different: 201

It can probably be done with 2 sed commands or you can just edit the zzz.sh manually.
Line 61, find this string: cmd=$(printf "0x86,0x%02X,0x01,0xF1" $c)

800Mhz - cmd=$(printf "0x86,0x%02X,0x01,0xF1" $c)
825Mhz - cmd=$(printf "0x86,0x%02X,0x02,0x01" $c)
850Mhz - cmd=$(printf "0x86,0x%02X,0x02,0x11" $c)

Please use your own judgement as I cannot 100% guarantee this code is correct. Wait for someone to confirm.
Pages:
Jump to: