Piix4_SMBus: 000:00:07.3: Host SMBus controller bus not enabled

125,879

Solution 1

First, add this line in your vmx file to increase the boot time to 50s

bios.bootDelay = "50000"

Start the VM, hold the left shift key down, then hit Enter.

In the grub menu, choose Advanced options for Ubuntu -> Recovery mode. Once the system boots, choose 'Root' to drop into a root shell.

In the root shell, enter the following commands

mount -o remount,rw /
nano /etc/modprobe.d/blacklist.conf

go down a few lines (almost anywhere) and enter the line

blacklist i2c-piix4

Then press ctrl+o to save the file, and ctrl+x

Finally, enter the command

reboot

Solution 2

The method above didn't work for me on Ubuntu 16.10 and VMWare Workstation 12.5.1..

Boot into Ubuntu Recovery Mode --> drop into the root shell and open the kernel blacklist config file.

nano /etc/modprobe.d/blacklist.conf

Then add this line into the file and save.

blacklist intel_powerclamp

I found this solution from this post:

https://websiteforstudents.com/question/student-question-resolve-ubuntu-16-10-piix4_smbus-host-smbus-controller-bus-not-enabled/

Solution 3

At first, open *.vmx file from your VMware folder via notepad. Then add this line to the file and save it.

cpuid.1.eax = "0000:0000:0000:0001:0000:0110:1010:0101"

The problem will be fixed.

Share:
125,879

Related videos on Youtube

Murali G
Author by

Murali G

Updated on September 18, 2022

Comments

  • Murali G
    Murali G almost 2 years

    I have been using Ubuntu on VMware Player; today when I logged into VMware, it showed updates available for Ubuntu 15.xx. I allowed the updates and after downloading all the packages it restarted automatically, but never booted back. It is throwing messages like

    Piix4_SMBus: 000:00:07.3: Host SMBus controller bus not enabled
    failed to start /etc/rc.local compatibility
    

    Please describe a way to fix it!

    • Admin
      Admin over 8 years
      Updated received was 'Wily Warewolf'
    • Admin
      Admin over 8 years
      There has been a fix for this problem for a while, but you need to access your Ubuntu installation 'hard disk' to edit the file /etc/modprobe.d/blacklist.conf and add the line blacklist i2c-piix4 . You may be able to do this by booting the VM from an ISO file for Ubuntu, and choosing 'Try Ubuntu'
    • Admin
      Admin over 8 years
      Hi Charles, thanks for your quick response. Could you please elaborate the steps as I am not really good in doing this. How do I access Ubuntu Installation hard disk? Please provide the navigation. I am using VMware Player and installed Ubuntu on VMPlayer. Apologies for the trouble.
  • Murali G
    Murali G over 8 years
    Thanks Charles for the detailed answer. I am able to resolve the first issue. I almost shouted 'Eurekha', but it did not boot yet :-(, still another issue is pending, Error: failed to start /etc/rc.local compatibility see "sstemctl status rc-local.service" for details. Request you to provide your valuable solution. Appreciate your time & patience.
  • Charles Green
    Charles Green over 8 years
    Sorry to hear continues problems.
  • Murali G
    Murali G over 8 years
    Yeah...hopefully everything gets resolved with the solution you are going to provide. But blacklist i2c-piix4 is a good learning for me. Your crystal clear answer helped me in resolving that.
  • Charles Green
    Charles Green over 8 years
    Did you happen to remove the vmtools from your virtual machine before updating?
  • Charles Green
    Charles Green over 8 years
    2nd question, if you execute systemctl status rc-local.service in the machine, what happens?
  • Murali G
    Murali G over 8 years
    Initially I was not getting internet connection to the VM. So I have installed the vmtools and then internet connection was active. I have got the updates as the internet connection was active and I performed update. when I gave the command systemctl status rc-local.service i got the below: Loaded: loaded (/lib/systemd/system/rc-local/service;static;vendor preset:enabled) Drop-In: /lib/systemd/system/rc-local/service.d debian.conf Active: inactive(dead)
  • Charles Green
    Charles Green over 8 years
    Well, I don't see anything that is wrong there, but it's really gone beyond what I can help much with.
  • Murali G
    Murali G over 8 years
    No problem Charles. Thanks a lot for your support. Have a great weekend.
  • Murali G
    Murali G over 8 years
    I would request someone in the forum to help me with this. I am trying by exploring through various forums to close this, but no luck. Please need your support in closing this.
  • Charles Green
    Charles Green over 8 years
    @MuraliG You'll probably need to open a separate question, and you should try cross-posting into the vmware community forums.
  • Charles Green
    Charles Green over 8 years
    @MuraliG I did find another Ubuntu forum with a question related to this, where rc.local was being used to load the vmtools and caused problems. Try this: Log into the recovery mode as above, then cd /etc followed by mv rc.local rc.local.old and touch rc.local and chmod 755 rc.local`. Then reboot. This will copy your current rc.local into a different file, and create a new, empty, rc.local
  • Charles Green
    Charles Green over 8 years
    Ah - you forgot the part mount -o remount,rw / - when you start in the recovery mode, your computer is in read-only mode be default...
  • Murali G
    Murali G over 8 years
    Dear Charles, I tried the above options but still no luck. I posted this in VMware forums also. communities.vmware.com/message/2552370#2552370. I have attached the screenshots also for your reference.
  • H.Ghassami
    H.Ghassami over 7 years
    I know this post is old. but I have the same problem. when I do the @CharlesGreen said, my ubuntu is boot, but after some minutes (when I worked with it). It is hanging .how can I solve this problem? Help me plz :)
  • Charles Green
    Charles Green over 7 years
    @H.Ghassami I certainly do hope that you find an answer to your problem - I no longer run VMWare, but instead use KVM/QEMU to host virtual machines. You could search, and post, your problem in the vmware community forum perhaps, and receive some assistance.
  • AveryFreeman
    AveryFreeman over 6 years
    This option worked for me, but only with one CPU -- had to reduce number of CPUs, before it worked. Now I can disable smbus in /etc/modprobe.d. I tried blacklisting from grub but none worked - OpenSUSE Tumbleweed 20180124 - Thanks!
  • Gürol Canbek
    Gürol Canbek about 6 years
    Did not work for VMware Ubuntu 64-bit 18.04 on macOS
  • dafnahaktana
    dafnahaktana over 5 years
    didn't work for me
  • TimD1
    TimD1 almost 5 years
    I had to additionally run update-initramfs -u after editing blacklist.conf
  • Charles Green
    Charles Green almost 5 years
    @TimD1 I don't think you should have to do that, but it has been a long time since I ran VMWare!
  • Roel Van de Paar
    Roel Van de Paar about 4 years
    I too had to run update-initramfs -u only to find that I had made a small mistake in /etc/fstab - I had changed the root mount from / to /i - likely by pressing i in the vi editor :) When update-initramfs -u complained it could not find what disk to boot from, I knew to check /etc/fstab; removed the i from /i, re-ran update-initramfs -u (this time really necessary to set the correct root/boot patiation), and it all worked fine again. Also blacklisted the i2c-piix4 at the same time, which I now suspect was no the original issue, just a (now fixed) error during boot.
  • storm
    storm almost 3 years
    Could you edit your answer and provide more detail about how to enter safe mode and run clean ?