Commit Graph

91 Commits

Author SHA1 Message Date
skrll
9c4bc51ae1 Re-enable cpus [123] now that bcm2835_intr.c is fixed with rev 1.11/ 2015-08-01 16:18:47 +00:00
skrll
9014cc8d38 No need to cpu_dcache_wbinv_all now that a9_mpsubr.S invalidates L1 only
as it should
2015-05-31 08:13:18 +00:00
jmcneill
6e40120187 MP not ready, disable it again 2015-05-27 09:40:51 +00:00
skrll
728b01dfee Before spinning up the secondary cpus flush the dcache otherwise the
dcache invalidate in cortex_mpstart makes bad things happen.

I have no idea why.

RPI2 boots again
2015-05-21 20:50:57 +00:00
jmcneill
8987f28bba re-enable multiprocessor support now that sdmmc has been fixed 2015-05-21 10:35:08 +00:00
skrll
990b408b90 Disable non-boot CPUs on RPI2 - there are still issues with interrupt
handling.
2015-05-01 09:59:11 +00:00
skrll
7f8193012c Use character constants instead of ascii values for readability 2015-04-18 11:03:31 +00:00
skrll
3d5eb3e43c RPI2 MP support.
Thanks to Matt Thomas for making this possible with his changes to pic.c
2015-04-12 17:32:39 +00:00
skrll
0802cfce6f Tweak cpu start up slightly and print TTBR for cortex_mmuinfo when
VERBOSE_INIT_ARM
2015-04-11 15:29:58 +00:00
skrll
3e7e38c3d0 Trailing whitespace. 2015-03-27 11:42:28 +00:00
joerg
b4c948cc41 Do invalidate the cache as RPI2 build with Clang can't fetch the memory
config otherwise.
2015-03-15 22:54:03 +00:00
skrll
5b9b796bff Spin up the non-boot CPUs, but don't allow cpu_boot_secondary_processors
to see them for now.

RPI2 nows works well with only the boot cpu.
2015-03-04 17:02:17 +00:00
skrll
1f9df33256 Initial RPI2 support - it doesn't work yet. The generic timer gets messed
up somehow.

This commit changes the KVA layout of the RPI.
2015-02-28 09:34:34 +00:00
jmcneill
d415dbe367 Newer Raspberry Pi firmware has changed the framebuffer from BGR to RGB.
The method we use to set the pixel order (vcprop set pixel order) does
not seem to work, nor does querying the pixel order (vcprop get pixel order).

The firmware passes this information to the kernel by adding a
"bcm2708_fb.fbswap" kernel cmdline arg. 0=BGR, 1=RGB. If the parameter is
absent, assume we are running on old firmware and use BGR mode.
2015-01-21 11:02:55 +00:00
mlelstv
4418265934 fwrev is a timestamp, print in decimal. 2014-10-07 08:37:18 +00:00
mlelstv
1c5fb5d101 be verbose about sysmon error.
enable monitoring.
2014-10-04 13:18:34 +00:00
macallan
0461faf0f5 pay attention to copyin()'s return values 2014-10-04 13:05:57 +00:00
skrll
a15ffa77b8 Better error handling. 2014-10-03 17:57:48 +00:00
skrll
004440d498 Introduce RPI_HWCURSOR and default to off. The existing code causes
problems with vchiq at the moment.
2014-10-03 11:40:54 +00:00
mlelstv
ed8c4bc1de turn off hardware cursor while blanking screen. 2014-10-01 13:31:27 +00:00
mlelstv
2971d46536 make board/firmware revisions visible via sysctl 2014-10-01 13:30:18 +00:00
macallan
1a90426b3c shut up gcc warning
while there, do some magic number reduction
2014-09-29 21:45:15 +00:00
macallan
ffefe877a9 make global variables static
also, make cursor test pattern red/green to highlight RGB vs. BGR
2014-09-28 15:39:36 +00:00
macallan
b149c9dc8f add hardware cursor support 2014-09-28 14:38:29 +00:00
macallan
cb844c7504 the RPi wiki had the values for VCPROPTAG_SET_CURSOR_INFO and
VCPROPTAG_SET_CURSOR_STATE swapped - now they actually work
thanks jmcneill@ for having the right idea
2014-09-28 12:57:22 +00:00
macallan
6a85f858e4 add VC memory management goop 2014-09-23 10:52:21 +00:00
macallan
8ae37694b5 add goop for hardware cursor handling 2014-09-23 09:18:33 +00:00
jmcneill
616673a221 use dma channel mask from firmware 2014-09-12 15:29:30 +00:00
skrll
1704ddce7c Grab the DMA channel mask from the firmware. 2014-09-07 15:28:24 +00:00
macallan
348a9a149c implement WSCONSIO_[G|S]VIDEO by hijacking bcm2835_genfb's ioctl
next step: hardware cursor
2014-09-05 21:22:35 +00:00
skrll
32f3cf5261 Remove unnecessary #include 2014-08-22 09:49:13 +00:00
skrll
8e15c75439 Prepare for ARM_MMU_EXTENDED 2014-07-27 09:04:09 +00:00
jmcneill
9e5ab4bab7 bump VCPROP_MAXCMDLINE to 1024, use this instead of MAX_BOOT_STRING for sizing boot_args, and allow for overriding VCPROP_MAXCMDLINE in kernel config. Fixes cmdline parsing with newer firmware (required for B+) 2014-07-25 11:39:34 +00:00
jmcneill
ad7324db82 need opt_arm_debug.h for VERBOSE_INIT_ARM 2014-07-16 23:54:32 +00:00
joerg
d06bdb36a4 Enabling alignment faults and unaligned access at the same time makes
the former win. LLVM is more aggressive than GCC about using unaligned
access, so it would crash during pmap_init.
2014-05-14 14:38:54 +00:00
skrll
d8ab67876a Whitespace. 2014-04-07 14:40:17 +00:00
skrll
6bba4a39e0 Re-arrange RPI VM layout and enable __HAVE_MM_MD_DIRECT_MAPPED_PHYS. RPI
kernels now boot again.

