291 replies to this topic
#221
Posted 20 December 2012 - 10:45 AM
Cut the had of the bull:
After christmas..il'll test the polarity and voltage under windows
Then il'll give manually the voltage required. Stop
Look
Someone has the kbd lighthing.. Someone not.someone so and so.
Altough the guide in the 1st post is loud and clear.. There is something of uncontrollable and not discovered by noone.. That cause those different behaviour starting from same data.
waiting for the electrical tests.. I'll study the effective mutual association between iowmi (and Linux sources) and the dsdt/ec register
After christmas..il'll test the polarity and voltage under windows
Then il'll give manually the voltage required. Stop
Look
Someone has the kbd lighthing.. Someone not.someone so and so.
Altough the guide in the 1st post is loud and clear.. There is something of uncontrollable and not discovered by noone.. That cause those different behaviour starting from same data.
waiting for the electrical tests.. I'll study the effective mutual association between iowmi (and Linux sources) and the dsdt/ec register
#222
Posted 20 December 2012 - 02:15 PM
Ok, let us know what you find :-)
Does the backlit keyboard work under Linux then? I haven't tried it.
EDIT: Have to go out for a bit, will install Linux later and report back. If you need any info from my machine, let me know and I can get it.
Jeff, out of interest - you said that the display override changes it from Built In to Asus, where is this displayed? In my system profile, I only have this: http://i47.tinypic.com/21jumg7.png
Or do you mean in the detailed listing like this: http://i49.tinypic.com/ofzv6g.jpg
Just clutching at straws here... wondering if it's a glitch with the display, being that the nvidia drivers seen to affect backlit keys...
Does the backlit keyboard work under Linux then? I haven't tried it.
EDIT: Have to go out for a bit, will install Linux later and report back. If you need any info from my machine, let me know and I can get it.
Jeff, out of interest - you said that the display override changes it from Built In to Asus, where is this displayed? In my system profile, I only have this: http://i47.tinypic.com/21jumg7.png
Or do you mean in the detailed listing like this: http://i49.tinypic.com/ofzv6g.jpg
Just clutching at straws here... wondering if it's a glitch with the display, being that the nvidia drivers seen to affect backlit keys...
#223
Posted 20 December 2012 - 02:28 PM
I've trile boot with ltest ubuntu.. This night i'll check
Bye
#224
Posted 20 December 2012 - 05:05 PM
ugokind, on 20 December 2012 - 10:45 AM, said:
Cut the had of the bull:
After christmas..il'll test the polarity and voltage under windows
Then il'll give manually the voltage required. Stop
Look
Someone has the kbd lighthing.. Someone not.someone so and so.
Altough the guide in the 1st post is loud and clear.. There is something of uncontrollable and not discovered by noone.. That cause those different behaviour starting from same data.
waiting for the electrical tests.. I'll study the effective mutual association between iowmi (and Linux sources) and the dsdt/ec register
After christmas..il'll test the polarity and voltage under windows
Then il'll give manually the voltage required. Stop
Look
Someone has the kbd lighthing.. Someone not.someone so and so.
Altough the guide in the 1st post is loud and clear.. There is something of uncontrollable and not discovered by noone.. That cause those different behaviour starting from same data.
waiting for the electrical tests.. I'll study the effective mutual association between iowmi (and Linux sources) and the dsdt/ec register
Ugokind/Ellnic, Did you guys Install with usb keyboard plugin? How about external display plugin? When I install I only have 1 wireless mouse connected, no external keyboard, and no external display. I remember back when i first started trying to install OS X 10.6.3, that bluetooth connection wizard popped up asking to connect a keyboard. So, I plugged in wireless mouse instead and it disappeared. After install, it pop up another wizard to figure out my built in keyboard. As far as this install goes, I am not sure why this is happening to some and not all. I am clueless. Now if my backlit keyboard is not functioning like before, I can try to trouble shoot it. But I noticed the backlit came back after this install. I am just trying to help you guys out! It's kinda hard to fix something that's working on my end.
Ellnic, see attached. As long as you have DisplayVenderID-daf folder in your S/L/Displays/Overrides/ just replace it with that file. It's just cosmetic.
I had removed AsusNBWMI.kext, changed boot flags to ignore kernel cache and boot cache. While my keyboard backlit is still working, rebooted computer. Once it get passed bio's boot, the keyboard backlit stays on. When I get to chameleon boot, keyboard backlit is still on. Can't control with fn-f3/f4, but Display backlight can change by pressing fn-f5/f6 before entering OS. Now, once i shut off computer or pull the battery out. I loose keyboard backlit after bio's boot. Display backlight is still controlled by fn-f5/f6 before entering OS. I know we are trying to figure out how to control these items in OS. But I think, these finding might help us understand more about how EC pass it's controls to OS. If i understand right, Display Backlight is controlled by the AppleBacklight.kext. For some reason, it's stuck on default in PNLF as AppleIntelPanelA. I got to do more reading. As far as keyboard backlit, it's controlled by nvidia then it passes it on to OS. Where it nvidia pass it to what service, i am still doing more research. Or it could be that after I found the right nvidia kexts to enable sleep, that triggered something in OS now is able to turn on keyboard backlit. But I know for now AsusNBWMI.kext is there to control vol up/down/mute, play/resume/next/previous. I understand these things require more hack, but system is running stable on my end. I don't have to worry about system freezing up right now until next update.
Attached Files
#225
Posted 20 December 2012 - 06:15 PM
jeffc2009, on 20 December 2012 - 05:05 PM, said:
I am just trying to help you guys out!
I fully appreciate your efforts in getting this machine up and running and completely understand that it's very difficult to trouble shoot someone elses box. All I can do is thank you again, because this is our problem, and your help is appreciated.
I needed to plug a mouse/kb in when I used the self made installer for 10.8.0 and with Olarila 10.8.1, but since Olarila 10.8.2 I have had no issues. I do not use an external display - or keyboard only a mouse (but this is only because I use one, and not because it is needed). Not a wireless one, but USB all the same!
One thing that I think is interesting, is that when using the display override I do not get the same look in the pref pane as you. I get this: http://i48.tinypic.com/343q72f.jpg
#226
Posted 20 December 2012 - 07:21 PM
Can u send me a copy of your ioreg?
#227
Posted 20 December 2012 - 08:40 PM
Yes of course. See attached. I dumped 2 of them, one had significantly more info than the other.
I can get you information from AIDA64 in win as well, but I was just about to boot into Linux, I will attach the IOreg from there as well, incase they differ.
EDIT: Ok, really disappointed in a way to find out that ubuntu "just worked" OTB with the backlit keys...booted from the live 12.10 disc and they lit up. It also supported the fn+F4 and F5 and it displays a little level indicator like the brightness. Didn't realise that Linux didn't have IOreg, so haven't attached that - but will grab the ACPI tables from AIDA64 and attach shortly.
I can get you information from AIDA64 in win as well, but I was just about to boot into Linux, I will attach the IOreg from there as well, incase they differ.
EDIT: Ok, really disappointed in a way to find out that ubuntu "just worked" OTB with the backlit keys...booted from the live 12.10 disc and they lit up. It also supported the fn+F4 and F5 and it displays a little level indicator like the brightness. Didn't realise that Linux didn't have IOreg, so haven't attached that - but will grab the ACPI tables from AIDA64 and attach shortly.
Attached Files
#228
Posted 20 December 2012 - 10:03 PM
My NVDA, Display-A@0
Ellnic, NVDA, Display-A@0
| | | +-o NVDA,Display-A@0 <class IONDRVDevice, id 0x1000002ba, registered, matched, active, busy 0 (36 ms), retain 8>
| | | | {
| | | | "nativeNDRV" = <6164766e>
| | | | "IODeviceMemory" = (({"address"=0xf2000000,"length"=0x1000000}),({"address"=0xf80000000,"length"=0x8000000}),({"address"=0xf88000000,"length"=0x2000000}),"IOSubMemoryDescriptor is not serializable",({"address"=0xf4000000,"length"=0x80000}))
| | | | "AAPL,gray-page" = <01000000>
| | | | "AAPL,ndrv-interrupt-set" = "IONDRVInterruptSet is not serializable"
| | | | "built-in" = <01>
| | | | "noNVRAM" = <01000000>
| | | | "IOFBDependentID" = 0xffffff8011af3000
| | | | "display-cfg" = <03010300>
| | | | "driver-ist" = <80d14b1380ffffff010000000000000080d14b1380ffffff020000000000000080d14b1380ffffff0300000000000000>
| | | | "name" = <4e5644412c446973706c61792d4100>
| | | | "NVDA,SubDeviceClass" = <80200000>
| | | | "AAPL,ndrv-dev" = Yes
| | | | "compatible" = <4e5644412c4e564d616300>
| | | | "display-connect-flags" = <00000000>
| | | | "av-signal-type" = <00000000>
| | | | "AAPL,iokit-ndrv" = <20cd90807fffffff>
| | | | "IOFBDependentIndex" = 0x0
| | | | "NVDA,DeviceClass" = <80000000>
| | | | "AAPL,gray-value" = <c38c6400>
| | | | "port-number" = <00000000>
| | | | "AAPL,RegEntryID" = <00dc641280ffffffff239bed7f000000656d6953000000007a6c755200000000>
| | | | "device_type" = <646973706c617900>
| | | | "AAPL,boot-display" = <01000000>
| | | | }
| | | |
| | | +-o NVDA,Display-B@1 <class IONDRVDevice, id 0x1000002bb, registered, matched, active, busy 0 (1 ms), retain 8>
Ellnic, NVDA, Display-A@0
| | | +-o NVDA,Display-A@0 <class IONDRVDevice, id 0x1000002e7, registered, matched, active, busy 0 (1268 ms), retain 8>
| | | | {
| | | | "AAPL,ndrv-interrupt-set" = "IONDRVInterruptSet is not serializable"
| | | | "av-signal-type" = <10000000>
| | | | "driver-ist" = <c0fa111e80ffffff0100000000000000c0fa111e80ffffff0200000000000000c0fa111e80ffffff0300000000000000>
| | | | "IOFBDependentIndex" = 0
| | | | "noNVRAM" = <01000000>
| | | | "link8257-signal-amplitude" = <08000000>
| | | | "link4161-signal-amplitude" = <08000000>
| | | | "link8257-pre-emphasis-level" = <00000000>
| | | | "edid" = <00ffffffffffff0030e4c502000000000114010495261578025f35a458569e260f505400000001010101010101010101010101010101023a801871382d40582c45007ed71000001bd49a80c873382441302035007ed71000001bd49a80c87338a840302035007ed71000001bd49a80c873384040302035007ed71000001b012700000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fc>
| | | | "display-connect-flags" = <00000000>
| | | | "AAPL,gray-value" = <c38c6400>
| | | | "display-cfg" = <03010300>
| | | | "AAPL,boot-display" = <01000000>
| | | | "link4161-pre-emphasis-level" = <00000000>
| | | | "IODeviceMemory" = (({"address"=4060086272,"length"=16777216}),({"address"=66571993088,"length"=134217728}),({"address"=66706210816,"length"=33554432}),"IOSubMemoryDescriptor is not serializable",({"address"=4093640704,"length"=524288}))
| | | | "AAPL,RegEntryID" = <0054331e80ffffffffabcce17f000000656d6953000000007a6c755200000000>
| | | | "dp-device-id" = <41000000>
| | | | "name" = <"NVDA,Display-A">
| | | | "IOFBDependentID" = 18446743524384146944
| | | | "AAPL,ndrv-dev" = Yes
| | | | "AAPL,gray-page" = <01000000>
| | | | "link8257-bit-rate" = <01000000>
| | | | "NVDA,DeviceClass" = <80000000>
| | | | "link4161-bit-rate" = <01000000>
| | | | "link8257-num-lanes" = <02000000>
| | | | "device_type" = <"display">
| | | | "compatible" = <"NVDA,NVMac">
| | | | "NVDA,SubDeviceClass" = <80200000>
| | | | "link4161-downspread-amplitude" = <01000000>
| | | | "nativeNDRV" = <"advn">
| | | | "link8257-downspread-amplitude" = <01000000>
| | | | "link4161-num-lanes" = <02000000>
| | | | "port-number" = <01000000>
| | | | "AAPL,iokit-ndrv" = <206de2807fffffff>
| | | | }
| | | |
| | | +-o NVDA,Display-B@1 <class IONDRVDevice, id 0x1000002e8, registered, matched, active, busy 0 (0 ms), retain 8>
#229
Posted 20 December 2012 - 10:30 PM
Correct me if I am wrong, but does this mean my GPU is different to yours in minor ways? Cos a lot of that looks completely different to one another. A lot of this goes over my head.
#230
Posted 20 December 2012 - 11:14 PM
are you injecting anything in your dsdt for GFX@0 like this? Bootloader?
We got the same exact chip.
yours:
My:
After some DSDT edit's: look for backlight-control
noticed my port number and av-signal-type is different from yours!
{
"AAPL,slot-name",
"PCI x16",
"@0,compatible",
Buffer (0x0B)
{
"NVDA,NVMac"
},
"@0,connector-type",
Buffer (0x04)
{
0x00, 0x08, 0x00, 0x00
},
"@0,device_type",
Buffer (0x08)
{
"display"
},
"@0,name",
Buffer (0x0F)
{
"NVDA,Display-A"
},
"@1,compatible",
Buffer (0x0B)
{
"NVDA,NVMac"
},
"@1,connector-type",
Buffer (0x04)
{
0x00, 0x08, 0x00, 0x00
},
"@1,device_type",
Buffer (0x08)
{
"display"
},
"@1,name",
Buffer (0x0F)
{
"NVDA,Display-B"
},
"NVCAP",
Buffer (0x18)
{
/* 0000 */ 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00,
/* 0008 */ 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A,
/* 0010 */ 0x00, 0x00, 0x00, 0x00
},
"VRAM,totalsize",
Buffer (0x04)
{
0x00, 0x00, 0x00, 0x40
},
"device_type",
Buffer (0x0C)
{
"NVDA,Parent"
},
"model",
Buffer (0x10)
{
"GeForce GTX 460"
},
"rom-revision",
Buffer (0x0e)
{
"70.08.29.00.30"
},
ellnic, on 20 December 2012 - 10:30 PM, said:
Correct me if I am wrong, but does this mean my GPU is different to yours in minor ways? Cos a lot of that looks completely different to one another. A lot of this goes over my head.
We got the same exact chip.
yours:
"subsystem-vendor-id" = <43100000> | | | | "vendor-id" = <de100000>
My:
| | | | "subsystem-vendor-id" = <43100000> | | | | "vendor-id" = <de100000>
After some DSDT edit's: look for backlight-control
| | | +-o NVDA,Display-A@0 <class IONDRVDevice, id 0x1000002d1, registered, matched, active, busy 0 (1490 ms), retain 8>
| | | | {
| | | | "backlight-control" = <01000000>
| | | | "nativeNDRV" = <6164766e>
| | | | "IODeviceMemory" = (({"address"=0xf2000000,"length"=0x1000000}),({"address"=0xf80000000,"length"=0x8000000}),({"address"=0xf88000000,"length"=0x2000000}),"IOSubMemoryDescriptor is not serializable",({"address"=0xf4000000,"length"=0x80000}))
| | | | "AAPL,gray-page" = <01000000>
| | | | "AAPL,ndrv-interrupt-set" = "IONDRVInterruptSet is not serializable"
| | | | "built-in" = <01>
| | | | "connector-type" = <00080000>
| | | | "noNVRAM" = <01000000>
| | | | "IOFBDependentID" = 0xffffff801210c300
| | | | "display-cfg" = <03010300>
| | | | "driver-ist" = <c03e7e1780ffffff0100000000000000c03e7e1780ffffff0200000000000000c03e7e1780ffffff0300000000000000>
| | | | "name" = <4e5644412c446973706c61792d4100>
| | | | "NVDA,SubDeviceClass" = <80200000>
| | | | "AAPL,ndrv-dev" = Yes
| | | | "compatible" = <4e5644412c4e564d616300>
| | | | "display-connect-flags" = <00000000>
| | | | "av-signal-type" = <00000000>
| | | | "AAPL,iokit-ndrv" = <20bdd5807fffffff>
| | | | "IOFBDependentIndex" = 0x0
| | | | "AAPL,gray-value" = <c38c6400>
| | | | "NVDA,DeviceClass" = <80000000>
| | | | "port-number" = <00000000>
| | | | "AAPL,RegEntryID" = <0038731680ffffffffc78ce97f000000656d6953000000007a6c755200000000>
| | | | "device_type" = <646973706c617900>
| | | | "AAPL,boot-display" = <01000000>
| | | | }
noticed my port number and av-signal-type is different from yours!
#231
Posted 21 December 2012 - 08:48 AM
I'm not doing anything that you haven't described in the first post. I have been following your instructions. However, I have some weird news... Since booting into Ubuntu 12.10, my backlit keys have started working...... All I did was, boot into Ubuntu, play around with fn+F4 and fn+F5, set to max, boot back to ML, then sleep and wake. This really perpelexes me... Do you think Ubuntu has saved something to CMOS? Have you ever booted from a Linux disc? I've only done it in a VM on this machine prior to just now... Might I suggest all those who aren't getting backlit keys try this 
Now we just need to fix the issue with sleep on low battery so our hard drives don't die on us... found this: http://www.insanelym...on-low-battery/
And that thread gives this: http://www.jinx.de/SmartSleep.html
Now we just need to fix the issue with sleep on low battery so our hard drives don't die on us... found this: http://www.insanelym...on-low-battery/
And that thread gives this: http://www.jinx.de/SmartSleep.html
Attached Files
#232
Posted 21 December 2012 - 04:20 PM
have you tried to pull your battery and boot back into osx to check backlit?
Download this and mount efi. Let me know if there's anything in there.
http://www.mediafire...qhcvoj29ll935xr
Getting closer. All without
Brightness.tiff 3.2MB
5 downloads
Download this and mount efi. Let me know if there's anything in there.
http://www.mediafire...qhcvoj29ll935xr
Getting closer. All without
AsusNBWMI.kext.
Brightness.tiff 3.2MB
5 downloads
#233
Posted 21 December 2012 - 05:37 PM
jeffc2009, on 21 December 2012 - 04:20 PM, said:
NICE
Nothing in my EFI partition. Pulling the battery didn't seem to work, it's only worked since Ubuntu. Now it works all the time after sleep.
EDIT: Do you have fan speed control?
EDIT2: Sorry, I get what you mean, pull the battery and see if it still works after. Will report back in a mo.
EDIT3: Pulling the battery had no effect. The backlit keys still work after sleep. Thinking about it, it can't be OS dependant - because backlit keys now work in both my installs (and didn't before) so I know it must be something to do with the CMOS/BIOS. Maybe a glitch yours didn't have? Asus probably don't know about it because they only test Win/Linux.
#234
Posted 21 December 2012 - 10:41 PM
jeffc2009, on 18 December 2012 - 04:50 PM, said:
You don't need to stay with 8, 2 to have sleep/wake. I think you are staying with 8, 2 to have graphics powermanagement right? my new setup is on 9, 1. Once I have it tested out, I am going to change OP.
I know sleep/wake was a issue before ML ( i think it had started with Lion/that's why I had left it ), but now it's fixed with the latest apple/nvidia kext's. You have so many patches on your dsdt, have no idea where to start! Do you still have a fresh copy of your windows extracted dsdt? Kernel is from MacBook Air and MacBook Pro Update 2.0.
I know sleep/wake was a issue before ML ( i think it had started with Lion/that's why I had left it ), but now it's fixed with the latest apple/nvidia kext's. You have so many patches on your dsdt, have no idea where to start! Do you still have a fresh copy of your windows extracted dsdt? Kernel is from MacBook Air and MacBook Pro Update 2.0.
i tested a lot of smbios.. but 8,2 matches and invoke the sleep. if I change it.. the cpu still run
9,1 in original apple macbookpro is an i7 IVy bridge,, not sandy bridge
confirm ubuntu enables the keyboard backlight. so at reboot is still turned on!
edit: i'm trying to enable brightness.. I have the control bar but it's not working.
in the log
Dec 22 00:26:15 localhost kernel[0]: ACPIBacklightPanel: ACPI Methods _DOS _BCL _BCM _BQC found. Device path: _SB.PNLF
Dec 22 00:26:15 localhost kernel[0]: ACPIBacklightPanel: getIndexForLevel(-246) not found in _BCL table !
still.. working
#235
Posted 22 December 2012 - 12:11 AM
I can bypass the indexing error but I can't engage the brightness bar
my opinion is that the fn+f3 or f4 are so well described in the dsdt.. and I think that the system passes those commands.
but I suppose there's not a real substrate that passes the command through the IO as happen in other fn commands.
What happens in ubuntu or windows depends on the kernel module wmi.
but i'm not sure.. I tried to manage the source of iowmi.. but I have error on the compile.. I think it miss completely the part about backlight keybiard..
that's because all the external forum tell a map of the ability of the iowmi kext.. and all miss the backlight kbd. !
so .. maybe.. the real work is to add the missing code in the iowmi xcode project.
my opinion is that the fn+f3 or f4 are so well described in the dsdt.. and I think that the system passes those commands.
but I suppose there's not a real substrate that passes the command through the IO as happen in other fn commands.
What happens in ubuntu or windows depends on the kernel module wmi.
but i'm not sure.. I tried to manage the source of iowmi.. but I have error on the compile.. I think it miss completely the part about backlight keybiard..
that's because all the external forum tell a map of the ability of the iowmi kext.. and all miss the backlight kbd. !
so .. maybe.. the real work is to add the missing code in the iowmi xcode project.
Attached Files
#236
Posted 22 December 2012 - 06:41 AM
ugokind, on 21 December 2012 - 10:41 PM, said:
i tested a lot of smbios.. but 8,2 matches and invoke the sleep. if I change it.. the cpu still run
9,1 in original apple macbookpro is an i7 IVy bridge,, not sandy bridge
confirm ubuntu enables the keyboard backlight. so at reboot is still turned on!
edit: i'm trying to enable brightness.. I have the control bar but it's not working.
in the log
Dec 22 00:26:15 localhost kernel[0]: ACPIBacklightPanel: ACPI Methods _DOS _BCL _BCM _BQC found. Device path: _SB.PNLF
Dec 22 00:26:15 localhost kernel[0]: ACPIBacklightPanel: getIndexForLevel(-246) not found in _BCL table !
still.. working
9,1 in original apple macbookpro is an i7 IVy bridge,, not sandy bridge
confirm ubuntu enables the keyboard backlight. so at reboot is still turned on!
edit: i'm trying to enable brightness.. I have the control bar but it's not working.
in the log
Dec 22 00:26:15 localhost kernel[0]: ACPIBacklightPanel: ACPI Methods _DOS _BCL _BCM _BQC found. Device path: _SB.PNLF
Dec 22 00:26:15 localhost kernel[0]: ACPIBacklightPanel: getIndexForLevel(-246) not found in _BCL table !
still.. working
On our system is structured different from hotKoffy's system. We need to change DSDT to match ours. I have been reading a lot today trying to figure out how DSDT on G73 works. I think Method GLKB to control Keyboard Light level. Looking for new method for backlight.
#237
Posted 22 December 2012 - 08:42 AM
indeed.
sleeping brang me the same idea.
the INI/REG acpi method in the EC registare can force some behaviour at boot.
If the soft reboot from ubuntu to mac makes the light untouched .. and if the wake did the same.. is for the same reason:
the EC register has a bit with the info of the value of the keyboard light. And the DSDT tell to BIOS to RESTORE the value that EC has before the sleep.
In fact the WAKE procedure reads all the prvious states and restore them.. and it invoke the ATKD backlight.
so: my idea is to manually create the bit in the EC INI/REG section of the DSDT.
if so.. at boot you'll always have the light turned on.
sleeping brang me the same idea.
the INI/REG acpi method in the EC registare can force some behaviour at boot.
If the soft reboot from ubuntu to mac makes the light untouched .. and if the wake did the same.. is for the same reason:
the EC register has a bit with the info of the value of the keyboard light. And the DSDT tell to BIOS to RESTORE the value that EC has before the sleep.
In fact the WAKE procedure reads all the prvious states and restore them.. and it invoke the ATKD backlight.
so: my idea is to manually create the bit in the EC INI/REG section of the DSDT.
if so.. at boot you'll always have the light turned on.
#238
Posted 22 December 2012 - 09:59 AM
nice news for the backlit keyboard! So it's enough i run linux ubuntu (downloadable for free) from virtualbox (free) and after that keyboard works on ML after resuming from sleep?
about batterysave / smartsleep , with other laptops i had there was nothing to do when battery is near to zero. please try it and let us know if it works as it should (even if you reach 0% level on your battery...here usually when it is near to zero, it begins to startup again, then power off, then poweron 4-5 times until the battery discharges completely: quite dangerous for harddrives!!
FOR SD cards, perhaps in ubuntu we may check if sd card works (booting from true ubuntu cd, not vm...or in vm too? dunno) and investigating about the driver ... the source may be ported to osx! does anyone have installed xcode here to import / adapt the source and try?
about batterysave / smartsleep , with other laptops i had there was nothing to do when battery is near to zero. please try it and let us know if it works as it should (even if you reach 0% level on your battery...here usually when it is near to zero, it begins to startup again, then power off, then poweron 4-5 times until the battery discharges completely: quite dangerous for harddrives!!
FOR SD cards, perhaps in ubuntu we may check if sd card works (booting from true ubuntu cd, not vm...or in vm too? dunno) and investigating about the driver ... the source may be ported to osx! does anyone have installed xcode here to import / adapt the source and try?
#239
Posted 22 December 2012 - 10:10 AM
ugokind, on 22 December 2012 - 08:42 AM, said:
indeed.
sleeping brang me the same idea.
the INI/REG acpi method in the EC registare can force some behaviour at boot.
If the soft reboot from ubuntu to mac makes the light untouched .. and if the wake did the same.. is for the same reason:
the EC register has a bit with the info of the value of the keyboard light. And the DSDT tell to BIOS to RESTORE the value that EC has before the sleep.
so: my idea is to manually create the bit in the EC INI/REG section of the DSDT.
if so.. at boot you'll always have the light turned on.
sleeping brang me the same idea.
the INI/REG acpi method in the EC registare can force some behaviour at boot.
If the soft reboot from ubuntu to mac makes the light untouched .. and if the wake did the same.. is for the same reason:
the EC register has a bit with the info of the value of the keyboard light. And the DSDT tell to BIOS to RESTORE the value that EC has before the sleep.
so: my idea is to manually create the bit in the EC INI/REG section of the DSDT.
if so.. at boot you'll always have the light turned on.
You have a point - since I have got my backlit working, if I sleep then wake (so it comes on) I can reboot and it stays lit through the boot process. Only shutting down entirely turns it off. Or, I guess, loading another OS that calls a 'proper control'.
manmal, on 22 December 2012 - 09:59 AM, said:
nice news for the backlit keyboard! So it's enough i run linux ubuntu (downloadable for free) from virtualbox (free) and after that keyboard works on ML after resuming from sleep?
FOR SD cards, perhaps in ubuntu we may check if sd card works (booting from true ubuntu cd, not vm...or in vm too? dunno) and investigating about the driver ... the source may be ported to osx! does anyone have installed xcode here to import / adapt the source and try?
FOR SD cards, perhaps in ubuntu we may check if sd card works (booting from true ubuntu cd, not vm...or in vm too? dunno) and investigating about the driver ... the source may be ported to osx! does anyone have installed xcode here to import / adapt the source and try?
It won't work in a VM, because the host OS needs to be completely aware of the hardware in order to pass it to the guest OS. Boot natively into Ubuntu 12.10 and your keyboard should start working after sleep.
The SD card is an entirely different matter, I think we should put that to one side for the time being.
#240
Posted 22 December 2012 - 11:10 AM
ok
with RW everything I read the
9C cell in the EC register
it changes from 00/55/aa/ff
in the 4 states
in the dsdt it's the var TSTP
and it's in the RAMB register (volatile 1) and in the EC register (volatile 0)
TSTP, 8,
Offset (0x9C)
in the LCDD (under gfx0) device there is an external entry of EC for that specific control:
these (the _Q methods) are theQUERY : what happens if you press some in the direct connection with bios.. or what happens when you detach a battery.. etc..
the ISMI is locate under the root.. and point to another bank of ram/register
in the WAKE.. the 1st operation is to write ISMI xxxx.. so I suppose that if the value of the ISMI is the same in the 3 query.. is not important or is a flag to tell that the same family of query has changed it's value
the 3 query stores 1, 2, 3 in the TSTP register. and the 4?
I suppose this is not the command but the only a query. because the 4 values 00/55/aa/ff are quite different from 1,2,3.
infact I discovered the under the DEVICE ATKD
Method (GLKB, 1, NotSerialized)
with the 1,2,3 and it STORE that value in the KBLV var.
and
this is the core!
in fact it use the INDEX of KBLV (1,2,3) and get the relative value from the array.
the comand is the last row: it write in the EC.WRAM the proper value in the reg 044B
windows and ubuntu can translate the Fn+key with that command.
If we can change the xproj of the wmi.. we can add a command for the missing f3/f4 unmanaged buttons.. and for the actual needing.. we can invoke that command in the boot.
how?
the Sleep (Method (ECS, 1, NotSerialized)) set to zero the light.. WRAM (0x044B, Zero) after writing the last value Store (RRAM (0x0449), Local0)
and the wake read the value in the RRAM
Store (RRAM (0x0449), Local0)
and fix the value only if we are in a wake:
so we're sure.. the WRAM 0x0449 fixes the value in a separate bank.
WRAM 044B fix the value in the live system
i'll try
WRAM (0x044B, 0xFF)
i'ss test the ini and reg EC
see ya
yeah
here you are
this is for g53
search for the text
//**
grab the text i've added in the 3 positions ad put in your dsdt.dsl in the same position
now we've to mod the kext!!
with RW everything I read the
9C cell in the EC register
it changes from 00/55/aa/ff
in the 4 states
in the dsdt it's the var TSTP
and it's in the RAMB register (volatile 1) and in the EC register (volatile 0)
TSTP, 8,
Offset (0x9C)
in the LCDD (under gfx0) device there is an external entry of EC for that specific control:
Method (_QAA, 0, NotSerialized)
{
Store (One, ^^^^TSTP)
ISMI (0xA7)
Store (One, OEMP)
PNOT ()
}
Method (_QA6, 0, NotSerialized)
{
Store (0x02, ^^^^TSTP)
ISMI (0xA7)
}
Method (_QA8, 0, NotSerialized)
{
Store (0x03, ^^^^TSTP)
ISMI (0xA7)
Store (One, OEMP)
PNOT ()
}
these (the _Q methods) are theQUERY : what happens if you press some in the direct connection with bios.. or what happens when you detach a battery.. etc..
the ISMI is locate under the root.. and point to another bank of ram/register
OperationRegion (GPSC, SystemIO, 0xB2, 0x02)
Field (GPSC, ByteAcc, NoLock, Preserve)
{
SMCM, 8,
SMST, 8
}
Method (ISMI, 1, Serialized)
{
Store (Arg0, SMCM)
}
in the WAKE.. the 1st operation is to write ISMI xxxx.. so I suppose that if the value of the ISMI is the same in the 3 query.. is not important or is a flag to tell that the same family of query has changed it's value
the 3 query stores 1, 2, 3 in the TSTP register. and the 4?
I suppose this is not the command but the only a query. because the 4 values 00/55/aa/ff are quite different from 1,2,3.
infact I discovered the under the DEVICE ATKD
Method (GLKB, 1, NotSerialized)
with the 1,2,3 and it STORE that value in the KBLV var.
and
Name (PWKB, Buffer (0x04)
{
0x00, 0x55, 0xAA, 0xFF
})
Method (SLKB, 1, NotSerialized)
{
Store (And (Arg0, 0x7F), KBLV)
If (And (Arg0, 0x80))
{
Store (DerefOf (Index (PWKB, KBLV)), Local0)
}
Else
{
Store (Zero, Local0)
}
^^PCI0.LPCB.EC.WRAM (0x044B, Local0)
Return (One)
}
this is the core!
in fact it use the INDEX of KBLV (1,2,3) and get the relative value from the array.
the comand is the last row: it write in the EC.WRAM the proper value in the reg 044B
windows and ubuntu can translate the Fn+key with that command.
If we can change the xproj of the wmi.. we can add a command for the missing f3/f4 unmanaged buttons.. and for the actual needing.. we can invoke that command in the boot.
how?
the Sleep (Method (ECS, 1, NotSerialized)) set to zero the light.. WRAM (0x044B, Zero) after writing the last value Store (RRAM (0x0449), Local0)
and the wake read the value in the RRAM
Store (RRAM (0x0449), Local0)
and fix the value only if we are in a wake:
If (LOr (LEqual (Arg0, 0x03), LEqual (Arg0, 0x04)))
{
Store (RRAM (0x0449), Local0)
And (Local0, 0x02, Local1)
If (Local1)
{
Or (Local0, One, Local0)
WRAM (0x0449, Local0)
}
}
so we're sure.. the WRAM 0x0449 fixes the value in a separate bank.
WRAM 044B fix the value in the live system
i'll try
WRAM (0x044B, 0xFF)
i'ss test the ini and reg EC
see ya
yeah
here you are
this is for g53
search for the text
//**
grab the text i've added in the 3 positions ad put in your dsdt.dsl in the same position
now we've to mod the kext!!
Attached Files
0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users



Sign In
Create Account











