Jump to content
PaulOBrien

Advent Vega kernel source code now available!

Recommended Posts

i am thinking in increasing the output resolution to fullHD... After all, the most useful use of HDMI is to display movies ;) -- And perhaps, Android could be convinced to output to that resolution..

Ideas, thoughts ? :)

Eduardo

From what I can remember the scaling corvus5 used to do to fill the screen looked dreadfull, with text being harder to read than on the tablet, almost as if it was scaling a lower Res than the tablet was actually using (unless it was the budget TV I'd tried it on?) My vote would be to up the Res and then look into getting it full screen as i'd just use it for movies, however I know there'll be a good few that would want to show YouTube or pictures too.

cheers

Share this post


Link to post
Share on other sites

New Skype version with tegra2 support is in the market. Videochat now seems to work but is very unreliable.

Sometimes you get just a black screen. I figured turning of rotation and zoom in dkype settings helped a bit.

Maybe one of the devs can look into it?

Share this post


Link to post
Share on other sites

Well, i thought i could give some advances on what i was trying.. I have attached the patches to the kernel required to tune a bit the performance of the device:

-Now, when the backlight is turned off, we automatically switch the power governor to the conservative one. Once the backlight is turned on again, then, the previous selected governor is reapplied. The main idea here is to save power when the user is not looking at the screen... I took the idea of the Whistler Tegra kernel ....

-Adjusted the video memory layout a bit... Now we have 96mbytes of video ram. From those, 2Mbytes are required for the LCD display framebuffer (previously, we were allocating 8Mbytes. That was an error... ;)

-Increased the maximum resolution of the 2nd framebuffer (HDMI out) to full HD. In theory, Tegra2 should be able to drive it and output fullHD movies... Let's see how it works in practice :) (previously, Tegra2 was outputting 720p , not HD) ... Just note that i fixed again the amount of memory allocated for HDMI ,,, It was less than the amount required to support fullHD

-Reduced the refresh rate of the LCD to the same speed as Froyo (.32 kernel) ... 60 hz. Makes a lot of sense ... There is no need to drive the display at higher refresh frecuencies ... Previously, we were driving it at 100hz, wasting power as the LCD used can't turn off/on pixels at such speed... If anyone notices something,... But, i really doubt it - And there is a very good point in decreasing refresh screen: This saves memory bandwidth, making it available to program execution/graphics rendering, increasing Android speed

-398Mbytes of RAM are left for the android apps...

-I also reenabled sharing of system RAM with the graphics core . Check the .config file ;)

Well, no more to report.. I will probably test this a little bit more on the next days...

Eduardo

BTW... I have read that Bluetooth has stability problems when pairing to a A2DP audio headset... It would be really nice to have kernel logs just before the crash, to try to fix it... This pairing should work without trouble :)

HDMI-FULLHD.rar

Edited by ejtagle
  • Upvote 2

Share this post


Link to post
Share on other sites

Well, i thought i could give some advances on what i was trying.. I have attached the patches to the kernel required to tune a bit the performance of the device:

-Now, when the backlight is turned off, we automatically switch the power governor to the conservative one. Once the backlight is turned on again, then, the previous selected governor is reapplied. The main idea here is to save power when the user is not looking at the screen... I took the idea of the Whistler Tegra kernel ....

-Adjusted the video memory layout a bit... Now we have 96mbytes of video ram. From those, 2Mbytes are required for the LCD display framebuffer (previously, we were allocating 8Mbytes. That was an error... ;)

-Increased the maximum resolution of the 2nd framebuffer (HDMI out) to full HD. In theory, Tegra2 should be able to drive it and output fullHD movies... Let's see how it works in practice :) (previously, Tegra2 was outputting 720p , not HD) ... Just note that i fixed again the amount of memory allocated for HDMI ,,, It was less than the amount required to support fullHD

-Reduced the refresh rate of the LCD to the same speed as Froyo (.32 kernel) ... 60 hz. Makes a lot of sense ... There is no need to drive the display at higher refresh frecuencies ... Previously, we were driving it at 100hz, wasting power as the LCD used can't turn off/on pixels at such speed... If anyone notices something,... But, i really doubt it - And there is a very good point in decreasing refresh screen: This saves memory bandwidth, making it available to program execution/graphics rendering, increasing Android speed

