LinuxQuestions.org
Help answer threads with 0 replies.
Home Forums Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Hardware > Linux - Embedded & Single-board computer
User Name
Password
Linux - Embedded & Single-board computer This forum is for the discussion of Linux on both embedded devices and single-board computers (such as the Raspberry Pi, BeagleBoard and PandaBoard). Discussions involving Arduino, plug computers and other micro-controller like devices are also welcome.

Notices


Reply
  Search this Thread
Old 10-26-2025, 05:10 PM   #1
sirabhorn
Member
 
Registered: Jan 2012
Distribution: Debian, Slackware, CentOS
Posts: 47

Rep: Reputation: Disabled
Question What SBC/SoC users can achieve by adjusting clocks and pins?


What SBC/SoC users can achieve by adjusting clocks and pins (GPIO/pinctrl/pinmux) registered in kernel?

Is there any practical (or other) benefits available for users from adjusting clock frequencies and re-configuring pins either by modifying clock and pin driver codes or by using some commands which change pin states?

Yes, I know it's very easy to mess things up this way and bring the system to halt but I'm more interested in a potentially good (or at least interesting) outcomes.
 
Old 10-27-2025, 05:26 AM   #2
business_kid
LQ Guru
 
Registered: Jan 2006
Location: Ireland
Distribution: Slackware, RPi OS under protest!
Posts: 18,364

Rep: Reputation: 2813Reputation: 2813Reputation: 2813Reputation: 2813Reputation: 2813Reputation: 2813Reputation: 2813Reputation: 2813Reputation: 2813Reputation: 2813Reputation: 2813
CPU frequency rarely if ever left to pins but controlled internally. Different examples of the same chip will also achieve different speeds. The BCM2711 has been clocked as high as 2,800MHz successfully; The most common setting is 2147 MHz, but I could only get 2000Mhz, and after some years it slowed to 1800MHz.

Short answer: Suck it and see on a case by case basis.
 
Old 10-27-2025, 05:31 AM   #3
pan64
LQ Addict
 
Registered: Mar 2012
Location: Hungary
Distribution: debian/ubuntu/suse ...
Posts: 26,460

Rep: Reputation: 8608Reputation: 8608Reputation: 8608Reputation: 8608Reputation: 8608Reputation: 8608Reputation: 8608Reputation: 8608Reputation: 8608Reputation: 8608Reputation: 8608
I guess if the hardware is not suitable for a given task I will just look for another one. These are relatively cheap things. If I understand well.
 
Old 10-27-2025, 08:26 AM   #4
business_kid
LQ Guru
 
Registered: Jan 2006
Location: Ireland
Distribution: Slackware, RPi OS under protest!
Posts: 18,364

Rep: Reputation: 2813Reputation: 2813Reputation: 2813Reputation: 2813Reputation: 2813Reputation: 2813Reputation: 2813Reputation: 2813Reputation: 2813Reputation: 2813Reputation: 2813
The good/interesting outcome of overclocking is more performance. Think of the volume knobs on Amplifiers going up to 11 in "This is Spinal Tap." . The bad outcomes are more heat, loss of warranty, perhaps hardware damage, and finding all the faults that wouldn't be there if you behaved yourself.

Personally, I can understand overclocking a gaming rig. What's the point of overclocking a little sparrowfart cpu? +10% of nothing?
 
Old 10-29-2025, 08:07 PM   #5
blue_z
Member
 
Registered: Jul 2015
Location: USA
Distribution: Ubuntu, Lubuntu, Mint, custom embedded
Posts: 106

Rep: Reputation: 18
Quote:
Originally Posted by sirabhorn View Post
What SBC/SoC users can achieve by adjusting ... pins (GPIO/pinctrl/pinmux) registered in kernel?
An SoC has to utilize pin multiplexing because the chip embeds (in its silicon) far more integrated peripherals than its packaging has pins or balls (i.e. the contacts for the necessary board connections). A pin could have a set of possible I/O functions for several peripherals, and the pin multiplexer is what assigns the specific function to such a pin. The board and/or system designer has to choose a subset of which peripherals of the SoC to utilize, and which pins those peripherals use to perform their I/O with the board and the external environment.

Pinctrl is simply the Linux kernel subsystem responsible for overall pin management and multiplexing.
The Device Tree is the typical method (e.g. for the ARM architecture) of presenting to the kernel these peripheral selections and pin multiplexing information for the board's configuration. The Device Tree provides the initial and presumably static pin multiplexing configuration.
However the Linux kernel does allow dynamic pin muxing, and the board would also need to cooperate. I have no idea how often dynamic pin muxing is employed, and am skeptical of its practicality.

On evaluation boards for an SoC, the pins that can be multiplexed could be (a) dedicated to a certain integrated peripheral (i.e. only connected to specialized circuitry on the board), or (b) exposed for almost any purpose as a header pin, or (c) wired to a dedicated-purpose (e.g. FPC) connector but still available for general use.

For instance the Ethernet MAC of the SoC would use a set of pins for an [R]MMI bus to connect to an external PHY chip on the board. Multiplexing those pins for some other purpose makes absolutely no sense because those pins on the board side lead only to an Ethernet PHY.

On most SoCs a pin that is not multiplexed/assigned to any peripheral can then be used as a GPIO (general purpose input/output) pin. Some SoCs also have (e.g. Broadcom?) a dedicated set of pins for GPIO. The Linux kernel has the gpio subsystem to manage such pins.


If your Linux kernel is configured for debugging, you can obtain several reports on pin muxing. One report is the state of each pin listed numerically. Another report lists the pins grouped by peripheral.
The pinctl driver can also be configured to output debugging messages, e.g. when a device driver requests pin muxing.
 
1 members found this post helpful.
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
LXer: Boardcon Idea3576 SBC Showcases RK3576 SoC with CAN Bus and Dual Gigabit Ethernet LXer Syndicated Linux News 0 05-19-2025 06:10 PM
LXer: 3.5” SBC powered by Vortex86DX3 SoC and runs on Linux, QNX, DOS and Win XP LXer Syndicated Linux News 0 06-29-2022 10:49 PM
LXer: SBC builds on PolarFire SoC with dual GbE and CAN LXer Syndicated Linux News 0 07-08-2021 08:51 PM
LXer: SiFive to demo PC running new RISC-V SoC and unveil next-gen AI SoC LXer Syndicated Linux News 0 09-17-2020 05:51 PM
can i use I/o Port pins of a processor as four SPI pins? i sunr2007 Linux - Embedded & Single-board computer 3 08-20-2009 01:23 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Hardware > Linux - Embedded & Single-board computer

All times are GMT -5. The time now is 05:10 PM.

Contact Us - Advertising Info - Rules - Privacy - Donations - Contributing Member - LQ Sitemap - "Weather apps tell you it'll rain. Wyndo tells you when to go."
Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions