<feed xmlns='http://www.w3.org/2005/Atom'>
<title>BMC/Intel-BMC/linux.git/arch/powerpc/platforms/512x, branch dev</title>
<subtitle>Intel OpenBMC Linux kernel source tree (mirror)</subtitle>
<id>https://git.radix-linux.su/BMC/Intel-BMC/linux.git/atom?h=dev</id>
<link rel='self' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/atom?h=dev'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/'/>
<updated>2015-01-20T18:09:02+00:00</updated>
<entry>
<title>powerpc: call of_clk_init() from time_init()</title>
<updated>2015-01-20T18:09:02+00:00</updated>
<author>
<name>Kevin Hao</name>
<email>haokexin@gmail.com</email>
</author>
<published>2014-12-03T08:53:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=f0d373009205b53c7e14b6ac6d939ac5dcce60ca'/>
<id>urn:sha1:f0d373009205b53c7e14b6ac6d939ac5dcce60ca</id>
<content type='text'>
So the boards which has COMMON_CLK enabled don't have to
invoke this in its board specific file.

Signed-off-by: Kevin Hao &lt;haokexin@gmail.com&gt;
Acked-by: Scott Wood &lt;scottwood@freescale.com&gt;
Acked-by: Michael Turquette &lt;mturquette@linaro.org&gt;
Signed-off-by: Michael Turquette &lt;mturquette@linaro.org&gt;
</content>
</entry>
<entry>
<title>powerpc: Remove bootmem allocator</title>
<updated>2014-11-09T22:59:25+00:00</updated>
<author>
<name>Anton Blanchard</name>
<email>anton@samba.org</email>
</author>
<published>2014-09-17T12:15:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=10239733ee8617bac3f1c1769af43a88ed979324'/>
<id>urn:sha1:10239733ee8617bac3f1c1769af43a88ed979324</id>
<content type='text'>
At the moment we transition from the memblock alloctor to the bootmem
allocator. Gitting rid of the bootmem allocator removes a bunch of
complicated code (most of which I owe the dubious honour of being
responsible for writing).

Signed-off-by: Anton Blanchard &lt;anton@samba.org&gt;
Tested-by: Emil Medve &lt;Emilian.Medve@Freescale.com&gt;
Signed-off-by: Michael Ellerman &lt;mpe@ellerman.id.au&gt;
</content>
</entry>
<entry>
<title>powerpc: make of_device_ids const</title>
<updated>2014-09-25T13:14:46+00:00</updated>
<author>
<name>Uwe Kleine-König</name>
<email>u.kleine-koenig@pengutronix.de</email>
</author>
<published>2014-09-10T19:56:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=ce6d73c94d7cfbdc3dc31860fe14af2f37d1b4fe'/>
<id>urn:sha1:ce6d73c94d7cfbdc3dc31860fe14af2f37d1b4fe</id>
<content type='text'>
of_device_ids (i.e. compatible strings and the respective data) are not
supposed to change at runtime. All functions working with of_device_ids
provided by &lt;linux/of.h&gt; work with const of_device_ids. This allows to
mark all struct of_device_id const, too.

While touching these line also put the __init annotation at the right
position where necessary.

Signed-off-by: Uwe Kleine-König &lt;u.kleine-koenig@pengutronix.de&gt;
Signed-off-by: Michael Ellerman &lt;mpe@ellerman.id.au&gt;
</content>
</entry>
<entry>
<title>powerpc/512x: clk: support MPC5121/5123/5125 SoC variants</title>
<updated>2014-01-12T17:59:36+00:00</updated>
<author>
<name>Gerhard Sittig</name>
<email>gsi@denx.de</email>
</author>
<published>2013-12-10T13:11:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=319bbe0ef513e33ecf1a3f40099b5b369122afbd'/>
<id>urn:sha1:319bbe0ef513e33ecf1a3f40099b5b369122afbd</id>
<content type='text'>
improve the common clock support code for MPC512x

- expand the CCM register set declaration with MPC5125 related registers
  (which reside in the previously "reserved" area)
- tell the MPC5121, MPC5123, and MPC5125 SoC variants apart, and derive
  the availability of components and their clocks from the detected SoC
  (MBX, AXE, VIU, SPDIF, PATA, SATA, PCI, second FEC, second SDHC,
  number of PSC components, type of NAND flash controller,
  interpretation of the CPMF bitfield, PSC/CAN mux0 stage input clocks,
  output clocks on SoC pins)
- add backwards compatibility (allow operation against a device tree
  which lacks clock related specs) for MPC5125 FECs, too

telling SoC variants apart and adjusting the clock tree's generation
occurs at runtime, a common generic binary supports all of the chips

the MPC5125 approach to the NFC clock (one register with two counters
for the high and low periods of the clock) is not implemented, as there
are no users and there is no common implementation which supports this
kind of clock -- the new implementation would be unused and could not
get verified, so it shall wait until there is demand