-398Mbytes of RAM are left for the android apps...

-I also reenabled sharing of system RAM with the graphics core . Check the .config file ;)

Well, no more to report.. I will probably test this a little bit more on the next days...

Eduardo

BTW... I have read that Bluetooth has stability problems when pairing to a A2DP audio headset... It would be really nice to have kernel logs just before the crash, to try to fix it... This pairing should work without trouble :)

Great work with the memory layout changes it seems abit snappier now. As for the bluetooth issues when I have A2DP headphones connected and listening to an mp3 off the sdcard the headphones cut in and out whenever there is any wireless activity the only entry in dmesg is:

bcsp_recv: Out-of-order packet arrived, got 1 expected 0

If you turn the wifi off the mp3 plays perfect without any skipping at all.

So far the only thing I have found regarding co-existance of bluetooth and wifi is in bluecore6.psr

// PSKEY_LC_COMBO_DOT11_CHANNEL_PIO_BASE (0x002a) // Enhanced 3-Wire (PTA) Mode

&002a = 0011

// PSKEY_LC_COMBO_PRIORITY_PIO_MASK (BT_Priority/BT_ACTIVE) of coexistence (PIO[7])

&0029 = 0080 0000

// PSKEY_LC_COMBO_DISABLE_PIO_MASK (WLAN_Active/RX_CLEAR) of coexistence (PIO[9])

&0028 = 0200 0000 0000

I dont know if that has anything todo with the a2dp issue.

Next bluetooth issue I can see is bluetooth input devices ie keyboard and mouse disconnect after about 10-20 seconds even if you are using them. However android still thinks the devices are connected, power cycling the BT adapter does nothing as when it comes backup nothing bluetooth will reconnect to the tablet the only way to get the BT working again is shutdown or restart. Also if you power cycle the BT adapter again without restarting it will hard freeze the tablet.When the input devices freeze we see these errors many times in dmesg:

bcsp_pkt_cull: Peer acked invalid packet

bcsp_handle_le_pkt: Found a LE sync pkt

However this issue may not have anything to do with the new kernel as I was having this problem on the .32 kernel so we may not be able to fix this? also I dont know if these issues are related in anyway. I am pretty sure this issue is bluez losing connection with the the BT module. turning the wifi off when you have BT input devices connected does not help like it does with the a2dp issue.

any ideas are welcome.

Just for information as a testiment to this new kernel I have my tablet cpu oc'ed to 1.4ghz and the gpu oc'ed to 400mhz from 300mhz and all is very stable I have had to throw quite abit extra mv at the cpu and core tho :o

this will fix the incorrect bogomips score on the second core after suspend.

https://github.com/T...5ffa36fe69bca6e

Edited by wooshy1

Share this post


Link to post
Share on other sites

Great work with the memory layout changes it seems abit snappier now. As for the bluetooth issues when I have A2DP headphones connected and listening to an mp3 off the sdcard the headphones cut in and out whenever there is any wireless activity the only entry in dmesg is:

bcsp_recv: Out-of-order packet arrived, got 1 expected 0

If you turn the wifi off the mp3 plays perfect without any skipping at all.

So far the only thing I have found regarding co-existance of bluetooth and wifi is in bluecore6.psr

// PSKEY_LC_COMBO_DOT11_CHANNEL_PIO_BASE (0x002a) // Enhanced 3-Wire (PTA) Mode

&002a = 0011

// PSKEY_LC_COMBO_PRIORITY_PIO_MASK (BT_Priority/BT_ACTIVE) of coexistence (PIO[7])

&0029 = 0080 0000

// PSKEY_LC_COMBO_DISABLE_PIO_MASK (WLAN_Active/RX_CLEAR) of coexistence (PIO[9])

&0028 = 0200 0000 0000

I dont know if that has anything todo with the a2dp issue.

Next bluetooth issue I can see is bluetooth input devices ie keyboard and mouse disconnect after about 10-20 seconds even if you are using them. However android still thinks the devices are connected, power cycling the BT adapter does nothing as when it comes backup nothing bluetooth will reconnect to the tablet the only way to get the BT working again is shutdown or restart. Also if you power cycle the BT adapter again without restarting it will hard freeze the tablet.When the input devices freeze we see these errors many times in dmesg:

bcsp_pkt_cull: Peer acked invalid packet

