Commit Graph

59714 Commits

Author SHA1 Message Date
Augustin Cavalier
a8bfcf3228 realtekwifi: Sync with FreeBSD trunk.
This includes changes to support the 8188EE device, as well as a
number of critical bugfixes to 8192EE devices, which should make
the driver much more stable and reliable overall.
2019-01-10 21:08:26 -05:00
Augustin Cavalier
478b2a6ab0 realtekwifi: Upgrade to FreeBSD 12.
This driver was completely rewritten and merged with its USB counterpart
in FreeBSD 12. I've imported the USB code, even though it's not compiled
in at all, because it's more than likely I'll get around to USB WiFi support
before FreeBSD 13 comes...

Untested, because I don't have one of these PCI devices.
2019-01-10 20:43:15 -05:00
Augustin Cavalier
860d86851e freebsd_network: Tweaks for the new realtekwifi.
One dummy header, and bump __FreeBSD_version to its actual value
from 12.0-RELEASE.
2019-01-10 20:42:24 -05:00
Augustin Cavalier
baf68028bf wavelanwifi: Upgrade to FreeBSD 12. 2019-01-10 20:10:37 -05:00
Augustin Cavalier
db7b74600c ralinkwifi: Upgrade to FreeBSD 12. 2019-01-10 17:40:08 -05:00
Augustin Cavalier
c8ba6df4ed marvell88w8335: Upgrade to FreeBSD 12. 2019-01-10 17:39:17 -05:00
Augustin Cavalier
a3cc4e1a5e marvell88w8363: Upgrade to FreeBSD 12. 2019-01-10 17:39:03 -05:00
Augustin Cavalier
0fc3af214b iprowifi3945: Upgrade to FreeBSD 12. 2019-01-10 17:29:25 -05:00
Augustin Cavalier
f7dac49055 iprowifi2200: Upgrade to FreeBSD 12. 2019-01-10 17:28:41 -05:00
Augustin Cavalier
a2045452ff iprowifi2100: Upgrade to FreeBSD 12. 2019-01-10 17:28:29 -05:00
Augustin Cavalier
3aaffc2769 broadcom43xx: Upgrade to FreeBSD 12. 2019-01-10 17:27:42 -05:00
Augustin Cavalier
4cba08df51 Printers: Allow adding IPP printers even if none are detected.
Yes, this is kind of hacky to put the printer driver as a special case
in here, but we already do this for the Preview driver, and IPP's
printer detection is pretty broken, whereas adding a printer URL manually
seems to still work.

Works around #12702.
2019-01-10 16:32:31 -05:00
Augustin Cavalier
daa6582acb XHCI: Don't reject devices with "invalid" IRQs immediately.
It seems some controllers are assigned "invalid" interrupt lines under
the expectation they will be allocated an MSI. So, don't reject
these devices for having an invalid interrupt line until after
we have tried to allocate an MSI for them.

Should fix #14792.
2019-01-10 14:17:55 -05:00
Augustin Cavalier
696138675a freebsd_wlan: Copy out only the size of the request length.
Fixes more problems with wpa_supplicant, this time on x64.
2019-01-10 13:55:21 -05:00
Augustin Cavalier
b237fff49e FileRules: Fix typo.
Thanks PulkoMandy for reviewing!
2019-01-10 12:32:33 -05:00
kerwizzy
cc15132ccc Mandelbrot: Clean up thread handling code.
* Style fixes
 * Delete semaphores in destructor

Change-Id: Ia293d3f4096e2ef1305398356f3e263a8a263d78
Reviewed-on: https://review.haiku-os.org/c/866
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2019-01-10 05:27:42 +00:00
Augustin Cavalier
f84c53e4ac makefile_engine: Fix installing to a path with spaces in it.
Fixes #11419.
2019-01-09 22:08:01 -05:00
Augustin Cavalier
88f01a973f Appearance: Remove FontMenu and MenuView.
Not used and largely untouched since 2005. FontSelectionView
supersedes FontMenu, and MenuView's options were merged elsewhere
(e.g. Alt/Ctrl swapping now lives in Keymap.)
2019-01-09 20:56:07 -05:00
Augustin Cavalier
177db1e47f app_server: Switch default UI font to Noto Sans Display.
Fixes #14779.
2019-01-09 20:35:41 -05:00
Augustin Cavalier
5464abed7e Enable sub-pixel font anti-aliasing by default.
Now that stippi has fixed the FreeType bitmap filter in app_server,
this rendering mode looks much nicer than Grayscale does.

