<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-dev/arch/m68k/68000, branch linus/master</title>
<subtitle>Linux kernel development work - see feature branches</subtitle>
<id>https://git.zx2c4.com/linux-dev/atom/arch/m68k/68000?h=linus%2Fmaster</id>
<link rel='self' href='https://git.zx2c4.com/linux-dev/atom/arch/m68k/68000?h=linus%2Fmaster'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/'/>
<updated>2022-03-07T04:51:12Z</updated>
<entry>
<title>m68knommu: fix ucsimm sparse warnings</title>
<updated>2022-03-07T04:51:12Z</updated>
<author>
<name>Greg Ungerer</name>
<email>gerg@linux-m68k.org</email>
</author>
<published>2022-01-17T07:53:51Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=ffe74a6dc9bc47c7c1bb8e9a3d017f6bd5496d76'/>
<id>urn:sha1:ffe74a6dc9bc47c7c1bb8e9a3d017f6bd5496d76</id>
<content type='text'>
Sparse reports the following warnings:

  arch/m68k/68000/ucsimm.c:19:15: sparse: sparse: symbol 'cs8900a_hwaddr' was not declared. Should it be static?
  arch/m68k/68000/ucsimm.c:22:1: sparse: sparse: symbol 'getserialnum' was not declared. Should it be static?
  arch/m68k/68000/ucsimm.c:23:1: sparse: sparse: symbol 'gethwaddr' was not declared. Should it be static?
  arch/m68k/68000/ucsimm.c:24:1: sparse: sparse: symbol 'getbenv' was not declared. Should it be static?

'cs8900a_hwaddr' is not used anywhere else in the kernel, so it can be
removed.

All of 'getserialnum', 'gethwaddr' and 'getbenv' are only used in this
file, so they can all be made static. It turns out that these also cause
compiler warnings like this too:

  arch/m68k/68000/ucsimm.c:22:15: warning: no previous prototype for 'getserialnum' [-Wmissing-prototypes]

Also fixed by making them all static.