bcsp_handle_le_pkt: Found a LE sync pkt

However this issue may not have anything to do with the new kernel as I was having this problem on the .32 kernel so we may not be able to fix this? also I dont know if these issues are related in anyway. I am pretty sure this issue is bluez losing connection with the the BT module. turning the wifi off when you have BT input devices connected does not help like it does with the a2dp issue.

any ideas are welcome.

Just for information as a testiment to this new kernel I have my tablet cpu oc'ed to 1.4ghz and the gpu oc'ed to 400mhz from 300mhz and all is very stable I have had to throw quite abit extra mv at the cpu and core tho :o

this will fix the incorrect bogomips score on the second core after suspend.

https://github.com/T...5ffa36fe69bca6e

Regarding BT, i thought it could be something related to UART overruns... But, if there is nothing related to UART, perhaps the problem is that there is simply not enough bandwidth available... Remember the WLAN/Bluettoth module shares the antenna, and both functions cannot use it at the same time, so, a sort of arbitration is used to switch it from one to the other.. Using WLAN at the same time as BT makes very hard to sustain BT A2DP transfers... It would be nice to test this same scenario with a different device ...

Share this post


Link to post
Share on other sites

Regarding BT, i thought it could be something related to UART overruns... But, if there is nothing related to UART, perhaps the problem is that there is simply not enough bandwidth available... Remember the WLAN/Bluettoth module shares the antenna, and both functions cannot use it at the same time, so, a sort of arbitration is used to switch it from one to the other.. Using WLAN at the same time as BT makes very hard to sustain BT A2DP transfers... It would be nice to test this same scenario with a different device ...

FWIW I have the same issue with my HTC Desire phone.

Share this post


Link to post
Share on other sites

Regarding BT, i thought it could be something related to UART overruns... But, if there is nothing related to UART, perhaps the problem is that there is simply not enough bandwidth available... Remember the WLAN/Bluettoth module shares the antenna, and both functions cannot use it at the same time, so, a sort of arbitration is used to switch it from one to the other.. Using WLAN at the same time as BT makes very hard to sustain BT A2DP transfers... It would be nice to test this same scenario with a different device ...

FWIW I have the same issue with my HTC Desire phone.

Hummm... extremely valuable information you gave us... ;) ;D --- I think this could be just a limitation of the Bt/WLAN combination module ... Sharing the antenna between functions does not allow it to use the full BT bandwidth at the same time than using WLAN ... :( -- And i don't really know if , even if using separate antennae, if this would be possible. Just for information purposes... BT and WLAN use the same frequency range ...

Share this post


Link to post
Share on other sites

Hummm... extremely valuable information you gave us... ;) ;D --- I think this could be just a limitation of the Bt/WLAN combination module ... Sharing the antenna between functions does not allow it to use the full BT bandwidth at the same time than using WLAN ... :( -- And i don't really know if , even if using separate antennae, if this would be possible. Just for information purposes... BT and WLAN use the same frequency range ...

This is the problem. I have found a version of the atheros wireless driver which has a btfilter for coexistance scenarios which looks promising but I must sleep now

https://github.com/tjstyle/AR6kSDK-CAF/blob/master/AR6kSDK.2.2.1.151/host/btfilter/athbtfilter.txt

Share this post


Link to post
Share on other sites

This is the problem. I have found a version of the atheros wireless driver which has a btfilter for coexistance scenarios which looks promising but I must sleep now

https://github.com/t...athbtfilter.txt

Well, this is what i got... Modified that driver so it compiles and loads (had to adjust fw paths), had to remove some modifications related to powerup/down that were added for the project that driver was used into, but is not required on Shuttle...

Attached the source and the compiled versions of the driver and also the compiled version of the btfilter daemon. I had no time to try them, so, perhaps, they will not work, but, at least all compile without errors... So, if anyone wants to try them, perhaps they could fix the bluetooth problems, and probably improve Wlan at the same time...

Regards

Eduardo

wlan.rar

Share this post


Link to post
Share on other sites

Well, i thought i could give some advances on what i was trying.. I have attached the patches to the kernel required to tune a bit the performance of the device:

-Now, when the backlight is turned off, we automatically switch the power governor to the conservative one. Once the backlight is turned on again, then, the previous selected governor is reapplied. The main idea here is to save power when the user is not looking at the screen... I took the idea of the Whistler Tegra kernel ....

-Adjusted the video memory layout a bit... Now we have 96mbytes of video ram. From those, 2Mbytes are required for the LCD display framebuffer (previously, we were allocating 8Mbytes. That was an error... ;)

-Increased the maximum resolution of the 2nd framebuffer (HDMI out) to full HD. In theory, Tegra2 should be able to drive it and output fullHD movies... Let's see how it works in practice :) (previously, Tegra2 was outputting 720p , not HD) ... Just note that i fixed again the amount of memory allocated for HDMI ,,, It was less than the amount required to support fullHD

-Reduced the refresh rate of the LCD to the same speed as Froyo (.32 kernel) ... 60 hz. Makes a lot of sense ... There is no need to drive the display at higher refresh frecuencies ... Previously, we were driving it at 100hz, wasting power as the LCD used can't turn off/on pixels at such speed... If anyone notices something,... But, i really doubt it - And there is a very good point in decreasing refresh screen: This saves memory bandwidth, making it available to program execution/graphics rendering, increasing Android speed

-398Mbytes of RAM are left for the android apps...

-I also reenabled sharing of system RAM with the graphics core . Check the .config file ;)

