Fork us on GitHub Follow us on Facebook Follow us on Twitter

Changeset 336d2f52 in mainline


Ignore:
Timestamp:
2011-07-02T21:16:24Z (11 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master
Children:
e944e4c
Parents:
d2fac08c
Message:

Remove support for Sun hardware for which we have no test plan.

This includes the removal of the following functionality only available
via the Simics simulator, for which we have been unable to secure a
license:

  • FHC bus and interrupt controller
  • Zilog 8530 serial controller attached to Sun keyboard
  • Serengeti and SGCN support
Files:
17 deleted
20 edited

Legend:

Unmodified
Added
Removed
  • HelenOS.config

    rd2fac08c r336d2f52  
    5959% Machine type
    6060@ "generic" Generic Sun workstation or server
    61 @ "serengeti" Serengeti system
    6261! [PLATFORM=sparc64] MACHINE (choice)
    6362
     
    8685! [PLATFORM=sparc64&MACHINE=generic] PROCESSOR (choice)
    8786
    88 % CPU type
    89 @ "us3"
    90 ! [PLATFORM=sparc64&MACHINE=serengeti] PROCESSOR (choice)
    91 
    9287% RAM disk format
    9388@ "tmpfs" TMPFS image
     
    468463! [PLATFORM=arm32&MACHINE=gta02] CONFIG_S3C24XX_IRQC (y)
    469464
    470 % Support for Z8530 controller
    471 ! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=keyboard)&PLATFORM=sparc64&MACHINE=generic] CONFIG_Z8530 (y/n)
    472 
    473 % Support for Serengeti console
    474 ! [CONFIG_HID_OUT=generic&PLATFORM=sparc64&MACHINE=serengeti] CONFIG_SGCN_PRN (y/n)
    475 
    476 % Support for Serengeti keyboard
    477 ! [CONFIG_HID_IN=generic&PLATFORM=sparc64&MACHINE=serengeti] CONFIG_SGCN_KBD (y/n)
    478 
    479465% Support for i8042 controller
    480466! [CONFIG_PC_KBD=y] CONFIG_I8042 (y)
     
    484470
    485471% Sun keyboard support
    486 ! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=keyboard)&PLATFORM=sparc64&MACHINE=generic&(CONFIG_NS16550=y|CONFIG_Z8530=y)] CONFIG_SUN_KBD (y)
     472! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=keyboard)&PLATFORM=sparc64&MACHINE=generic&CONFIG_NS16550=y] CONFIG_SUN_KBD (y)
    487473
    488474% Macintosh ADB keyboard support
     
    496482
    497483% Serial line input module
    498 ! [CONFIG_DSRLNIN=y|(PLATFORM=arm32&MACHINE=gta02)|(PLATFORM=ia64&MACHINE=i460GX&CONFIG_NS16550=y)|(PLATFORM=ia64&MACHINE=ski)|(PLATFORM=sparc64&MACHINE=serengeti&CONFIG_SGCN_KBD=y)|(PLATFORM=sparc64&PROCESSOR=sun4v)] CONFIG_SRLN (y)
     484! [CONFIG_DSRLNIN=y|(PLATFORM=arm32&MACHINE=gta02)|(PLATFORM=ia64&MACHINE=i460GX&CONFIG_NS16550=y)|(PLATFORM=ia64&MACHINE=ski)|(PLATFORM=sparc64&PROCESSOR=sun4v)] CONFIG_SRLN (y)
    499485
    500486% EGA support
     
    543529! [PLATFORM=sparc64&CONFIG_SMP=y] CONFIG_AP (y/n)
    544530
    545 % Preserve A.OUT header in isofs.b
    546 ! [PLATFORM=sparc64&MACHINE=generic] CONFIG_AOUT_ISOFS_B (y)
    547 
    548531% Dynamic linking support
    549532! [PLATFORM=ia32] CONFIG_RTLD (n/y)
  • boot/Makefile.silo

    rd2fac08c r336d2f52  
    3131include Makefile.common
    3232
    33 ifeq ($(CONFIG_AOUT_ISOFS_B),y)
    34         SILO_PACKAGE = a.out
    35 else
    36         SILO_PACKAGE = raw
    37 endif
     33SILO_PACKAGE = a.out
    3834
    3935ISOFS_B = silo/$(SILO_PACKAGE)/isofs.b
  • boot/arch/sparc64/Makefile.inc

    rd2fac08c r336d2f52  
    4343
    4444RD_SRVS_ESSENTIAL += \
    45         $(USPACE_PATH)/srv/hw/irc/fhc/fhc \
    4645        $(USPACE_PATH)/srv/hw/irc/obio/obio
    4746
  • boot/arch/sparc64/src/main.c

    rd2fac08c r336d2f52  
    182182         * of the "/memory" node to find out which parts of memory
    183183         * are used by OBP and redesign the algorithm of copying
    184          * kernel/init tasks/ramdisk from the bootable image to memory
    185          * (which we must do anyway because of issues with claiming the memory
    186          * on Serengeti).
    187          *
     184         * kernel/init tasks/ramdisk from the bootable image to memory.
    188185         */
    189186        bootinfo.physmem_start += OBP_BIAS;
  • defaults/sparc64/Makefile.config

    rd2fac08c r336d2f52  
    5353CONFIG_AP = y
    5454
    55 # Preserve A.OUT header in isofs.b
    56 CONFIG_AOUT_ISOFS_B = y
    57 
    5855# Load disk drivers on startup
    5956CONFIG_START_BD = n
  • kernel/arch/sparc64/Makefile.inc

    rd2fac08c r336d2f52  
    8484        arch/$(KARCH)/src/drivers/tick.c \
    8585        arch/$(KARCH)/src/drivers/kbd.c \
    86         arch/$(KARCH)/src/drivers/sgcn.c \
    8786        arch/$(KARCH)/src/drivers/pci.c \
    88         arch/$(KARCH)/src/drivers/fhc.c \
    8987        arch/$(KARCH)/src/trap/$(USARCH)/interrupt.c
    9088
  • kernel/arch/sparc64/src/console.c

    rd2fac08c r336d2f52  
    3838#include <arch/drivers/scr.h>
    3939#include <arch/drivers/kbd.h>
    40 #include <arch/drivers/sgcn.h>
    4140#include <genarch/srln/srln.h>
    4241#include <console/chardev.h>
     
    8988}
    9089
    91 /** Initilize I/O on the Serengeti machine. */
    92 static void serengeti_init(void)
    93 {
    94 #ifdef CONFIG_SGCN_KBD
    95         sgcn_instance_t *sgcn_instance = sgcnin_init();
    96         if (sgcn_instance) {
    97                 srln_instance_t *srln_instance = srln_init();
    98                 if (srln_instance) {
    99                         indev_t *sink = stdin_wire();
    100                         indev_t *srln = srln_wire(srln_instance, sink);
    101                         sgcnin_wire(sgcn_instance, srln);
    102                 }
    103         }
    104 #endif
    105        
    106 #ifdef CONFIG_SGCN_PRN
    107         outdev_t *sgcndev = sgcnout_init();
    108         if (sgcndev)
    109                 stdout_wire(sgcndev);
    110 #endif
    111 }
    112 
    11390/**
    11491 * Initialize input/output. Auto-detects the type of machine
     
    127104        prop = ofw_tree_getprop(aliases, "def-cn");
    128105       
    129         if ((!prop) || (!prop->value) || (str_cmp(prop->value, "/sgcn") != 0)) {
     106        if ((!prop) || (!prop->value))
    130107                standard_console_init(aliases);
    131         } else {
    132                 serengeti_init();
    133         }
    134108}
    135109
  • kernel/arch/sparc64/src/drivers/kbd.c

    rd2fac08c r336d2f52  
    3535#include <arch/drivers/kbd.h>
    3636#include <genarch/ofw/ofw_tree.h>
    37 #include <genarch/ofw/fhc.h>
    3837#include <genarch/ofw/ebus.h>
    3938#include <console/console.h>
     
    5150#endif
    5251
    53 #ifdef CONFIG_Z8530
    54 #include <genarch/drivers/z8530/z8530.h>
    55 #endif
    56 
    5752#ifdef CONFIG_NS16550
    5853#include <genarch/drivers/ns16550/ns16550.h>
     
    6055
    6156#ifdef CONFIG_SUN_KBD
    62 
    63 #ifdef CONFIG_Z8530
    64 
    65 static bool kbd_z8530_init(ofw_tree_node_t *node)
    66 {
    67         const char *name = ofw_tree_node_name(node);
    68        
    69         if (str_cmp(name, "zs") != 0)
    70                 return false;
    71        
    72         /*
    73          * Read 'interrupts' property.
    74          */
    75         ofw_tree_property_t *prop = ofw_tree_getprop(node, "interrupts");
    76         if ((!prop) || (!prop->value)) {
    77                 printf("z8530: Unable to find interrupts property\n");
    78                 return false;
    79         }
    80        
    81         uint32_t interrupts = *((uint32_t *) prop->value);
    82        
    83         /*
    84          * Read 'reg' property.
    85          */
    86         prop = ofw_tree_getprop(node, "reg");
    87         if ((!prop) || (!prop->value)) {
    88                 printf("z8530: Unable to find reg property\n");
    89                 return false;
    90         }
    91        
    92         size_t size = ((ofw_fhc_reg_t *) prop->value)->size;
    93        
    94         uintptr_t pa;
    95         if (!ofw_fhc_apply_ranges(node->parent,
    96             ((ofw_fhc_reg_t *) prop->value), &pa)) {
    97                 printf("z8530: Failed to determine address\n");
    98                 return false;
    99         }
    100        
    101         inr_t inr;
    102         cir_t cir;
    103         void *cir_arg;
    104         if (!ofw_fhc_map_interrupt(node->parent,
    105             ((ofw_fhc_reg_t *) prop->value), interrupts, &inr, &cir,
    106             &cir_arg)) {
    107                 printf("z8530: Failed to determine interrupt\n");
    108                 return false;
    109         }
    110        
    111         /*
    112          * We need to pass aligned address to hw_map().
    113          * However, the physical keyboard address can
    114          * be pretty much unaligned, depending on the
    115          * underlying controller.
    116          */
    117         uintptr_t aligned_addr = ALIGN_DOWN(pa, PAGE_SIZE);
    118         size_t offset = pa - aligned_addr;
    119        
    120         z8530_t *z8530 = (z8530_t *)
    121             (hw_map(aligned_addr, offset + size) + offset);
    122        
    123         z8530_instance_t *z8530_instance = z8530_init(z8530, inr, cir, cir_arg);
    124         if (z8530_instance) {
    125                 kbrd_instance_t *kbrd_instance = kbrd_init();
    126                 if (kbrd_instance) {
    127                         indev_t *sink = stdin_wire();
    128                         indev_t *kbrd = kbrd_wire(kbrd_instance, sink);
    129                         z8530_wire(z8530_instance, kbrd);
    130                 }
    131         }
    132        
    133         /*
    134          * This is the necessary evil until the userspace drivers are
    135          * entirely self-sufficient.
    136          */
    137         sysinfo_set_item_val("kbd", NULL, true);
    138         sysinfo_set_item_val("kbd.inr", NULL, inr);
    139         sysinfo_set_item_val("kbd.address.kernel", NULL,
    140             (uintptr_t) z8530);
    141         sysinfo_set_item_val("kbd.address.physical", NULL, pa);
    142         sysinfo_set_item_val("kbd.type.z8530", NULL, true);
    143        
    144         return true;
    145 }
    146 
    147 #endif /* CONFIG_Z8530 */
    14857
    14958#ifdef CONFIG_NS16550
     
    243152void kbd_init(ofw_tree_node_t *node)
    244153{
    245 #ifdef CONFIG_Z8530
    246         kbd_z8530_init(node);
    247 #endif
    248        
    249154#ifdef CONFIG_NS16550
    250155        kbd_ns16550_init(node);
  • kernel/genarch/Makefile.inc

    rd2fac08c r336d2f52  
    100100endif
    101101
    102 ifeq ($(CONFIG_Z8530),y)
    103         GENARCH_SOURCES += \
    104                 genarch/src/drivers/z8530/z8530.c
    105 endif
    106 
    107102ifeq ($(CONFIG_VIA_CUDA),y)
    108103        GENARCH_SOURCES += \
     
    141136        GENARCH_SOURCES += \
    142137                genarch/src/ofw/ebus.c \
    143                 genarch/src/ofw/fhc.c \
    144138                genarch/src/ofw/pci.c  \
    145139                genarch/src/ofw/sbus.c \
  • release/Makefile

    rd2fac08c r336d2f52  
    3434PROFILES = amd64 arm32/GXemul arm32/integratorcp arm32/gta02 ia32 \
    3535    ia64/i460GX ia64/ski mips32/GXemul mips32/msim sparc64/niagara \
    36     sparc64/serengeti sparc64/ultra
     36    sparc64/ultra
    3737
    3838BZR = bzr
  • uspace/Makefile

    rd2fac08c r336d2f52  
    153153ifeq ($(UARCH),sparc64)
    154154        DIRS += \
    155                 srv/hw/irc/fhc \
    156155                srv/hw/irc/obio
    157156endif
  • uspace/app/init/init.c

    rd2fac08c r336d2f52  
    270270        spawn("/srv/apic");
    271271        spawn("/srv/i8259");
    272         spawn("/srv/fhc");
    273272        spawn("/srv/obio");
    274273        srv_start("/srv/cuda_adb");
  • uspace/srv/hid/fb/Makefile

    rd2fac08c r336d2f52  
    8484                EXTRA_CFLAGS += -DNIAGARA_ENABLED
    8585        endif
    86        
    87         ifeq ($(MACHINE),serengeti)
    88                 SOURCES += \
    89                         sgcn.c \
    90                         serial_console.c
    91                 EXTRA_CFLAGS += -DSGCN_ENABLED
    92         endif
    9386endif
    9487
  • uspace/srv/hid/fb/main.c

    rd2fac08c r336d2f52  
    4040#include "msim.h"
    4141#include "ski.h"
    42 #include "sgcn.h"
    4342#include "niagara.h"
    4443#include "main.h"
     
    9291        }
    9392#endif
    94 #ifdef SGCN_ENABLED
    95         if ((!initialized) && (fb_kind == 4)) {
    96                 if (sgcn_init() == 0)
    97                         initialized = true;
    98         }
    99 #endif
    10093#ifdef NIAGARA_ENABLED
    10194        if ((!initialized) && (fb_kind == 5)) {
  • uspace/srv/hid/fb/niagara.c

    rd2fac08c r336d2f52  
    2929 */
    3030
    31 /** @defgroup niagarafb SGCN
     31/** @defgroup niagarafb
    3232 * @brief       userland driver of the Niagara console output
    3333 * @{
  • uspace/srv/hid/fb/niagara.h

    rd2fac08c r336d2f52  
    2727 */
    2828
    29 /** @defgroup sgcnfb SGCN
    30  * @brief       userland driver of the Serengeti console output
     29/** @defgroup niagarafb
     30 * @brief       userland driver of the Niagara console output
    3131 * @{
    3232 */
  • uspace/srv/hid/input/Makefile

    rd2fac08c r336d2f52  
    4949        port/ns16550.c \
    5050        port/pl050.c \
    51         port/sgcn.c \
    5251        port/ski.c \
    53         port/z8530.c \
    5452        proto/adb.c \
    5553        proto/mousedev.c \
  • uspace/srv/hid/input/generic/input.c

    rd2fac08c r336d2f52  
    424424        kbd_add_dev(&niagara_port, &stty_ctl);
    425425#endif
    426 #if defined(UARCH_sparc64) && defined(MACHINE_serengeti)
    427         kbd_add_dev(&sgcn_port, &stty_ctl);
    428 #endif
    429426#if defined(UARCH_sparc64) && defined(MACHINE_generic)
    430         kbd_add_dev(&z8530_port, &sun_ctl);
    431427        kbd_add_dev(&ns16550_port, &sun_ctl);
    432428#endif
     
    556552        printf("%s: HelenOS input service\n", NAME);
    557553       
    558         sysarg_t fhc;
    559554        sysarg_t obio;
    560555       
     
    562557        list_initialize(&mouse_devs);
    563558       
    564         if (((sysinfo_get_value("kbd.cir.fhc", &fhc) == EOK) && (fhc))
    565             || ((sysinfo_get_value("kbd.cir.obio", &obio) == EOK) && (obio)))
     559        if ((sysinfo_get_value("kbd.cir.obio", &obio) == EOK) && (obio))
    566560                irc_service = true;
    567561       
  • uspace/srv/hid/input/include/kbd_port.h

    rd2fac08c r336d2f52  
    5656extern kbd_port_ops_t ns16550_port;
    5757extern kbd_port_ops_t pl050_port;
    58 extern kbd_port_ops_t sgcn_port;
    5958extern kbd_port_ops_t ski_port;
    60 extern kbd_port_ops_t z8530_port;
    6159
    6260#endif
  • uspace/srv/hid/input/port/niagara.c

    rd2fac08c r336d2f52  
    154154
    155155/**
    156  * Thread to poll SGCN for keypresses.
     156 * Thread to poll Niagara console for keypresses.
    157157 */
    158158static void niagara_thread_impl(void *arg)
Note: See TracChangeset for help on using the changeset viewer.