Fixes #13290.
2019-01-09 20:29:47 -05:00
Augustin Cavalier
166dc2bfec Appearance: Remove "sub-pixel anti-aliasing is not enabled" message.
FreeType 2.8+ uses a non-patent-encumbered algorithm for this by default,
and as we have used it for quite a while now, this message is obsolete.
2019-01-09 19:51:24 -05:00
Augustin Cavalier
ec12d1fd3e freebsd_wlan: Add another struct-size hack. 2019-01-09 19:22:51 -05:00
Augustin Cavalier
1d91b37193 build: Fixes to support building in paths with spaces in them.
Now that HAIKU_TOP is a relative path, nearly all paths Jam actually
has to deal with will never contain spaces, so this is now feasible.
Only one issue remains after this commit (namely, setting
HOST_BUILD_COMPATIBILITY_LIB_DIR.)
2019-01-09 19:18:28 -05:00
Augustin Cavalier
134e58ec8d FileRules: Make DownloadLocatedFile1 less cryptic.
As Jam prints the entire erring command on failure, including this if-test
in the command itself makes the output somewhat difficult to decipher.
So instead we use two separate rules based on whether or not NO_DOWNLOADS
is set or not.
2019-01-09 19:18:27 -05:00
Augustin Cavalier
4293d6b7da freebsd_wlan: Tweak ioctl-size hacks.
This doesn't seem to fix the wpa_supplicant crashes, though.
2019-01-09 16:30:16 -05:00
Augustin Cavalier
568bb7eeab kernel/thread: Use a rw_spinlock for the sThreadHashLock.
On a dual-core system with no other applications but the standard ones
running, my standard "compile HaikuDepot with hot disk cache" benchmark
shows a consistent ~5% improvement after this patch (~33.7s -> ~31.9s sys).
On systems with higher core and thread counts, these numbers are probably
very much larger (I'd imagine it could be up to even 10 or 15%.)

Change-Id: I5df2a075bae7c71b84c6fcd33ead60df8e844757
Reviewed-on: https://review.haiku-os.org/c/861
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2019-01-09 17:55:43 +00:00
Augustin Cavalier
e6bb34532a kernel/thread: Properly implement has_data for non-current threads.
This was left unimplemented since the dawn of Haiku; but it's so rarely
used nobody seems to have noticed. I've taken care to leave it optimized
for the current thread case.

Change-Id: Ib028a37963b2da6d0ca9b4dbd5a5f4a74ecf25b4
Reviewed-on: https://review.haiku-os.org/c/860
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2019-01-09 17:55:43 +00:00
Murai Takashi
647b5a29e9 utf8_functions.h: Fix PVS 359
Fix integer constant SIZE_MAX is converted to pointer.

Change-Id: Ifdff4e08a9b2c31e466580ba9a71f6ea7c0191d4
Reviewed-on: https://review.haiku-os.org/c/865
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2019-01-09 17:44:19 +00:00
Murai Takashi
5bfdd10fb6 bus_managers/ps2: Fix PVS 519, 520
Fix 'xDelta' and 'yDelta' are assigned to itself.

Change-Id: I2e1d5fbcf3137086875db2e9590780fc1034f0bc
Reviewed-on: https://review.haiku-os.org/c/864
Reviewed-by: Stefano Ceccherini <stefano.ceccherini@gmail.com>
2019-01-09 17:43:14 +00:00
Augustin Cavalier
3af2e73e0b iprowifi4965: GCC2 fix. 2019-01-08 21:19:42 -05:00
Augustin Cavalier
4e5a521c2a iprowifi4965: Upgrade to FreeBSD 12.
Tested on a ThinkPad T61.
2019-01-08 20:54:21 -05:00
Augustin Cavalier
27632129b2 freebsd_network: Implement taskqueue_drain_all.
Required by FreeBSD 12's iprowifi4965.
2019-01-08 20:52:06 -05:00
Augustin Cavalier
24e7aa4217 regular: Typo fix.
Sorry for the noise...
2019-01-08 19:55:45 -05:00
Augustin Cavalier
0a973154a8 BMenu: Look for ASCII characters < 128, not < 255.
Otherwise we will include ISO 8859-15 (é, à, etc.)
Thanks to PulkoMandy for pointing this out!
2019-01-08 19:50:52 -05:00
Augustin Cavalier
5c8f9c2b0c build: Move WiFi drivers from the minimum to the regular image.
We don't include the wpa_supplicant on the minimum image, so
these aren't very useful (it seems one needs the wpa_supplicant
to connect even to an unsecured network, with our setup.)