Signed-off-by: Greg Ungerer &lt;gerg@linux-m68k.org&gt;
Reported-by: kernel test robot &lt;lkp@intel.com&gt;
</content>
</entry>
<entry>
<title>m68knommu: fix 'screen_bits' defined but not used</title>
<updated>2022-03-07T04:51:11Z</updated>
<author>
<name>Greg Ungerer</name>
<email>gerg@linux-m68k.org</email>
</author>
<published>2022-01-17T05:21:54Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=5fb4d4690b77baa8611d7be90e713a9a8faa97e8'/>
<id>urn:sha1:5fb4d4690b77baa8611d7be90e713a9a8faa97e8</id>
<content type='text'>
The 'screen_bits' LCD initializer bit array is only required if
CONFIG_INIT_LCD is enabled, otherwise we get the following warning:

    arch/m68k/68000/screen.h:4:22: warning: 'screen_bits' defined but not used [-Wunused-variable]
     static unsigned char screen_bits[] = {
                          ^~~~~~~~~~~

Make the inclusion of 'screen_bits' conditional on CONFIG_INIT_LCD.

Signed-off-by: Greg Ungerer &lt;gerg@linux-m68k.org&gt;
Reported-by: kernel test robot &lt;lkp@intel.com&gt;
</content>
</entry>
<entry>
<title>m68knommu: fix warning: no previous prototype for 'init_dragen2'</title>
<updated>2022-03-07T04:51:11Z</updated>
<author>
<name>Greg Ungerer</name>
<email>gerg@linux-m68k.org</email>
</author>
<published>2022-01-17T05:15:45Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=b73119222f2dd6b1c294cc6ef4b1fb7f9ff3adf5'/>
<id>urn:sha1:b73119222f2dd6b1c294cc6ef4b1fb7f9ff3adf5</id>
<content type='text'>
Fix the compile time warning:

    arch/m68k/68000/dragen2.c:38:13: warning: no previous prototype for 'init_dragen2' [-Wmissing-prototypes]
      38 | void __init init_dragen2(char *command, int size)
         |             ^~~~~~~~~~~~

There already exists a header file prototype, but that file was not
included in the dragen2.c code.

Signed-off-by: Greg Ungerer &lt;gerg@linux-m68k.org&gt;
Reported-by: kernel test robot &lt;lkp@intel.com&gt;
</content>
</entry>
<entry>
<title>m68k: Remove set_fs()</title>
<updated>2021-09-24T11:35:07Z</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2021-09-16T07:04:05Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=9fde0348640252c79d462c4d29a09a14e8741f5c'/>
<id>urn:sha1:9fde0348640252c79d462c4d29a09a14e8741f5c</id>
<content type='text'>
Add a m68k-only set_fc helper to set the SFC and DFC registers for the
few places that need to override it for special MM operations, but
disconnect that from the deprecated kernel-wide set_fs() API.

Note that the SFC/DFC registers are context switched, so there is no need
to disable preemption.

Partially based on an earlier patch from
Linus Torvalds &lt;torvalds@linux-foundation.org&gt;.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Reviewed-by: Michael Schmitz &lt;schmitzmic@gmail.com&gt;
Tested-by: Michael Schmitz &lt;schmitzmic@gmail.com&gt;
Link: https://lore.kernel.org/r/20210916070405.52750-7-hch@lst.de
Signed-off-by: Geert Uytterhoeven &lt;geert@linux-m68k.org&gt;
</content>
</entry>
<entry>
<title>m68k: Leave stack mangling to asm wrapper of sigreturn()</title>
<updated>2021-09-24T11:35:03Z</updated>
<author>
<name>Al Viro</name>
<email>viro@zeniv.linux.org.uk</email>
</author>
<published>2021-07-25T17:20:13Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=0d20abde987bed05a8963c8aa4276019d54ff9e7'/>
<id>urn:sha1:0d20abde987bed05a8963c8aa4276019d54ff9e7</id>
<content type='text'>
sigreturn has to deal with an unpleasant problem - exception stack frames
have different sizes, depending upon the exception (and processor model, as
well) and variable-sized part of exception frame may contain information
needed for instruction restart.  So when signal handler terminates and calls
sigreturn to resume the execution at the place where we'd been when we caught
the signal, it has to rearrange the frame at the bottom of kernel stack.
Worse, it might need to open a gap in the kernel stack, shifting pt_regs
towards lower addresses.

Doing that from C is insane - we'd need to shift stack frames (return addresses,
local variables, etc.) of C call chain, right under the nose of compiler and
hope it won't fall apart horribly.  What had been actually done is only slightly
less insane - an inline asm in mangle_kernel_stack() moved the stuff around,
then reset stack pointer and jumped to label in asm glue.

However, we can avoid all that mess if the asm wrapper we have to use anyway
would reserve some space on the stack between switch_stack and the C stack
frame of do_{rt_,}sigreturn().   Then C part can simply memmove() pt_regs +
switch_stack, memcpy() the variable part of exception frame into the opened
gap - all of that without inline asm, buggering C call chain, magical jumps
to asm labels, etc.

Asm wrapper would need to know where the moved switch_stack has ended up -
it might have been shifted into the gap we'd reserved before do_rt_sigreturn()
call.  That's where it needs to set the stack pointer to.  So let the C part
return just that and be done with that.

While we are at it, the call of berr_040cleanup() we need to do when
returning via 68040 bus error exception frame can be moved into C part
as well.

Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Tested-by: Michael Schmitz &lt;schmitzmic@gmail.com&gt;
Reviewed-by: Michael Schmitz &lt;schmitzmic@gmail.com&gt;
Tested-by: Finn Thain &lt;fthain@linux-m68k.org&gt;
Link: https://lore.kernel.org/r/YP2dTQPm1wGPWFgD@zeniv-ca.linux.org.uk
Signed-off-by: Geert Uytterhoeven &lt;geert@linux-m68k.org&gt;
</content>
</entry>
<entry>
<title>m68knommu: fix missing LCD splash screen data initializer</title>
<updated>2021-06-21T02:09:26Z</updated>
<author>
<name>Greg Ungerer</name>
<email>gerg@linux-m68k.org</email>
</author>
<published>2021-04-27T13:49:31Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=3f605ee17f8e785ba6ff69bee8e584e377a3cf28'/>
<id>urn:sha1:3f605ee17f8e785ba6ff69bee8e584e377a3cf28</id>
<content type='text'>
The kernel test robot reports that the "screen_bits" splash screen data
is missing for the dragen platform:

    arch/m68k/68000/dragen2.c:73:16: error: 'screen_bits' undeclared (first use in this function)
      73 |  LSSA = (long) screen_bits;
         |                ^~~~~~~~~~~
    arch/m68k/68000/dragen2.c:73:16: note: each undeclared identifier is reported only once for each function it appears in

