1c585bae1SBenno Rice# This file tells config what files go into building a kernel, 2c585bae1SBenno Rice# files marked standard are always included. 3c585bae1SBenno Rice# 4c585bae1SBenno Rice# $FreeBSD$ 5c585bae1SBenno Rice# 6c585bae1SBenno Rice# The long compile-with and dependency lines are required because of 7c585bae1SBenno Rice# limitations in config: backslash-newline doesn't work in strings, and 8c585bae1SBenno Rice# dependency lines other than the first are silently ignored. 9c585bae1SBenno Rice# 10c585bae1SBenno Rice# 11c585bae1SBenno Rice 12473795dcSPeter Grehanfont.h optional sc \ 13473795dcSPeter Grehan compile-with "uudecode < /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x16.fnt && file2c 'u_char dflt_font_16[16*256] = {' '};' < ${SC_DFLT_FONT}-8x16 > font.h && uudecode < /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x14.fnt && file2c 'u_char dflt_font_14[14*256] = {' '};' < ${SC_DFLT_FONT}-8x14 >> font.h && uudecode < /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x8.fnt && file2c 'u_char dflt_font_8[8*256] = {' '};' < ${SC_DFLT_FONT}-8x8 >> font.h" \ 14473795dcSPeter Grehan no-obj no-implicit-rule before-depend \ 15473795dcSPeter Grehan clean "font.h ${SC_DFLT_FONT}-8x14 ${SC_DFLT_FONT}-8x16 ${SC_DFLT_FONT}-8x8" 161773f778SSam Leffler# 1788c7c434SPeter Wemm# There is only an asm version on ppc64. 184f4d15f0SRuslan Bukincddl/compat/opensolaris/kern/opensolaris_atomic.c optional zfs powerpc | dtrace powerpc compile-with "${ZFS_C}" 194f4d15f0SRuslan Bukincddl/contrib/opensolaris/common/atomic/powerpc64/opensolaris_atomic.S optional zfs powerpc64 | dtrace powerpc64 compile-with "${ZFS_S}" 204f4d15f0SRuslan Bukincddl/dev/dtrace/powerpc/dtrace_asm.S optional dtrace compile-with "${DTRACE_S}" 214f4d15f0SRuslan Bukincddl/dev/dtrace/powerpc/dtrace_subr.c optional dtrace compile-with "${DTRACE_C}" 224f4d15f0SRuslan Bukincddl/dev/fbt/powerpc/fbt_isa.c optional dtrace_fbt | dtraceall compile-with "${FBT_C}" 23dd3456c0SMarcel Moolenaarcrypto/blowfish/bf_enc.c optional crypto | ipsec 24237abf0cSDavide Italianocrypto/des/des_enc.c optional crypto | ipsec | netsmb 25cf99524aSMarcel Moolenaardev/bm/if_bm.c optional bm powermac 26b4dbc599SNathan Whitehorndev/adb/adb_bus.c optional adb 27b4dbc599SNathan Whitehorndev/adb/adb_kbd.c optional adb 28b4dbc599SNathan Whitehorndev/adb/adb_mouse.c optional adb 29b4dbc599SNathan Whitehorndev/adb/adb_hb_if.m optional adb 30b4dbc599SNathan Whitehorndev/adb/adb_if.m optional adb 31b6faf3cfSNathan Whitehorndev/adb/adb_buttons.c optional adb 3250fd2a5bSNathan Whitehorndev/agp/agp_apple.c optional agp powermac 33473795dcSPeter Grehandev/fb/fb.c optional sc 34d1d3233eSRafal Jaworowskidev/fdt/fdt_powerpc.c optional fdt 35ecaecbc7SIan Lepore# ofwbus depends on simplebus. 36ecaecbc7SIan Leporedev/fdt/simplebus.c optional aim | fdt 37a7452468SJustin Hibbitsdev/hwpmc/hwpmc_e500.c optional hwpmc 3898fa0351SGleb Smirnoffdev/hwpmc/hwpmc_mpc7xxx.c optional hwpmc 39a7452468SJustin Hibbitsdev/hwpmc/hwpmc_powerpc.c optional hwpmc 40169dd953SJustin Hibbitsdev/hwpmc/hwpmc_ppc970.c optional hwpmc 41d188174aSAndreas Toblerdev/iicbus/ad7417.c optional ad7417 powermac 42e9152038SJustin Hibbitsdev/iicbus/adm1030.c optional powermac windtunnel | adm1030 powermac 43c017acc7SJustin Hibbitsdev/iicbus/adt746x.c optional adt746x powermac 44a894f6a0SAndreas Toblerdev/iicbus/ds1631.c optional ds1631 powermac 45da89fa28SAndreas Toblerdev/iicbus/ds1775.c optional ds1775 powermac 46da89fa28SAndreas Toblerdev/iicbus/max6690.c optional max6690 powermac 4727cf7d04SAleksandr Rybalkodev/kbd/kbd.c optional sc | vt 487c45c9e4SMarcel Moolenaardev/nand/nfc_fsl.c optional nand mpc85xx 4998be38e7SJustin Hibbitsdev/nand/nfc_rb.c optional nand mpc85xx 505d26cae7SWarner Losh# ofw can be either aim or fdt: fdt case handled in files. aim only powerpc specific. 515d26cae7SWarner Loshdev/ofw/openfirm.c optional aim 525d26cae7SWarner Loshdev/ofw/openfirmio.c optional aim 535d26cae7SWarner Loshdev/ofw/ofw_bus_if.m optional aim 545cead939SRui Paulodev/ofw/ofw_cpu.c optional aim 555d26cae7SWarner Loshdev/ofw/ofw_if.m optional aim 565d26cae7SWarner Loshdev/ofw/ofw_bus_subr.c optional aim 57bd71bd37SMarcel Moolenaardev/ofw/ofw_console.c optional aim 58bd71bd37SMarcel Moolenaardev/ofw/ofw_disk.c optional ofwd aim 593bb481ffSNathan Whitehorndev/ofw/ofw_iicbus.c optional iicbus aim 6065d08437SNathan Whitehorndev/ofw/ofwbus.c optional aim | fdt 61c3e289e1SNathan Whitehorndev/ofw/ofw_standard.c optional aim powerpc 62dd3456c0SMarcel Moolenaardev/powermac_nvram/powermac_nvram.c optional powermac_nvram powermac 63d1d3233eSRafal Jaworowskidev/quicc/quicc_bfe_fdt.c optional quicc mpc85xx 64dd3456c0SMarcel Moolenaardev/scc/scc_bfe_macio.c optional scc powermac 6502b553caSRafal Jaworowskidev/sec/sec.c optional sec mpc85xx 668486eb86SNathan Whitehorndev/sound/macio/aoa.c optional snd_davbus | snd_ai2s powermac 678486eb86SNathan Whitehorndev/sound/macio/davbus.c optional snd_davbus powermac 688486eb86SNathan Whitehorndev/sound/macio/i2s.c optional snd_ai2s powermac 699c3fbfbdSAndreas Toblerdev/sound/macio/onyx.c optional snd_ai2s iicbus powermac 708486eb86SNathan Whitehorndev/sound/macio/snapper.c optional snd_ai2s iicbus powermac 718486eb86SNathan Whitehorndev/sound/macio/tumbler.c optional snd_ai2s iicbus powermac 72dd3456c0SMarcel Moolenaardev/syscons/scgfbrndr.c optional sc 73b4b1c516SEd Schoutendev/syscons/scterm-teken.c optional sc 74dd3456c0SMarcel Moolenaardev/syscons/scvtb.c optional sc 75321578e3SRafal Jaworowskidev/tsec/if_tsec.c optional tsec 76d1d3233eSRafal Jaworowskidev/tsec/if_tsec_fdt.c optional tsec fdt 7749aba28aSNathan Whitehorndev/uart/uart_cpu_powerpc.c optional uart 78d3576a3fSMarcel Moolenaardev/usb/controller/ehci_fsl.c optional ehci mpc85xx 7927cf7d04SAleksandr Rybalkodev/vt/hw/ofwfb/ofwfb.c optional vt aim 80707c2fb9SAlexander Motinkern/kern_clocksource.c standard 81aea81038SKonstantin Belousovkern/subr_dummy_vdso_tc.c standard 82dd3456c0SMarcel Moolenaarkern/syscalls.c optional ktr 83c8d2ffd6SGleb Smirnoffkern/subr_sfbuf.c standard 84c3e289e1SNathan Whitehornlibkern/ashldi3.c optional powerpc 85c3e289e1SNathan Whitehornlibkern/ashrdi3.c optional powerpc 86c585bae1SBenno Ricelibkern/bcmp.c standard 87c3e289e1SNathan Whitehornlibkern/cmpdi2.c optional powerpc 88c3e289e1SNathan Whitehornlibkern/divdi3.c optional powerpc 89c585bae1SBenno Ricelibkern/ffs.c standard 901de30b60SDag-Erling Smørgravlibkern/ffsl.c standard 911de30b60SDag-Erling Smørgravlibkern/fls.c standard 921de30b60SDag-Erling Smørgravlibkern/flsl.c standard 93f25e50cfSAndriy Gaponlibkern/flsll.c standard 94c3e289e1SNathan Whitehornlibkern/lshrdi3.c optional powerpc 95802cb57eSEd Schoutenlibkern/memmove.c standard 969f94082eSYoshihiro Takahashilibkern/memset.c standard 97c3e289e1SNathan Whitehornlibkern/moddi3.c optional powerpc 98c3e289e1SNathan Whitehornlibkern/qdivrem.c optional powerpc 99c3e289e1SNathan Whitehornlibkern/ucmpdi2.c optional powerpc 100c3e289e1SNathan Whitehornlibkern/udivdi3.c optional powerpc 101c3e289e1SNathan Whitehornlibkern/umoddi3.c optional powerpc 102bd71bd37SMarcel Moolenaarpowerpc/aim/locore.S optional aim no-obj 103f23bfc68SJustin Hibbitspowerpc/aim/aim_machdep.c optional aim 104c3e289e1SNathan Whitehornpowerpc/aim/mmu_oea.c optional aim powerpc 1051c96bdd1SNathan Whitehornpowerpc/aim/mmu_oea64.c optional aim 106bef5da7fSNathan Whitehornpowerpc/aim/moea64_if.m optional aim 107bef5da7fSNathan Whitehornpowerpc/aim/moea64_native.c optional aim 108e1c161e7SJustin Hibbitspowerpc/aim/mp_cpudep.c optional aim 109c3e289e1SNathan Whitehornpowerpc/aim/slb.c optional aim powerpc64 11017f4cae4SRafal Jaworowskipowerpc/booke/locore.S optional booke no-obj 111f23bfc68SJustin Hibbitspowerpc/booke/booke_machdep.c optional booke 112aa6bc7dcSRafal Jaworowskipowerpc/booke/machdep_e500.c optional booke_e500 11317f4cae4SRafal Jaworowskipowerpc/booke/mp_cpudep.c optional booke smp 114302acc2eSNathan Whitehornpowerpc/booke/platform_bare.c optional booke 11517f4cae4SRafal Jaworowskipowerpc/booke/pmap.c optional booke 1169eb9db93SNathan Whitehornpowerpc/cpufreq/dfs.c optional cpufreq 1171016f143SNathan Whitehornpowerpc/cpufreq/pcr.c optional cpufreq aim 1184702d987SJustin Hibbitspowerpc/cpufreq/pmufreq.c optional cpufreq aim pmu 11943fdca95SJohn Baldwinpowerpc/fpu/fpu_add.c optional fpu_emu 12043fdca95SJohn Baldwinpowerpc/fpu/fpu_compare.c optional fpu_emu 12143fdca95SJohn Baldwinpowerpc/fpu/fpu_div.c optional fpu_emu 12243fdca95SJohn Baldwinpowerpc/fpu/fpu_emu.c optional fpu_emu 12343fdca95SJohn Baldwinpowerpc/fpu/fpu_explode.c optional fpu_emu 12443fdca95SJohn Baldwinpowerpc/fpu/fpu_implode.c optional fpu_emu 12543fdca95SJohn Baldwinpowerpc/fpu/fpu_mul.c optional fpu_emu 12643fdca95SJohn Baldwinpowerpc/fpu/fpu_sqrt.c optional fpu_emu 12743fdca95SJohn Baldwinpowerpc/fpu/fpu_subr.c optional fpu_emu 1282c16c8d7SNathan Whitehornpowerpc/mambo/mambocall.S optional mambo 1292c16c8d7SNathan Whitehornpowerpc/mambo/mambo.c optional mambo 1302c16c8d7SNathan Whitehornpowerpc/mambo/mambo_console.c optional mambo 1312c16c8d7SNathan Whitehornpowerpc/mambo/mambo_disk.c optional mambo 132*6aabc119SJustin Hibbitspowerpc/mikrotik/platform_rb.c optional mikrotik 133ac741ae5SMarcel Moolenaarpowerpc/mpc85xx/atpic.c optional mpc85xx isa 134d1d3233eSRafal Jaworowskipowerpc/mpc85xx/ds1553_bus_fdt.c optional ds1553 fdt 135f07ef6e4SRafal Jaworowskipowerpc/mpc85xx/ds1553_core.c optional ds1553 136d1d3233eSRafal Jaworowskipowerpc/mpc85xx/i2c.c optional iicbus fdt 137f2396192SRafal Jaworowskipowerpc/mpc85xx/isa.c optional mpc85xx isa 13808077f58SMarcel Moolenaarpowerpc/mpc85xx/lbc.c optional mpc85xx 139a1cd472aSRafal Jaworowskipowerpc/mpc85xx/mpc85xx.c optional mpc85xx 140ca54502aSJustin Hibbitspowerpc/mpc85xx/mpc85xx_gpio.c optional mpc85xx gpio 141302acc2eSNathan Whitehornpowerpc/mpc85xx/platform_mpc85xx.c optional mpc85xx 142178cdf9aSNathan Whitehornpowerpc/mpc85xx/pci_mpc85xx.c optional pci mpc85xx 143809923caSJustin Hibbitspowerpc/mpc85xx/pci_mpc85xx_pcib.c optional pci mpc85xx 144629aa519SNathan Whitehornpowerpc/ofw/ofw_machdep.c standard 145178cdf9aSNathan Whitehornpowerpc/ofw/ofw_pci.c optional pci 146178cdf9aSNathan Whitehornpowerpc/ofw/ofw_pcibus.c optional pci 147178cdf9aSNathan Whitehornpowerpc/ofw/ofw_pcib_pci.c optional pci 1488446b206SNathan Whitehornpowerpc/ofw/ofw_real.c optional aim 149bd71bd37SMarcel Moolenaarpowerpc/ofw/ofw_syscons.c optional sc aim 1500d7136baSNathan Whitehornpowerpc/ofw/ofwcall32.S optional aim powerpc 1510d7136baSNathan Whitehornpowerpc/ofw/ofwcall64.S optional aim powerpc64 1520d7136baSNathan Whitehornpowerpc/ofw/ofwmagic.S optional aim 15317593f86SNathan Whitehornpowerpc/ofw/openpic_ofw.c optional aim | fdt 1540d7136baSNathan Whitehornpowerpc/ofw/rtas.c optional aim 1557bf5cfedSNathan Whitehornpowerpc/powermac/ata_kauai.c optional powermac ata | powermac atamacio 1567bf5cfedSNathan Whitehornpowerpc/powermac/ata_macio.c optional powermac ata | powermac atamacio 1577bf5cfedSNathan Whitehornpowerpc/powermac/ata_dbdma.c optional powermac ata | powermac atamacio 1583cc28bd9SJustin Hibbitspowerpc/powermac/atibl.c optional powermac atibl 1591016f143SNathan Whitehornpowerpc/powermac/cuda.c optional powermac cuda 1601016f143SNathan Whitehornpowerpc/powermac/cpcht.c optional powermac pci 1617d8ccad7SMarcel Moolenaarpowerpc/powermac/dbdma.c optional powermac pci 162da89fa28SAndreas Toblerpowerpc/powermac/fcu.c optional powermac fcu 163c8718f79SPeter Grehanpowerpc/powermac/grackle.c optional powermac pci 164c8718f79SPeter Grehanpowerpc/powermac/hrowpic.c optional powermac pci 165a9cade51SNathan Whitehornpowerpc/powermac/kiic.c optional powermac kiic 1661016f143SNathan Whitehornpowerpc/powermac/macgpio.c optional powermac pci 167f8735aa3SPeter Grehanpowerpc/powermac/macio.c optional powermac pci 168d0ec68d4SJustin Hibbitspowerpc/powermac/nvbl.c optional powermac nvbl 169b2a237beSNathan Whitehornpowerpc/powermac/platform_powermac.c optional powermac 17084d77676SNathan Whitehornpowerpc/powermac/powermac_thermal.c optional powermac 171f8735aa3SPeter Grehanpowerpc/powermac/pswitch.c optional powermac pswitch 172b4dbc599SNathan Whitehornpowerpc/powermac/pmu.c optional powermac pmu 1731016f143SNathan Whitehornpowerpc/powermac/smu.c optional powermac smu 1749efb0787SNathan Whitehornpowerpc/powermac/smusat.c optional powermac smu 175ca2c1931SNathan Whitehornpowerpc/powermac/uninorth.c optional powermac 176ca2c1931SNathan Whitehornpowerpc/powermac/uninorthpci.c optional powermac pci 1779eb9db93SNathan Whitehornpowerpc/powermac/vcoregpio.c optional powermac 178debe4455SNathan Whitehornpowerpc/powerpc/altivec.c standard 179dd3456c0SMarcel Moolenaarpowerpc/powerpc/autoconf.c standard 180dd3456c0SMarcel Moolenaarpowerpc/powerpc/bcopy.c standard 181de2fa7b8SMarcel Moolenaarpowerpc/powerpc/bus_machdep.c standard 182dd3456c0SMarcel Moolenaarpowerpc/powerpc/busdma_machdep.c standard 183228f09b3SNathan Whitehornpowerpc/powerpc/clock.c standard 184e39c26a9SNathan Whitehornpowerpc/powerpc/copyinout.c standard 185dd3456c0SMarcel Moolenaarpowerpc/powerpc/copystr.c standard 186dd3456c0SMarcel Moolenaarpowerpc/powerpc/cpu.c standard 187dd3456c0SMarcel Moolenaarpowerpc/powerpc/db_disasm.c optional ddb 188dd3456c0SMarcel Moolenaarpowerpc/powerpc/db_hwwatch.c optional ddb 189dd3456c0SMarcel Moolenaarpowerpc/powerpc/db_interface.c optional ddb 190dd3456c0SMarcel Moolenaarpowerpc/powerpc/db_trace.c optional ddb 19127457a80SMarcel Moolenaarpowerpc/powerpc/dump_machdep.c standard 192c3e289e1SNathan Whitehornpowerpc/powerpc/elf32_machdep.c optional powerpc | compat_freebsd32 193c3e289e1SNathan Whitehornpowerpc/powerpc/elf64_machdep.c optional powerpc64 194cc81c44dSNathan Whitehornpowerpc/powerpc/exec_machdep.c standard 195debe4455SNathan Whitehornpowerpc/powerpc/fpu.c standard 196dd3456c0SMarcel Moolenaarpowerpc/powerpc/fuswintr.c standard 197dd3456c0SMarcel Moolenaarpowerpc/powerpc/gdb_machdep.c optional gdb 19870df4233SBjoern A. Zeebpowerpc/powerpc/in_cksum.c optional inet | inet6 1993f3cffedSJustin Hibbitspowerpc/powerpc/interrupt.c standard 200dd3456c0SMarcel Moolenaarpowerpc/powerpc/intr_machdep.c standard 201e2326639SNathan Whitehornpowerpc/powerpc/iommu_if.m standard 202f23bfc68SJustin Hibbitspowerpc/powerpc/machdep.c standard 203dd3456c0SMarcel Moolenaarpowerpc/powerpc/mem.c optional mem 204dd3456c0SMarcel Moolenaarpowerpc/powerpc/mmu_if.m standard 2051c17588fSMarcel Moolenaarpowerpc/powerpc/mp_machdep.c optional smp 206e4cf0633SNathan Whitehornpowerpc/powerpc/nexus.c standard 207dd3456c0SMarcel Moolenaarpowerpc/powerpc/openpic.c standard 208dd3456c0SMarcel Moolenaarpowerpc/powerpc/pic_if.m standard 209dd3456c0SMarcel Moolenaarpowerpc/powerpc/pmap_dispatch.c standard 210b40ce02aSNathan Whitehornpowerpc/powerpc/platform.c standard 211b40ce02aSNathan Whitehornpowerpc/powerpc/platform_if.m standard 21264b83a05SJustin Hibbitspowerpc/powerpc/ptrace_machdep.c standard 213dd3456c0SMarcel Moolenaarpowerpc/powerpc/sc_machdep.c optional sc 214dd3456c0SMarcel Moolenaarpowerpc/powerpc/setjmp.S standard 215c3e289e1SNathan Whitehornpowerpc/powerpc/sigcode32.S optional powerpc | compat_freebsd32 216c3e289e1SNathan Whitehornpowerpc/powerpc/sigcode64.S optional powerpc64 217bdac4360SNathan Whitehornpowerpc/powerpc/swtch32.S optional powerpc 218bdac4360SNathan Whitehornpowerpc/powerpc/swtch64.S optional powerpc64 219dd3456c0SMarcel Moolenaarpowerpc/powerpc/stack_machdep.c optional ddb | stack 220dd3456c0SMarcel Moolenaarpowerpc/powerpc/suswintr.c standard 221dd3456c0SMarcel Moolenaarpowerpc/powerpc/syncicache.c standard 222dd3456c0SMarcel Moolenaarpowerpc/powerpc/sys_machdep.c standard 223c4f9a741SJustin Hibbitspowerpc/powerpc/trap.c standard 2241c96bdd1SNathan Whitehornpowerpc/powerpc/uio_machdep.c standard 225f23bfc68SJustin Hibbitspowerpc/powerpc/uma_machdep.c standard 2261cfdc971SNathan Whitehornpowerpc/powerpc/vm_machdep.c standard 22703479763SNathan Whitehornpowerpc/ps3/ehci_ps3.c optional ps3 ehci 2289ba8a927SNathan Whitehornpowerpc/ps3/ohci_ps3.c optional ps3 ohci 22903479763SNathan Whitehornpowerpc/ps3/if_glc.c optional ps3 glc 23003479763SNathan Whitehornpowerpc/ps3/mmu_ps3.c optional ps3 23103479763SNathan Whitehornpowerpc/ps3/platform_ps3.c optional ps3 23203479763SNathan Whitehornpowerpc/ps3/ps3bus.c optional ps3 2339f2c359fSNathan Whitehornpowerpc/ps3/ps3cdrom.c optional ps3 scbus 2340d317057SNathan Whitehornpowerpc/ps3/ps3disk.c optional ps3 23503479763SNathan Whitehornpowerpc/ps3/ps3pic.c optional ps3 23649588d0fSNathan Whitehornpowerpc/ps3/ps3_syscons.c optional ps3 vt 23749588d0fSNathan Whitehornpowerpc/ps3/ps3-hvcall.S optional ps3 2387a8d25c0SNathan Whitehornpowerpc/pseries/phyp-hvcall.S optional pseries powerpc64 2397a8d25c0SNathan Whitehornpowerpc/pseries/mmu_phyp.c optional pseries powerpc64 2404f835517SNathan Whitehornpowerpc/pseries/phyp_console.c optional pseries powerpc64 uart 241757e5b29SNathan Whitehornpowerpc/pseries/phyp_llan.c optional llan 242391dff86SNathan Whitehornpowerpc/pseries/phyp_vscsi.c optional pseries powerpc64 scbus 2437a8d25c0SNathan Whitehornpowerpc/pseries/platform_chrp.c optional pseries 2447a8d25c0SNathan Whitehornpowerpc/pseries/plpar_iommu.c optional pseries powerpc64 245817ba5c0SNathan Whitehornpowerpc/pseries/plpar_pcibus.c optional pseries powerpc64 pci 2467a8d25c0SNathan Whitehornpowerpc/pseries/rtas_dev.c optional pseries 2477a8d25c0SNathan Whitehornpowerpc/pseries/rtas_pci.c optional pseries pci 2487a8d25c0SNathan Whitehornpowerpc/pseries/vdevice.c optional pseries powerpc64 2497a8d25c0SNathan Whitehornpowerpc/pseries/xics.c optional pseries powerpc64 250e1f89baeSPeter Grehanpowerpc/psim/iobus.c optional psim 251e1f89baeSPeter Grehanpowerpc/psim/ata_iobus.c optional ata psim 252f8735aa3SPeter Grehanpowerpc/psim/openpic_iobus.c optional psim 253cd320bc9SMarcel Moolenaarpowerpc/psim/uart_iobus.c optional uart psim 254