Well, no more to report.. I will probably test this a little bit more on the next days...

Eduardo

BTW... I have read that Bluetooth has stability problems when pairing to a A2DP audio headset... It would be really nice to have kernel logs just before the crash, to try to fix it... This pairing should work without trouble :)

Hi!

How can I change the kernel on my POV Tegra to this? I'm not expert in this, I tried many ROMs, but kernel changing not yet.

Share this post


Link to post
Share on other sites

Well, got some time to actually try the driver... It didnt work... After some investigation, seems that a compilation flag was missing. Just added it, recompiled it, and tried it in the vega. It seems to work flawlessly... No problems... Even seems to be more stable than the original driver.

What i was unable to make work was the abtfilt program... This program is the one making sure that Bluetooth and wifi can work together without interferring each other. The program itself compiles properly, but when i try to run it in the tablet, it gives 'not found'. Obviously, i previously copied it to /system/bin', then did the chmod 0777 abtfilt. No errors. And the program is listed it i do ls /system/bin/abtfilt ... I suspect that something is missing in the compilation, but have failed to identify the cause... Ideas ?

I have to point out somerhing: The new driver (already working) in combination with this abtfilter COULD POTENTIALLY make Bluetooth A2DP and Wifi work together without troubles. The more i read about it, the more i think it could work. What the abtfilt program does is to reassign bandwith on demand, so, it tunes the WLan driver to allow A2DP bluetooth to work ... If we manage to compile the abtfilt program in such a way that Android accepts to execute it. -- And just in case, the abtfilt is exclusively fr the AR6002 Atheros wifi driver. It won-t work with other devices...

I someone has a clue on the cause of the problems with the abtfilt, or manages to compile a working version.. please, tell!

Attached my latest versions, Nwe Wifi driver works (update the kernel module and the firmware), and also my compiled abtfilt, but android refuses to execute it...

Regards,

Eduardo

wlan.rar

Share this post


Link to post
Share on other sites

Well, got some time to actually try the driver... It didnt work... After some investigation, seems that a compilation flag was missing. Just added it, recompiled it, and tried it in the vega. It seems to work flawlessly... No problems... Even seems to be more stable than the original driver.

What i was unable to make work was the abtfilt program... This program is the one making sure that Bluetooth and wifi can work together without interferring each other. The program itself compiles properly, but when i try to run it in the tablet, it gives 'not found'. Obviously, i previously copied it to /system/bin', then did the chmod 0777 abtfilt. No errors. And the program is listed it i do ls /system/bin/abtfilt ... I suspect that something is missing in the compilation, but have failed to identify the cause... Ideas ?

I have to point out somerhing: The new driver (already working) in combination with this abtfilter COULD POTENTIALLY make Bluetooth A2DP and Wifi work together without troubles. The more i read about it, the more i think it could work. What the abtfilt program does is to reassign bandwith on demand, so, it tunes the WLan driver to allow A2DP bluetooth to work ... If we manage to compile the abtfilt program in such a way that Android accepts to execute it. -- And just in case, the abtfilt is exclusively fr the AR6002 Atheros wifi driver. It won-t work with other devices...

