Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'm68k-for-v5.20-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k

Pull m68k updates from Geert Uytterhoeven:

- Use RNG seed from bootinfo block on virt platform

- defconfig updates

- Minor fixes and improvements

* tag 'm68k-for-v5.20-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:
m68k: defconfig: Update defconfigs for v5.19-rc1
m68k: Add common forward declaration for show_registers()
m68k: mac: Remove forward declaration for mac_nmi_handler()
m68k: virt: Fix missing platform_device_unregister() on error in virt_platform_init()
m68k: virt: Use RNG seed from bootinfo block
m68k: bitops: Change __fls to return and accept unsigned long
m68k: Kconfig.machine: Add endif comment
m68k: Kconfig.debug: Replace single quotes
m68k: Kconfig.cpu: Fix indentation and add endif comments
m68k: q40: Align '*' in comments
m68k: sun3: Use __func__ to get function's name in an output message
m68k: mac: Fix typos in comments
m68k: virt: Kconfig minor fixes

+149 -173
+3 -4
arch/m68k/Kconfig.cpu
··· 155 155 select COLDFIRE_PIT_TIMER 156 156 select HAVE_CACHE_SPLIT 157 157 help 158 - Freescale Coldfire 5207/5208 processor support. 158 + Freescale Coldfire 5207/5208 processor support. 159 159 160 160 config M523x 161 161 bool "MCF523x" ··· 321 321 select LEGACY_TIMER_TICK 322 322 323 323 endif # COLDFIRE 324 - 325 324 326 325 comment "Processor Specific Options" 327 326 ··· 521 522 Split the ColdFire CPU cache, and use half as an instruction cache 522 523 and half as a data cache. 523 524 endchoice 524 - endif 525 + endif # HAVE_CACHE_SPLIT 525 526 526 527 if HAVE_CACHE_CB 527 528 choice ··· 538 539 help 539 540 The ColdFire CPU cache is set into Copy-back mode. 540 541 endchoice 541 - endif 542 + endif # HAVE_CACHE_CB
+3 -3
arch/m68k/Kconfig.debug
··· 1 1 # SPDX-License-Identifier: GPL-2.0 2 2 3 3 config BOOTPARAM 4 - bool 'Compiled-in Kernel Boot Parameter' 4 + bool "Compiled-in Kernel Boot Parameter" 5 5 6 6 config BOOTPARAM_STRING 7 - string 'Kernel Boot Parameter' 8 - default 'console=ttyS0,19200' 7 + string "Kernel Boot Parameter" 8 + default "console=ttyS0,19200" 9 9 depends on BOOTPARAM 10 10 11 11 config EARLY_PRINTK
+3 -2
arch/m68k/Kconfig.machine
··· 161 161 select RTC_CLASS 162 162 select RTC_DRV_GOLDFISH 163 163 select TTY 164 + select VIRTIO_MENU 164 165 select VIRTIO_MMIO 165 166 help 166 167 This options enable a pure virtual machine based on m68k, 167 - VIRTIO MMIO devices and GOLDFISH interfaces (TTY, RTC, PIC) 168 + VIRTIO MMIO devices and GOLDFISH interfaces (TTY, RTC, PIC). 168 169 169 170 config PILOT 170 171 bool ··· 493 492 494 493 endchoice 495 494 496 - endif 495 + endif # !MMU || COLDFIRE
+5 -9
arch/m68k/configs/amiga_defconfig
··· 10 10 # CONFIG_NET_NS is not set 11 11 CONFIG_BLK_DEV_INITRD=y 12 12 CONFIG_CC_OPTIMIZE_FOR_SIZE=y 13 - CONFIG_USERFAULTFD=y 14 - CONFIG_SLAB=y 15 13 CONFIG_KEXEC=y 16 14 CONFIG_BOOTINFO_PROC=y 17 15 CONFIG_M68020=y ··· 41 43 CONFIG_IOSCHED_BFQ=m 42 44 # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set 43 45 CONFIG_BINFMT_MISC=m 46 + CONFIG_SLAB=y 44 47 # CONFIG_COMPACTION is not set 45 - CONFIG_ZPOOL=m 48 + CONFIG_USERFAULTFD=y 46 49 CONFIG_NET=y 47 50 CONFIG_PACKET=y 48 51 CONFIG_PACKET_DIAG=m ··· 309 310 CONFIG_PARPORT_1284=y 310 311 CONFIG_AMIGA_FLOPPY=y 311 312 CONFIG_AMIGA_Z2RAM=y 313 + CONFIG_ZRAM=m 312 314 CONFIG_BLK_DEV_LOOP=y 313 315 CONFIG_BLK_DEV_DRBD=m 314 316 CONFIG_BLK_DEV_NBD=m ··· 580 580 CONFIG_CRYPTO_MICHAEL_MIC=m 581 581 CONFIG_CRYPTO_RMD160=m 582 582 CONFIG_CRYPTO_SHA3=m 583 - CONFIG_CRYPTO_SM3=m 583 + CONFIG_CRYPTO_SM3_GENERIC=m 584 584 CONFIG_CRYPTO_WP512=m 585 585 CONFIG_CRYPTO_AES=y 586 586 CONFIG_CRYPTO_AES_TI=m ··· 595 595 CONFIG_CRYPTO_KHAZAD=m 596 596 CONFIG_CRYPTO_SEED=m 597 597 CONFIG_CRYPTO_SERPENT=m 598 - CONFIG_CRYPTO_SM4=m 598 + CONFIG_CRYPTO_SM4_GENERIC=m 599 599 CONFIG_CRYPTO_TEA=m 600 600 CONFIG_CRYPTO_TWOFISH=m 601 601 CONFIG_CRYPTO_LZO=m ··· 648 648 CONFIG_FIND_BIT_BENCHMARK=m 649 649 CONFIG_TEST_FIRMWARE=m 650 650 CONFIG_TEST_SYSCTL=m 651 - CONFIG_BITFIELD_KUNIT=m 652 - CONFIG_RESOURCE_KUNIT_TEST=m 653 651 CONFIG_LINEAR_RANGES_TEST=m 654 - CONFIG_CMDLINE_KUNIT_TEST=m 655 - CONFIG_BITS_TEST=m 656 652 CONFIG_TEST_UDELAY=m 657 653 CONFIG_TEST_STATIC_KEYS=m 658 654 CONFIG_TEST_KMOD=m
+5 -9
arch/m68k/configs/apollo_defconfig
··· 10 10 # CONFIG_NET_NS is not set 11 11 CONFIG_BLK_DEV_INITRD=y 12 12 CONFIG_CC_OPTIMIZE_FOR_SIZE=y 13 - CONFIG_USERFAULTFD=y 14 - CONFIG_SLAB=y 15 13 CONFIG_KEXEC=y 16 14 CONFIG_BOOTINFO_PROC=y 17 15 CONFIG_M68020=y ··· 37 39 CONFIG_IOSCHED_BFQ=m 38 40 # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set 39 41 CONFIG_BINFMT_MISC=m 42 + CONFIG_SLAB=y 40 43 # CONFIG_COMPACTION is not set 41 - CONFIG_ZPOOL=m 44 + CONFIG_USERFAULTFD=y 42 45 CONFIG_NET=y 43 46 CONFIG_PACKET=y 44 47 CONFIG_PACKET_DIAG=m ··· 299 300 CONFIG_DEVTMPFS_MOUNT=y 300 301 CONFIG_TEST_ASYNC_DRIVER_PROBE=m 301 302 CONFIG_CONNECTOR=m 303 + CONFIG_ZRAM=m 302 304 CONFIG_BLK_DEV_LOOP=y 303 305 CONFIG_BLK_DEV_DRBD=m 304 306 CONFIG_BLK_DEV_NBD=m ··· 537 537 CONFIG_CRYPTO_MICHAEL_MIC=m 538 538 CONFIG_CRYPTO_RMD160=m 539 539 CONFIG_CRYPTO_SHA3=m 540 - CONFIG_CRYPTO_SM3=m 540 + CONFIG_CRYPTO_SM3_GENERIC=m 541 541 CONFIG_CRYPTO_WP512=m 542 542 CONFIG_CRYPTO_AES=y 543 543 CONFIG_CRYPTO_AES_TI=m ··· 552 552 CONFIG_CRYPTO_KHAZAD=m 553 553 CONFIG_CRYPTO_SEED=m 554 554 CONFIG_CRYPTO_SERPENT=m 555 - CONFIG_CRYPTO_SM4=m 555 + CONFIG_CRYPTO_SM4_GENERIC=m 556 556 CONFIG_CRYPTO_TEA=m 557 557 CONFIG_CRYPTO_TWOFISH=m 558 558 CONFIG_CRYPTO_LZO=m ··· 604 604 CONFIG_FIND_BIT_BENCHMARK=m 605 605 CONFIG_TEST_FIRMWARE=m 606 606 CONFIG_TEST_SYSCTL=m 607 - CONFIG_BITFIELD_KUNIT=m 608 - CONFIG_RESOURCE_KUNIT_TEST=m 609 607 CONFIG_LINEAR_RANGES_TEST=m 610 - CONFIG_CMDLINE_KUNIT_TEST=m 611 - CONFIG_BITS_TEST=m 612 608 CONFIG_TEST_UDELAY=m 613 609 CONFIG_TEST_STATIC_KEYS=m 614 610 CONFIG_TEST_KMOD=m
+5 -9
arch/m68k/configs/atari_defconfig
··· 10 10 # CONFIG_NET_NS is not set 11 11 CONFIG_BLK_DEV_INITRD=y 12 12 CONFIG_CC_OPTIMIZE_FOR_SIZE=y 13 - CONFIG_USERFAULTFD=y 14 - CONFIG_SLAB=y 15 13 CONFIG_KEXEC=y 16 14 CONFIG_BOOTINFO_PROC=y 17 15 CONFIG_M68020=y ··· 44 46 CONFIG_IOSCHED_BFQ=m 45 47 # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set 46 48 CONFIG_BINFMT_MISC=m 49 + CONFIG_SLAB=y 47 50 # CONFIG_COMPACTION is not set 48 - CONFIG_ZPOOL=m 51 + CONFIG_USERFAULTFD=y 49 52 CONFIG_NET=y 50 53 CONFIG_PACKET=y 51 54 CONFIG_PACKET_DIAG=m ··· 310 311 CONFIG_PARPORT_ATARI=m 311 312 CONFIG_PARPORT_1284=y 312 313 CONFIG_ATARI_FLOPPY=y 314 + CONFIG_ZRAM=m 313 315 CONFIG_BLK_DEV_LOOP=y 314 316 CONFIG_BLK_DEV_DRBD=m 315 317 CONFIG_BLK_DEV_NBD=m ··· 557 557 CONFIG_CRYPTO_MICHAEL_MIC=m 558 558 CONFIG_CRYPTO_RMD160=m 559 559 CONFIG_CRYPTO_SHA3=m 560 - CONFIG_CRYPTO_SM3=m 560 + CONFIG_CRYPTO_SM3_GENERIC=m 561 561 CONFIG_CRYPTO_WP512=m 562 562 CONFIG_CRYPTO_AES=y 563 563 CONFIG_CRYPTO_AES_TI=m ··· 572 572 CONFIG_CRYPTO_KHAZAD=m 573 573 CONFIG_CRYPTO_SEED=m 574 574 CONFIG_CRYPTO_SERPENT=m 575 - CONFIG_CRYPTO_SM4=m 575 + CONFIG_CRYPTO_SM4_GENERIC=m 576 576 CONFIG_CRYPTO_TEA=m 577 577 CONFIG_CRYPTO_TWOFISH=m 578 578 CONFIG_CRYPTO_LZO=m ··· 625 625 CONFIG_FIND_BIT_BENCHMARK=m 626 626 CONFIG_TEST_FIRMWARE=m 627 627 CONFIG_TEST_SYSCTL=m 628 - CONFIG_BITFIELD_KUNIT=m 629 - CONFIG_RESOURCE_KUNIT_TEST=m 630 628 CONFIG_LINEAR_RANGES_TEST=m 631 - CONFIG_CMDLINE_KUNIT_TEST=m 632 - CONFIG_BITS_TEST=m 633 629 CONFIG_TEST_UDELAY=m 634 630 CONFIG_TEST_STATIC_KEYS=m 635 631 CONFIG_TEST_KMOD=m
+5 -9
arch/m68k/configs/bvme6000_defconfig
··· 10 10 # CONFIG_NET_NS is not set 11 11 CONFIG_BLK_DEV_INITRD=y 12 12 CONFIG_CC_OPTIMIZE_FOR_SIZE=y 13 - CONFIG_USERFAULTFD=y 14 - CONFIG_SLAB=y 15 13 CONFIG_KEXEC=y 16 14 CONFIG_BOOTINFO_PROC=y 17 15 CONFIG_M68040=y ··· 34 36 CONFIG_IOSCHED_BFQ=m 35 37 # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set 36 38 CONFIG_BINFMT_MISC=m 39 + CONFIG_SLAB=y 37 40 # CONFIG_COMPACTION is not set 38 - CONFIG_ZPOOL=m 41 + CONFIG_USERFAULTFD=y 39 42 CONFIG_NET=y 40 43 CONFIG_PACKET=y 41 44 CONFIG_PACKET_DIAG=m ··· 296 297 CONFIG_DEVTMPFS_MOUNT=y 297 298 CONFIG_TEST_ASYNC_DRIVER_PROBE=m 298 299 CONFIG_CONNECTOR=m 300 + CONFIG_ZRAM=m 299 301 CONFIG_BLK_DEV_LOOP=y 300 302 CONFIG_BLK_DEV_DRBD=m 301 303 CONFIG_BLK_DEV_NBD=m ··· 529 529 CONFIG_CRYPTO_MICHAEL_MIC=m 530 530 CONFIG_CRYPTO_RMD160=m 531 531 CONFIG_CRYPTO_SHA3=m 532 - CONFIG_CRYPTO_SM3=m 532 + CONFIG_CRYPTO_SM3_GENERIC=m 533 533 CONFIG_CRYPTO_WP512=m 534 534 CONFIG_CRYPTO_AES=y 535 535 CONFIG_CRYPTO_AES_TI=m ··· 544 544 CONFIG_CRYPTO_KHAZAD=m 545 545 CONFIG_CRYPTO_SEED=m 546 546 CONFIG_CRYPTO_SERPENT=m 547 - CONFIG_CRYPTO_SM4=m 547 + CONFIG_CRYPTO_SM4_GENERIC=m 548 548 CONFIG_CRYPTO_TEA=m 549 549 CONFIG_CRYPTO_TWOFISH=m 550 550 CONFIG_CRYPTO_LZO=m ··· 596 596 CONFIG_FIND_BIT_BENCHMARK=m 597 597 CONFIG_TEST_FIRMWARE=m 598 598 CONFIG_TEST_SYSCTL=m 599 - CONFIG_BITFIELD_KUNIT=m 600 - CONFIG_RESOURCE_KUNIT_TEST=m 601 599 CONFIG_LINEAR_RANGES_TEST=m 602 - CONFIG_CMDLINE_KUNIT_TEST=m 603 - CONFIG_BITS_TEST=m 604 600 CONFIG_TEST_UDELAY=m 605 601 CONFIG_TEST_STATIC_KEYS=m 606 602 CONFIG_TEST_KMOD=m
+5 -9
arch/m68k/configs/hp300_defconfig
··· 10 10 # CONFIG_NET_NS is not set 11 11 CONFIG_BLK_DEV_INITRD=y 12 12 CONFIG_CC_OPTIMIZE_FOR_SIZE=y 13 - CONFIG_USERFAULTFD=y 14 - CONFIG_SLAB=y 15 13 CONFIG_KEXEC=y 16 14 CONFIG_BOOTINFO_PROC=y 17 15 CONFIG_M68020=y ··· 36 38 CONFIG_IOSCHED_BFQ=m 37 39 # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set 38 40 CONFIG_BINFMT_MISC=m 41 + CONFIG_SLAB=y 39 42 # CONFIG_COMPACTION is not set 40 - CONFIG_ZPOOL=m 43 + CONFIG_USERFAULTFD=y 41 44 CONFIG_NET=y 42 45 CONFIG_PACKET=y 43 46 CONFIG_PACKET_DIAG=m ··· 298 299 CONFIG_DEVTMPFS_MOUNT=y 299 300 CONFIG_TEST_ASYNC_DRIVER_PROBE=m 300 301 CONFIG_CONNECTOR=m 302 + CONFIG_ZRAM=m 301 303 CONFIG_BLK_DEV_LOOP=y 302 304 CONFIG_BLK_DEV_DRBD=m 303 305 CONFIG_BLK_DEV_NBD=m ··· 539 539 CONFIG_CRYPTO_MICHAEL_MIC=m 540 540 CONFIG_CRYPTO_RMD160=m 541 541 CONFIG_CRYPTO_SHA3=m 542 - CONFIG_CRYPTO_SM3=m 542 + CONFIG_CRYPTO_SM3_GENERIC=m 543 543 CONFIG_CRYPTO_WP512=m 544 544 CONFIG_CRYPTO_AES=y 545 545 CONFIG_CRYPTO_AES_TI=m ··· 554 554 CONFIG_CRYPTO_KHAZAD=m 555 555 CONFIG_CRYPTO_SEED=m 556 556 CONFIG_CRYPTO_SERPENT=m 557 - CONFIG_CRYPTO_SM4=m 557 + CONFIG_CRYPTO_SM4_GENERIC=m 558 558 CONFIG_CRYPTO_TEA=m 559 559 CONFIG_CRYPTO_TWOFISH=m 560 560 CONFIG_CRYPTO_LZO=m ··· 606 606 CONFIG_FIND_BIT_BENCHMARK=m 607 607 CONFIG_TEST_FIRMWARE=m 608 608 CONFIG_TEST_SYSCTL=m 609 - CONFIG_BITFIELD_KUNIT=m 610 - CONFIG_RESOURCE_KUNIT_TEST=m 611 609 CONFIG_LINEAR_RANGES_TEST=m 612 - CONFIG_CMDLINE_KUNIT_TEST=m 613 - CONFIG_BITS_TEST=m 614 610 CONFIG_TEST_UDELAY=m 615 611 CONFIG_TEST_STATIC_KEYS=m 616 612 CONFIG_TEST_KMOD=m
+5 -9
arch/m68k/configs/mac_defconfig
··· 10 10 # CONFIG_NET_NS is not set 11 11 CONFIG_BLK_DEV_INITRD=y 12 12 CONFIG_CC_OPTIMIZE_FOR_SIZE=y 13 - CONFIG_USERFAULTFD=y 14 - CONFIG_SLAB=y 15 13 CONFIG_KEXEC=y 16 14 CONFIG_BOOTINFO_PROC=y 17 15 CONFIG_M68020=y ··· 35 37 CONFIG_IOSCHED_BFQ=m 36 38 # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set 37 39 CONFIG_BINFMT_MISC=m 40 + CONFIG_SLAB=y 38 41 # CONFIG_COMPACTION is not set 39 - CONFIG_ZPOOL=m 42 + CONFIG_USERFAULTFD=y 40 43 CONFIG_NET=y 41 44 CONFIG_PACKET=y 42 45 CONFIG_PACKET_DIAG=m ··· 301 302 CONFIG_TEST_ASYNC_DRIVER_PROBE=m 302 303 CONFIG_CONNECTOR=m 303 304 CONFIG_BLK_DEV_SWIM=m 305 + CONFIG_ZRAM=m 304 306 CONFIG_BLK_DEV_LOOP=y 305 307 CONFIG_BLK_DEV_DRBD=m 306 308 CONFIG_BLK_DEV_NBD=m ··· 559 559 CONFIG_CRYPTO_MICHAEL_MIC=m 560 560 CONFIG_CRYPTO_RMD160=m 561 561 CONFIG_CRYPTO_SHA3=m 562 - CONFIG_CRYPTO_SM3=m 562 + CONFIG_CRYPTO_SM3_GENERIC=m 563 563 CONFIG_CRYPTO_WP512=m 564 564 CONFIG_CRYPTO_AES=y 565 565 CONFIG_CRYPTO_AES_TI=m ··· 574 574 CONFIG_CRYPTO_KHAZAD=m 575 575 CONFIG_CRYPTO_SEED=m 576 576 CONFIG_CRYPTO_SERPENT=m 577 - CONFIG_CRYPTO_SM4=m 577 + CONFIG_CRYPTO_SM4_GENERIC=m 578 578 CONFIG_CRYPTO_TEA=m 579 579 CONFIG_CRYPTO_TWOFISH=m 580 580 CONFIG_CRYPTO_LZO=m ··· 627 627 CONFIG_FIND_BIT_BENCHMARK=m 628 628 CONFIG_TEST_FIRMWARE=m 629 629 CONFIG_TEST_SYSCTL=m 630 - CONFIG_BITFIELD_KUNIT=m 631 - CONFIG_RESOURCE_KUNIT_TEST=m 632 630 CONFIG_LINEAR_RANGES_TEST=m 633 - CONFIG_CMDLINE_KUNIT_TEST=m 634 - CONFIG_BITS_TEST=m 635 631 CONFIG_TEST_UDELAY=m 636 632 CONFIG_TEST_STATIC_KEYS=m 637 633 CONFIG_TEST_KMOD=m
+5 -9
arch/m68k/configs/multi_defconfig
··· 10 10 # CONFIG_NET_NS is not set 11 11 CONFIG_BLK_DEV_INITRD=y 12 12 CONFIG_CC_OPTIMIZE_FOR_SIZE=y 13 - CONFIG_USERFAULTFD=y 14 - CONFIG_SLAB=y 15 13 CONFIG_KEXEC=y 16 14 CONFIG_BOOTINFO_PROC=y 17 15 CONFIG_M68020=y ··· 55 57 CONFIG_IOSCHED_BFQ=m 56 58 # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set 57 59 CONFIG_BINFMT_MISC=m 60 + CONFIG_SLAB=y 58 61 # CONFIG_COMPACTION is not set 59 - CONFIG_ZPOOL=m 62 + CONFIG_USERFAULTFD=y 60 63 CONFIG_NET=y 61 64 CONFIG_PACKET=y 62 65 CONFIG_PACKET_DIAG=m ··· 330 331 CONFIG_ATARI_FLOPPY=y 331 332 CONFIG_BLK_DEV_SWIM=m 332 333 CONFIG_AMIGA_Z2RAM=y 334 + CONFIG_ZRAM=m 333 335 CONFIG_BLK_DEV_LOOP=y 334 336 CONFIG_BLK_DEV_DRBD=m 335 337 CONFIG_BLK_DEV_NBD=m ··· 645 645 CONFIG_CRYPTO_MICHAEL_MIC=m 646 646 CONFIG_CRYPTO_RMD160=m 647 647 CONFIG_CRYPTO_SHA3=m 648 - CONFIG_CRYPTO_SM3=m 648 + CONFIG_CRYPTO_SM3_GENERIC=m 649 649 CONFIG_CRYPTO_WP512=m 650 650 CONFIG_CRYPTO_AES=y 651 651 CONFIG_CRYPTO_AES_TI=m ··· 660 660 CONFIG_CRYPTO_KHAZAD=m 661 661 CONFIG_CRYPTO_SEED=m 662 662 CONFIG_CRYPTO_SERPENT=m 663 - CONFIG_CRYPTO_SM4=m 663 + CONFIG_CRYPTO_SM4_GENERIC=m 664 664 CONFIG_CRYPTO_TEA=m 665 665 CONFIG_CRYPTO_TWOFISH=m 666 666 CONFIG_CRYPTO_LZO=m ··· 713 713 CONFIG_FIND_BIT_BENCHMARK=m 714 714 CONFIG_TEST_FIRMWARE=m 715 715 CONFIG_TEST_SYSCTL=m 716 - CONFIG_BITFIELD_KUNIT=m 717 - CONFIG_RESOURCE_KUNIT_TEST=m 718 716 CONFIG_LINEAR_RANGES_TEST=m 719 - CONFIG_CMDLINE_KUNIT_TEST=m 720 - CONFIG_BITS_TEST=m 721 717 CONFIG_TEST_UDELAY=m 722 718 CONFIG_TEST_STATIC_KEYS=m 723 719 CONFIG_TEST_KMOD=m
+5 -9
arch/m68k/configs/mvme147_defconfig
··· 10 10 # CONFIG_NET_NS is not set 11 11 CONFIG_BLK_DEV_INITRD=y 12 12 CONFIG_CC_OPTIMIZE_FOR_SIZE=y 13 - CONFIG_USERFAULTFD=y 14 - CONFIG_SLAB=y 15 13 CONFIG_KEXEC=y 16 14 CONFIG_BOOTINFO_PROC=y 17 15 CONFIG_M68030=y ··· 33 35 CONFIG_IOSCHED_BFQ=m 34 36 # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set 35 37 CONFIG_BINFMT_MISC=m 38 + CONFIG_SLAB=y 36 39 # CONFIG_COMPACTION is not set 37 - CONFIG_ZPOOL=m 40 + CONFIG_USERFAULTFD=y 38 41 CONFIG_NET=y 39 42 CONFIG_PACKET=y 40 43 CONFIG_PACKET_DIAG=m ··· 295 296 CONFIG_DEVTMPFS_MOUNT=y 296 297 CONFIG_TEST_ASYNC_DRIVER_PROBE=m 297 298 CONFIG_CONNECTOR=m 299 + CONFIG_ZRAM=m 298 300 CONFIG_BLK_DEV_LOOP=y 299 301 CONFIG_BLK_DEV_DRBD=m 300 302 CONFIG_BLK_DEV_NBD=m ··· 528 528 CONFIG_CRYPTO_MICHAEL_MIC=m 529 529 CONFIG_CRYPTO_RMD160=m 530 530 CONFIG_CRYPTO_SHA3=m 531 - CONFIG_CRYPTO_SM3=m 531 + CONFIG_CRYPTO_SM3_GENERIC=m 532 532 CONFIG_CRYPTO_WP512=m 533 533 CONFIG_CRYPTO_AES=y 534 534 CONFIG_CRYPTO_AES_TI=m ··· 543 543 CONFIG_CRYPTO_KHAZAD=m 544 544 CONFIG_CRYPTO_SEED=m 545 545 CONFIG_CRYPTO_SERPENT=m 546 - CONFIG_CRYPTO_SM4=m 546 + CONFIG_CRYPTO_SM4_GENERIC=m 547 547 CONFIG_CRYPTO_TEA=m 548 548 CONFIG_CRYPTO_TWOFISH=m 549 549 CONFIG_CRYPTO_LZO=m ··· 595 595 CONFIG_FIND_BIT_BENCHMARK=m 596 596 CONFIG_TEST_FIRMWARE=m 597 597 CONFIG_TEST_SYSCTL=m 598 - CONFIG_BITFIELD_KUNIT=m 599 - CONFIG_RESOURCE_KUNIT_TEST=m 600 598 CONFIG_LINEAR_RANGES_TEST=m 601 - CONFIG_CMDLINE_KUNIT_TEST=m 602 - CONFIG_BITS_TEST=m 603 599 CONFIG_TEST_UDELAY=m 604 600 CONFIG_TEST_STATIC_KEYS=m 605 601 CONFIG_TEST_KMOD=m
+5 -9
arch/m68k/configs/mvme16x_defconfig
··· 10 10 # CONFIG_NET_NS is not set 11 11 CONFIG_BLK_DEV_INITRD=y 12 12 CONFIG_CC_OPTIMIZE_FOR_SIZE=y 13 - CONFIG_USERFAULTFD=y 14 - CONFIG_SLAB=y 15 13 CONFIG_KEXEC=y 16 14 CONFIG_BOOTINFO_PROC=y 17 15 CONFIG_M68040=y ··· 34 36 CONFIG_IOSCHED_BFQ=m 35 37 # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set 36 38 CONFIG_BINFMT_MISC=m 39 + CONFIG_SLAB=y 37 40 # CONFIG_COMPACTION is not set 38 - CONFIG_ZPOOL=m 41 + CONFIG_USERFAULTFD=y 39 42 CONFIG_NET=y 40 43 CONFIG_PACKET=y 41 44 CONFIG_PACKET_DIAG=m ··· 296 297 CONFIG_DEVTMPFS_MOUNT=y 297 298 CONFIG_TEST_ASYNC_DRIVER_PROBE=m 298 299 CONFIG_CONNECTOR=m 300 + CONFIG_ZRAM=m 299 301 CONFIG_BLK_DEV_LOOP=y 300 302 CONFIG_BLK_DEV_DRBD=m 301 303 CONFIG_BLK_DEV_NBD=m ··· 529 529 CONFIG_CRYPTO_MICHAEL_MIC=m 530 530 CONFIG_CRYPTO_RMD160=m 531 531 CONFIG_CRYPTO_SHA3=m 532 - CONFIG_CRYPTO_SM3=m 532 + CONFIG_CRYPTO_SM3_GENERIC=m 533 533 CONFIG_CRYPTO_WP512=m 534 534 CONFIG_CRYPTO_AES=y 535 535 CONFIG_CRYPTO_AES_TI=m ··· 544 544 CONFIG_CRYPTO_KHAZAD=m 545 545 CONFIG_CRYPTO_SEED=m 546 546 CONFIG_CRYPTO_SERPENT=m 547 - CONFIG_CRYPTO_SM4=m 547 + CONFIG_CRYPTO_SM4_GENERIC=m 548 548 CONFIG_CRYPTO_TEA=m 549 549 CONFIG_CRYPTO_TWOFISH=m 550 550 CONFIG_CRYPTO_LZO=m ··· 596 596 CONFIG_FIND_BIT_BENCHMARK=m 597 597 CONFIG_TEST_FIRMWARE=m 598 598 CONFIG_TEST_SYSCTL=m 599 - CONFIG_BITFIELD_KUNIT=m 600 - CONFIG_RESOURCE_KUNIT_TEST=m 601 599 CONFIG_LINEAR_RANGES_TEST=m 602 - CONFIG_CMDLINE_KUNIT_TEST=m 603 - CONFIG_BITS_TEST=m 604 600 CONFIG_TEST_UDELAY=m 605 601 CONFIG_TEST_STATIC_KEYS=m 606 602 CONFIG_TEST_KMOD=m
+5 -9
arch/m68k/configs/q40_defconfig
··· 10 10 # CONFIG_NET_NS is not set 11 11 CONFIG_BLK_DEV_INITRD=y 12 12 CONFIG_CC_OPTIMIZE_FOR_SIZE=y 13 - CONFIG_USERFAULTFD=y 14 - CONFIG_SLAB=y 15 13 CONFIG_KEXEC=y 16 14 CONFIG_BOOTINFO_PROC=y 17 15 CONFIG_M68040=y ··· 35 37 CONFIG_IOSCHED_BFQ=m 36 38 # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set 37 39 CONFIG_BINFMT_MISC=m 40 + CONFIG_SLAB=y 38 41 # CONFIG_COMPACTION is not set 39 - CONFIG_ZPOOL=m 42 + CONFIG_USERFAULTFD=y 40 43 CONFIG_NET=y 41 44 CONFIG_PACKET=y 42 45 CONFIG_PACKET_DIAG=m ··· 300 301 CONFIG_PARPORT=m 301 302 CONFIG_PARPORT_PC=m 302 303 CONFIG_PARPORT_1284=y 304 + CONFIG_ZRAM=m 303 305 CONFIG_BLK_DEV_LOOP=y 304 306 CONFIG_BLK_DEV_DRBD=m 305 307 CONFIG_BLK_DEV_NBD=m ··· 546 546 CONFIG_CRYPTO_MICHAEL_MIC=m 547 547 CONFIG_CRYPTO_RMD160=m 548 548 CONFIG_CRYPTO_SHA3=m 549 - CONFIG_CRYPTO_SM3=m 549 + CONFIG_CRYPTO_SM3_GENERIC=m 550 550 CONFIG_CRYPTO_WP512=m 551 551 CONFIG_CRYPTO_AES=y 552 552 CONFIG_CRYPTO_AES_TI=m ··· 561 561 CONFIG_CRYPTO_KHAZAD=m 562 562 CONFIG_CRYPTO_SEED=m 563 563 CONFIG_CRYPTO_SERPENT=m 564 - CONFIG_CRYPTO_SM4=m 564 + CONFIG_CRYPTO_SM4_GENERIC=m 565 565 CONFIG_CRYPTO_TEA=m 566 566 CONFIG_CRYPTO_TWOFISH=m 567 567 CONFIG_CRYPTO_LZO=m ··· 614 614 CONFIG_FIND_BIT_BENCHMARK=m 615 615 CONFIG_TEST_FIRMWARE=m 616 616 CONFIG_TEST_SYSCTL=m 617 - CONFIG_BITFIELD_KUNIT=m 618 - CONFIG_RESOURCE_KUNIT_TEST=m 619 617 CONFIG_LINEAR_RANGES_TEST=m 620 - CONFIG_CMDLINE_KUNIT_TEST=m 621 - CONFIG_BITS_TEST=m 622 618 CONFIG_TEST_UDELAY=m 623 619 CONFIG_TEST_STATIC_KEYS=m 624 620 CONFIG_TEST_KMOD=m
+5 -9
arch/m68k/configs/sun3_defconfig
··· 10 10 # CONFIG_NET_NS is not set 11 11 CONFIG_BLK_DEV_INITRD=y 12 12 CONFIG_CC_OPTIMIZE_FOR_SIZE=y 13 - CONFIG_USERFAULTFD=y 14 - CONFIG_SLAB=y 15 13 CONFIG_KEXEC=y 16 14 CONFIG_BOOTINFO_PROC=y 17 15 CONFIG_SUN3=y ··· 31 33 CONFIG_IOSCHED_BFQ=m 32 34 # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set 33 35 CONFIG_BINFMT_MISC=m 36 + CONFIG_SLAB=y 34 37 # CONFIG_COMPACTION is not set 35 - CONFIG_ZPOOL=m 38 + CONFIG_USERFAULTFD=y 36 39 CONFIG_NET=y 37 40 CONFIG_PACKET=y 38 41 CONFIG_PACKET_DIAG=m ··· 293 294 CONFIG_DEVTMPFS_MOUNT=y 294 295 CONFIG_TEST_ASYNC_DRIVER_PROBE=m 295 296 CONFIG_CONNECTOR=m 297 + CONFIG_ZRAM=m 296 298 CONFIG_BLK_DEV_LOOP=y 297 299 CONFIG_BLK_DEV_DRBD=m 298 300 CONFIG_BLK_DEV_NBD=m ··· 528 528 CONFIG_CRYPTO_MICHAEL_MIC=m 529 529 CONFIG_CRYPTO_RMD160=m 530 530 CONFIG_CRYPTO_SHA3=m 531 - CONFIG_CRYPTO_SM3=m 531 + CONFIG_CRYPTO_SM3_GENERIC=m 532 532 CONFIG_CRYPTO_WP512=m 533 533 CONFIG_CRYPTO_AES=y 534 534 CONFIG_CRYPTO_AES_TI=m ··· 543 543 CONFIG_CRYPTO_KHAZAD=m 544 544 CONFIG_CRYPTO_SEED=m 545 545 CONFIG_CRYPTO_SERPENT=m 546 - CONFIG_CRYPTO_SM4=m 546 + CONFIG_CRYPTO_SM4_GENERIC=m 547 547 CONFIG_CRYPTO_TEA=m 548 548 CONFIG_CRYPTO_TWOFISH=m 549 549 CONFIG_CRYPTO_LZO=m ··· 594 594 CONFIG_FIND_BIT_BENCHMARK=m 595 595 CONFIG_TEST_FIRMWARE=m 596 596 CONFIG_TEST_SYSCTL=m 597 - CONFIG_BITFIELD_KUNIT=m 598 - CONFIG_RESOURCE_KUNIT_TEST=m 599 597 CONFIG_LINEAR_RANGES_TEST=m 600 - CONFIG_CMDLINE_KUNIT_TEST=m 601 - CONFIG_BITS_TEST=m 602 598 CONFIG_TEST_UDELAY=m 603 599 CONFIG_TEST_STATIC_KEYS=m 604 600 CONFIG_TEST_KMOD=m
+5 -9
arch/m68k/configs/sun3x_defconfig
··· 10 10 # CONFIG_NET_NS is not set 11 11 CONFIG_BLK_DEV_INITRD=y 12 12 CONFIG_CC_OPTIMIZE_FOR_SIZE=y 13 - CONFIG_USERFAULTFD=y 14 - CONFIG_SLAB=y 15 13 CONFIG_KEXEC=y 16 14 CONFIG_BOOTINFO_PROC=y 17 15 CONFIG_SUN3X=y ··· 31 33 CONFIG_IOSCHED_BFQ=m 32 34 # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set 33 35 CONFIG_BINFMT_MISC=m 36 + CONFIG_SLAB=y 34 37 # CONFIG_COMPACTION is not set 35 - CONFIG_ZPOOL=m 38 + CONFIG_USERFAULTFD=y 36 39 CONFIG_NET=y 37 40 CONFIG_PACKET=y 38 41 CONFIG_PACKET_DIAG=m ··· 293 294 CONFIG_DEVTMPFS_MOUNT=y 294 295 CONFIG_TEST_ASYNC_DRIVER_PROBE=m 295 296 CONFIG_CONNECTOR=m 297 + CONFIG_ZRAM=m 296 298 CONFIG_BLK_DEV_LOOP=y 297 299 CONFIG_BLK_DEV_DRBD=m 298 300 CONFIG_BLK_DEV_NBD=m ··· 527 527 CONFIG_CRYPTO_MICHAEL_MIC=m 528 528 CONFIG_CRYPTO_RMD160=m 529 529 CONFIG_CRYPTO_SHA3=m 530 - CONFIG_CRYPTO_SM3=m 530 + CONFIG_CRYPTO_SM3_GENERIC=m 531 531 CONFIG_CRYPTO_WP512=m 532 532 CONFIG_CRYPTO_AES=y 533 533 CONFIG_CRYPTO_AES_TI=m ··· 542 542 CONFIG_CRYPTO_KHAZAD=m 543 543 CONFIG_CRYPTO_SEED=m 544 544 CONFIG_CRYPTO_SERPENT=m 545 - CONFIG_CRYPTO_SM4=m 545 + CONFIG_CRYPTO_SM4_GENERIC=m 546 546 CONFIG_CRYPTO_TEA=m 547 547 CONFIG_CRYPTO_TWOFISH=m 548 548 CONFIG_CRYPTO_LZO=m ··· 594 594 CONFIG_FIND_BIT_BENCHMARK=m 595 595 CONFIG_TEST_FIRMWARE=m 596 596 CONFIG_TEST_SYSCTL=m 597 - CONFIG_BITFIELD_KUNIT=m 598 - CONFIG_RESOURCE_KUNIT_TEST=m 599 597 CONFIG_LINEAR_RANGES_TEST=m 600 - CONFIG_CMDLINE_KUNIT_TEST=m 601 - CONFIG_BITS_TEST=m 602 598 CONFIG_TEST_UDELAY=m 603 599 CONFIG_TEST_STATIC_KEYS=m 604 600 CONFIG_TEST_KMOD=m
+1 -1
arch/m68k/include/asm/bitops.h
··· 510 510 return 32 - cnt; 511 511 } 512 512 513 - static inline int __fls(int x) 513 + static inline unsigned long __fls(unsigned long x) 514 514 { 515 515 return fls(x) - 1; 516 516 }
+1
arch/m68k/include/asm/processor.h
··· 151 151 } 152 152 153 153 unsigned long __get_wchan(struct task_struct *p); 154 + void show_registers(struct pt_regs *regs); 154 155 155 156 #define KSTK_EIP(tsk) \ 156 157 ({ \
+8
arch/m68k/include/uapi/asm/bootinfo-virt.h
··· 13 13 #define BI_VIRT_VIRTIO_BASE 0x8004 14 14 #define BI_VIRT_CTRL_BASE 0x8005 15 15 16 + /* 17 + * A random seed used to initialize the RNG. Record format: 18 + * 19 + * - length [ 2 bytes, 16-bit big endian ] 20 + * - seed data [ `length` bytes, padded to preserve 2-byte alignment ] 21 + */ 22 + #define BI_VIRT_RNG_SEED 0x8006 23 + 16 24 #define VIRT_BOOTI_VERSION MK_BI_VERSION(2, 0) 17 25 18 26 #endif /* _UAPI_ASM_M68K_BOOTINFO_MAC_H */
+1
arch/m68k/kernel/traps.c
··· 36 36 #include <linux/uaccess.h> 37 37 #include <asm/traps.h> 38 38 #include <asm/machdep.h> 39 + #include <asm/processor.h> 39 40 #include <asm/siginfo.h> 40 41 #include <asm/tlbflush.h> 41 42
+2 -2
arch/m68k/mac/iop.c
··· 25 25 * check this.) 26 26 * 990605 (jmt) - Rearranged things a bit wrt IOP detection; iop_present is 27 27 * gone, IOP base addresses are now in an array and the 28 - * globally-visible functions take an IOP number instead of an 28 + * globally-visible functions take an IOP number instead of 29 29 * an actual base address. 30 30 * 990610 (jmt) - Finished the message passing framework and it seems to work. 31 31 * Sending _definitely_ works; my adb-bus.c mods can send ··· 66 66 * a shared memory area in the IOP RAM. Each IOP has seven "channels"; each 67 67 * channel is connected to a specific software driver on the IOP. For example 68 68 * on the SCC IOP there is one channel for each serial port. Each channel has 69 - * an incoming and and outgoing message queue with a depth of one. 69 + * an incoming and an outgoing message queue with a depth of one. 70 70 * 71 71 * A message is 32 bytes plus a state byte for the channel (MSG_IDLE, MSG_NEW, 72 72 * MSG_RCVD, MSG_COMPLETE). To send a message you copy the message into the
+16 -19
arch/m68k/mac/macints.c
··· 126 126 #include <asm/mac_baboon.h> 127 127 #include <asm/hwtest.h> 128 128 #include <asm/irq_regs.h> 129 - 130 - extern void show_registers(struct pt_regs *); 131 - 132 - irqreturn_t mac_nmi_handler(int, void *); 129 + #include <asm/processor.h> 133 130 134 131 static unsigned int mac_irq_startup(struct irq_data *); 135 132 static void mac_irq_shutdown(struct irq_data *); ··· 138 141 .irq_startup = mac_irq_startup, 139 142 .irq_shutdown = mac_irq_shutdown, 140 143 }; 144 + 145 + static irqreturn_t mac_nmi_handler(int irq, void *dev_id) 146 + { 147 + static volatile int in_nmi; 148 + 149 + if (in_nmi) 150 + return IRQ_HANDLED; 151 + in_nmi = 1; 152 + 153 + pr_info("Non-Maskable Interrupt\n"); 154 + show_registers(get_irq_regs()); 155 + 156 + in_nmi = 0; 157 + return IRQ_HANDLED; 158 + } 141 159 142 160 void __init mac_init_IRQ(void) 143 161 { ··· 265 253 via_nubus_irq_shutdown(irq); 266 254 else 267 255 mac_irq_disable(data); 268 - } 269 - 270 - static volatile int in_nmi; 271 - 272 - irqreturn_t mac_nmi_handler(int irq, void *dev_id) 273 - { 274 - if (in_nmi) 275 - return IRQ_HANDLED; 276 - in_nmi = 1; 277 - 278 - pr_info("Non-Maskable Interrupt\n"); 279 - show_registers(get_irq_regs()); 280 - 281 - in_nmi = 0; 282 - return IRQ_HANDLED; 283 256 }
+1 -1
arch/m68k/q40/q40ints.c
··· 32 32 * 33 : frame int (50/200 Hz periodic timer) 33 33 * 34 : sample int (10/20 KHz periodic timer) 34 34 * 35 - */ 35 + */ 36 36 37 37 static void q40_irq_handler(unsigned int, struct pt_regs *fp); 38 38 static void q40_irq_enable(struct irq_data *data);
+5 -6
arch/m68k/sun3/mmu_emu.c
··· 211 211 212 212 if(context) { 213 213 if(!ctx_alloc[context]) 214 - panic("clear_context: context not allocated\n"); 214 + panic("%s: context not allocated\n", __func__); 215 215 216 216 ctx_alloc[context]->context = SUN3_INVALID_CONTEXT; 217 217 ctx_alloc[context] = (struct mm_struct *)0; ··· 261 261 } 262 262 // check to make sure one was really free... 263 263 if(new == CONTEXTS_NUM) 264 - panic("get_free_context: failed to find free context"); 264 + panic("%s: failed to find free context", __func__); 265 265 } 266 266 267 267 ctx_alloc[new] = mm; ··· 369 369 } 370 370 371 371 #ifdef DEBUG_MMU_EMU 372 - pr_info("mmu_emu_handle_fault: vaddr=%lx type=%s crp=%p\n", 373 - vaddr, read_flag ? "read" : "write", crp); 372 + pr_info("%s: vaddr=%lx type=%s crp=%p\n", __func__, vaddr, 373 + read_flag ? "read" : "write", crp); 374 374 #endif 375 375 376 376 segment = (vaddr >> SUN3_PMEG_SIZE_BITS) & 0x7FF; 377 377 offset = (vaddr >> SUN3_PTE_SIZE_BITS) & 0xF; 378 378 379 379 #ifdef DEBUG_MMU_EMU 380 - pr_info("mmu_emu_handle_fault: segment=%lx offset=%lx\n", segment, 381 - offset); 380 + pr_info("%s: segment=%lx offset=%lx\n", __func__, segment, offset); 382 381 #endif 383 382 384 383 pte = (pte_t *) pgd_val (*(crp + segment));
+11
arch/m68k/virt/config.c
··· 2 2 3 3 #include <linux/reboot.h> 4 4 #include <linux/serial_core.h> 5 + #include <linux/random.h> 5 6 #include <clocksource/timer-goldfish.h> 6 7 7 8 #include <asm/bootinfo.h> ··· 93 92 data += 4; 94 93 virt_bi_data.virtio.irq = be32_to_cpup(data); 95 94 break; 95 + case BI_VIRT_RNG_SEED: { 96 + u16 len = be16_to_cpup(data); 97 + add_bootloader_randomness(data + 2, len); 98 + /* 99 + * Zero the data to preserve forward secrecy, and zero the 100 + * length to prevent kexec from using it. 101 + */ 102 + memzero_explicit((void *)data, len + 2); 103 + break; 104 + } 96 105 default: 97 106 unknown = 1; 98 107 break;
+1 -2
arch/m68k/virt/ints.c
··· 12 12 #include <asm/hwtest.h> 13 13 #include <asm/irq.h> 14 14 #include <asm/irq_regs.h> 15 + #include <asm/processor.h> 15 16 #include <asm/virt.h> 16 17 17 18 #define GFPIC_REG_IRQ_PENDING 0x04 18 19 #define GFPIC_REG_IRQ_DISABLE_ALL 0x08 19 20 #define GFPIC_REG_IRQ_DISABLE 0x0c 20 21 #define GFPIC_REG_IRQ_ENABLE 0x10 21 - 22 - extern void show_registers(struct pt_regs *regs); 23 22 24 23 static struct resource picres[6]; 25 24 static const char *picname[6] = {
+33 -25
arch/m68k/virt/platform.c
··· 8 8 9 9 #define VIRTIO_BUS_NB 128 10 10 11 - static int __init virt_virtio_init(unsigned int id) 11 + static struct platform_device * __init virt_virtio_init(unsigned int id) 12 12 { 13 13 const struct resource res[] = { 14 14 DEFINE_RES_MEM(virt_bi_data.virtio.mmio + id * 0x200, 0x200), 15 15 DEFINE_RES_IRQ(virt_bi_data.virtio.irq + id), 16 16 }; 17 - struct platform_device *pdev; 18 17 19 - pdev = platform_device_register_simple("virtio-mmio", id, 18 + return platform_device_register_simple("virtio-mmio", id, 20 19 res, ARRAY_SIZE(res)); 21 - if (IS_ERR(pdev)) 22 - return PTR_ERR(pdev); 23 - 24 - return 0; 25 20 } 26 21 27 22 static int __init virt_platform_init(void) ··· 30 35 DEFINE_RES_MEM(virt_bi_data.rtc.mmio + 0x1000, 0x1000), 31 36 DEFINE_RES_IRQ(virt_bi_data.rtc.irq + 1), 32 37 }; 33 - struct platform_device *pdev; 38 + struct platform_device *pdev1, *pdev2; 39 + struct platform_device *pdevs[VIRTIO_BUS_NB]; 34 40 unsigned int i; 41 + int ret = 0; 35 42 36 43 if (!MACH_IS_VIRT) 37 44 return -ENODEV; ··· 41 44 /* We need this to have DMA'able memory provided to goldfish-tty */ 42 45 min_low_pfn = 0; 43 46 44 - pdev = platform_device_register_simple("goldfish_tty", 45 - PLATFORM_DEVID_NONE, 46 - goldfish_tty_res, 47 - ARRAY_SIZE(goldfish_tty_res)); 48 - if (IS_ERR(pdev)) 49 - return PTR_ERR(pdev); 47 + pdev1 = platform_device_register_simple("goldfish_tty", 48 + PLATFORM_DEVID_NONE, 49 + goldfish_tty_res, 50 + ARRAY_SIZE(goldfish_tty_res)); 51 + if (IS_ERR(pdev1)) 52 + return PTR_ERR(pdev1); 50 53 51 - pdev = platform_device_register_simple("goldfish_rtc", 52 - PLATFORM_DEVID_NONE, 53 - goldfish_rtc_res, 54 - ARRAY_SIZE(goldfish_rtc_res)); 55 - if (IS_ERR(pdev)) 56 - return PTR_ERR(pdev); 54 + pdev2 = platform_device_register_simple("goldfish_rtc", 55 + PLATFORM_DEVID_NONE, 56 + goldfish_rtc_res, 57 + ARRAY_SIZE(goldfish_rtc_res)); 58 + if (IS_ERR(pdev2)) { 59 + ret = PTR_ERR(pdev2); 60 + goto err_unregister_tty; 61 + } 57 62 58 63 for (i = 0; i < VIRTIO_BUS_NB; i++) { 59 - int err; 60 - 61 - err = virt_virtio_init(i); 62 - if (err) 63 - return err; 64 + pdevs[i] = virt_virtio_init(i); 65 + if (IS_ERR(pdevs[i])) { 66 + ret = PTR_ERR(pdevs[i]); 67 + goto err_unregister_rtc_virtio; 68 + } 64 69 } 65 70 66 71 return 0; 72 + 73 + err_unregister_rtc_virtio: 74 + while (i > 0) 75 + platform_device_unregister(pdevs[--i]); 76 + platform_device_unregister(pdev2); 77 + err_unregister_tty: 78 + platform_device_unregister(pdev1); 79 + 80 + return ret; 67 81 } 68 82 69 83 arch_initcall(virt_platform_init);