Signed-off-by: Gerhard Sittig &lt;gsi@denx.de&gt;
Acked-by: Mike Turquette &lt;mturquette@linaro.org&gt;
Signed-off-by: Anatolij Gustschin &lt;agust@denx.de&gt;
</content>
</entry>
<entry>
<title>powerpc/512x: clk: enforce even SDHC divider values</title>
<updated>2014-01-12T17:59:21+00:00</updated>
<author>
<name>Gerhard Sittig</name>
<email>gsi@denx.de</email>
</author>
<published>2013-12-10T13:11:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=76922ebb02fb531142285682352ccdd7091a2bfb'/>
<id>urn:sha1:76922ebb02fb531142285682352ccdd7091a2bfb</id>
<content type='text'>
the SDHC clock is derived from CSB with a fractional divider which can
address "quarters"; the implementation multiplies CSB by 4 and divides
it by the (integer) divider value

a bug in the clock domain synchronisation requires that only even
divider values get setup; we achieve this by
- multiplying CSB by 2 only instead of 4
- registering with CCF the divider's bit field without bit0
- the divider's lowest bit remains clear as this is the reset value
  and later operations won't touch it

this change keeps fully utilizing common clock primitives (needs no
additional support logic, and avoids an excessive divider table) and
satisfies the hardware's constraint of only supporting even divider
values

Signed-off-by: Gerhard Sittig &lt;gsi@denx.de&gt;
Acked-by: Mike Turquette &lt;mturquette@linaro.org&gt;
Signed-off-by: Anatolij Gustschin &lt;agust@denx.de&gt;
</content>
</entry>
<entry>
<title>powerpc/512x: clk: minor comment updates</title>
<updated>2014-01-12T17:59:11+00:00</updated>
<author>
<name>Gerhard Sittig</name>
<email>gsi@denx.de</email>
</author>
<published>2013-12-10T13:11:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=2a2b9ff8a544944ee97b80b9ff977986c9e05e7f'/>
<id>urn:sha1:2a2b9ff8a544944ee97b80b9ff977986c9e05e7f</id>
<content type='text'>
adjust (expand on or move) a few comments,
add markers for easier navigation around helpers

Signed-off-by: Gerhard Sittig &lt;gsi@denx.de&gt;
Acked-by: Mike Turquette &lt;mturquette@linaro.org&gt;
Signed-off-by: Anatolij Gustschin &lt;agust@denx.de&gt;
</content>
</entry>
<entry>
<title>clk: mpc512x: remove migration support workarounds</title>
<updated>2014-01-12T17:53:06+00:00</updated>
<author>
<name>Gerhard Sittig</name>
<email>gsi@denx.de</email>
</author>
<published>2013-11-30T22:51:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=20755f85f3937ea8773ddd149b43654e1ce7bfc9'/>
<id>urn:sha1:20755f85f3937ea8773ddd149b43654e1ce7bfc9</id>
<content type='text'>
this change removes workarounds which have become obsolete after
migration to common clock support has completed
- remove clkdev registration calls (compatibility clock item aliases)
  after all peripheral drivers were adjusted for device tree based
  clock lookup
- remove pre-enable workarounds after all peripheral drivers were
  adjusted to acquire their respective clock items

workarounds for these clock items get removed:  FEC (ethernet), I2C,
PSC (UART, SPI), PSC FIFO, USB, NFC (NAND flash), VIU (video capture),
BDLC (CAN), CAN MCLK, DIU (video output)

these clkdev registered names won't be provided any longer by the
MPC512x platform's clock driver:  "psc%d_mclk", "mscan%d_mclk",
"usb%d_clk", "nfc_clk", "viu_clk", "sys_clk", "ref_clk"

the pre-enable workaround for PCI remains, but depends on the presence
of PCI related device tree nodes (disables the PCI clock in the absence
of PCI nodes, keeps the PCI clock enabled in the presence of nodes) --
moving clock acquisition into the peripheral driver isn't possible for
PCI because its initialization takes place before the platform clock
driver gets initialized, thus the clock provider isn't available then

Cc: Mike Turquette &lt;mturquette@linaro.org&gt;
Cc: Anatolij Gustschin &lt;agust@denx.de&gt;
Cc: linux-arm-kernel@lists.infradead.org
Cc: linuxppc-dev@lists.ozlabs.org
Signed-off-by: Gerhard Sittig &lt;gsi@denx.de&gt;
Signed-off-by: Anatolij Gustschin &lt;agust@denx.de&gt;
</content>
</entry>
<entry>
<title>powerpc/mpc512x: improve DIU related clock setup</title>
<updated>2014-01-12T17:53:06+00:00</updated>
<author>
<name>Gerhard Sittig</name>
<email>gsi@denx.de</email>
</author>
<published>2013-11-30T22:51:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=ba2181271fc9e1ab0873299264fe7edd6e256c56'/>
<id>urn:sha1:ba2181271fc9e1ab0873299264fe7edd6e256c56</id>
<content type='text'>
adapt the DIU clock initialization to the COMMON_CLK approach:
device tree based clock lookup, prepare and unprepare for clocks,
work with frequencies not dividers, call the appropriate clk_*()
routines and don't access CCM registers

