Fixes BCursor tests. Thanks Karvjorm! And sorry for the delay.
I also re-enabled the tests in the Jamfile (cf. r41788)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42955 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Removed duplicated headers that we already have in our repository elsewhere.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42943 a95241bf-73f2-0310-859d-f6bbb57e9c96
Maybe we should have a confirmation alert the first time ?
Btw, the power_button driver should really implement select() or some other non-polling mechanism, it sux having to waste cpu.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42934 a95241bf-73f2-0310-859d-f6bbb57e9c96
* fix bug where we were using an r600 bios pull method
on r700 cards. this should help prevent shadow rom fallback.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42933 a95241bf-73f2-0310-859d-f6bbb57e9c96
There were a large number if incorrect, duplicated, misplaced
registers that were leading to bugs in the code. This is my first
shot at cleaning them up. Luckly as we are using AtomBIOS the number
of registers we need to know about is shrinking.
* remove registers left over from register banging days
* r770 is less then r710, r720 in the drm sources. Fix in code.
* enable newer radeons for testing
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42930 a95241bf-73f2-0310-859d-f6bbb57e9c96
behaviour... but while things are incomplete
it may be better to try and push on.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42929 a95241bf-73f2-0310-859d-f6bbb57e9c96
* don't resize the frame buffer after mapping it.. doesn't make sense
* add memory controller code and program the memory controller for r600
* remove unneeded frame_buffer_int
* don't malloc mc_info, waste of time
* fix scaler setting
* vramStart in mc should be 0... get vertical colored lines however when this
this is set properly (everything in mc_info is the MC view of FB BAR)
When vramStart is the FB physical address... i get proper video on some cards
... thoughts?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42924 a95241bf-73f2-0310-859d-f6bbb57e9c96
* set blanking color to full red for debugging
to know when blanking is enabled.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42920 a95241bf-73f2-0310-859d-f6bbb57e9c96
I will take some rest as obviously I should not allwed to commit anything rigth now.
Sorry guys.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42908 a95241bf-73f2-0310-859d-f6bbb57e9c96
allows for more flexible searching
* check out shadow VGA bios as very last resort
may cause issues but not a bad last resort
compared to an app_server crash
* better tracing
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42906 a95241bf-73f2-0310-859d-f6bbb57e9c96
BUSBDevice::GetDescriptor() to retrieve whatever descriptor, including a
complete configuration descriptor.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42905 a95241bf-73f2-0310-859d-f6bbb57e9c96
* we can now utilize these chipset
flags throughout the driver to better id
cards and features
* remove leftover BIOS size define from intel skel
* no *real* functional change
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42904 a95241bf-73f2-0310-859d-f6bbb57e9c96
* look at PCI bar 0 (Frame buffer base) for AtomBIOS
* potential solution to #8040 ?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42903 a95241bf-73f2-0310-859d-f6bbb57e9c96
* add potential support for IGP chipsets
* igp code is *untested* and should work *in theory*
* potentially resolves#8040 / #8046 ?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42901 a95241bf-73f2-0310-859d-f6bbb57e9c96
the ifma_addr point to that. Therefore freeing it caused a misaligned free and
then a double free, resulting in heap corruption for the next user to fall
victim to. Only happened when removing multicast addresses though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42899 a95241bf-73f2-0310-859d-f6bbb57e9c96
Display Port stuff. We need special DIG encoder
storage unless I can find a way to mash it into
the same box as the other encoders.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42897 a95241bf-73f2-0310-859d-f6bbb57e9c96
random color. It can be used to reproduce an app_server bug that causes the view
to be drawn on the last position on the old workspace when the window is moved
to another workspace using Workspaces.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42894 a95241bf-73f2-0310-859d-f6bbb57e9c96
* adjust pll post divider calculation
* fix digital encoder setup action
* don't run memreq on DCE < 3, should solve
some AtomBIOS failure loops
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42892 a95241bf-73f2-0310-859d-f6bbb57e9c96
* will fix other var names to match style guidelines
shortly
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42891 a95241bf-73f2-0310-859d-f6bbb57e9c96
* disable Evergreen+ cards for now as they are tested
non-functional.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42888 a95241bf-73f2-0310-859d-f6bbb57e9c96
* correct a few wrong DCE versions
using xorg documentation
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42887 a95241bf-73f2-0310-859d-f6bbb57e9c96
* add notes that AtomBIOS goes all the way back to X700 (r4xx)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42884 a95241bf-73f2-0310-859d-f6bbb57e9c96
Deallocate resources correcly in error case. Support for level and edge
interrupts.
Removed volatile keyword where it's not needed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42882 a95241bf-73f2-0310-859d-f6bbb57e9c96
with the interrupts disabled (was causing KDL under qemu).
Add a define to switch the HPET timers to 32 or 64 bit (32 bit now by default)
Reordered some things
Add some debug output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42881 a95241bf-73f2-0310-859d-f6bbb57e9c96
* correct? color mode setting bug
* fix var naming to match style guidelines
* add a few missing register defines
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42879 a95241bf-73f2-0310-859d-f6bbb57e9c96
* sort files in Jamfile
* add TV and compontent video support in encoder code
* fix missing var in display detection code
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42878 a95241bf-73f2-0310-859d-f6bbb57e9c96
* radeon HD mode setting on analog monitors is now working!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42877 a95241bf-73f2-0310-859d-f6bbb57e9c96
* fix a order of operations bug
* fix a few long lines
* pll computation should now be correct
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42876 a95241bf-73f2-0310-859d-f6bbb57e9c96
* don't set referenceDivider as minimum unless directed to by
AtomBIOS
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42873 a95241bf-73f2-0310-859d-f6bbb57e9c96
(they are actually reversed), so introduce a find_reg() inline function to map
such regs individually instead. Should fix interrupt storms on SandyBridge.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42870 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Also add the definitions and some specifics for IronLake (ILK), but keep the
IDs disabled as at least the one version I can test with doesn't work yet.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42869 a95241bf-73f2-0310-859d-f6bbb57e9c96
often enough and simple enough to write that we should allow it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42865 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Make the pointer style consistent accross all components, which should make it
easier when working all over the place.
* 80 char limits.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42863 a95241bf-73f2-0310-859d-f6bbb57e9c96
Not completely tested : my device has no control lines wired. RX/TX seems to
work fine, at least.
Inspiration from the Linux driver since there isn't any documentation avilable:
http://lxr.free-electrons.com/source/drivers/usb/serial/cp210x.c
The switch/case for VID/PID identification is getting quite long. Isn't there a
better way to do it ?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42860 a95241bf-73f2-0310-859d-f6bbb57e9c96
register blocks and we encode their block into the register definition. On
register access these blocks are then translated into the final address.
* Set up the register blocks for (G)MCH and PCH variants.
* Remove most SandyBridge code that was actually PCH specific and is now taken
care of automatically.
* This will temporarily break SandyBridge support again until the right
transcoders are actually programmed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42857 a95241bf-73f2-0310-859d-f6bbb57e9c96
* rename *_* pll vars to match style guidelines
* refactor PLL calculation to be easier to read with
more central 10kHz unit conversions
* limited mode switching has been seen working including
a perfect 1280x1024@75
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42855 a95241bf-73f2-0310-859d-f6bbb57e9c96
AtomBIOS wants number of 10Khz Units
* better debugging after modeset on current
CRTC status
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42853 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Make the macros use varargs so we avoid multiple invokations of the print
function (to properly use with debug_printf for example).
* Minor cleanup to the macros.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42848 a95241bf-73f2-0310-859d-f6bbb57e9c96
we get valid EDID data for two physical connectors (one analog, one digital)
Check for load on the analog or assume digital and keep rolling as normal
* style fix, rename bios_*_scratch to biosScratch*
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42847 a95241bf-73f2-0310-859d-f6bbb57e9c96
values, as those might be slightly off (when coming from the GTF for example)
and cause needless display scaling.
* Tiny cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42844 a95241bf-73f2-0310-859d-f6bbb57e9c96
request sense. Otherwise we can easily run into an infinite recursion. Should
fix#8022.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42840 a95241bf-73f2-0310-859d-f6bbb57e9c96
(the one in my new ThinkPad X1). The PLL is still off a bit so it has a few
blurry stripes, but EDID and mode setting basically works.
* Starting with IronLake the north/south bridge or (G)MCH/ICH setup was moved
into a platform control hub (PCH) which means that many registers previously
located in the GMCH are now in the PCH and have a new address.
* I'm committing this mostly because this way the additions are more easy to
follow. It is a bit messy and I'll clean it up more and possibly make it a
bit more generic. Also most of these changes actually apply to IronLake and up
and aren't SandyBridge specific, so a few of those additions will still get a
broader scope and new chips will be added.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42839 a95241bf-73f2-0310-859d-f6bbb57e9c96
Seems to work correctly on real hardware, not on qemu where it
can only use the irq 2, and this causes wreakage (could be a programming error).
Changed from the kernel code:
- Adapted to use as a driver
- Configure for level interrupts instead of edge, which seems not to work correctly
- Add traceing dprintfs
- Various other changes
Does not use yet the new interrupt api introduced by Michael Lotz.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42837 a95241bf-73f2-0310-859d-f6bbb57e9c96
move quite a bit of code away from var_var format
* #if 0 some not-yet-ready r500 code
* no real functional change
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42835 a95241bf-73f2-0310-859d-f6bbb57e9c96
be used to mark certain io interrupt vectors as reserved and to allocate from
the still free ones. It is a kernel private API for now though.
* Make the MSI code use that functionality instead of implementing its own which
slims it down considerably and also removes quite a bit of hardcoded knowledge
about the interrupt layout that didn't really belong there.
* Mark the various in-use interrupts as reserved from the components that
actually know about them (PIC, IO-APIC, SMP, APIC timer and interrupt setup).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42832 a95241bf-73f2-0310-859d-f6bbb57e9c96
ensure bitwise ands are compared to 0 or non 0 as per Axel
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42830 a95241bf-73f2-0310-859d-f6bbb57e9c96
we will need to query the card dpms state
for each monitor at a later date
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42829 a95241bf-73f2-0310-859d-f6bbb57e9c96
* add update of crtc encoder scratch registers
* rename id for more descriptive crtc_id
* encoder dpms, BL on/off on lcd
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42828 a95241bf-73f2-0310-859d-f6bbb57e9c96
to be available for using during build. It was requested by Frederik Modeen.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42822 a95241bf-73f2-0310-859d-f6bbb57e9c96
it in case it was set "on".
* Tracing added for the case of ignoring interrupt with not active OBF status bit.
Fixes#7973#6313
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42820 a95241bf-73f2-0310-859d-f6bbb57e9c96
* set encoder flags the same as connector flags
* add curly comments to make troubleshooting clearer
* program encoder dpms scratch registers
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42818 a95241bf-73f2-0310-859d-f6bbb57e9c96
* don't init asic unless needed
* do dpms by hand on mode set
* detect tv and skip during detection for now
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42817 a95241bf-73f2-0310-859d-f6bbb57e9c96
BNetworkRoster::{Count|GetNext|Add|Remove}PersistentNetwork() as it fits
better (thanks Philippe for the heads up).
* Implement the backend for these functions in the net_server and also move
conversion of the wireless_network based format into the settings based format
there.
* Implement removal of a network from the settings and make adding a new network
with the same name replace the old one instead of just adding multiple ones.
Might need to change this in the future depending on how we want to handle
multiple networks with the same name (i.e. distinguish based on BSSID or
similar).
* Fix apparent oversight that caused configured networks _not_ to be used in the
auto join attempt.
* Remove auto joining open networks. I've been bitten by that more than once now
because we happen to have an open network in the neighbourhood that I now
accidentally used to transfer quite a bit of (unencrypted) stuff before
noticing... In the future, one will instead have to explicitly join an open
network once and store that config. Note that the driver will actually still
auto-associate with open networks due to how things are set up currently.
Note also that the auto join will fire join requests whenever there's a
disassociation event, so you might see spurious join dialogs when the
wpa_supplicant actually just re-establishes the connection.
* Make join requests async again. Instead of waiting for a synchronous reply of
the wpa_supplicant we instead return success when the request has been sent.
While the API call might still be made synchronous again in the future, the
net_server should really not block on an external application. In the case of
the wpa_supplicant we would otherwise deadlock when using the new
*PersistentNetwork() API after a successful join, and in other cases we might
just unacceptably delay other calls.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42816 a95241bf-73f2-0310-859d-f6bbb57e9c96
* make encoder setup functions return status_t
* really need a struct to hold encoder info
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42814 a95241bf-73f2-0310-859d-f6bbb57e9c96
I try to keep UBSConfiguration binary compatibility, but proofreading is welcome.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42812 a95241bf-73f2-0310-859d-f6bbb57e9c96
message (ie. multiple spaces are compressed to a single one, tabs and other
white space is replaced with a space).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42810 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Added a few missing breaks in MailProtocolThread::MessageReceived()!
* Minor coding style update.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42808 a95241bf-73f2-0310-859d-f6bbb57e9c96
be stored by the backend in the net_server. I put it in BNetworkDevice because
that is where network enumeration is done as well, but I'm not sure that it fits
there particularly well.
Since BNetworkDevice::GetNetwork() directly interfaces with the driver and gets
the networks from scan results, such persistent networks don't yet show up in
those enumerations.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42807 a95241bf-73f2-0310-859d-f6bbb57e9c96
templates.
* Prepare saving of such generated config files. Actually writing them out isn't
yet done however.
* Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42805 a95241bf-73f2-0310-859d-f6bbb57e9c96
* flip encoders on during modeset.
* crt0 status keeps getting higher and higher which is a good sign.
the more bits that are set, the closer to a successful lock.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42802 a95241bf-73f2-0310-859d-f6bbb57e9c96
* reorganize mode set code to match layout of linux DRM driver
* add initial DPMS code
* add lots of TODOs
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42801 a95241bf-73f2-0310-859d-f6bbb57e9c96
Remove old non-atombios code
* add encoder.c and encoder.h to handle
encoder management
* fix pll code to use encoder object id
vs crtcid
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42797 a95241bf-73f2-0310-859d-f6bbb57e9c96
* add function to set encoder to crtc
* clean up some comments
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42796 a95241bf-73f2-0310-859d-f6bbb57e9c96
has no routing information but wasn't configured by the BIOS either. The
function will now only panic if a device that was previously configured would
not be so anymore after enabling the IO-APIC. Fixes#7971.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42795 a95241bf-73f2-0310-859d-f6bbb57e9c96
don't set up a pointer and not malloc it.
* small cleanups to radeon_hd i2c bit-banging code
* i2c bit banging is now functioning
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42793 a95241bf-73f2-0310-859d-f6bbb57e9c96
list of Radeon HD Cards
* break tradition of sorting by chipset id because they really
are not in any kind of order.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42792 a95241bf-73f2-0310-859d-f6bbb57e9c96
* The Read() method remembers the last error, so you don't have to check each
read when you do several in a row.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42789 a95241bf-73f2-0310-859d-f6bbb57e9c96
* A small quiz for our build system gurus: if I just add libbe_test to
liblinprog.a, I can't build the normal app_server anymore (only in the test
environment). Why is that? And who's going to fix it? :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42788 a95241bf-73f2-0310-859d-f6bbb57e9c96
needed. It might be best to put it into its own file, though.
* This is required in order to let our test environment work with the stricter
runtime_loader we have now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42787 a95241bf-73f2-0310-859d-f6bbb57e9c96
* add a few notes for future i2c bit-bangers
* cleanup of tracing
* no real functional change
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42777 a95241bf-73f2-0310-859d-f6bbb57e9c96
fail when encountering missing information (like the password). This gives the
supplicant an opportunity to ask for the required information as needed.
* Remove (currently broken) WEP support from the net_server. It will be
delegated to the supplicant as well, as that one already handles all the
key/password conversion.
In the absence of a supplicant the net_server can therefore only join open
networks now. It will also only attempt that if it is sure that the network in
question is actually an open network (by means of scan results or explicit
configuration) and will otherwise delegate the join request.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42774 a95241bf-73f2-0310-859d-f6bbb57e9c96
a connector. (thus allowing for future non-ddc gpio devices like fan speed)
* map all i2c gpio pins on accelerant init
* use a smaller sub function to attach gpio info to connector i2c info
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42773 a95241bf-73f2-0310-859d-f6bbb57e9c96
* read gpio pins back after setting them to improve reliability
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42772 a95241bf-73f2-0310-859d-f6bbb57e9c96
monitor messages. Due to how our compatibility layer works the latter is always
just "wlan" (and even if it worked as expected it'd be mapped to the BSD short
names i.e. "iwn" or "iwnX"). The device name is of the format "net/<driver>/X",
which is what we use as interface names througout the API (minus the "/dev/").
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42771 a95241bf-73f2-0310-859d-f6bbb57e9c96
random amounts of memory when getting an invalid header.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42770 a95241bf-73f2-0310-859d-f6bbb57e9c96
dealing with i2c register addresses.
* cleanup i2c hacks
* now receive the following message in SimNow:
"No device present at I2C slave address 0x66"
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42769 a95241bf-73f2-0310-859d-f6bbb57e9c96
linux drm driver. Seems radeon_hd isn't limited to the
standard 0xa0 i2c slave address.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42762 a95241bf-73f2-0310-859d-f6bbb57e9c96
* clean up int types
* curly brace cleanup
* move vars away from top of functions
when possible
* split DDR timings to seperate header to
avoid warnings on unused items
* quite a few automated changes, please excuse
things within diff still not fixed / incorrect
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42761 a95241bf-73f2-0310-859d-f6bbb57e9c96
* while doing our last-resort fallback, skip
TV DAC encoders as it is likely that is not
what the user wants. This may need to change
as the driver matures. (ex: only a tv is
connected, no edid)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42760 a95241bf-73f2-0310-859d-f6bbb57e9c96
creation panel of DriveSetup, to enter the partition size
manually. Closes ticket #7991. Changes by myself: I've
refactored updating the text control from the size slider
and used that method also when the user somehow entered
invalid input into the text control (untested).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42759 a95241bf-73f2-0310-859d-f6bbb57e9c96
* add code to check if 0 valid displays were found
* if 0 edid's were found, we inject the first connector
as a last resort... SimNow seems to be ok with this and
I get a valid screen mode set :)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42757 a95241bf-73f2-0310-859d-f6bbb57e9c96
an exec() syscall, and update team's fields, icon included.
This fix#7988.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42755 a95241bf-73f2-0310-859d-f6bbb57e9c96
it's needed using the gpio information
* rename gpio information struct to be cleaner and shorter
* add function to debug found connectors
* set gpio mask to 1 vs the defined mask... this seems to get us closer
to working ddc / edid per connector
* change gpio_info u16's to u32's to ensure we aren't overflowing anything
* fix bug always setting hw_capable true
* change TRACE to ERROR to always show debug data when called
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42751 a95241bf-73f2-0310-859d-f6bbb57e9c96
* This part is just fixes to let the driver work. I have decided
to separate this changes just for Adrien's information because
final version will be refactored significantly.
* The fixes:
- Endpoint 3 acknowledgements must be enabled in USB Control Register
to let async notifications work;
- Functions to handle MII registers and MII initialization routines
are implemented and used;
- Sending WRITE1_REGISTER request typo was fixed;
- Small typo in queueing RX iovec fixed: we are receiving 2 blocks not 1;
- one byte size padding is required in case TX packet length is multiple
of pipe max packet size;
- StopDevice procedure implemented;
- StartDevice procedure fixed;
* Code style fixes are coming soon. Please be patient.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42748 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Unfortunately I have to rollback r42712 completely because it was
"the attempt in the wrong direction" and the working version was already
implemented on top of previous revision. Just fixed version and code style
refactored one are coming soon. Please be patient.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42747 a95241bf-73f2-0310-859d-f6bbb57e9c96
locking and unlocked on every bit read sounds excessive
* set vdif and vdif size to NULL... they really aren't needed
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42746 a95241bf-73f2-0310-859d-f6bbb57e9c96
* In intel_set_display_mode(), we now use the sanitize_display_mode() method
directly in order to see if the mode is valid (it's valid when it doesn't
need to be altered anymore).
* This should be the final nail on ticket #7419.
* Automatic whitespace cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42742 a95241bf-73f2-0310-859d-f6bbb57e9c96
* add i2c locking code that represents common things we need to do before
and after access
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42740 a95241bf-73f2-0310-859d-f6bbb57e9c96
workspace to an already open DeskCalc, it moves to the current workspace
instead. That's because you usually use DeskCalc in the context of another
application (or just for a single use), so it makes little sense to have sort
of a fixed workspace for it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42738 a95241bf-73f2-0310-859d-f6bbb57e9c96
after ten seconds, and revert to the original mode.
* Added option -q resp. --dont-confirm which turns off that confirmation.
* Added option -m resp. --modeline that allows you to specify and dump X-style
modelines.
* Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42736 a95241bf-73f2-0310-859d-f6bbb57e9c96
the decorators now return non-sense as their frame, thank you Clemens!
* Got rid of Settings::CurrentSettings() - the get/store pair wasn't really
thread-safe anyway, as it always updated all fields, so settings could get
lost easily. The mechanism is still being used in the settings window, though.
* Introduced some getters/setters for the settings that work on the message
directly which simplifies some code.
* Minor style cleanups.
* Automatic whitespace cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42732 a95241bf-73f2-0310-859d-f6bbb57e9c96
* changing to cpp uncovered a few bugs in ide_adaptor
* correct losing signed integer
* correct a variable name that conflicted with a type
* gcc2 build now fixed after r42724
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42725 a95241bf-73f2-0310-859d-f6bbb57e9c96
* verified nothing in the source tree references "IDE PCI"
* line length fixes
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42724 a95241bf-73f2-0310-859d-f6bbb57e9c96
* complete static category defines
* a few style fixes
* ata / scsi trees are still ugly but make a little more sense now
* search for a pretty name as a last resort before going 'Unknown device'
* closes#6503
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42721 a95241bf-73f2-0310-859d-f6bbb57e9c96
* support all weekdays as start of week, not only Sunday and Monday
(at least Saturday is used for real, too)
* introduce BWeekday as enumeration of weekdays (currently in Locale.h,
may be moved somewhere else later)
* change CalendarView to use BDate as its model, not individual values
for day, month and year, such that no more date computation is done
in CalendarView itself
* some more style cleanups in CalendarView along the way
* add monthwise paging to CalendarView
* adjusted Deskbar and Time preflet accordingly
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42720 a95241bf-73f2-0310-859d-f6bbb57e9c96
* use _DaysInMonth() instead of DaysInMonth(), as the latter only works
for valid dates, which we do not have if the day needs to be clamped
to the maximum value for the current month
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42719 a95241bf-73f2-0310-859d-f6bbb57e9c96
* add edid info storage to display
* pass i2c/ddc information to common i2c code
* add code to read/write i2c/ddc
* i2c/ddc read/write code works 'in theory', needs tested
* detect monitors based on presence of edid on connector
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42718 a95241bf-73f2-0310-859d-f6bbb57e9c96
* rename decode_* to get_*
* clean up get_* text when unknown connector/encoder
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42717 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Progress bar is 8 pixels away fom bottom, right, and icon stripe
* Icon is horizontally positionned like in BAlert
* Move text a bit more to the right
Thanks to diver for the great suggestion mockups.
Note : some of the settings in Notification preflet are now ignored ("title above icon" comes to mind). I think they don't make much sense
anyway, anyone cares if they get removed ?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42716 a95241bf-73f2-0310-859d-f6bbb57e9c96
to a panic at boot.
* Make the panic message more explicit when there is no more room left.
This should hopefully fix#7869.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42715 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Rewrite the positionning code properly. There's a remaining bug when deskbar is on the left, but I think it comes from DecoratorFrame()
Tweak the position of UI elements :
* Shift the close cross a bit
* Make the icon stripe the same as in alerts, and align the icon the same way
* Adjust the text position, too
AppGroupView:
* remove the remaining "lines" in collapsed mode (looked like artifacts)
* Grey out the title in collapsed mode
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42714 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Setup the interrupt endpoint on device setup, not start
* Fixup some flags I was setting wrong
* Add even more debug traces
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42712 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Use a BStatusBar for progress.
* Smaller icon stripe on the left
* Shift the message title aligned with the rest of the message
* Fix drawing bugs at the right of the window
Thanks to diver for the suggestion mockups!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42710 a95241bf-73f2-0310-859d-f6bbb57e9c96
* few tab fixes
* add Axel as author as the base i2c stuff is from intel_extreme
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42709 a95241bf-73f2-0310-859d-f6bbb57e9c96
* given the rise of other 4G wwan technology such as lte, this
seems cleaner and better matches wlan directory for wifi.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42707 a95241bf-73f2-0310-859d-f6bbb57e9c96
* each active gDisplay references a gConnector index
* add atombios DAC sense.. this really won't be the main call used...
AtomBIOS expects you to attempt an EDID read to detect connected displays
* remove old manual DACSense
* next we attempt to add ddc / edid
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42705 a95241bf-73f2-0310-859d-f6bbb57e9c96
* determine first day of week and draw calendarview accordingly
* some cleanup: drop superfluous DateTimeView::Draw()
* automatic whitespace cleanup
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42697 a95241bf-73f2-0310-859d-f6bbb57e9c96
Generic UVC USB Webcam.
* Added my own Logitech HD Pro C910, which publish a compound device class, not an UVC class.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42693 a95241bf-73f2-0310-859d-f6bbb57e9c96
my not so visually inclined taste - we now use a gradient which IMHO gives much
more pleasant results
* add TODO about whether or not code for drawing drop target inidicators should be
added to ControlLook (or some other class with similar purpose)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42689 a95241bf-73f2-0310-859d-f6bbb57e9c96
* following a hint by Stephan: implement drawing of a drop target indicator,
a global one (bounds) for the available languages and an individual drop target
indicator ("between" the items) for the preferred languages
* fix drag'n'drop within preferred languages listview
* finish support for manipulating multiple items in preferred languages listview
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42686 a95241bf-73f2-0310-859d-f6bbb57e9c96
* need to break out connector and encoder addition into seperate functions as
the linux kernel did... that function is getting pretty large and deep.
* my card seems to map everything as TV DAC or TMDS... weird.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42684 a95241bf-73f2-0310-859d-f6bbb57e9c96
uint8 vs a void pointer.
* guys at AMD confirmed that the method looking directly at the object table
should be the only method used on modern cards (r600 or later)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42683 a95241bf-73f2-0310-859d-f6bbb57e9c96
are the same (Eclipse was complaining about 'assignment to self', which got me
looking at the code ...)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42682 a95241bf-73f2-0310-859d-f6bbb57e9c96
it incorporate now "em" and "lem" freebsd drivers.
Note: if_igb is not used - too much "undeclared"
stuff required from the compatibility layer. :-(
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42680 a95241bf-73f2-0310-859d-f6bbb57e9c96
* introduces fNextStartingFrame to keep track of the next frame to use on next submit.
* set the IOC bit for the last ITD
* computes multiply field of the ITD based on the packed size (1, 2 or 3).
* use locking around linking of ITD
* free descriptors on errors
* on finishing, whenever a non success status is found, set actual length to zero
* on finishing, when copying data to the Transfer object, copy starting on packet boundaries (skipping unused bytes).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42679 a95241bf-73f2-0310-859d-f6bbb57e9c96
(.c to keep compatibility with older C accelerants)
* use functions for decoding video_electronics
* thanks for the guidance Axel!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42668 a95241bf-73f2-0310-859d-f6bbb57e9c96
* separate LanguageListItemWithFlag from LanguageListItem
* draw the flag in front of the text instead of at wherever the right bounds happen to
be, fixing the drawing artefacts when scrolling
* size the flag to match the size of the list item, which looks much better when
using a largish default font
* use StringItem::BaselineOffset() instead of manually computed (and wrong) offset
when drawing the text
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42667 a95241bf-73f2-0310-859d-f6bbb57e9c96
Also get right of the ugly raster default app icon that was still used and visible in
memory & teams/threads submenus.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42660 a95241bf-73f2-0310-859d-f6bbb57e9c96
NULL-terminated list of driver_t* entries instead of single entry.
That allows to combine multiple FreeBSD drivers into single Haiku
driver add-ons;
* Support for DEC 21140 (Tulip) chipsets (provided by the 'de' driver)
incorporated into dec21xxx driver. That brings network connectivity to
Haiku systems running in MS Virtual PC VMs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42658 a95241bf-73f2-0310-859d-f6bbb57e9c96
Using team_info.args as before was not safe: when truncated, the
entry_ref could be an intermediate folder, which display a folder
icon as team's icon!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42653 a95241bf-73f2-0310-859d-f6bbb57e9c96
* malloc storage for mc state info
* redo pll range struct
* change to ATOM_ENCODER_MODE for connector info
* redo pll calculations to match AtomBIOS requirements
* some structure changes
* no longer init already posted AtomBIOS as it
causes an infinite loop of AtomBIOS calls
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42644 a95241bf-73f2-0310-859d-f6bbb57e9c96
/etc/irs.conf. Untested.
* There are more config files, but I'm not even sure what they are used for.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42643 a95241bf-73f2-0310-859d-f6bbb57e9c96
for message formatting
* adjust LocaleKit to use namespace 'icu', as ICU has been configured to no longer
use a version specific namespace
* adjust LocaleKit to general API changes in ICU 4.8
Note: all software using ICU (like WebPositive) needs to be rebuilt!
Note: the ICU package for PPC needs to be updated before it can be used!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42638 a95241bf-73f2-0310-859d-f6bbb57e9c96
See http://www.acpica.org/download/changes.txt done after 2010-10-13 for info on ACPI changes.
* Adapted the embedded controller to match current FreeBSD one.
There will probably be some issues with these changes initially.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42637 a95241bf-73f2-0310-859d-f6bbb57e9c96
* backport fixes to ATOM_IIO_MOVE_ register offsets
* small bit of style correction
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42624 a95241bf-73f2-0310-859d-f6bbb57e9c96
* when TRACE_ATOM is enabled in bios.c, we dump
each accelerant instance of the AtomBIOS rom
to disk in /boot/common/cache/tmp/ (next to usb
hid descriptors in the same file name format)
* these images can be parsed with the AtomDis application
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42622 a95241bf-73f2-0310-859d-f6bbb57e9c96
directory of a file without traversing leaf links (just like lstat()).
* Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42620 a95241bf-73f2-0310-859d-f6bbb57e9c96
include all supported video modes. Fixes#4166.
Note that this change will probably show several weird resolution is some
configurations. They are all valid resolutions but are not commom so we need
a way to filter those out.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42600 a95241bf-73f2-0310-859d-f6bbb57e9c96
faster than before.
* This also solves a TODO in dladdr(), although I did not use
get_library_symbol() as I didn't quite see how that could fit as the comment
suggested; there is now a new function get_symbol_at_address() for this.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42598 a95241bf-73f2-0310-859d-f6bbb57e9c96
* add igp property to pciid map
* add disabled bios pull for r700 and ni cards
* refactor model numbering as >R700 AMD switched
to named card families
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42596 a95241bf-73f2-0310-859d-f6bbb57e9c96
semaphore is created :)
* delete semaphore on AtomBIOS destroy
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42590 a95241bf-73f2-0310-859d-f6bbb57e9c96
* add atom_parse_cmd|table_header functions to evaluate
data structure versions
* convert asic function to status_t and reflect
execute_table result
* cleanup logic in destroy atombios parser function
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42589 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Use it in notification window for better positionning.
Thanks augiedoggie for reporting the problem !
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42588 a95241bf-73f2-0310-859d-f6bbb57e9c96
* backport additional bugfixes from drm version
* add logic to detect infinite execution loops
* add a semephore to prevent multiple executions on
non-thread safe code ( this needs testing )
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42585 a95241bf-73f2-0310-859d-f6bbb57e9c96
* add missing header for some radeon registers
* begin removing now un-needed direct register calls
* move and refactor crtc functions
* fix function naming to be clearer
* create more AtomBIOS style calls
* this will eat your cat at the moment, don't bother testing
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42582 a95241bf-73f2-0310-859d-f6bbb57e9c96
(we aren't taking ownership of this one.. yikes)
* add first AtomBIOS call to test the waters
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42578 a95241bf-73f2-0310-859d-f6bbb57e9c96
* only create_area if we found a valid AtomBIOS
* lock down write access to kernel AtomBIOS area after populating
* remove locking on kernel AtomBIOS area as it's not needed
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42573 a95241bf-73f2-0310-859d-f6bbb57e9c96
* remove some un-needed log messages
* memset area from create_area just incase
* add enabled bios read in addition to disabled one
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42566 a95241bf-73f2-0310-859d-f6bbb57e9c96
* AtomBIOS is now loaded and passed into the radeon_hd accelerant
* correct pointer passing in bios_init
* AtomBIOS is now read and initialized by AtomBIOS parser
* feel free to start testing the driver again :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42564 a95241bf-73f2-0310-859d-f6bbb57e9c96
* better error checking
* the driver can now locate the AtomBIOS on real hw!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42558 a95241bf-73f2-0310-859d-f6bbb57e9c96
* implement various methods to pull AtomBIOS from card
* add some missing registers to headers from linux drm driver
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42553 a95241bf-73f2-0310-859d-f6bbb57e9c96
* clone VGA rom shared area in accelerant
* enable access, and make a copy of the VGA bios
* give malloc'ed VGA bios pointer to AtomBIOS parser
* Still invalid BIOS magic
* TODO : Move atomBIOS pointer and reorganize some stuff
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42550 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Point AtomBIOS to PCI rom mapped in memory
* Things no longer crash, but we get an Invalid BIOS Magic error
in the logs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42543 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Pull pci_rom base address from pci subsystem
* Point AtomBIOS parser to pci rom address
to set up and malloc atom_context
* This is untested! Don't run on an
expensive card until I test it on a cheaper
one!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42541 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Refactor AtomBIOS parser to use non-linux-kernel calls
(normally I would keep it as-is and do wrappers, but the
AtomBIOS parser has been rewritten from scratch twice
by its creator in the last 5 years.. so eh.
* Refactor AtomBIOS parser to be more haiku-like stylewise
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42538 a95241bf-73f2-0310-859d-f6bbb57e9c96
effect), and since the test was a bit too constraining (I have an LVDS panel on head A), it would prevent setting colors for the CMAP modes.
This finally gets the \n demo working from the original binary from BeOS, without any change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42523 a95241bf-73f2-0310-859d-f6bbb57e9c96
Makes it useable in applications and less confusing. Fixes#6468.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42521 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Refactor MCFBsetup to be a little simpler for now
* Implement radeon accelerant_device_info for screen preflet
* Re-add CRT Power calls to display code.
* Disable blanking setting for now... just can't figure out
what AMD wants for this.
* Remove some un-needed locking in the scaling code
* Be sure to disable VGA when set_display_mode is called
* Refactor mode setting code to loop over all possible displays
and set the provided mode on the attached ones.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42515 a95241bf-73f2-0310-859d-f6bbb57e9c96
* xhci controller start operation
* command ring and event ring initialization
* No-Op Command test and real xhci irq handle
* xhci root hub support
* add Super Speed enumeration and xhci_rh.cpp into jamfile
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42511 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Add missing Idle call for connectors
* Reformulate blanking.. this should match what the
register is after the GTF vesa call
* Set FrameBuffer to card internal address
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42509 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Fix crash situation if no monitors detected
* Assume TMDSB if no monitors sensed (temporary)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42508 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Fix a few spots where we *should* of been checking for NULL
to prevent referencing a null pointer.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42505 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Rename of_support.h/cpp back to support.cpp as per Axel
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42498 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Rename a few variables to make more sense
* OF_FAILED is a signed int.. fix return of of_address_cells
* OF_FAILED is a signed int.. fix return of of_size_cells
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42497 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Add an option to draw the button directly, i.e. when they are clicked.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42493 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Add header file to support of_support.cpp
* Add support functions to obtain address and size cell lengths
* Small style cleanups
* Add support for G5 PowerPC cpus...
* Refactor memory region code to be aware of 64-bit OF addresses.
As-is the boot loader wouldn't start on G5 systems because
OpenFirmware memory base addresses are stored as two 32-bit
unsigned int 'cells' vs one 32-bit unsigned int 'cell' on G3/G4.
I removed the static struct and replaced it with a template
and pass uint32 or uint64 depending on the address cell size.
Thanks for the idea DeadYak!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42486 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Each Window has a reference counted WindowStack class which can be shared between stacked Windows. To keep the Decorator separated from Window there is another tab list in the Decorator now. The index of the stacked Window in the window stack is the same as the index of the tab in the Decorator. Properties like title or window focus are managed on a per tab basis now. This mean when you set the title in the Decorator you also have to specify the tab id which is equal to the window position in the stack.
* When drawing the decorator its important that only the top window is doing the drawing. Also the top window drawing engine should be used.
Actually that is only a problem directly after a window is stacked and the other window has still a none empty dirty region. In this case we clear the dirty region of this window and stop the drawing (the top window will draw everything).
* Track if shifting of a tab is still ongoing, i.e. mouse still down.
* The key event filter called the DesktopListener without holding the window write lock. This probably caused #7801 and #7796.
* Commented out assert's in Window::SetScreen and Window::Screen. Add TODO because I'm not sure about the screen access.
This breaks all existing decorators again, sorry guys! Haven't looked into any other then the default decorator (and the SAT decorator). Will not fix the others in the near future so go for it! Since applications should be able to rely on S&T features the other decorator must be able to handle multiple tabs as well. A simple solution would be to draw all title bars in multiple rows. That probably looks quit poorly. Think the better solution would be to draw a tab interface in the title bar, e.g. like in KDE.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42478 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Remove a superfluously assert which sends the app server into the debugger. More fixes following.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42472 a95241bf-73f2-0310-859d-f6bbb57e9c96
can make use of it, and adjust existing callers.
* For nodes that need child creation to be deferred until after value
resolution succeeds, send a request to the view to restore their view state
once child creation is complete. This gets the view state working again
for things like BPoints and other complex structures embedded in a BMessage.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42469 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Create new display.c/h for display management
* Rename global gCRT to gDisplay
* Add CRT connection type into gDisplay
* Add CRT connection index into gDisplay
* Refactor registers for each display into gDisplay via regs
* We now shouldn't freak out too badly on multi-monitors
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42462 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Style fixes as per Axel
* Reintroduce removed OF_FAIL checks
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42460 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Detect OpenBIOS used in QEMU and set machine flag
(OpenBIOS isn't 1:1 Apple OpenFirmware)
* Show at boot which machine type is detected
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42459 a95241bf-73f2-0310-859d-f6bbb57e9c96
requested once the deferred load has been complete, otherwise their values
would never be loaded if their parent node was already expanded while stepping
through the debugger. There still remains an issue with saving/restoring view
state for such nodes though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42457 a95241bf-73f2-0310-859d-f6bbb57e9c96
have been introduced, and also support for interlace mode had been removed.
* Instead, the Screen preferences are now using the common accelerant code for
this.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42451 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Removed excessive debug output, and values that aren't needed for the timing
computation.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42450 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Clean up messge and error text
* Begin use B_PRI* macros
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42449 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Add "Arrange By" submenu in Window menu.
* You can arrange by the same fields you can sort by in list view. Changing your sorting order in list view will change the Arrange By choice when you enter icon view and vice-versa.
* Support ReverseSort order.
* Keep the clean-up feature, but it's now under the Arrange By menu.
Fixing ticket #1349.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42448 a95241bf-73f2-0310-859d-f6bbb57e9c96
new asynchronous mouse tracking. Sorry for the delay. Up to now it was needing
mouse moves to autoscroll, it now behaves as before.
* Removed check that was disabling regular drag'n'drop auto-scrolling when
inactive. I don't see an obvious reason why that was done, as it's just handy
and is consistent with the other behaviors when inactive.
Note, i gotta love those comments that do anything but help, good example of
how not to comment :) i.e don't comment about what will happen when the
adjacent code won't be executed (especially in a case that can't happen).
My brain almost exploded a second time trying to explain that!
// selection scrolling will also work if the window is inactive
Should read:
// disable drag'n'drop auto scrolling when window is inactive
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42447 a95241bf-73f2-0310-859d-f6bbb57e9c96
- When using the graphical debugger by default, fall back
to setting up gdb handover if the GUI is unavailable.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42446 a95241bf-73f2-0310-859d-f6bbb57e9c96
teams to the native debugger instead. This assumes the latter is installed
in /boot/system/apps.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42445 a95241bf-73f2-0310-859d-f6bbb57e9c96
This especially avoid bringing tracker windows up to front when staying idle
over a tracker window while holding down a button. This could happen when
hovering while still holding a scroll thumb of another overlapping window.
Fixes regression #7829 introduced in r41892
* Also properly reinitialise the cached dragMessage on B_EXITED_VIEW,
otherwise it would still think it is dragging and thus still pass through my
above fix.
I'd like to cleanup the drag message caching mechanism as it's not
pretty in my opinion. Possibly even adding it to BView.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42441 a95241bf-73f2-0310-859d-f6bbb57e9c96
- Keep track of the correct number of initial modes available.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42438 a95241bf-73f2-0310-859d-f6bbb57e9c96
trace view, but we have a call frame matching that function, then jump
to that frame in the stack trace view as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42437 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Since it now doesn't crash anymore; set it as default.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42436 a95241bf-73f2-0310-859d-f6bbb57e9c96
* I got the downsampling version completely wrong. It should now be much better.
* A small bug in the delta calculation sometimes caused an off-by-one read to the source and a crash of the media add-on server
Effect of this resampler can be heard very clearly using the following setup in Cortex :
* Demo Audio producer producing a sinewave at any frequency (sampling rate is hardcoded at 44100Hz)
* Audio output set to 48000 Hz
* system mixer in between
select either resampler in the mixer and you'll hear the difference immediately.
Should finally fix#1351.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42435 a95241bf-73f2-0310-859d-f6bbb57e9c96
exception table address at the wrong location, leading to totally bogus values
for the alignment factors and return register, which ultimately resulted in
failing to reconstruct the CFI. (.eh_frame Format reference:
http://refspecs.freestandards.org/LSB_3.0.0/LSB-Core-generic/LSB-Core-generic/ehframechpt.html )
Fixes#7818.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42434 a95241bf-73f2-0310-859d-f6bbb57e9c96
preflet. Replacing B_TRANSLATE with B_TRANSLATE_COMMENT to better discern "never" and
"Never".
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42426 a95241bf-73f2-0310-859d-f6bbb57e9c96
This gets sliders with custom, non-rectangle thumbs, like the one in APlayer or the example in the BeBook, working properly.
I hope it doesn't break anything - it doesn't seem to but I may have overlooked some pixels.
Fixes#7817.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42425 a95241bf-73f2-0310-859d-f6bbb57e9c96
added to the mode list (in 60 Hz, but that doesn't really matter).
* It does this by iterating over the modes found, and computes the
display_timings from them using the GTF code.
* This should help with one of the problems of ticket #7751.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42421 a95241bf-73f2-0310-859d-f6bbb57e9c96
into a usable function - this has some coding style issues I did not care to
fix.
* _AddBaseMode() now computes the mode in case it is not present in the list
yet.
* This should help with bug #7787.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42420 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Remove read32MC as it doesn't apply to radeon cards >= r600
* Add tmds.cpp for tmds connected monitor management (current radeons
only have TMDSA for the moment) still needs TDMSPower, etc.
* Add some MC calls to mode.cpp, causes KDL so commented out atm.
* Add command to idle all DACs (although POWER_RESET doesn't do
anything on DACs, we should be consistent)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42416 a95241bf-73f2-0310-859d-f6bbb57e9c96
bug #7765, ie. don't use the Dutch keymap but prefer US-International.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42404 a95241bf-73f2-0310-859d-f6bbb57e9c96
load_resources_if_needed().
* Renamed the Esperanto flag resource to "eo" since it is a language; language
specific flags are now found by their two letter language code.
* This closes ticket #7614, as the Esperanto flag is now found and displayed
by ReadOnlyBootPrompt.
* Rearranged code in BLocaleRoster::GetFlagIconForCountry() to make it more
readable.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42403 a95241bf-73f2-0310-859d-f6bbb57e9c96
just applied r38391 to the IPv6 code (no time to resolve the TODO, and put
that into a shared class).
* Fixed failure on init handling.
* Not tested, but should work at least better than before, as the hashtable has
never been initialized before...
* This closes bug #7795.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42399 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Lets actually call PLLPower after PLLSet
* Improve screen blanking function
* Detect DAC/PLL to use separately from CRT id
* Add DACSense that senses displays on DACA/DACB
* Grab CRT in PLL code via gRegister crtid
* Set overscan to 0 for now
* Setting extended video modes now kinda works sometimes :-/
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42397 a95241bf-73f2-0310-859d-f6bbb57e9c96
The various LC_ environment variables (as well as LANG) are set in
/etc/profile, based on the output of this new simple bin command locale.
LANG and LC_CTYPE are set based on the first preferred language, whereas the
formatting variables are all set based on the formatting conventions language.
The list of LC_ variables are from the locale command on Linux.
Based on my testing, at least the date command obeys these variables.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42394 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Network drivers for 3com, ipro100, rtl8139 are updated from FreeBSD 8.2 Release branch;
* Some functions, defines and typedef required by updated and fresh ported FreeBSD
drivers were added into freebsd_compat layer.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42393 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Remove some un-needed test stuff
* Perform a little re-ordering
* Make scale corrections
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42390 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Rename PLL register vars to more closely match AMD defines
* Small logic fixes
* Fix pretty large PLLControlTable bug in legacy set.
Wasn't using output of PLLControlTable.
* Fix *REALLY* big bug in CRTCGrab.
Using PLL2 value instead of PLL1 due to incorrect
index offset of pllIndex.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42389 a95241bf-73f2-0310-859d-f6bbb57e9c96
handle the message in flat format. This gets messages embedded inside other
messages working.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42388 a95241bf-73f2-0310-859d-f6bbb57e9c96
information was unavailable, leading to a crash when used without a debug
libbe being present.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42386 a95241bf-73f2-0310-859d-f6bbb57e9c96
introduced in r37701 was not taken into account for computing the short meta
chunk size. Fixes the reopened#6237.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42385 a95241bf-73f2-0310-859d-f6bbb57e9c96
coding style changes by myself.
* Thanks, and sorry for the long delay!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42383 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Add crtControl global register
* Add grphUpdate storage
* Do some logical reordering of register writes
* Correct crt final power-on checks
* Enhance tracing
* Disable PLL, it is needed but seems to completely break
the modesetting resulting in black-screen-of-doom.
(fixing PLL set/calibration is now priority one)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42380 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Simplify the algorithm a bit, no functional changes are intended.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42377 a95241bf-73f2-0310-859d-f6bbb57e9c96
and pointers. This gets strings inside BMessages working.
* Enable the BMessage type handler. This effectively means that the debugger
now has the ability to introspect BMessages for their field contents.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42374 a95241bf-73f2-0310-859d-f6bbb57e9c96
This is necessary for looking up pointer and array types.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42373 a95241bf-73f2-0310-859d-f6bbb57e9c96
This allows the variables view to request value/location resolution for those
nodes as needed, since it's otherwise unaware of their existence. This is
necessary in order to correctly handle nodes which require resolution to
happen in order to publish their children, since their value would otherwise
never be requested when they're hidden by virtue of being the child of an
address node.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42369 a95241bf-73f2-0310-859d-f6bbb57e9c96
Interesting side effects otherwise occur in the case where multiple compound
children are present, since other areas of the table model depend on the node
only being hidden in the single child case.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42367 a95241bf-73f2-0310-859d-f6bbb57e9c96
after resolving them. This allows us to reuse BMessage's logic for computing
the offsets of values in the data buffer.
* Resolve fields to their types and correctly resolve the locations of their
data. This means we can now see the values of fields inside the message, with
some caveats: string types aren't yet handled properly, and we don't yet
properly deal with fields that have multiple indices.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42365 a95241bf-73f2-0310-859d-f6bbb57e9c96