I someone has a clue on the cause of the problems with the abtfilt, or manages to compile a working version.. please, tell!

Attached my latest versions, Nwe Wifi driver works (update the kernel module and the firmware), and also my compiled abtfilt, but android refuses to execute it...

Regards,

Eduardo

Great work Eduardo

Haven't had chance to give it a try but we also need wmiconfig compiled and installed in /system/bin as it uses this to set the ar6002 commands think we maybe need cfg80211/nl80211 support in the kernel?? and finally we need to start abtfilter with a conf file similar to sample.conf but with some actions for a2dp/sco/acl etc check btfilter_core.h for action strings. Hope this helps!

PS just checked btfilt has default actions for sco and a2dp so we dont need to sort the conf file above

Edited by wooshy1

Share this post


Link to post
Share on other sites

Great work Eduardo

Haven't had chance to give it a try but we also need wmiconfig compiled and installed in /system/bin as it uses this to set the ar6002 commands think we maybe need cfg80211/nl80211 support in the kernel?? and finally we need to start abtfilter with a conf file similar to sample.conf but with some actions for a2dp/sco/acl etc check btfilter_core.h for action strings. Hope this helps!

PS just checked btfilt has default actions for sco and a2dp so we dont need to sort the conf file above

Much easier than that... wmiconfig is part of the Atheros SDK ... But we don't need it. The Abtfilt daemon uses WMI calls, but does not need any external tool to send them ... So ... It is just a matter of properly compiling the abtfilter, and it will do its magic without extra assistance :D

Share this post


Link to post
Share on other sites

Well, i am still unable to make a working version of abtfilter... Butt i did other things ...

>Added proper power management to the wifi driver. Now it is able to power up/down the adapter, so this should solve some issues regarding wifi connections that stop working after suspend...

I also wrote a new libgps. This new library allows to use the internal GPS part of the UTMS modem EM770W as a location source ... I have tested it, and loads, seems to work ...

Well, thats all for now,

Eduardo

wlan.rar

libgps.rar

  • Upvote 1

Share this post


Link to post
Share on other sites

Well, i also took a look on the USB Tethering problem. I added support to the kernel, so a computer sees the Tablet as a RNDIS network adapter. This will enable the USB tethering to work.

Attached the required changes to the kernel. Recompile it with RNDIS Android gadget support enabled

Regards,

Eduardo

rndis.rar

Share this post


Link to post
Share on other sites

Well, finally managed to compile the Bt/WLan coexistance daemon!

this must be executed at system startup with a line as

abtfilt wlan0

Of course, this requires the also attached latest AR6002 driver module and firmware!

Hope this iwll make BT A2DP headsets/speakers work at the same time as wifi

Regards

Eduardo

wlan.rar

Share this post


Link to post
Share on other sites

Well, finally managed to compile the Bt/WLan coexistance daemon!

this must be executed at system startup with a line as

abtfilt wlan0

Of course, this requires the also attached latest AR6002 driver module and firmware!

Hope this iwll make BT A2DP headsets/speakers work at the same time as wifi

Regards

Eduardo

You're on a roll :) all I need now are some BT A2DP speakers to test it.

On a complete side note, I'm looking to get shell access (I want to play with tar to look into bad sectors in the NAND) without booting into vegacomb, I'm fairly sure we don't have adb from clockworkmod and there's no shell access from fastboot, so am I looking at just booting the kernel?

Share this post


Link to post
Share on other sites

You're on a roll :) all I need now are some BT A2DP speakers to test it.

On a complete side note, I'm looking to get shell access (I want to play with tar to look into bad sectors in the NAND) without booting into vegacomb, I'm fairly sure we don't have adb from clockworkmod and there's no shell access from fastboot, so am I looking at just booting the kernel?

I think i attached *about 20 pages ago!) a fastbootable kernel with just shell access ... I have such image fro my own testings... I just created a ram disk with busybox, and mounted a remote console over ACM, using android gadget serial tty ...

Share this post


Link to post
Share on other sites
Well, finally managed to compile the Bt/WLan coexistance daemon!

this must be executed at system startup with a line as

abtfilt wlan0

Of course, this requires the also attached latest AR6002 driver module and firmware!

