writing platform driver linux