Place the beans in a large pot with the salt and cover with 2 inches of water. You can either soak them overnight or do a quick soak by bringing to a boil and then turning off the heat and letting them sit for an hour.
After soaking, add to the pot the half onion in the pot and the salt pork. Bring beans to a boil, cover and simmer for an hour, stirring occasionally.
The time it will take to cook the beans will depend on the freshness of the beans and the hardness of your water. If they’re not completely cooked after an hour, let them simmer a while longer until they’re done.
Discard the salt pork and onion and then drain the beans, keeping 1/2 cup of the bean broth.
Cook the bacon in a skillet on medium-low heat, turning once, until crisp and the fat has rendered, about 10 minutes. Remove the bacon and save for another use.
Leaving the bacon fat in the skillet, add the diced onion and cook on medium-low for 5 minutes or until softened, then add the minced garlic and cook for another minute.
Add the drained cooked beans into the skillet, adding 1/4 cup of the bean broth. Mash the beans with a potato masher, adding more bean broth for desired moisture. Keep stirring the mashed beans in the bacon fat until the texture is a chunky paste. Serve warm.
You can substitute 1/4 cup of lard for the bacon grease. Or you can use 1/4 cup of peanut oil. If you don’t want to cook a pot of beans, 2 (15-ounce) cans of cooked pintos can be used instead.