Raspberry pi 3 B with Ubuntu 18.04 server arm64: what pi version Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern)How to use onboard wifi on Raspberry Pi 3 with Ubuntu Server 16.04?What is the most authoritative file/process for managing IP addresses on an 18.04 server?Ubuntu 18.04 gnome high CPU usageHow to properly downgrade openssl version under Ubuntu 18.04Ubuntu 18.04 LTS GUI is unusably slow with Matrox G200eR2 (Dell r720xd server)Python version in Ubuntu 18.04Convert from armhf to arm64 on Raspberry Pi 3 B running 64-bit Ubuntu Server 18.04 LTS (Bionic)Graphical IP Blocker program for Ubuntu 18.04Ubuntu 18.04, PHP 5.3 installingEnable i2c on raspberry pi Ubuntu
Why are both D and D# fitting into my E minor key?
If a contract sometimes uses the wrong name, is it still valid?
Dating a Former Employee
Why light coming from distant stars is not discrete?
Novel: non-telepath helps overthrow rule by telepaths
How do pianists reach extremely loud dynamics?
Deactivate Gutenberg tipps forever - not Gutenberg
How to remove list items depending on predecessor in python
Adverb for when you're not exaggerating
What is the meaning of the new sigil in Game of Thrones Season 8 intro?
Is it fair for a professor to grade us on the possession of past papers?
How to find out what spells would be useless to a blind NPC spellcaster?
Ring Automorphisms that fix 1.
Why did the US and UK choose different solutions to the problem of an undemocratic upper house?
What does this icon in iOS Stardew Valley mean?
Can I cast Passwall to drop an enemy into a 20-foot pit?
Extract all GPU name, model and GPU ram
Why did the rest of the Eastern Bloc not invade Yugoslavia?
How does the particle を relate to the verb 行く in the structure「A を + B に行く」?
Is it a good idea to use CNN to classify 1D signal?
Remainder theorem for polynomials (JUEE 1990)
Why do people hide their license plates in the EU?
How to override model in magento2?
List of Python versions
Raspberry pi 3 B with Ubuntu 18.04 server arm64: what pi version
Announcing the arrival of Valued Associate #679: Cesar Manara
Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern)How to use onboard wifi on Raspberry Pi 3 with Ubuntu Server 16.04?What is the most authoritative file/process for managing IP addresses on an 18.04 server?Ubuntu 18.04 gnome high CPU usageHow to properly downgrade openssl version under Ubuntu 18.04Ubuntu 18.04 LTS GUI is unusably slow with Matrox G200eR2 (Dell r720xd server)Python version in Ubuntu 18.04Convert from armhf to arm64 on Raspberry Pi 3 B running 64-bit Ubuntu Server 18.04 LTS (Bionic)Graphical IP Blocker program for Ubuntu 18.04Ubuntu 18.04, PHP 5.3 installingEnable i2c on raspberry pi Ubuntu
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;
How can I find what chip I have (what version of raspberry pi) with Ubuntu 18.04 server for arm64? What file can I check or what command can I run? /proc/cpuinfo does not have useful information, just some generic details without mention of the pi.
18.04 raspberrypi
|
show 1 more comment
How can I find what chip I have (what version of raspberry pi) with Ubuntu 18.04 server for arm64? What file can I check or what command can I run? /proc/cpuinfo does not have useful information, just some generic details without mention of the pi.
18.04 raspberrypi
Thecat /proc/cpuinfoshould produce a Revision number that corresponds to the board. See: raspberrypi.org/documentation/hardware/raspberrypi/…
– Terrance
Apr 1 at 3:47
It doesnt't, at least for Ubuntu 18.04 server. It only says "revision : 4".
– anvoice
Apr 1 at 4:23
You might be at an impasse with this because the RP does not support SMBIOS or DMI that allows for reading board information. It might also be something you might have to file as a bug to get the revision read in the cpuinfo.
– Terrance
Apr 1 at 4:54
I think you're right that it qualifies as a bug. However, I just found at least one workaround. It's short but I'll include it as an answer just in case people find it helpful.
– anvoice
Apr 1 at 5:11
It looks like your actual question was "which Raspberry Pi am I running on?"; whereas your title seems to be asking "which CPU does my Raspberry Pi have?"; hence the confusion in the answers. I suggest that you edit your question to change the title.
– Roger Lipscombe
Apr 1 at 18:34
|
show 1 more comment
How can I find what chip I have (what version of raspberry pi) with Ubuntu 18.04 server for arm64? What file can I check or what command can I run? /proc/cpuinfo does not have useful information, just some generic details without mention of the pi.
18.04 raspberrypi
How can I find what chip I have (what version of raspberry pi) with Ubuntu 18.04 server for arm64? What file can I check or what command can I run? /proc/cpuinfo does not have useful information, just some generic details without mention of the pi.
18.04 raspberrypi
18.04 raspberrypi
edited Apr 1 at 20:04
anvoice
asked Apr 1 at 2:57
anvoiceanvoice
1419
1419
Thecat /proc/cpuinfoshould produce a Revision number that corresponds to the board. See: raspberrypi.org/documentation/hardware/raspberrypi/…
– Terrance
Apr 1 at 3:47
It doesnt't, at least for Ubuntu 18.04 server. It only says "revision : 4".
– anvoice
Apr 1 at 4:23
You might be at an impasse with this because the RP does not support SMBIOS or DMI that allows for reading board information. It might also be something you might have to file as a bug to get the revision read in the cpuinfo.
– Terrance
Apr 1 at 4:54
I think you're right that it qualifies as a bug. However, I just found at least one workaround. It's short but I'll include it as an answer just in case people find it helpful.
– anvoice
Apr 1 at 5:11
It looks like your actual question was "which Raspberry Pi am I running on?"; whereas your title seems to be asking "which CPU does my Raspberry Pi have?"; hence the confusion in the answers. I suggest that you edit your question to change the title.
– Roger Lipscombe
Apr 1 at 18:34
|
show 1 more comment
Thecat /proc/cpuinfoshould produce a Revision number that corresponds to the board. See: raspberrypi.org/documentation/hardware/raspberrypi/…
– Terrance
Apr 1 at 3:47
It doesnt't, at least for Ubuntu 18.04 server. It only says "revision : 4".
– anvoice
Apr 1 at 4:23
You might be at an impasse with this because the RP does not support SMBIOS or DMI that allows for reading board information. It might also be something you might have to file as a bug to get the revision read in the cpuinfo.
– Terrance
Apr 1 at 4:54
I think you're right that it qualifies as a bug. However, I just found at least one workaround. It's short but I'll include it as an answer just in case people find it helpful.
– anvoice
Apr 1 at 5:11
It looks like your actual question was "which Raspberry Pi am I running on?"; whereas your title seems to be asking "which CPU does my Raspberry Pi have?"; hence the confusion in the answers. I suggest that you edit your question to change the title.
– Roger Lipscombe
Apr 1 at 18:34
The
cat /proc/cpuinfo should produce a Revision number that corresponds to the board. See: raspberrypi.org/documentation/hardware/raspberrypi/…– Terrance
Apr 1 at 3:47
The
cat /proc/cpuinfo should produce a Revision number that corresponds to the board. See: raspberrypi.org/documentation/hardware/raspberrypi/…– Terrance
Apr 1 at 3:47
It doesnt't, at least for Ubuntu 18.04 server. It only says "revision : 4".
– anvoice
Apr 1 at 4:23
It doesnt't, at least for Ubuntu 18.04 server. It only says "revision : 4".
– anvoice
Apr 1 at 4:23
You might be at an impasse with this because the RP does not support SMBIOS or DMI that allows for reading board information. It might also be something you might have to file as a bug to get the revision read in the cpuinfo.
– Terrance
Apr 1 at 4:54
You might be at an impasse with this because the RP does not support SMBIOS or DMI that allows for reading board information. It might also be something you might have to file as a bug to get the revision read in the cpuinfo.
– Terrance
Apr 1 at 4:54
I think you're right that it qualifies as a bug. However, I just found at least one workaround. It's short but I'll include it as an answer just in case people find it helpful.
– anvoice
Apr 1 at 5:11
I think you're right that it qualifies as a bug. However, I just found at least one workaround. It's short but I'll include it as an answer just in case people find it helpful.
– anvoice
Apr 1 at 5:11
It looks like your actual question was "which Raspberry Pi am I running on?"; whereas your title seems to be asking "which CPU does my Raspberry Pi have?"; hence the confusion in the answers. I suggest that you edit your question to change the title.
– Roger Lipscombe
Apr 1 at 18:34
It looks like your actual question was "which Raspberry Pi am I running on?"; whereas your title seems to be asking "which CPU does my Raspberry Pi have?"; hence the confusion in the answers. I suggest that you edit your question to change the title.
– Roger Lipscombe
Apr 1 at 18:34
|
show 1 more comment
3 Answers
3
active
oldest
votes
At least on Ubuntu 18.04 server for arm64 and with a Raspberry Pi 3 B, the following command gives the board, including revision:
lshw
A less verbose output that's easier to read is given by:
lshw -short
That gave me my board as a "Raspberry Pi 3 B Rev 1.2", which is exactly what was needed in this case.
add a comment |
The command lscpu is what you are looking for. Here's an example output of the command (taken on my Raspberry Pi 3B+):
lscpu
which produces the following output:
Architecture: armv7l
Byte Order: Little Endian
CPU(s): 4
On-line CPU(s) list: 0-3
Thread(s) per core: 1
Core(s) per socket: 4
Socket(s): 1
Model: 4
Model name: ARMv7 Processor rev 4 (v7l)
CPU max MHz: 1200,0000
CPU min MHz: 600,0000
BogoMIPS: 38.40
Flags: half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
Another option is the inxi command (you might have to install it if not present with sudo apt install inxi). Use the flag -C as follows:
inxi -C
which produces the following output:
CPU: Quad core ARMv7 rev 4 (v7l) (-MCP-) (ARM)
clock speeds: max: 1200 MHz 1: 1200 MHz 2: 1200 MHz 3: 1200 MHz 4: 1200 MHz
As for identifying which chip your board has, you can check the chip on the board as well the manufacturers website for info and as well as the different selling outlets for getting technical details.
Thank you, that definitely gives extra information. However, the model name when I run lscpu is listed as Cortex A-53, which is on both the pi 2 and 3 I believe. Do you happen to know of a more specific command/file which can distinguish between these two boards?
– anvoice
Apr 1 at 3:21
Normaly the board type and revision is printed on the board too, so you might be able to check that, otherwise I'm out of clues.
– Videonauth
Apr 1 at 3:23
I see. I know what my board is, but a library maintainer needs this info to adjust his library to work with my hardware and software. Tried inxi, it also gives generic output only. Really appreciate the help though.
– anvoice
Apr 1 at 3:25
1
As for the library you want to use, there's only one question. is there a library which provides the same function you need or not. This is the information you can get from your machine program wise. On desktop computers there might be more information to get on the CPU version, the raspberry lacks in that regard a bit as putting all this information in some chips is adding to the costs.
– Videonauth
Apr 1 at 3:46
1
Current inxi (3.0.xx) has way better ARM support than legacy inxi (2.xx.yy), which I think is what you find in 18-4. That will do its level best to give quite a bit of information about the actual SBC device itself. On rasberry pi 3 the only thing it's not catching is the mmc wifi device, which is too complicated to grab data on, but otherwise the report for pi 3 is quite complete in new inxi. Legacy inxi had only rudimentary ARM support. Compare inxi -Fxxx or -v7 on legacy and current on any pi device and you'll see what I mean.
– Lizardx
Apr 1 at 4:45
|
show 2 more comments
I attempted to port pigpio to Debian arm64, in the end my attempt failed because I discovererd that the Debian arm64 kernel doesn't support the userspace mailbox interface that pigpio relies on, but in doing so I did some research on how to detect Pis while running Debian arm64 kernels. I suspect this will also work for ubuntu arm64.
As you have discovered /proc/cpuinfo only has CPU core information on these kernels. Fortunately the information can be found elsewhere in /proc
Firstly to check if the device is a Pi or not, I checked /proc/device-tree/model , this has a text string describing the device, so false positives are unlikely.
To get the revision code I used /proc/device-tree/system/linux,revision , this contains the revision code as a big-endian binary integer. So it needs to be read out of the file as a binary integer, then converted to little-endian (I used ntohl for this).
You can see my code at https://github.com/joan2937/pigpio/pull/255/commits/2e229d667fde8a2a881d5aa8482b2bb936b09f26
Thank you, that is indeed what I was looking for.
– anvoice
Apr 1 at 20:11
add a comment |
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "89"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f1130244%2fraspberry-pi-3-b-with-ubuntu-18-04-server-arm64-what-pi-version%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
3 Answers
3
active
oldest
votes
3 Answers
3
active
oldest
votes
active
oldest
votes
active
oldest
votes
At least on Ubuntu 18.04 server for arm64 and with a Raspberry Pi 3 B, the following command gives the board, including revision:
lshw
A less verbose output that's easier to read is given by:
lshw -short
That gave me my board as a "Raspberry Pi 3 B Rev 1.2", which is exactly what was needed in this case.
add a comment |
At least on Ubuntu 18.04 server for arm64 and with a Raspberry Pi 3 B, the following command gives the board, including revision:
lshw
A less verbose output that's easier to read is given by:
lshw -short
That gave me my board as a "Raspberry Pi 3 B Rev 1.2", which is exactly what was needed in this case.
add a comment |
At least on Ubuntu 18.04 server for arm64 and with a Raspberry Pi 3 B, the following command gives the board, including revision:
lshw
A less verbose output that's easier to read is given by:
lshw -short
That gave me my board as a "Raspberry Pi 3 B Rev 1.2", which is exactly what was needed in this case.
At least on Ubuntu 18.04 server for arm64 and with a Raspberry Pi 3 B, the following command gives the board, including revision:
lshw
A less verbose output that's easier to read is given by:
lshw -short
That gave me my board as a "Raspberry Pi 3 B Rev 1.2", which is exactly what was needed in this case.
answered Apr 1 at 5:15
anvoiceanvoice
1419
1419
add a comment |
add a comment |
The command lscpu is what you are looking for. Here's an example output of the command (taken on my Raspberry Pi 3B+):
lscpu
which produces the following output:
Architecture: armv7l
Byte Order: Little Endian
CPU(s): 4
On-line CPU(s) list: 0-3
Thread(s) per core: 1
Core(s) per socket: 4
Socket(s): 1
Model: 4
Model name: ARMv7 Processor rev 4 (v7l)
CPU max MHz: 1200,0000
CPU min MHz: 600,0000
BogoMIPS: 38.40
Flags: half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
Another option is the inxi command (you might have to install it if not present with sudo apt install inxi). Use the flag -C as follows:
inxi -C
which produces the following output:
CPU: Quad core ARMv7 rev 4 (v7l) (-MCP-) (ARM)
clock speeds: max: 1200 MHz 1: 1200 MHz 2: 1200 MHz 3: 1200 MHz 4: 1200 MHz
As for identifying which chip your board has, you can check the chip on the board as well the manufacturers website for info and as well as the different selling outlets for getting technical details.
Thank you, that definitely gives extra information. However, the model name when I run lscpu is listed as Cortex A-53, which is on both the pi 2 and 3 I believe. Do you happen to know of a more specific command/file which can distinguish between these two boards?
– anvoice
Apr 1 at 3:21
Normaly the board type and revision is printed on the board too, so you might be able to check that, otherwise I'm out of clues.
– Videonauth
Apr 1 at 3:23
I see. I know what my board is, but a library maintainer needs this info to adjust his library to work with my hardware and software. Tried inxi, it also gives generic output only. Really appreciate the help though.
– anvoice
Apr 1 at 3:25
1
As for the library you want to use, there's only one question. is there a library which provides the same function you need or not. This is the information you can get from your machine program wise. On desktop computers there might be more information to get on the CPU version, the raspberry lacks in that regard a bit as putting all this information in some chips is adding to the costs.
– Videonauth
Apr 1 at 3:46
1
Current inxi (3.0.xx) has way better ARM support than legacy inxi (2.xx.yy), which I think is what you find in 18-4. That will do its level best to give quite a bit of information about the actual SBC device itself. On rasberry pi 3 the only thing it's not catching is the mmc wifi device, which is too complicated to grab data on, but otherwise the report for pi 3 is quite complete in new inxi. Legacy inxi had only rudimentary ARM support. Compare inxi -Fxxx or -v7 on legacy and current on any pi device and you'll see what I mean.
– Lizardx
Apr 1 at 4:45
|
show 2 more comments
The command lscpu is what you are looking for. Here's an example output of the command (taken on my Raspberry Pi 3B+):
lscpu
which produces the following output:
Architecture: armv7l
Byte Order: Little Endian
CPU(s): 4
On-line CPU(s) list: 0-3
Thread(s) per core: 1
Core(s) per socket: 4
Socket(s): 1
Model: 4
Model name: ARMv7 Processor rev 4 (v7l)
CPU max MHz: 1200,0000
CPU min MHz: 600,0000
BogoMIPS: 38.40
Flags: half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
Another option is the inxi command (you might have to install it if not present with sudo apt install inxi). Use the flag -C as follows:
inxi -C
which produces the following output:
CPU: Quad core ARMv7 rev 4 (v7l) (-MCP-) (ARM)
clock speeds: max: 1200 MHz 1: 1200 MHz 2: 1200 MHz 3: 1200 MHz 4: 1200 MHz
As for identifying which chip your board has, you can check the chip on the board as well the manufacturers website for info and as well as the different selling outlets for getting technical details.
Thank you, that definitely gives extra information. However, the model name when I run lscpu is listed as Cortex A-53, which is on both the pi 2 and 3 I believe. Do you happen to know of a more specific command/file which can distinguish between these two boards?
– anvoice
Apr 1 at 3:21
Normaly the board type and revision is printed on the board too, so you might be able to check that, otherwise I'm out of clues.
– Videonauth
Apr 1 at 3:23
I see. I know what my board is, but a library maintainer needs this info to adjust his library to work with my hardware and software. Tried inxi, it also gives generic output only. Really appreciate the help though.
– anvoice
Apr 1 at 3:25
1
As for the library you want to use, there's only one question. is there a library which provides the same function you need or not. This is the information you can get from your machine program wise. On desktop computers there might be more information to get on the CPU version, the raspberry lacks in that regard a bit as putting all this information in some chips is adding to the costs.
– Videonauth
Apr 1 at 3:46
1
Current inxi (3.0.xx) has way better ARM support than legacy inxi (2.xx.yy), which I think is what you find in 18-4. That will do its level best to give quite a bit of information about the actual SBC device itself. On rasberry pi 3 the only thing it's not catching is the mmc wifi device, which is too complicated to grab data on, but otherwise the report for pi 3 is quite complete in new inxi. Legacy inxi had only rudimentary ARM support. Compare inxi -Fxxx or -v7 on legacy and current on any pi device and you'll see what I mean.
– Lizardx
Apr 1 at 4:45
|
show 2 more comments
The command lscpu is what you are looking for. Here's an example output of the command (taken on my Raspberry Pi 3B+):
lscpu
which produces the following output:
Architecture: armv7l
Byte Order: Little Endian
CPU(s): 4
On-line CPU(s) list: 0-3
Thread(s) per core: 1
Core(s) per socket: 4
Socket(s): 1
Model: 4
Model name: ARMv7 Processor rev 4 (v7l)
CPU max MHz: 1200,0000
CPU min MHz: 600,0000
BogoMIPS: 38.40
Flags: half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
Another option is the inxi command (you might have to install it if not present with sudo apt install inxi). Use the flag -C as follows:
inxi -C
which produces the following output:
CPU: Quad core ARMv7 rev 4 (v7l) (-MCP-) (ARM)
clock speeds: max: 1200 MHz 1: 1200 MHz 2: 1200 MHz 3: 1200 MHz 4: 1200 MHz
As for identifying which chip your board has, you can check the chip on the board as well the manufacturers website for info and as well as the different selling outlets for getting technical details.
The command lscpu is what you are looking for. Here's an example output of the command (taken on my Raspberry Pi 3B+):
lscpu
which produces the following output:
Architecture: armv7l
Byte Order: Little Endian
CPU(s): 4
On-line CPU(s) list: 0-3
Thread(s) per core: 1
Core(s) per socket: 4
Socket(s): 1
Model: 4
Model name: ARMv7 Processor rev 4 (v7l)
CPU max MHz: 1200,0000
CPU min MHz: 600,0000
BogoMIPS: 38.40
Flags: half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
Another option is the inxi command (you might have to install it if not present with sudo apt install inxi). Use the flag -C as follows:
inxi -C
which produces the following output:
CPU: Quad core ARMv7 rev 4 (v7l) (-MCP-) (ARM)
clock speeds: max: 1200 MHz 1: 1200 MHz 2: 1200 MHz 3: 1200 MHz 4: 1200 MHz
As for identifying which chip your board has, you can check the chip on the board as well the manufacturers website for info and as well as the different selling outlets for getting technical details.
edited Apr 1 at 13:33
user7761803
152
152
answered Apr 1 at 3:06
VideonauthVideonauth
25k1274103
25k1274103
Thank you, that definitely gives extra information. However, the model name when I run lscpu is listed as Cortex A-53, which is on both the pi 2 and 3 I believe. Do you happen to know of a more specific command/file which can distinguish between these two boards?
– anvoice
Apr 1 at 3:21
Normaly the board type and revision is printed on the board too, so you might be able to check that, otherwise I'm out of clues.
– Videonauth
Apr 1 at 3:23
I see. I know what my board is, but a library maintainer needs this info to adjust his library to work with my hardware and software. Tried inxi, it also gives generic output only. Really appreciate the help though.
– anvoice
Apr 1 at 3:25
1
As for the library you want to use, there's only one question. is there a library which provides the same function you need or not. This is the information you can get from your machine program wise. On desktop computers there might be more information to get on the CPU version, the raspberry lacks in that regard a bit as putting all this information in some chips is adding to the costs.
– Videonauth
Apr 1 at 3:46
1
Current inxi (3.0.xx) has way better ARM support than legacy inxi (2.xx.yy), which I think is what you find in 18-4. That will do its level best to give quite a bit of information about the actual SBC device itself. On rasberry pi 3 the only thing it's not catching is the mmc wifi device, which is too complicated to grab data on, but otherwise the report for pi 3 is quite complete in new inxi. Legacy inxi had only rudimentary ARM support. Compare inxi -Fxxx or -v7 on legacy and current on any pi device and you'll see what I mean.
– Lizardx
Apr 1 at 4:45
|
show 2 more comments
Thank you, that definitely gives extra information. However, the model name when I run lscpu is listed as Cortex A-53, which is on both the pi 2 and 3 I believe. Do you happen to know of a more specific command/file which can distinguish between these two boards?
– anvoice
Apr 1 at 3:21
Normaly the board type and revision is printed on the board too, so you might be able to check that, otherwise I'm out of clues.
– Videonauth
Apr 1 at 3:23
I see. I know what my board is, but a library maintainer needs this info to adjust his library to work with my hardware and software. Tried inxi, it also gives generic output only. Really appreciate the help though.
– anvoice
Apr 1 at 3:25
1
As for the library you want to use, there's only one question. is there a library which provides the same function you need or not. This is the information you can get from your machine program wise. On desktop computers there might be more information to get on the CPU version, the raspberry lacks in that regard a bit as putting all this information in some chips is adding to the costs.
– Videonauth
Apr 1 at 3:46
1
Current inxi (3.0.xx) has way better ARM support than legacy inxi (2.xx.yy), which I think is what you find in 18-4. That will do its level best to give quite a bit of information about the actual SBC device itself. On rasberry pi 3 the only thing it's not catching is the mmc wifi device, which is too complicated to grab data on, but otherwise the report for pi 3 is quite complete in new inxi. Legacy inxi had only rudimentary ARM support. Compare inxi -Fxxx or -v7 on legacy and current on any pi device and you'll see what I mean.
– Lizardx
Apr 1 at 4:45
Thank you, that definitely gives extra information. However, the model name when I run lscpu is listed as Cortex A-53, which is on both the pi 2 and 3 I believe. Do you happen to know of a more specific command/file which can distinguish between these two boards?
– anvoice
Apr 1 at 3:21
Thank you, that definitely gives extra information. However, the model name when I run lscpu is listed as Cortex A-53, which is on both the pi 2 and 3 I believe. Do you happen to know of a more specific command/file which can distinguish between these two boards?
– anvoice
Apr 1 at 3:21
Normaly the board type and revision is printed on the board too, so you might be able to check that, otherwise I'm out of clues.
– Videonauth
Apr 1 at 3:23
Normaly the board type and revision is printed on the board too, so you might be able to check that, otherwise I'm out of clues.
– Videonauth
Apr 1 at 3:23
I see. I know what my board is, but a library maintainer needs this info to adjust his library to work with my hardware and software. Tried inxi, it also gives generic output only. Really appreciate the help though.
– anvoice
Apr 1 at 3:25
I see. I know what my board is, but a library maintainer needs this info to adjust his library to work with my hardware and software. Tried inxi, it also gives generic output only. Really appreciate the help though.
– anvoice
Apr 1 at 3:25
1
1
As for the library you want to use, there's only one question. is there a library which provides the same function you need or not. This is the information you can get from your machine program wise. On desktop computers there might be more information to get on the CPU version, the raspberry lacks in that regard a bit as putting all this information in some chips is adding to the costs.
– Videonauth
Apr 1 at 3:46
As for the library you want to use, there's only one question. is there a library which provides the same function you need or not. This is the information you can get from your machine program wise. On desktop computers there might be more information to get on the CPU version, the raspberry lacks in that regard a bit as putting all this information in some chips is adding to the costs.
– Videonauth
Apr 1 at 3:46
1
1
Current inxi (3.0.xx) has way better ARM support than legacy inxi (2.xx.yy), which I think is what you find in 18-4. That will do its level best to give quite a bit of information about the actual SBC device itself. On rasberry pi 3 the only thing it's not catching is the mmc wifi device, which is too complicated to grab data on, but otherwise the report for pi 3 is quite complete in new inxi. Legacy inxi had only rudimentary ARM support. Compare inxi -Fxxx or -v7 on legacy and current on any pi device and you'll see what I mean.
– Lizardx
Apr 1 at 4:45
Current inxi (3.0.xx) has way better ARM support than legacy inxi (2.xx.yy), which I think is what you find in 18-4. That will do its level best to give quite a bit of information about the actual SBC device itself. On rasberry pi 3 the only thing it's not catching is the mmc wifi device, which is too complicated to grab data on, but otherwise the report for pi 3 is quite complete in new inxi. Legacy inxi had only rudimentary ARM support. Compare inxi -Fxxx or -v7 on legacy and current on any pi device and you'll see what I mean.
– Lizardx
Apr 1 at 4:45
|
show 2 more comments
I attempted to port pigpio to Debian arm64, in the end my attempt failed because I discovererd that the Debian arm64 kernel doesn't support the userspace mailbox interface that pigpio relies on, but in doing so I did some research on how to detect Pis while running Debian arm64 kernels. I suspect this will also work for ubuntu arm64.
As you have discovered /proc/cpuinfo only has CPU core information on these kernels. Fortunately the information can be found elsewhere in /proc
Firstly to check if the device is a Pi or not, I checked /proc/device-tree/model , this has a text string describing the device, so false positives are unlikely.
To get the revision code I used /proc/device-tree/system/linux,revision , this contains the revision code as a big-endian binary integer. So it needs to be read out of the file as a binary integer, then converted to little-endian (I used ntohl for this).
You can see my code at https://github.com/joan2937/pigpio/pull/255/commits/2e229d667fde8a2a881d5aa8482b2bb936b09f26
Thank you, that is indeed what I was looking for.
– anvoice
Apr 1 at 20:11
add a comment |
I attempted to port pigpio to Debian arm64, in the end my attempt failed because I discovererd that the Debian arm64 kernel doesn't support the userspace mailbox interface that pigpio relies on, but in doing so I did some research on how to detect Pis while running Debian arm64 kernels. I suspect this will also work for ubuntu arm64.
As you have discovered /proc/cpuinfo only has CPU core information on these kernels. Fortunately the information can be found elsewhere in /proc
Firstly to check if the device is a Pi or not, I checked /proc/device-tree/model , this has a text string describing the device, so false positives are unlikely.
To get the revision code I used /proc/device-tree/system/linux,revision , this contains the revision code as a big-endian binary integer. So it needs to be read out of the file as a binary integer, then converted to little-endian (I used ntohl for this).
You can see my code at https://github.com/joan2937/pigpio/pull/255/commits/2e229d667fde8a2a881d5aa8482b2bb936b09f26
Thank you, that is indeed what I was looking for.
– anvoice
Apr 1 at 20:11
add a comment |
I attempted to port pigpio to Debian arm64, in the end my attempt failed because I discovererd that the Debian arm64 kernel doesn't support the userspace mailbox interface that pigpio relies on, but in doing so I did some research on how to detect Pis while running Debian arm64 kernels. I suspect this will also work for ubuntu arm64.
As you have discovered /proc/cpuinfo only has CPU core information on these kernels. Fortunately the information can be found elsewhere in /proc
Firstly to check if the device is a Pi or not, I checked /proc/device-tree/model , this has a text string describing the device, so false positives are unlikely.
To get the revision code I used /proc/device-tree/system/linux,revision , this contains the revision code as a big-endian binary integer. So it needs to be read out of the file as a binary integer, then converted to little-endian (I used ntohl for this).
You can see my code at https://github.com/joan2937/pigpio/pull/255/commits/2e229d667fde8a2a881d5aa8482b2bb936b09f26
I attempted to port pigpio to Debian arm64, in the end my attempt failed because I discovererd that the Debian arm64 kernel doesn't support the userspace mailbox interface that pigpio relies on, but in doing so I did some research on how to detect Pis while running Debian arm64 kernels. I suspect this will also work for ubuntu arm64.
As you have discovered /proc/cpuinfo only has CPU core information on these kernels. Fortunately the information can be found elsewhere in /proc
Firstly to check if the device is a Pi or not, I checked /proc/device-tree/model , this has a text string describing the device, so false positives are unlikely.
To get the revision code I used /proc/device-tree/system/linux,revision , this contains the revision code as a big-endian binary integer. So it needs to be read out of the file as a binary integer, then converted to little-endian (I used ntohl for this).
You can see my code at https://github.com/joan2937/pigpio/pull/255/commits/2e229d667fde8a2a881d5aa8482b2bb936b09f26
answered Apr 1 at 18:10
Peter GreenPeter Green
1,3501610
1,3501610
Thank you, that is indeed what I was looking for.
– anvoice
Apr 1 at 20:11
add a comment |
Thank you, that is indeed what I was looking for.
– anvoice
Apr 1 at 20:11
Thank you, that is indeed what I was looking for.
– anvoice
Apr 1 at 20:11
Thank you, that is indeed what I was looking for.
– anvoice
Apr 1 at 20:11
add a comment |
Thanks for contributing an answer to Ask Ubuntu!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f1130244%2fraspberry-pi-3-b-with-ubuntu-18-04-server-arm64-what-pi-version%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
The
cat /proc/cpuinfoshould produce a Revision number that corresponds to the board. See: raspberrypi.org/documentation/hardware/raspberrypi/…– Terrance
Apr 1 at 3:47
It doesnt't, at least for Ubuntu 18.04 server. It only says "revision : 4".
– anvoice
Apr 1 at 4:23
You might be at an impasse with this because the RP does not support SMBIOS or DMI that allows for reading board information. It might also be something you might have to file as a bug to get the revision read in the cpuinfo.
– Terrance
Apr 1 at 4:54
I think you're right that it qualifies as a bug. However, I just found at least one workaround. It's short but I'll include it as an answer just in case people find it helpful.
– anvoice
Apr 1 at 5:11
It looks like your actual question was "which Raspberry Pi am I running on?"; whereas your title seems to be asking "which CPU does my Raspberry Pi have?"; hence the confusion in the answers. I suggest that you edit your question to change the title.
– Roger Lipscombe
Apr 1 at 18:34