Fix up one typo: compoment->component.
Fixes: 8e264c52e1da ("coresight: core: Allow the coresight core driver to be built as a module")
Signed-off-by: Qi Liu <liuqi115(a)huawei.com>
---
drivers/hwtracing/coresight/coresight-core.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/hwtracing/coresight/coresight-core.c b/drivers/hwtracing/coresight/coresight-core.c
index 0062c89..bc397a7 100644
--- a/drivers/hwtracing/coresight/coresight-core.c
+++ b/drivers/hwtracing/coresight/coresight-core.c
@@ -86,7 +86,7 @@ static int coresight_id_match(struct device *dev, void *data)
i_csdev->type != CORESIGHT_DEV_TYPE_SOURCE)
return 0;
- /* Get the source ID for both compoment */
+ /* Get the source ID for both component */
trace_id = source_ops(csdev)->trace_id(csdev);
i_trace_id = source_ops(i_csdev)->trace_id(i_csdev);
--
2.8.1
How's it been?
I want to share a message that has been spreading all over the
internet that concerns the times we are living in. Whether you believe
in God or not, this is a must read message!
We can see throughout time how we have been slowly conditioned to
come to this point where we are on the verge of a cashless society.
Would it surprise you to know that the Bible foretold of this event?
Don't believe me? This may be the most imporant message you will read
in these times...please do not ignore this!
This messsage reveals what the Mark of the Beast is, and the meaning
behind counting a number people have been pondering for centuries,
666. This message also shares why Barack Obama will be the Antichrist
as well as the gospel message. This is truly a message from God!
In the Revelation of Jesus Christ given to the apostle John, we read:
.."And he (the false prophet who deceives many by his miracles)
causeth all, both small and great, rich and poor, free and bond, to
receive a mark in their right hand, or in their foreheads:
And that no man might buy or sell, save he that had the mark, or the
name of the beast, or the number of his name.
Here is wisdom. Let him that hath understanding count the number of
the beast: for it is the number of a man; and his number is Six
hundred threescore and six" (Revelation 13:16-18 BRG)...
Referring to the last generation, this could only be speaking of a
cashless money society, which we have yet to see, but are heading
towards. Why? Revelation 13:17 tells us that we cannot buy or sell
unless we receive the mark of the beast in our right-hand or forehead.
We could still buy or sell among one another without receiving the
mark if physical money was still currency. It logically deduces itself
to this reason.
These verses could not be referring to something spiritual because
the word references two different physical locations (our right-hand
or forehead) stating the mark will be on one "OR" the other. It once
again logically deduces itself to this reason.
Here is where it really starts to come together. It is shocking how
accurate the Bible is concerning the RFID microchip. These are notes
from a man named Carl Sanders who worked with a team of engineers to
help develop this microchip in the late 1960's.
Carl Sanders attended seventeen New World Order conferences with
heads of state officials such as Henry Kissinger and Bob Gates of the
CIA to talk about plans on how to bring about this one-world system.
The government commissioned Mr. Sanders to design a microchip for
identifying and controlling the peoples of the nations-a microchip
that could be placed beneath the skin with a hypodermic needle (a
fast, convenient system that would be gradually accepted by the
nations).
Mr. Sanders, with a team of engineers behind him, with US grant
monies supplied by tax dollars, took on this project and designed a
microchip which is powered by a lithium battery, rechargeable by way
of the temperature fluctuations in our skin. Without having knowledge
of the holy Bible (Carl was not a follower of Jesus at the time),
these men spent one and a half million dollars conducting research on
the best and most convenient place to have the microchip placed in the
body.
Guess what? These researchers observed that the forehead and the back
of the hand (the two places Revelation says the mark will be received)
are not only the most convenient places, however are additionally the
only viable places for fast, consistent temperature fluctuations in
the skin to recharge the lithium battery. The microchip is
approximately seven millimeters in length, .75 millimeters in
diameter, about the size of a grain of rice. It is capable of storing
many pages of data about you. All your general information, work data,
crime information, health information, and financial data can be saved
on this microchip.
Brother Sanders believes that this microchip, which he remorsefully
helped produce, is the "mark of the beast" mentioned in Revelation
13:16-18. The Greek word for "mark" is "charagma," which is defined as
a "scratch or etching." Additionally it is fascinating to be aware
that the number 666 is actually a word in the original Greek language.
The word is "chi xi stigma," with the last part, "stigma,"
additionally meaning "to stick or prick. Carl believes that is
alluding to using a hypodermic needle being poked in the human flesh
to insert the microchip."
Brother Sanders asked a Boston Medical Center doctor what would
happen if the lithium contained within the RFID microchip leaked into
the body. The doctor responded that if the microchip broke inside a
human body, the lithium would cause a severe and painful wound filled
with pus. This is what the book of Revelation says:
"And the first (angel) went, and poured out his bowl into the earth;
and it became a noisome and grievous sore upon the men that had the
mark of the beast, and that worshipped his image" (Revelation 16:2
ASV).
THE HIDDEN MEANING BEHIND THE NUMBER 666 REVEALED!
What I first want to mention, before I share what the Holy Spirit has
revealed to me concerning the number of the beast, is that God
confirms in threes. We can see this throughout scripture:
"For there are three that bear witness in heaven: the Father, the
Word, and the Holy Spirit; and these three are one" (1 John 5:7 NKJV).
"and that He was buried, and that He rose again the third day
according to the Scriptures" (1 Corinthians 15:4 NKJV).
"...Holy, holy, holy, Lord God Almighty, Who was and is and is to
come!" (Revelation 4:8 NKJV).
There are many more examples, but I thought I would just share three
of them to make the point.
Examining Revelation 13:16,17,18, the first group of three I would
like to point out is that the mark of the beast is described in three
separate verses, 16, 17 and 18.
The next three I see is in verse 16, "He causes all..." is followed
by three contrasting categories of people,
1 - "both small and great,
2 - rich and poor,
3 - free and slave...".
Then unto verse 17, it opens with, "and that no one may buy or sell
except one who has...", followed by three explanations of what one
must have to buy or sell,
1 - "...the mark
2 - or the name of the beast,
3 - or the number of his name".
Now unto verse 18, we read "Let him who has understanding
calculate...", which is followed by,
1 - "the number of the beast,
2 - for it is the number of a man:
3 - His number is 666".
The last three I see is the number "6" being used three times in a
row. The reason I'm making this point about God confirming in three is
because it is the key to unlocking how to calculate the number 666.
Throughout the centuries there have been people trying to calculate
numbers based on titles and names that come up to the number 666 to
identify one person, the Antichrist; but from Revelation 13:18, I do
not see where God is telling us to count up to 666, but rather to
count the number of the beast. This number is identified as 666. So
the verse is telling us to count the number 666.
What does it mean to count? It means to add up. So how could we add
up 666? Remember my previous point about God confirming in threes is
key to unlocking the number 666. So logically, what would be the best
way to count the number 666? To count it equally by using the rule of
three based off the number.
We cannot count it equally as 600+60+6, this would also bring us back
to the start.
We cannot count it as 600+600+600, or 60+60+60 because there are no
zeroes in between or at the end of 666.
The only logical option is 6+6+6=18.
What is interesting is that the verse that reveals for us to count
the number itself is verse 18 (there a total of 18 verses in
Revelation Chapter 13), being the third verse out of the three verses
that describe the mark of the beast in Revelation 13:16,17,18. What is
18 divided by 3? 6. So 3x6=18, or 6+6+6=18.
Another interesting point is the only two other combinations (making
a total of three possible combinations) for placing a "+" symbol in
between 666 are:
• 66+6=72 and 6+66=72.
• Add both 72's together and you get 144.
Why the number 144 is worth our attention is because the verse
following Revelation 13:18 is the first time in the Bible where the
144,000 are being described in detail:
"Then I looked, and behold, a Lamb standing on Mount Zion, and with
Him one hundred and forty-four thousand, having His Father’s name
written on their foreheads..." (Revelation 14:1).
Now if you add up all three numbers from counting 666 by moving the
"+" symbol around, it would be 72+72+18=162. What is compelling about
the number 162, is, if you divide 144,000 by 162, you get 888. The
name of Jesus in Greek gematria adds up to 888. The New Testament was
originally written in the Greek language. Revelation 14:1 not only
mentions the 144,000, but also the Lamb who is Jesus.
Now what is interesting about the number for Jesus, 888, is that if
you apply the same formula that was used to count 666, you get
8+8+8=24. Why the number 24? Revelation chapter 4 tells us there are
24 elders seated around the throne of God. This is the same throne
where Jesus sits.
Now if you take:
• 8+8+8=24
• 8+88=96
• 88+8=96
you get 24+96+96=216.
Take 144,000 divided by 216 and you get 666.
Remember that this was the same exact formula we used to count the
number 666 that ultimately brought forth the number 888.
Here is a quick recap to demonstrate how this formula confirms itself
as being the true way to count 666:
1: 6+6+6=18 » 66+6=72 » 6+66=72 » 18+72+72=162
2: 144,000 divided by 162=888
3: 8+8+8=24 » 88+8=96 » 8+88=96 » 24+96+96=216
4: 144,000 divided by 216=666
1: 6+6+6=18 » 66+6=72...
As you can see, it is perpetual. And remember that we consistently
used a formula that worked in threes being the number that God uses
for confirmation.
When making use of the identical formula of counting by including the
"+" symbol in between the numbers, why do all these numbers relate in
such a way?
The book of Revelation contains the use of the number 7 in various
forms. For instance 7 seals, 7 trumpets, and 7 bowls. What is
interesting about the number 37 (three sevens) is if if you divide any
number that contains the same single digit three times in a row, such
as 111 to 999, it comes out to the value of if you were to add all
three numbers up. For example 888 divided by 37 equals 24. So
8+8+8=24. Or 666 divided by 37 equals 18. So 6+6+6=18. Could this be
another way of God's word confirming itself that the mystery behind
calculating the number 666 indeed is 18?
Another fascinating factor to be aware is that if you add up all the
numbers from 1 to 36 (1+2+3...+36), it totals 666. The number 36, as
in three sixes? Could this be a hint that we need to add up three
sixes rather than perceiving the number as six-hundred sixty six?
Now what could this imply? Well we know in this world we're
recognized by numbers in numerous forms. Starting from our birth
certificate to our social security card, also with our drivers
license, being recognized based on a system of ruler ship. So it is
possible that this RFID chip will contain a brand new identification
that has a complete total of 18 characters.
"here the wisdom is, the one having the mind let him calculate the
number of the wild beast, number for "of human" it is, and the number
of it 666" (Revelation 13:1, Greek Translation).
The Greek word "anthrōpos" being used in verse 18 where it says "of
human" is the Greek strongs concordance G444. The first two
definitions of the word are "a human being, whether male or female",
and, "generically, to include all human individuals". Could the number
of the beast apply to all mankind?
In the Greek (the New Testament was originally written in the Greek
language), and other translations, you will notice the beast is
described as an "it", instead of "him". The reason I'm making this
point is because when a translation says "His number is 666", this
would imply a singular person, the Antichrist. But by saying "the
number of it 666", implies that it is of the beast system as a whole.
We can know the number of the beast cannot be to identify products
(like a new barcode) to buy or sell because scripture says we cannot
buy or sell without the number of the beast. What am I getting at?
There will be instances where you could buy something someone made
themselves and it wouldn't have a store branded identification on it.
But for this number to be in our chips, that is where it must be to
conclude ultimately that we cannot buy or sell without having the
number of the beast. As previously mentioned in Revelation 13:18, the
number of the beast (6+6+6=18) is a "human number", definition
"generically, to include all human individuals".
Could this be the title of the beast, the number of its name? The
one-world beast system that is recognized by 18 characters? This is
able to match the scriptures that speaks of a mark that we must have
to buy or sell in our right hand or forehead, and that it also
includes the number of the beast, in the course of a future cashless
money society.
Go to: http://bible-freedom.orghttp://k12-teaching.live/index.php/campaigns[CAMPAIGN_UID/track-url/eg2931r…http://k12-teaching.live/index.php/campaigns/xg901yrfon4bd/track-url/eg2931…http://k12-teaching.live/index.php/campaigns/xg901yrfon4bd/track-url/eg2931…]
to see all the proof!
"Why did the Biden campaign choose 30330? 2020 divided by 666 =
3.0330 Who believes this to be a coincidence? October 2020 Isaiah 53:6
Someone said we are being whipsawed in 2020. Truly a great division is
taking place between good and evil—both symbolically and literally
(riots, unrest, politics). If you take the current year 2020 and
divide it by the number 666 (known for its satanic implications) you
will get the number 30330 (repeated). This number 30330 happens to be
the number used to vote for Joe Biden and Kamala Harris. Freaky?
Supernatural? Odd for sure. Whatever this means, it doesn’t seem
good to me. First, why would anyone knowingly choose those particular
numbers for their campaign? If they weren’t knowingly chosen, then
it appears to be a supernatural act by the evil one himself and I
would want to change those numbers ASAP. And if the numbers were
chosen knowing their significance, are you satanic? Is this campaign
satanic? Either way I do not believe this is a coincidence. And one
thing is certain, 2020 is truly being divided by Satan. He is the
master deceiver and spreader of chaos. Jesus calls him the father of
lies."
So I looked up this number 30330 concerning Joe Biden, and I found
this information:
If you send a text to that number (at that time), you would get a
response asking to support Joe's campaign to take down Donald Trump,
with one part in caps saying "CHIP IN >>" pointing to a link to go and
donate.
"CHIP IN"? Obama has used this phrase in the past on his twitter and
people believe it is a subliminal message to receive the mark of the
beast, that is to say the implantable RFID microCHIP that will go IN
our body.
God's word warns us in the end times that a false prophet will rise
up doing miraculous signs deceiving many to receive this mark:
.."And the beast was taken, and with him the false prophet that
wrought the signs in his sight, wherewith he deceived them that had
received the mark of the beast and them that worshipped his image:
they two were cast alive into the lake of fire that burneth with
brimstone" (Revelation 19:20 ASV)..
At all costs, DO NOT TAKE IT!
"Then a third angel followed them, saying with a loud voice, "If
anyone worships the beast and his image, and receives his mark on his
forehead or on his hand, he himself shall also drink of the wine of
the wrath of God, which is poured out full strength into the cup of
His indignation. He shall be tormented with fire and brimstone in the
presence of the holy angels and in the presence of the Lamb. And the
smoke of their torment ascends forever and ever; and they have no rest
day or night, who worship the beast and his image, and whoever
receives the mark of his name" (Revelation 14:9-11).
We are residing in very prophetic times with very important Biblical
prophecies being fulfilled.
When Donald Trump recognized Jerusalem as capital of Israel on
December 6 2017, this was a huge step to bring about the Third Temple
prophesied in the Holy Bible.
The scriptures alerts us that the Antichrist will seat himself in
this temple:
"...and the man of sin is revealed, the son of perdition, who opposes
and exalts himself above all that is called God or that is worshiped,
so that he sits as God in the temple of God, showing himself that he
is God" (2 Thessalonians 2:3-4).
Within the Islamic religion, there is a figure known as the Mahdi,
referred to as their messiah who they're waiting to appear. There are
many testimonies from people on-line who consider this man will be
Barack Obama who is to be the biblical Antichrist. I have had strange
dreams about Barack Obama. He came on stage declaring himself to be a
follower of Christ with no affiliation to the Muslim religion, however
it was later revealed by his family that he certainly is a religious
Muslim.
So what's in the name? The meaning of someones name can say a lot
about a person. God throughout history has given names to people that
have a specific meaning tied to their lives. How about the name Barack
Obama? Let us take a look at what may be hiding beneath the surface...
Jesus says, "And He said to them, 'I saw Satan fall like lightning
from heaven'" (Luke 10:18).
In Hebrew, the word "Barack" means "lighting", and the usage of
"Bama" (Strongs Hebrew phrase 1116) is used to mean the "heights" of
heaven.
The day after the election of Barack Obama (11/04/08), the winning
choose 3 lotto numbers in Illinois (Obama’s domestic state) for
11/5/08 were 666.
Obama was formerly a U.S. senator for Illinois, and his zip code was
60606.
Regardless, whoever seats themselves in the future Third Temple that
is to be built in Jerusalem, declaring themselves to be God IS THE
ANTICHRIST. NEVER FORGET.
So, why do we need Jesus?
"for all have sinned and fall short of the glory of God" (Romans
2:23).
"For the wages of sin is death, but the gift of God is eternal life
in Christ Jesus our Lord" (Romans 6:23).
Our good works can't save our souls from our sins. If we step in
front of a judge in the court of law, being responsible of a criminal
offense, the judge is not going to judge us by the good that we've
accomplished, but rather the crimes we've committed. If we as fallen
humanity, created in God's image, pose this kind of moral justice, how
much greater a perfect, righteous, and Holy God?
God has introduced to us His moral law's by way of the 10
commandments handed to Moses at Mt. Siani. These legal guidelines were
not given so we may be justified, however in order that we may see the
need for our saviour. They are the mirror of God's character of what
He has put in every one of us, with our conscious bearing witness that
we all know that it is wrong to steal, lie, dishonor our mother and
father, and so forth.
We may strive to comply with all the moral laws of the 10
commandments, however we'll never catch up to them to be justified
before a Holy God. The same word of the law given to Moses manifested
as flesh over 2000 years ago in the body of Jesus Christ. He came to
be our justification by perfectly fulfilling the commandments of God,
living a sinless life that solely God may fulfill.
The space between us and the law can never be reconciled by our very
own merit, however the arm of Jesus is stretched out by the grace and
mercy of God. And if we're to seize hold of, by way of faith in Him,
He'll pull us up being the one to justify us. As in the court of law,
if somebody steps in and pays your fine, despite the fact that you're
guilty, the judge can do what's legal and just and let you go free.
That is what Jesus did almost 2000 years ago on the cross. It was a
legal transaction being fulfilled in the spiritual realm by the
shedding of His blood, with His final words being, "...It is
finished!..." (John 19:30).
So why did Jesus have to die for us?
Because God is Holy and just, the wrath that we deserve could not go
unnoticed. Because of the perfect righteousness and justice of God's
character, it must be reconciled, it must be quenched and satisfied.
For God takes no pleasure in the demise of the wicked (Ezekiel
18:23). That is why in Isaiah chapter 53, where it speaks of the
coming Messiah and His soul being a sacrifice for our sins, why it
says it pleased God to crush His only begotten Son.
That is due to the fact the wrath that we deserve was justified by
being poured out upon His Son. For if it were to be poured out upon us
who've earned it, we would all die and go to hell. God created a way
of escape by pouring it out on His Son who's soul could not be left in
Hades, however was raised and seated at the right hand of God in
power.
Now once we put on the Lord Jesus Christ (Romans 13:14), God no
longer looks at the individual who deserves His wrath, but the
glorious image of His perfect Son dwelling in our hearts, justifying
us as if we received the wrath we deserve, making a way of escape from
the curse of death.
Now what we must do is repent and trust in the saviour, confessing
and turning from our sins. That is not only a head knowledge of
believing in Jesus, instead receiving His words, taking them to heart.
Where we no longer live to exercise sin, however turn from our sins
and exercise righteousness:
"Do you not know that the unrighteous will not inherit the kingdom of
God? Do not be deceived. Neither fornicators, nor idolaters, nor
adulterers, nor homosexuals, nor sodomites, nor thieves, nor covetous,
nor drunkards, nor revilers, nor extortioners will inherit the kingdom
of God. And such were some of you. But you were washed, but you were
sanctified, but you were justified in the name of the Lord Jesus and
by the Spirit of our God" (1 Corinthians 6:9-11).
By doing so we will become transformed into the image of God by way
of faith in His Son Christ Jesus Who is inclined to give the Holy
Spirit to those who ask of Him:
"Most assuredly, I (Jesus) say to you, unless one is born of water
and the Spirit, he cannot enter the kingdom of God. That which is born
of the flesh is flesh, and that which is born of the Spirit is spirit.
Do not marvel that I said to you, 'You must be born again.' (John
3:5-6).
"But you are not in the flesh but in the Spirit, if indeed the Spirit
of God dwells in you. Now if anyone does not have the Spirit of
Christ, he is not His" (Romans 8:9).
What are you waiting for? Our Father in heaven only wants the best
for us all, restoring all the things this world has stolen from us.
That is what it means to be "holy". To be made whole.
He is ready to hear from you. That God given tongue to speak
language, by means of faith, pray to Him, ask Him to forgive you by
confessing your sins and be willing to forsake them; that you accept
the sacrifice of His Son Jesus on the cross, and that you want His
Holy Spirit residing inside you transforming you into a child of God.
Jesus says, "but whoever drinks of the water that I shall give him
(the Holy Spirit) will never thirst. But the water that I shall give
him will become in him a fountain of water springing up into
everlasting life."
Did you know that Jesus spoke more about hell than anybody in the
scriptures, even more than He spoke about heaven?! For this very
reason He came to die for us, to rescue us from this place that we
deserve.
He describes hell as a actual place where,
"Their worm does not die
And the fire is not quenched" (Mark 9:44).
And where,
"There will be weeping and gnashing of teeth..." (Luke 13:28).
Jesus tells us who to fear,
"And do not fear those who kill the body but cannot kill the soul.
But rather fear Him who is able to destroy both soul and body in hell"
(Matthew 10:28).
"Now I saw a new heaven and a new earth, for the first heaven and the
first earth had passed away. Also there was no more sea. Then I, John,
saw the holy city, New Jerusalem, coming down out of heaven from God,
prepared as a bride adorned for her husband. And I heard a loud voice
from heaven saying, 'Behold, the tabernacle of God is with men, and He
will dwell with them, and they shall be His people. God Himself will
be with them and be their God. And God will wipe away every tear from
their eyes; there shall be no more death, nor sorrow, nor crying.
There shall be no more pain, for the former things have passed away.'
Then He who sat on the throne said, 'Behold, I make all things new.'
And He said to me, 'Write, for these words are true and faithful.'
And He said to me, 'It is done! I am the Alpha and the Omega, the
Beginning and the End. I will give of the fountain of the water of
life freely to him who thirsts. He who overcomes shall inherit all
things, and I will be his God and he shall be My son. But the
cowardly, unbelieving, abominable, murderers, sexually immoral,
sorcerers, idolaters, and all liars shall have their part in the lake
which burns with fire and brimstone, which is the second death.'"
(Revelation 21:1-8).
Hello,
I would like to test the System Trace Macrocell (STM) on db410c and tried
following the steps at [1]. I am using linux kernel
version 5.9.0-qcomlt-arm64 and I believe the steps described in the linked
post are for an earlier version of the kernel.
I tried those steps (but slightly adjusted so it is conform to the sysfs
path on 5.9.0-qcomlt-arm64) and it fails when trying to link:
*$ echo 802000.stm > **/sys/class/stm_source/ftrace/stm_source_link*
bash: echo: write error: Invalid argument
*$ echo stm > **/sys/class/stm_source/ftrace/stm_source_link*
bash: echo: write error: Invalid argument
*$ echo stm0 > **/sys/class/stm_source/ftrace/stm_source_link*
bash: echo: write error: Invalid argument
I'd be happy to test the steps on a working version of the kernel. Does
anyone know for which kernel version the steps in [1] are?
I'd also be grateful if someone has the right steps to test STM with ftrace
on the recent kernel versions.
Thank you,
Enes
[1] https://lists.linaro.org/pipermail/coresight/2018-August/001653.html
Hi Wojciech,
Are you still working on this patchset here? https://lists.linaro.org/pipermail/coresight/2019-June/002871.html
I'm asking because I was also looking to make a change related to timestamps, and I see there has been quite
a bit of discussion on your one over the revisions.
My change would be something like I've pasted below. This was suggested by Al Grant so that the synthesized samples
have kernel timestamps that can be correlated (at least roughly) with MMAP and COMM records.
The issue is that in your patchset, you are also setting the sample.time field, but with the decoded timestamp
rather than the kernel one. I suppose this email is to re-start the discussion with the whole mailing list about
what should be in that field.
Thanks
James
---
diff --git a/tools/perf/util/cs-etm.c b/tools/perf/util/cs-etm.c
index 7206c7f..7f7a68c 100644
--- a/tools/perf/util/cs-etm.c
+++ b/tools/perf/util/cs-etm.c
@@ -55,6 +55,7 @@ struct cs_etm_auxtrace {
u8 sample_instructions;
int num_cpu;
+ u64 latest_timestamp;
u32 auxtrace_type;
u64 branches_sample_type;
u64 branches_id;
@@ -1152,6 +1153,7 @@ static int cs_etm__synth_instruction_sample(struct cs_etm_queue *etmq,
event->sample.header.misc = cs_etm__cpu_mode(etmq, addr);
event->sample.header.size = sizeof(struct perf_event_header);
+ sample.time = etm->latest_timestamp;
sample.ip = addr;
sample.pid = tidq->pid;
sample.tid = tidq->tid;
@@ -1209,6 +1211,7 @@ static int cs_etm__synth_branch_sample(struct cs_etm_queue *etmq,
event->sample.header.misc = cs_etm__cpu_mode(etmq, ip);
event->sample.header.size = sizeof(struct perf_event_header);
+ sample.time = etm->latest_timestamp;
sample.ip = ip;
sample.pid = tidq->pid;
sample.tid = tidq->tid;
@@ -2367,8 +2370,10 @@ static int cs_etm__process_event(struct perf_session *session,
return cs_etm__process_switch_cpu_wide(etm, event);
if (!etm->timeless_decoding &&
- event->header.type == PERF_RECORD_AUX)
+ event->header.type == PERF_RECORD_AUX) {
+ etm->latest_timestamp = timestamp;
return cs_etm__process_queues(etm);
+ }
return 0;
}
This patchset introduces initial concepts in CoreSight system
configuration management support. to allow more detailed and complex
programming to be applied to CoreSight systems during trace capture.
Configurations consist of 2 elements:-
1) Features - programming combinations for devices, applied to a class of
device on the system (all ETMv4), or individual devices.
2) Configurations - a set of programmed features used when the named
configuration is selected.
Features and configurations are declared as a data table, a set of register,
resource and parameter requirements. Features and configurations are loaded
into the system by the virtual cs_syscfg device. This then matches features
to any registered devices and loads the feature into them.
Individual device classes that support feature and configuration register
with cs_syscfg.
Once loaded a configuration can be enabled for a specific trace run.
Configurations are registered with the perf cs_etm event as entries in
cs_etm/cs_config. These can be selected on the perf command line as follows:-
perf record -e cs_etm/<config_name>/ ...
This patch set has one pre-loaded configuration and feature.
A named "strobing" feature is provided for ETMv4.
A named "autofdo" configuration is provided. This configuration enables
strobing on any ETM in used.
Thus the command:
perf record -e cs_etm/autofdo/ ...
will trace the supplied application while enabling the "autofdo" configuation
on each ETM as it is enabled by perf. This in turn will enable strobing for
the ETM - with default parameters. Parameters can be adjusted using configfs.
The sink used in the trace run will be automatically selected.
A configuation can supply up to 15 of preset parameter values, which will
subsitute in parameter values for any feature used in the configuration.
Selection of preset values as follows
perf record -e cs_etm/autofdo,preset=1/ ...
(valid presets 1-N, where N is the number supplied in the configuration, not
exceeding 15. preset=0 is the same as not selecting a preset.)
Applies to coresight/next (5.11-rc2 base)
Changes since v3: (Primarily based on comments from Matthieu)
1) Locking mechanisms simplified.
2) Removed the possibility to enable features independently from
configurations.Only configurations can be enabled now. Simplifies programming
logic.
3) Configuration now uses an activate->enable mechanism. This means that perf
will activate a selected configuration at the start of a session (during
setup_aux), and disable at the end of a session (around free_aux)
The active configuration and associated features will be programmed into the
CoreSight device instances when they are enabled. This locks the configuration
into the system while in use. Parameters cannot be altered while this is
in place. This mechanism will be extended in future for dynamic load / unload
of configurations to prevent removal while in use.
4) Removed the custom bus / driver as un-necessary. A single device is
registered to own perf fs elements and configfs.
5) Various other minor issues addressed.
Changes since v2:
1) Added documentation file.
2) Altered cs_syscfg driver to no longer be coresight_device based, and moved
to its own custom bus to remove it from the main coresight bus. (Mathieu)
3) Added configfs support to inspect and control loaded configurations and
features. Allows listing of preset values (Yabin Cui)
4) Dropped sysfs support for adjusting feature parameters on the per device
basis, in favour of a single point adjustment in configfs that is pushed to all
device instances.
5) Altered how the config and preset command line options are handled in perf
and the drivers. (Mathieu and Suzuki).
6) Fixes for various issues and technical points (Mathieu, Yabin)
Changes since v1:
1) Moved preloaded configurations and features out of individual drivers.
2) Added cs_syscfg driver to manage configurations and features. Individual
drivers register with cs_syscfg indicating support for config, and provide
matching information that the system uses to load features into the drivers.
This allows individual drivers to be updated on an as needed basis - and
removes the need to consider devices that cannot benefit from configuration -
static replicators, funnels, tpiu.
3) Added perf selection of configuarations.
4) Rebased onto the coresight module loading set.
To follow in future revisions / sets:-
a) load of additional config and features by loadable module.
b) load of additional config and features by configfs
c) enhanced resource management for ETMv4 and checking features have sufficient
resources to be enabled.
d) ECT and CTI support for configuration and features.
Mike Leach (10):
coresight: syscfg: Initial coresight system configuration
coresight: syscfg: Add registration and feature loading for cs devices
coresight: config: Add configuration and feature generic functions
coresight: etm-perf: update to handle configuration selection
coresight: syscfg: Add API to activate and enable configurations
coresight: etm-perf: Update to activate selected configuration
coresight: etm4x: Add complex configuration handlers to etmv4
coresight: config: Add preloaded configurations
coresight: syscfg: Add initial configfs support
coresight: docs: Add documentation for CoreSight config
.../trace/coresight/coresight-config.rst | 244 ++++++
Documentation/trace/coresight/coresight.rst | 16 +
drivers/hwtracing/coresight/Makefile | 7 +-
.../hwtracing/coresight/coresight-cfg-afdo.c | 154 ++++
.../coresight/coresight-cfg-preload.c | 25 +
.../coresight/coresight-cfg-preload.h | 11 +
.../hwtracing/coresight/coresight-config.c | 246 ++++++
.../hwtracing/coresight/coresight-config.h | 282 +++++++
drivers/hwtracing/coresight/coresight-core.c | 18 +-
.../hwtracing/coresight/coresight-etm-perf.c | 180 ++++-
.../hwtracing/coresight/coresight-etm-perf.h | 12 +-
.../hwtracing/coresight/coresight-etm4x-cfg.c | 184 +++++
.../hwtracing/coresight/coresight-etm4x-cfg.h | 29 +
.../coresight/coresight-etm4x-core.c | 38 +-
.../coresight/coresight-etm4x-sysfs.c | 3 +
.../coresight/coresight-syscfg-configfs.c | 399 +++++++++
.../coresight/coresight-syscfg-configfs.h | 45 ++
.../hwtracing/coresight/coresight-syscfg.c | 761 ++++++++++++++++++
.../hwtracing/coresight/coresight-syscfg.h | 90 +++
include/linux/coresight.h | 7 +
20 files changed, 2721 insertions(+), 30 deletions(-)
create mode 100644 Documentation/trace/coresight/coresight-config.rst
create mode 100644 drivers/hwtracing/coresight/coresight-cfg-afdo.c
create mode 100644 drivers/hwtracing/coresight/coresight-cfg-preload.c
create mode 100644 drivers/hwtracing/coresight/coresight-cfg-preload.h
create mode 100644 drivers/hwtracing/coresight/coresight-config.c
create mode 100644 drivers/hwtracing/coresight/coresight-config.h
create mode 100644 drivers/hwtracing/coresight/coresight-etm4x-cfg.c
create mode 100644 drivers/hwtracing/coresight/coresight-etm4x-cfg.h
create mode 100644 drivers/hwtracing/coresight/coresight-syscfg-configfs.c
create mode 100644 drivers/hwtracing/coresight/coresight-syscfg-configfs.h
create mode 100644 drivers/hwtracing/coresight/coresight-syscfg.c
create mode 100644 drivers/hwtracing/coresight/coresight-syscfg.h
--
2.17.1