Hope this iwll make BT A2DP headsets/speakers work at the same time as wifi

Regards

Eduardo

That sounds great, would like to test that with my a2dp headset (philips shb9001). Sadly i am not that experienced with kernel building, but is there is a flashable zip to install the kernel, i can test it on my pov mobii.

Share this post


Link to post
Share on other sites

I think i attached *about 20 pages ago!) a fastbootable kernel with just shell access ... I have such image fro my own testings... I just created a ram disk with busybox, and mounted a remote console over ACM, using android gadget serial tty ...

Sorry to be a pain, but any chance you could post/find the link, as I scanned back over the last 30 odd pages and didn't see a specific reference, although there are a lot of peoples kernels posted up early on in the development.

Also will I get away with a basic

fastboot -i 0x955 -b 0x10000000 -c "[email protected] console=tty0" boot image.img

Or do I need to specify things like the mtdparts values to get access to the NAND partitions?

Cheers.

Share this post


Link to post
Share on other sites

Well, finally managed to compile the Bt/WLan coexistance daemon!

this must be executed at system startup with a line as

abtfilt wlan0

Of course, this requires the also attached latest AR6002 driver module and firmware!

Hope this iwll make BT A2DP headsets/speakers work at the same time as wifi

Regards

Eduardo

Finally got a chance to test this and you have fixed the a2dp issue you can now stream music/videos and listen with a2dp headphones with no skipping.

Excellent work Eduardo!

Share this post


Link to post
Share on other sites

Well, now to the Wifi hotspot issue... That is the only thing i see that is missing ... (HDMI resolution problems are not kernel problems) ... With the AtherosSDK2.2, there is no support for AP mode, but, perhaps using the AtherosSDK3.0 driver, it can be done (it has AP mode support, and the required Android IOCTLs ...) ...

Share this post


Link to post
Share on other sites

Well, now to the Wifi hotspot issue... That is the only thing i see that is missing ... (HDMI resolution problems are not kernel problems) ... With the AtherosSDK2.2, there is no support for AP mode, but, perhaps using the AtherosSDK3.0 driver, it can be done (it has AP mode support, and the required Android IOCTLs ...) ...

Are you going to check EAP connections too? i would really test any kind of fixes... i just want you devs to get that working... :P

if not, could yo please check it :) :P

Edited by WWEpsp

Share this post


Link to post
Share on other sites

Well, now to the Wifi hotspot issue... That is the only thing i see that is missing ... (HDMI resolution problems are not kernel problems) ... With the AtherosSDK2.2, there is no support for AP mode, but, perhaps using the AtherosSDK3.0 driver, it can be done (it has AP mode support, and the required Android IOCTLs ...) ...

After a lot of investigation, seems the Atheros SDK 3.0 driver does NOT support AR6002... Or, at least, there is a lot of code missing. Even if we add the missing pieces, we lack the required firmware to be loaded in the WiFi chip ... I have tried lots of things, without success...

And, even if the older Atheros 2.2 driver seems to support AP mode, Atheros chose to implement it in a very non standard way... It would require a daemon called hostapd (we have it), and an special version of netd (part of HC, we dont have sources for it, and we don[t have the special Atheros version required for HC to support AP mode in AR600x chipsets.. And we cant use a previous version of it, as they have changed things quit a bit... So, i guess AP mode is not possible right now ... If any has any idea, tell...

Eduardo

Edited by ejtagle

Share this post


Link to post
Share on other sites
Guest

After a lot of investigation, seems the Atheros SDK 3.0 driver does NOT support AR6002... Or, at least, there is a lot of code missing. Even if we add the missing pieces, we lack the required firmware to be loaded in the WiFi chip ... I have tried lots of things, without success...

And, even if the older Atheros 2.2 driver seems to support AP mode, Atheros chose to implement it in a very non standard way... It would require a daemon called hostapd (we have it), and an special version of netd (part of HC, we dont have sources for it, and we don[t have the special Atheros version required for HC to support AP mode in AR600x chipsets.. And we cant use a previous version of it, as they have changed things quit a bit... So, i guess AP mode is not possible right now ... If any has any idea, tell...

Eduardo

Cass, Rebel1. Newbe5 - are we likely to see an Update4 anytime with these new HDMI, Wifi/BT, GPS and Tethering changes?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.