Moved all the OSC hardwell logic into HardwellLogic class, where it belongs