Digging around a bit I found the screen_bits data structure was originally
in a screen.h file that was generated from a screen.xbm file. That was
removed in commit 0c0e6db80683 ("m68k: drop unused parts of 68VZ328
Makefile").

Other splash screen initializers for 68000 targets are kept here as the
C data structures so lets do the same for this one. Add the missing
screen.h file and include it in the dragen specific startup code.

Reported-by: kernel test robot &lt;lkp@intel.com&gt;
Signed-off-by: Greg Ungerer &lt;gerg@linux-m68k.org&gt;
Acked-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
</content>
</entry>
<entry>
<title>Merge tag 'm68knommu-for-v5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu</title>
<updated>2020-12-21T18:35:11Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2020-12-21T18:35:11Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=8552d28e140110fc935b39a6bfaf33c8ce3a1ad5'/>
<id>urn:sha1:8552d28e140110fc935b39a6bfaf33c8ce3a1ad5</id>
<content type='text'>
Pull m68knommu updates from Greg Ungerer:

 - cleanup of 68328 code

 - align BSS section to 32bit

* tag 'm68knommu-for-v5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu:
  m68k: m68328: remove duplicate code
  m68k: m68328: move platform code to separate files
  m68knommu: align BSS section to 4-byte boundaries
</content>
</entry>
<entry>
<title>m68k: m68328: remove duplicate code</title>
<updated>2020-12-06T23:37:58Z</updated>
<author>
<name>Arnd Bergmann</name>
<email>arnd@arndb.de</email>
</author>
<published>2020-10-30T14:26:24Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=8b22820efb35f93d98638563b0a8f4094e8ee399'/>
<id>urn:sha1:8b22820efb35f93d98638563b0a8f4094e8ee399</id>
<content type='text'>
Building a kernel with multiple dragonball based boards
enabled needlessly causes a link failure because of duplicate
config_BSP() functions between the CPU versions.

Avoid that merging the three almost identical files into one,
and hiding the CPU configuration behind the board config.
The pr_info() lines are consolidated in one place.

It is still not possible to run a kernel configured for
more than one board, but at least configurations that can
be selected can also be built now.

Signed-off-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Signed-off-by: Greg Ungerer &lt;gerg@linux-m68k.org&gt;
</content>
</entry>
<entry>
<title>m68k: m68328: move platform code to separate files</title>
<updated>2020-12-06T23:37:58Z</updated>
<author>
<name>Arnd Bergmann</name>
<email>arnd@arndb.de</email>
</author>
<published>2020-10-30T14:26:23Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=a734bbf694270dca8594a5c33375867dc31503f5'/>
<id>urn:sha1:a734bbf694270dca8594a5c33375867dc31503f5</id>
<content type='text'>
The dragen2 and ucsimm/ucdimm files require a bit of
custom code compared to the other dragonball platforms,
move them into separate files as a preparation for a
build fix.

Signed-off-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Signed-off-by: Greg Ungerer &lt;gerg@linux-m68k.org&gt;
</content>
</entry>
<entry>
<title>m68k: remove timer_interrupt() function</title>
<updated>2020-10-30T20:57:06Z</updated>
<author>
<name>Arnd Bergmann</name>
<email>arnd@arndb.de</email>
</author>
<published>2020-09-24T15:29:17Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=f9a015391e8908e68bd3147a8a5d8ac5f3ea2126'/>
<id>urn:sha1:f9a015391e8908e68bd3147a8a5d8ac5f3ea2126</id>
<content type='text'>
This gets passed to a number of init functions, but is
ignored everywhere, so remove the function and change the
mach_sched_init callback to take no arguments.

Reviewed-by: Geert Uytterhoeven &lt;geert@linux-m68k.org&gt;
Acked-by: Geert Uytterhoeven &lt;geert@linux-m68k.org&gt;
Tested-by: Geert Uytterhoeven &lt;geert@linux-m68k.org&gt;
Reviewed-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Signed-off-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
</content>
</entry>
</feed>