I'm not admitting defeat in why there are problems with the
non-__HAVE_MM_MD_DIRECT_MAPPED_PHYS case.
2014-04-06 12:43:18 +00:00
skrll
1f54270ac7 Trailing whitespace. 2014-04-01 06:55:29 +00:00
joerg
6b39b5ec99 Move alignment attribute onto the types, not the variable instances.
Drop (unused) packed attribute.
2013-12-10 16:30:36 +00:00
skrll
24cae30b92 Add CPU_CONTROL_UNAL_ENABLE. New ABIs demand unaligned accesses! 2013-11-12 17:14:39 +00:00
skrll
77805357f7 Switch to dwctwo(4) from dotg(4) for the RaspberryPi port. This brings
DMA support and (initial) isoc transfer support.

Remove URTWN_DOTG_WORKAROUND as dwctwo doesn't appear to need it.
2013-10-15 09:07:48 +00:00
skrll
f5f10bf60f Whitespace 2013-09-05 07:06:37 +00:00
skrll
ee29566c11 Add attempt at KGDB support from Reiound. I couldn't get gdb to attach
properly, but the kernel was definitely in kgdb_trap and would respond
to $?#3f if typed via tip(1)
2013-05-11 14:19:44 +00:00
skrll
190a0d435c Fix up the VCONS_DRAW_INTR support and DDB.
From reinoud.
2013-05-11 07:42:34 +00:00
skrll
a73abb63de Added __packed in a couple of places to help AEABI 2013-04-17 06:12:42 +00:00
garbled
4daade7385 Add a new installer image for Raspberry PI to evbarm
Includes the following major changes:

1) Add new configmenu item to sysinst to allow creation of users at
post-install time.
2) Add an sshramdisk type to evbarm, which is a ramdisk with sshd
enabled, allowing users to install on a headless PI by sshing to the
device with the account "sysinst" password "netbsd" to begin the
installation. (Note, neither the account, nor the ssh setup are copied to
the finalized installation image)
3) Change mkimage to build a boot-only image, without the root filesystems.

Much of the sshramdisk code could be reused on other ports easily.
2013-03-19 22:16:52 +00:00
skrll
78cb3e713c Oops, put back the initialisation of cpu_cc_freq 2013-02-04 21:46:14 +00:00
skrll
1edacd7eae Fix some VERBOSE_INIT_ARM output 2013-02-04 21:43:17 +00:00
jmcneill
03a5ccc3bd add machdep.serial sysctl for getting board serial number 2013-01-28 19:47:02 +00:00
jmcneill
8f038c952e dont crash if edid data is missing or bad 2013-01-25 13:32:21 +00:00