the "best clock" determination now completely relies on the
platform's clock driver to pick a frequency close to what the
caller requests, and merely checks whether the desired frequency
was met (fits the tolerance of the monitor)

this approach shall succeed upon first try in the usual case,
will test a few less desirable yet acceptable frequencies in
edge cases, and will fallback to "best effort" if none of the
previously tried frequencies pass the test

provide a fallback clock lookup approach in case the OF based clock
lookup for the DIU fails, this allows for successful operation in
the presence of an outdated device tree which lacks clock specs

Cc: Anatolij Gustschin &lt;agust@denx.de&gt;
Cc: linuxppc-dev@lists.ozlabs.org
Signed-off-by: Gerhard Sittig &lt;gsi@denx.de&gt;
Signed-off-by: Anatolij Gustschin &lt;agust@denx.de&gt;
</content>
</entry>
<entry>
<title>clk: mpc5xxx: switch to COMMON_CLK, retire PPC_CLOCK</title>
<updated>2014-01-12T17:53:04+00:00</updated>
<author>
<name>Gerhard Sittig</name>
<email>gsi@denx.de</email>
</author>
<published>2013-11-30T22:51:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=7d71d5b2e80623242b0c0823ce6cb635d089c8b2'/>
<id>urn:sha1:7d71d5b2e80623242b0c0823ce6cb635d089c8b2</id>
<content type='text'>
the setup before the change was
- arch/powerpc/Kconfig had the PPC_CLOCK option, off by default
- depending on the PPC_CLOCK option the arch/powerpc/kernel/clock.c file
  was built, which implements the clk.h API but always returns -ENOSYS
  unless a platform registers specific callbacks
- the MPC52xx platform selected PPC_CLOCK but did not register any
  callbacks, thus all clk.h API calls keep resulting in -ENOSYS errors
  (which is OK, all peripheral drivers deal with the situation)
- the MPC512x platform selected PPC_CLOCK and registered specific
  callbacks implemented in arch/powerpc/platforms/512x/clock.c, thus
  provided real support for the clock API
- no other powerpc platform did select PPC_CLOCK

the situation after the change is
- the MPC512x platform implements the COMMON_CLK interface, and thus the
  PPC_CLOCK approach in arch/powerpc/platforms/512x/clock.c has become
  obsolete
- the MPC52xx platform still lacks genuine support for the clk.h API
  while this is not a change against the previous situation (the error
  code returned from COMMON_CLK stubs differs but every call still
  results in an error)
- with all references gone, the arch/powerpc/kernel/clock.c wrapper and
  the PPC_CLOCK option have become obsolete, as did the clk_interface.h
  header file

the switch from PPC_CLOCK to COMMON_CLK is done for all platforms within
the same commit such that multiplatform kernels (the combination of 512x
and 52xx within one executable) keep working

Cc: Mike Turquette &lt;mturquette@linaro.org&gt;
Cc: Anatolij Gustschin &lt;agust@denx.de&gt;
Cc: linux-arm-kernel@lists.infradead.org
Cc: linuxppc-dev@lists.ozlabs.org
Signed-off-by: Gerhard Sittig &lt;gsi@denx.de&gt;
Signed-off-by: Anatolij Gustschin &lt;agust@denx.de&gt;
</content>
</entry>
<entry>
<title>clk: mpc512x: add backwards compat to the CCF code</title>
<updated>2014-01-12T17:53:04+00:00</updated>
<author>
<name>Gerhard Sittig</name>
<email>gsi@denx.de</email>
</author>
<published>2013-11-30T22:51:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=01f25c371658d3e8769210be038941691b158985'/>
<id>urn:sha1:01f25c371658d3e8769210be038941691b158985</id>
<content type='text'>
extend the recently added COMMON_CLK platform support for MPC512x such
that it works with incomplete device tree data which lacks clock specs

Cc: Mike Turquette &lt;mturquette@linaro.org&gt;
Cc: Anatolij Gustschin &lt;agust@denx.de&gt;
Cc: linux-arm-kernel@lists.infradead.org
Cc: linuxppc-dev@lists.ozlabs.org
Signed-off-by: Gerhard Sittig &lt;gsi@denx.de&gt;
[agust@denx.de: moved node macro definitions out of the function body]
Signed-off-by: Anatolij Gustschin &lt;agust@denx.de&gt;
</content>
</entry>
</feed>