Anyone who needs one of these and also has a reason to use the
minimum image can easily add them back via their UserBuildConfig.
2019-01-08 19:48:09 -05:00
Augustin Cavalier
9a0d08a701 build: Move repository config and cache files to the minimum image.
Most of the time, one just winds up adding them manually anyway.
2019-01-08 19:45:36 -05:00
Augustin Cavalier
5d200bd39c ReadMe.Compiling: Various updates.
* Remove parenthetical about cross-tools not being needed on Haiku,
   as they are indeed on x86_64.
 * Replace mkisofs/genisoimage with xorriso.
 * Move mtools to the list of tools generally needed, as EFI builds
   require them.
 * Update clone URLs and GCC version numbers.
2019-01-08 19:32:34 -05:00
Augustin Cavalier
b3dc16eecb build: Use xorriso instead of mkisofs or genisoimage.
It seems that not all Linux distributions ship an EFI-enabled
cdrtools (i.e. mkisofs takes -e option), Arch being one that
does not.

So instead, we now use xorriso universally, which is
as (or more, in most cases) widely available, and supports
emulating mkisofs with the EFI commands universally.

This also has the added benefit that we can drop genisoimage
support altogether.
2019-01-08 19:31:15 -05:00
Augustin Cavalier
ab3e2cf4bc atheroswifi: Upgrade to FreeBSD 12.
Thanks return0e for testing!
2019-01-08 17:21:31 -05:00
Augustin Cavalier
3001575d60 freebsd_network: Add child drivers directly rather than finding symbols.
This method is much less error-prone than the prior one, as that required
the driver structure to have an exported symbol identical to its "name"
field, a fact that is usually true but not always (we've had an ifdef
in the atheroswifi driver for a while now due to this.)

So when we have it, we now just use the driver_t* directly, which
should push any of these problems from the run-time stage to the
compile-time stage. It's also a significant performance
improvement.
2019-01-08 17:20:50 -05:00
Augustin Cavalier
4947d1a8c7 freebsd_iflib: Return the correct filter result in more interrupt handlers.
Confirmed by tqh to fix #14803.
2019-01-08 15:12:01 -05:00
Augustin Cavalier
7ea987c1b8 kernel: Improvements to "resume" KDL command.
* Print a message when not resuming a thread because it is running.
   When I was using this command while working on ipro1000, I assumed
   that "no news was good news." But it seems that wasn't the case.
   Hopefully future developers will be less confused after this.
 * Allow resuming threads that are in "asleep" or "waiting" states,
   not just in "suspended" state. Presumably a developer poking around
   in KDL knows what they are doing, so allowing them to do this
   seems to make sense.
2019-01-07 23:14:41 -05:00
Augustin Cavalier
2e33d79d38 kernel: Panic on attempting to release a semaphore with interrupts disabled...
... and B_DO_NOT_RESCHEDULE unset. We already have equivalent panics
for mutexes and condition variables, so it seems to make sense to
check for this too.

There have been some bug reports recently about hard deadlocks with
symptoms (i.e. kernel debugger can't even be summoned) that match
"interrupt handler thread was context-switched while holding interrupt
lock," and this is the only major remaining path to that without
such a check.

This would have also helped me with recent FreeBSD driver porting;
I forgot to pass the flag once and deadlocked my system in precisely
this manner.
2019-01-07 22:15:58 -05:00
Augustin Cavalier
1c1efa6f2f kernel/x86: Use volatile in restore_interrupts.
We already use it in enable_interrupts, so we might as well
use it here too.
2019-01-07 22:12:36 -05:00
Augustin Cavalier
a84bb93b44 freebsd_iflib: Return the correct filter result in the interrupt handler.
Should fix #14803.
2019-01-07 21:58:50 -05:00
Augustin Cavalier
cf55254350 freebsd_wlan: Implement ieee80211_{add|get}_toa_params.
Required by the FreeBSD 12 atheroswifi driver.
2019-01-07 21:39:08 -05:00
Augustin Cavalier
2e07eed8ae aironetwifi: Upgrade to FreeBSD 12. 2019-01-07 21:06:36 -05:00
Augustin Cavalier
908c8ced92 idualwifi7260: GCC2 fixes. 2019-01-07 21:05:13 -05:00
Augustin Cavalier
53e3d3f593 freebsd_wlan: GCC2 fixes. 2019-01-07 21:04:59 -05:00
Augustin Cavalier
8842f2a01e freebsd_network: GCC2 fixes. 2019-01-07 21:04:48 -05:00